:root{--myguru-blue:#0e25f5;--myguru-blue-dark:#101096;--myguru-blue-light:#e9ecff;--myguru-yellow:#fff200;--background:#f7f8ff;--surface:#fff;--text:#152235;--text-muted:#647084;--border:#dce3eb;--trip-primary:#0e25f5;--trip-primary-dark:#101096;--trip-primary-soft:#e9ecff;--trip-accent:#fff200;--trip-accent-soft:#fff20033;--trip-page-bg:#f7f8ff;--trip-surface:#fff;--trip-surface-alt:#f6f8fb;--trip-text:#152235;--trip-muted:#647084;--trip-border:#dce3eb;--trip-focus-ring:#0e25f533;--trip-hero-overlay:#101096b8;--trip-image-border:#dce3eb;--trip-image-bg:#101096;--shadow:0 12px 35px #11375e14;--radius:18px;--page-width:1120px;color:var(--text);background:var(--background);font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans SC,PingFang SC,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{background:var(--background);min-width:320px;margin:0;line-height:1.6}.trip-theme-root{--myguru-blue:var(--trip-primary);--myguru-blue-dark:var(--trip-primary-dark);--myguru-blue-light:var(--trip-primary-soft);--myguru-yellow:var(--trip-accent);--background:var(--trip-page-bg);--surface:var(--trip-surface);--text:var(--trip-text);--text-muted:var(--trip-muted);--border:var(--trip-border);min-height:100vh;color:var(--trip-text);background:var(--trip-page-bg)}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit}h1,h2,h3,h4,p,dl,dd{margin-top:0}h1,h2,h3,h4{line-height:1.22}.page-shell{width:min(100% - 32px, var(--page-width));margin-inline:auto}.site-header{z-index:20;color:#fff;background:var(--myguru-blue-dark);justify-content:space-between;align-items:center;gap:16px;min-height:68px;padding:12px 16px;display:flex;position:relative}.brand-link{text-decoration:none}.site-header>.brand-link{color:#101096;background:#fff;border-radius:12px;flex:none;padding:3px 9px;display:inline-flex}.header-actions{justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.header-link{color:#fff;border-radius:999px;flex:none;align-items:center;min-height:42px;padding:8px 12px;font-size:.82rem;font-weight:800;text-decoration:none;display:inline-flex}.header-link:hover,.header-link:focus-visible{background:#ffffff21}.logout-form{margin:0}.directory-header .logout-form{flex:none}.directory-header .header-link{white-space:nowrap}.header-logout{cursor:pointer;background:0 0;border:0}.brand-logo{min-height:32px;color:inherit;letter-spacing:.02em;align-items:center;font-size:.95rem;font-weight:800;display:inline-flex}.brand-logo img{object-fit:contain;width:auto;max-width:170px;height:44px;display:block}.site-header .brand-logo img{height:50px}.print-button{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff59;border-radius:999px;min-height:42px;padding:8px 14px}.print-button:hover,.print-button:focus-visible{background:#ffffff2b}.quick-nav{z-index:10;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff5;position:sticky;top:0;overflow-x:auto}.quick-nav .page-shell{gap:8px;padding-block:9px;display:flex}.quick-nav a{min-height:40px;color:var(--text-muted);border-radius:999px;flex:none;align-items:center;padding:7px 11px;font-size:.86rem;font-weight:700;text-decoration:none;display:inline-flex}.quick-nav a:hover,.quick-nav a:focus-visible{color:var(--myguru-blue-dark);background:var(--myguru-blue-light)}.draft-banner{color:var(--myguru-blue-dark);background:var(--myguru-yellow);flex-wrap:wrap;justify-content:center;gap:5px 12px;padding:10px 16px;font-size:.84rem;display:flex}.draft-banner strong{font-weight:900}.draft-handoff-panel{border:1px solid var(--trip-border);background:var(--trip-surface);box-shadow:var(--shadow);border-radius:18px;gap:16px;margin-block:22px 0;padding:22px;display:grid}.draft-handoff-panel h2{color:var(--trip-text);margin-bottom:8px;font-size:clamp(1.25rem,4vw,1.65rem)}.draft-handoff-panel p{color:var(--trip-muted);margin-bottom:0}.draft-handoff-panel details{border-top:1px solid var(--trip-border);padding-top:14px}.draft-handoff-panel summary{color:var(--trip-primary);cursor:pointer;font-weight:850}.draft-handoff-panel ol{color:var(--trip-muted);gap:8px;margin:14px 0 0;padding-left:22px;display:grid}.hero{gap:28px;padding-block:44px 38px;display:grid}.hero-copy{align-self:center}.eyebrow,.card-kicker{color:var(--myguru-blue);letter-spacing:.15em;text-transform:uppercase;margin-bottom:10px;font-size:.74rem;font-weight:850}.hero h1{max-width:760px;color:var(--myguru-blue-dark);letter-spacing:-.055em;margin-bottom:18px;font-size:clamp(2.45rem,9vw,5.7rem)}.hero-intro{max-width:560px;color:var(--text-muted);margin-bottom:22px;font-size:1.02rem}.hero-meta{flex-wrap:wrap;gap:9px;display:flex}.hero-meta span{border:1px solid var(--border);color:var(--text);background:#fff;border-radius:999px;padding:8px 12px;font-size:.86rem;font-weight:700}.cover-placeholder{color:#fff;background:linear-gradient(135deg, #f4c542eb 0 18%, transparent 18%), linear-gradient(145deg, var(--myguru-blue) 0%, var(--myguru-blue-dark) 100%);min-height:320px;box-shadow:var(--shadow);border-radius:26px;flex-direction:column;justify-content:flex-end;padding:26px;display:flex;position:relative;overflow:hidden}.cover-image{object-fit:cover;width:100%;min-height:320px;max-height:560px;box-shadow:var(--shadow);border-radius:26px;display:block}.trip-theme-root[data-trip-theme=korea-coastal-modern] .hero,.trip-theme-root[data-trip-id=henan-2026] .hero{grid-template-columns:minmax(0,1fr);min-height:auto}.trip-theme-root[data-trip-theme=korea-coastal-modern] .cover-image,.trip-theme-root[data-trip-id=henan-2026] .cover-image{object-fit:contain;height:auto;min-height:0;max-height:none}.cover-placeholder:after{content:"";border:34px solid #ffffff17;border-radius:50%;width:170px;height:170px;position:absolute;top:35px;right:-45px}.cover-placeholder p,.cover-placeholder span,.cover-mark{z-index:1;position:relative}.cover-placeholder p{margin-bottom:4px;font-size:1.35rem;font-weight:800}.cover-placeholder span{color:#ffffffb8;letter-spacing:.12em;font-size:.78rem;font-weight:750}.cover-mark{letter-spacing:.17em;margin-bottom:auto;font-size:.75rem;font-weight:900}.content-section{border-top:1px solid var(--border);padding-block:46px;scroll-margin-top:110px}.anchor-target{scroll-margin-top:110px}.section-heading{max-width:700px;margin-bottom:24px}.section-heading h2{color:var(--myguru-blue-dark);letter-spacing:-.035em;margin-bottom:10px;font-size:clamp(1.8rem,7vw,3rem)}.section-heading>p:last-child:not(.eyebrow){color:var(--text-muted);margin-bottom:0}.overview-section{border-top:0}.overview-grid,.notice-grid{gap:14px;display:grid}.overview-card{border-radius:var(--radius);color:#fff;background:var(--myguru-blue-dark);flex-direction:column;justify-content:space-between;min-height:140px;padding:24px;display:flex}.overview-card-accent{color:var(--myguru-blue-dark);background:var(--myguru-yellow)}.overview-card span{letter-spacing:.1em;font-size:.78rem;font-weight:800}.overview-card strong{font-size:1.18rem}.highlight-grid{gap:12px;margin:0;padding:0;list-style:none;display:grid}.highlight-card{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;grid-template-columns:52px minmax(0,1fr);display:grid;overflow:hidden}.highlight-card>span{color:var(--myguru-blue-dark);background:var(--myguru-yellow);place-items:center;font-size:.8rem;font-weight:900;display:grid}.highlight-card div{min-width:0;padding:18px}.highlight-card h3{color:var(--myguru-blue-dark);margin-bottom:6px;font-size:1rem}.highlight-card p{color:var(--text-muted);margin-bottom:0;font-size:.9rem}.learning-grid{gap:14px;display:grid}.learning-card{padding:22px;overflow:hidden}.learning-card-header h3{color:var(--myguru-blue-dark);margin-bottom:9px}.learning-card-header>p:last-child{color:var(--text-muted);margin-bottom:0}.learning-details[hidden]{display:none}.learning-details{border-top:1px solid var(--border);gap:16px;margin-top:20px;padding-top:18px;display:grid}.learning-details section{background:var(--trip-surface-alt);border-radius:12px;padding:15px}.learning-details h4{color:var(--myguru-blue-dark);margin-bottom:7px;font-size:.98rem}.learning-details p{color:var(--text-muted);margin-bottom:0;font-size:.9rem}.learning-details ul{color:var(--text-muted);margin:0;padding-left:20px;font-size:.9rem}.learning-details li+li{margin-top:6px}.card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.flight-list,.city-groups,.day-list,.feature-grid{gap:16px;display:grid}.flight-card{grid-template-columns:auto 1fr;display:grid;position:relative;overflow:hidden}.card-number{width:50px;color:var(--myguru-blue-dark);background:var(--myguru-yellow);justify-content:center;align-items:flex-start;padding-top:24px;font-size:.73rem;font-weight:900;display:flex}.flight-card-content{min-width:0;padding:22px 18px}.flight-card h3{color:var(--myguru-blue-dark);margin-bottom:18px}.details-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px;margin-bottom:0;display:grid}.details-grid div{min-width:0}.details-grid dt,.stacked-details dt{color:var(--text-muted);margin-bottom:2px;font-size:.73rem;font-weight:750}.details-grid dd,.stacked-details dd{overflow-wrap:anywhere;margin-bottom:0;font-weight:700}.layover{width:calc(100% - 32px);color:var(--myguru-blue-dark);background:var(--myguru-yellow);border-radius:0 0 12px 12px;flex-wrap:wrap;gap:5px 18px;margin:-1px auto 0;padding:10px 16px;font-size:.82rem;font-weight:750;display:flex}.city-group{gap:12px;display:grid}.city-label{align-items:center;gap:10px;display:flex}.city-label span{background:var(--myguru-yellow);width:10px;height:10px;box-shadow:0 0 0 5px var(--trip-accent-soft);border-radius:50%}.city-label h3{color:var(--myguru-blue-dark);margin-bottom:0}.hotel-grid,.weather-grid{gap:12px;display:grid}.hotel-card{padding:0;overflow:hidden}.hotel-card-body,.weather-card{padding:20px}.hotel-card-body{min-width:0}.hotel-image{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.hotel-card h4{margin-bottom:8px;font-size:1.15rem}.address{min-height:50px;color:var(--text-muted);margin-bottom:18px}.button-row{flex-wrap:wrap;gap:9px;margin-top:20px;display:flex}.button{text-align:center;cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;min-height:44px;padding:9px 15px;font-size:.86rem;font-weight:800;line-height:1.2;text-decoration:none;display:inline-flex}.button-primary{color:#fff;background:var(--myguru-blue)}.button-secondary{border-color:var(--border);color:var(--myguru-blue-dark);background:#fff}.button:hover,.button:focus-visible{filter:brightness(.96)}.button:disabled{color:#8e98a6;cursor:not-allowed;filter:none;background:#f0f2f5}.related-media{border-top:1px solid var(--border);gap:8px;margin-top:18px;padding-top:16px;display:grid}.related-media>strong{color:var(--myguru-blue-dark);font-size:.82rem}.media-link-list{gap:8px;display:grid}.media-link{border:1px solid var(--border);min-width:0;color:var(--myguru-blue-dark);background:#f8faff;border-radius:10px;gap:2px;padding:11px 13px;text-decoration:none;display:grid}.media-link span{font-size:.84rem;font-weight:850}.media-link small{overflow-wrap:anywhere;color:var(--text-muted);font-size:.74rem}.media-link:hover,.media-link:focus-visible{border-color:var(--myguru-blue);background:#fff}.day-card{border:1px solid var(--border);border-radius:var(--radius);background:#fff;overflow:hidden}.day-header{color:#fff;background:var(--myguru-blue-dark);align-items:center;gap:16px;padding:18px;display:flex}.day-number{color:var(--myguru-blue-dark);background:var(--myguru-yellow);border-radius:8px;flex:none;padding:8px 10px;font-size:.78rem;font-weight:900}.day-header h3,.day-header p{margin-bottom:0}.day-header p{color:#ffffffb3;font-size:.82rem}.day-transport{color:var(--myguru-blue-dark);background:var(--myguru-yellow);border-radius:999px;margin-top:7px;padding:3px 8px;font-size:.72rem;font-weight:850;display:inline-block}.day-notes{border-bottom:1px solid var(--border);color:var(--myguru-blue-dark);background:var(--myguru-blue-light);padding:12px 18px;font-size:.86rem;font-weight:750}.day-notes p{margin-bottom:0}.timeline{padding:22px 18px 12px}.timeline-item{grid-template-columns:18px 82px 1fr;gap:8px;padding-bottom:24px;display:grid;position:relative}.timeline-item:before{background:var(--border);content:"";width:2px;position:absolute;top:16px;bottom:0;left:7px}.timeline-item:last-child:before{display:none}.timeline-marker{z-index:1;background:var(--myguru-yellow);width:16px;height:16px;box-shadow:0 0 0 2px var(--myguru-yellow);border:4px solid #fff;border-radius:50%;position:relative}.timeline-item time{color:var(--myguru-blue-dark);font-size:.76rem;font-weight:850;line-height:1.35}.timeline-content{min-width:0}.timeline-content h4{margin-bottom:4px}.location{color:var(--text-muted);margin-bottom:7px;font-size:.88rem}.text-button{min-height:44px;color:var(--myguru-blue);cursor:pointer;background:0 0;border:0;padding:4px 0;font-size:.82rem;font-weight:800}.timeline-details{background:var(--trip-surface-alt);border-radius:10px;margin-top:8px;padding:12px;font-size:.84rem}.timeline-details p:last-of-type{margin-bottom:0}.timeline-details p{white-space:pre-line}.backup-section{border-top-style:dashed}.backup-grid{gap:14px;display:grid}.backup-card{border-radius:var(--radius);background:#fffaf0;border:1px solid #e3bd3f;padding:22px;position:relative;overflow:hidden}.backup-badge{color:var(--myguru-blue-dark);background:var(--myguru-yellow);border-radius:0 0 0 12px;padding:7px 13px;font-size:.74rem;font-weight:900;position:absolute;top:0;right:0}.backup-meta{color:var(--text-muted);margin-bottom:8px;padding-right:56px;font-size:.78rem;font-weight:750}.backup-card h3{color:var(--myguru-blue-dark);margin-bottom:8px}.backup-card>p:not(.backup-meta){color:var(--text-muted)}.backup-address,.feature-address{color:var(--text-muted);background:var(--trip-surface-alt);border-radius:10px;margin:14px 0 0;padding:12px;font-size:.84rem}.backup-address strong,.feature-address strong{color:var(--text);font-size:.72rem;display:block}.feature-card{overflow:hidden}.image-placeholder{color:#ffffffc2;background:linear-gradient(35deg, #f4c54252, transparent 46%), var(--myguru-blue-dark);place-items:center;min-height:210px;padding:24px;font-size:.82rem;font-weight:750;display:grid}.photo-grid{background:var(--trip-image-bg);grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;min-height:210px;display:grid}.photo-grid-single{grid-template-columns:minmax(0,1fr)}.photo-grid img{object-fit:cover;width:100%;height:100%;min-height:160px}.trip-image-fallback{color:#ffffffc2;background:var(--trip-image-bg);text-align:center;place-items:center;min-height:160px;padding:20px;font-size:.8rem;font-weight:750;display:grid}.hotel-image.trip-image-fallback{min-height:200px}.enterprise-image{background:linear-gradient(145deg, transparent 56%, #f4c542ad 56%), var(--myguru-blue)}.feature-body{padding:22px}.feature-body h3{color:var(--myguru-blue-dark);margin-bottom:9px}.feature-body>p:not(.card-kicker){color:var(--text-muted)}.expandable-details[hidden]{display:none}.stacked-details{border-top:1px solid var(--border);gap:0;margin-block:18px 0;display:grid}.stacked-details div{border-bottom:1px solid var(--border);padding-block:11px}.related-links{background:var(--trip-surface-alt);border-radius:10px;gap:6px;margin-top:18px;padding:14px;display:grid}.related-links a{color:var(--myguru-blue);font-size:.86rem;font-weight:750}.weather-topline{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.weather-topline p{color:var(--text-muted);margin-bottom:0;font-size:.8rem;font-weight:750}.weather-topline span{color:var(--myguru-blue-dark);background:var(--myguru-yellow);border-radius:999px;padding:4px 8px;font-size:.75rem;font-weight:850}.weather-card h3{min-height:52px;color:var(--myguru-blue-dark);margin-bottom:16px}.weather-update{color:var(--text-muted);margin:-4px 0 16px;font-size:.82rem}.temperature-row{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:15px;display:grid}.temperature-row div{background:var(--trip-surface-alt);border-radius:10px;padding:11px}.temperature-row span,.temperature-row strong{display:block}.temperature-row span{color:var(--text-muted);font-size:.68rem}.temperature-row strong{color:var(--myguru-blue-dark);font-size:1.2rem}.rainfall-note{color:var(--text-muted);margin-bottom:10px;font-size:.84rem}.rainfall-note strong{color:var(--text);display:block}.clothing-advice{color:var(--text-muted);margin-bottom:0;font-size:.84rem}.weather-source{color:var(--text-muted);margin:10px 0 0;font-size:.75rem}.weather-source a{color:var(--myguru-blue)}.clothing-advice strong{color:var(--text);display:block}.notice-card{border-radius:var(--radius);color:#fff;background:var(--myguru-blue-dark);min-height:210px;padding:24px}.notice-card-accent{color:var(--myguru-blue-dark);background:var(--myguru-yellow)}.notice-index{margin-bottom:30px;font-size:.73rem;font-weight:900}.notice-card h3{margin-bottom:14px}.notice-card ul{margin:0;padding-left:20px}.share-card{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;padding:18px}.share-card pre{white-space:pre-wrap;word-break:break-word;max-height:380px;color:var(--text);background:var(--trip-surface-alt);font:inherit;border-radius:12px;margin:0 0 16px;padding:16px;font-size:.86rem;overflow:auto}.copy-button{width:100%}.summary-privacy-note{border-left:5px solid var(--myguru-yellow);color:var(--myguru-blue-dark);background:var(--myguru-blue-light);border-radius:12px;gap:4px;margin-bottom:16px;padding:16px 18px;display:grid}.summary-privacy-note p{color:var(--text-muted);margin-bottom:0;font-size:.86rem}.personal-summary-editor{padding:20px}.summary-form-grid{gap:16px;display:grid}.summary-field{min-width:0;color:var(--myguru-blue-dark);gap:7px;font-size:.88rem;font-weight:800;display:grid}.summary-field small{color:var(--text-muted);font-size:.74rem;font-weight:700}.summary-field input,.summary-field textarea,.summary-point-card textarea{border:1px solid var(--border);width:100%;min-width:0;color:var(--text);font:inherit;background:#fff;border-radius:10px;padding:12px 13px;font-size:1rem;line-height:1.55}.summary-field input{min-height:46px}.summary-field textarea,.summary-point-card textarea{resize:vertical;min-height:120px}.summary-field input:focus,.summary-field textarea:focus,.summary-point-card textarea:focus{border-color:var(--myguru-blue);outline:3px solid var(--trip-focus-ring)}.summary-points-section{border-top:1px solid var(--border);gap:14px;margin-top:24px;padding-top:22px;display:grid}.summary-subheading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.summary-subheading h3{color:var(--myguru-blue-dark);margin-bottom:4px}.summary-subheading p{color:var(--text-muted);margin-bottom:0;font-size:.84rem}.summary-subheading>span{color:var(--myguru-blue-dark);background:var(--myguru-yellow);border-radius:999px;flex:none;padding:4px 9px;font-size:.75rem;font-weight:850}.summary-point-list{gap:12px;display:grid}.summary-point-card{border:1px solid var(--border);background:var(--trip-surface-alt);border-radius:12px;gap:9px;padding:14px;display:grid}.summary-point-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.summary-point-header label{color:var(--myguru-blue-dark);font-size:.86rem;font-weight:850}.summary-delete-button{color:#8c2f2f;cursor:pointer;background:#fff8f8;border:1px solid #e1b7b7;border-radius:9px;min-height:42px;padding:7px 12px;font-size:.8rem;font-weight:800}.summary-delete-button:disabled{opacity:.42;cursor:not-allowed}.summary-add-button{justify-self:start}.summary-limit-note{color:var(--text-muted);margin:-4px 0 0;font-size:.82rem}.summary-action-field{border-top:1px solid var(--border);margin-top:24px;padding-top:22px}.summary-actions{gap:10px;margin-top:24px;display:grid}.summary-actions .button{width:100%}.summary-clear-button{color:#842c2c;background:#fff;border-color:#d7a7a7}.summary-save-info{min-height:24px;color:var(--myguru-blue-dark);margin-top:14px;font-size:.84rem;font-weight:750}.summary-save-info p{margin-bottom:3px}.summary-error-fallback{padding:20px}.summary-error-fallback h3{color:var(--myguru-blue-dark);margin-bottom:8px}.summary-error-fallback p{color:var(--text-muted)}.personal-summary-print{display:none}.food-city-list,.food-city{gap:16px;display:grid}.food-city+.food-city{margin-top:18px}.food-grid,.souvenir-grid{gap:12px;display:grid}.food-card,.souvenir-card{padding:20px}.food-card h4,.souvenir-card h3{color:var(--myguru-blue-dark);margin-bottom:8px}.food-card>p,.souvenir-card>p{color:var(--text-muted)}.compact-details{border-top:1px solid var(--border);gap:10px;margin:16px 0 0;padding-top:14px;display:grid}.compact-details div{gap:2px;display:grid}.compact-details dt{color:var(--text-muted);font-size:.72rem;font-weight:800}.compact-details dd{overflow-wrap:anywhere;margin:0;font-size:.86rem;font-weight:650}footer{color:#fff;background:var(--myguru-blue-dark);margin-top:44px}.directory-main{min-height:calc(100vh - 76px);padding-block:42px 70px}.directory-hero{align-items:center;gap:18px;margin-bottom:36px;display:grid}.directory-hero-copy{max-width:760px}.directory-hero .eyebrow{letter-spacing:.12em;margin-bottom:8px;font-size:clamp(1rem,2vw,1.14rem)}.directory-hero h1{color:var(--myguru-blue-dark);letter-spacing:-.05em;margin-bottom:4px;font-size:clamp(2.4rem,10vw,5rem)}.directory-brief-link{max-width:100%;min-height:44px;color:var(--myguru-blue-dark);text-underline-offset:3px;padding-block:10px;font-size:.8rem;font-weight:750;display:inline-block}.directory-brief-link:hover,.directory-brief-link:focus-visible{color:var(--myguru-blue)}.directory-mascot{mix-blend-mode:multiply;width:min(82vw,280px);height:auto;margin-inline:auto;display:block}.directory-section+.directory-section{margin-top:48px}.directory-section>h2{color:var(--myguru-blue-dark);margin-bottom:18px}.trip-directory-grid{gap:16px;display:grid}.trip-directory-card{overflow:hidden}.trip-directory-card>img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.trip-directory-card-body{padding:22px}.trip-directory-card-body h3{color:var(--myguru-blue-dark);margin:12px 0 8px}.trip-directory-card-body p{overflow-wrap:anywhere;color:var(--text-muted);margin-bottom:5px}.trip-directory-card-body .button{margin-top:18px}.trip-status-badge{color:var(--myguru-blue-dark);background:var(--myguru-yellow);border-radius:999px;padding:5px 9px;font-size:.74rem;font-weight:900;display:inline-flex}.trip-status-archived{color:#fff;background:var(--myguru-blue)}.directory-empty{padding:24px}.directory-empty h2{color:var(--myguru-blue-dark);margin-bottom:8px}.directory-empty p{color:var(--text-muted);margin-bottom:0}.route-message-main{place-items:center;min-height:calc(100vh - 76px);padding:32px 16px;display:grid}.route-message-card{width:min(100%,620px);padding:28px}.route-message-card h1{color:var(--myguru-blue-dark);margin-bottom:12px;font-size:clamp(2rem,9vw,3.5rem)}.route-message-card>p:not(.eyebrow){color:var(--text-muted)}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;padding-block:26px;display:flex}.footer-inner .brand-logo{color:#101096;background:#fff;border-radius:12px;padding:3px 9px}.footer-inner p{color:#ffffffbf;margin-bottom:0;font-size:.84rem}@media (width>=640px){.page-shell{width:min(100% - 48px, var(--page-width))}.site-header{padding-inline:24px}.overview-grid,.notice-grid,.learning-grid,.highlight-grid,.food-grid,.souvenir-grid,.backup-grid,.hotel-grid,.weather-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hotel-grid-single{grid-template-columns:minmax(0,1fr)}.hotel-card-with-image{grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr);display:grid}.hotel-card-with-image .hotel-image{aspect-ratio:auto;height:100%;min-height:210px}.details-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.card-number{width:68px}.flight-card-content,.feature-body{padding:28px}.timeline-item{grid-template-columns:18px 96px 1fr;gap:12px}.summary-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-field-wide{grid-column:1/-1}.summary-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-hero{grid-template-columns:minmax(0,1fr) minmax(240px,320px);gap:32px}.directory-mascot{place-self:end;width:min(100%,300px);margin:0 12px 0 0}.trip-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.draft-handoff-panel{grid-template-columns:minmax(0,1fr) auto;align-items:center}.draft-handoff-panel details{grid-column:1/-1}.travel-admin-draft-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=860px){.site-header{padding-inline:max(28px, calc((100vw - var(--page-width)) / 2))}.hero{grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);min-height:610px;padding-block:64px}.cover-placeholder,.cover-image{min-height:480px}.content-section{padding-block:70px}.learning-grid,.hotel-grid,.weather-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hotel-grid-single{grid-template-columns:minmax(0,1fr)}.souvenir-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.feature-card{grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);display:grid}.image-placeholder{min-height:100%}.share-card{grid-template-columns:1fr auto;align-items:end;gap:16px;padding:24px;display:grid}.share-card pre{margin-bottom:0}.copy-button{width:auto}.personal-summary-editor{padding:28px}.summary-actions{grid-template-columns:repeat(4,minmax(0,1fr))}}.travel-loading{min-height:100vh;color:var(--myguru-blue-dark);background:var(--background);justify-content:center;align-items:center;gap:10px;padding:24px;font-weight:750;display:flex}.travel-loading-dot{background:var(--myguru-blue);width:11px;height:11px;box-shadow:0 0 0 7px var(--myguru-blue-light);border-radius:999px;animation:1.2s ease-in-out infinite travel-pulse}@keyframes travel-pulse{50%{opacity:.55;transform:scale(.72)}}.travel-login-page{background:#fff;grid-template-columns:minmax(0,1.15fr) minmax(410px,.85fr);min-height:100dvh;display:grid;overflow:hidden}.travel-login-visual{isolation:isolate;color:#fff;background:linear-gradient(145deg, var(--myguru-blue-dark) 0%, #1519b8 38%, var(--myguru-blue) 100%);min-height:100dvh;padding:clamp(28px,4vw,54px);position:relative;overflow:hidden}.travel-login-visual:before{z-index:-2;aspect-ratio:1;background:color-mix(in srgb, var(--myguru-yellow) 88%, white);content:"";opacity:.96;border-radius:50%;width:min(46vw,620px);position:absolute;top:-34%;right:-24%}.travel-login-visual:after{z-index:-1;aspect-ratio:1;content:"";border:2px solid #fff3;border-radius:50%;width:min(34vw,460px);position:absolute;bottom:-24%;left:-17%;box-shadow:0 0 0 40px #ffffff0d,0 0 0 92px #ffffff09}.travel-login-brand{z-index:6;background:#fff;border-radius:16px;width:fit-content;padding:7px 13px;text-decoration:none;display:inline-flex;position:relative;box-shadow:0 14px 36px #00004133}.travel-login-brand .brand-logo img{height:clamp(42px,4.2vw,54px)}.travel-login-route{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.travel-login-route path{fill:none;stroke:#ffffffad;stroke-width:3px;stroke-linecap:round;stroke-dasharray:8 13}.travel-login-route circle{fill:var(--myguru-yellow);stroke:#fff;stroke-width:4px}.travel-login-plane{z-index:4;filter:drop-shadow(0 18px 24px #0204483d);width:clamp(255px,24vw,320px);animation:4.8s ease-in-out infinite travel-plane-float;position:absolute;top:8%;right:4%;overflow:visible}.travel-login-plane-art{width:100%;height:auto;display:block}.travel-plane-logo-badge{aspect-ratio:1;box-sizing:border-box;pointer-events:none;background:#fff;border:1px solid #10105833;border-radius:50%;place-items:center;width:9.2%;display:grid;position:absolute;top:29.5%;left:8.8%}.travel-plane-logo-badge img{object-fit:contain;width:72%;height:72%;display:block}@keyframes travel-plane-float{0%,to{transform:translate(0,0)}50%{transform:translate(-3px,-10px)}}.travel-login-visual-copy{z-index:4;max-width:600px;margin-top:clamp(70px,13vh,140px);position:relative}.travel-login-kicker{color:var(--myguru-yellow);letter-spacing:.18em;margin-bottom:14px;font-size:clamp(.72rem,1.1vw,.9rem);font-weight:900}.travel-login-slogan{letter-spacing:-.055em;white-space:nowrap;margin-bottom:18px;font-size:clamp(2.6rem,4.5vw,4.8rem);font-weight:900;line-height:1.08}.travel-login-mascot-stage{z-index:3;aspect-ratio:1;background:#fff;border:7px solid #ffffff8c;border-radius:50%;width:clamp(360px,34vw,500px);position:absolute;bottom:clamp(-100px,-7vw,-62px);right:clamp(-72px,-4vw,-36px);overflow:hidden;box-shadow:0 34px 90px #0204484d,inset 0 0 0 2px #0e25f514}.travel-login-mascot{object-fit:cover;width:100%;height:100%;display:block;transform:scale(1.04)translateY(1.5%)}.travel-login-panel{background:radial-gradient(circle at 100% 0,#fff20029,#0000 19rem),linear-gradient(#fff,#fafbff);flex-direction:column;justify-content:center;min-width:0;min-height:100dvh;padding:clamp(36px,6vw,84px);display:flex}.travel-login-card{width:min(100%,470px);margin:auto}.travel-login-card .eyebrow{margin-bottom:12px}.travel-login-card h1{color:var(--myguru-blue-dark);letter-spacing:-.055em;margin-bottom:18px;font-size:clamp(2.45rem,4vw,4rem)}.travel-login-intro{color:var(--text-muted);margin-bottom:28px;font-size:1rem}.travel-login-card .travel-sign-in{border-radius:14px;justify-content:center;align-items:center;gap:12px;width:100%;min-height:58px;margin:0 0 18px;font-size:1rem;display:flex;box-shadow:0 14px 28px #0e25f533}.travel-google-mark{width:28px;height:28px;color:var(--myguru-blue);background:#fff;border-radius:8px;place-items:center;font-size:.9rem;font-weight:900;display:grid}.travel-login-assurance{border:1px solid var(--border);background:#fff;border-radius:14px;align-items:flex-start;gap:10px;margin-bottom:18px;padding:14px 15px;display:flex}.travel-login-assurance>span{width:24px;height:24px;color:var(--myguru-blue-dark);background:var(--myguru-yellow);border-radius:50%;flex:none;place-items:center;font-size:.78rem;font-weight:900;display:grid}.travel-login-assurance p{color:var(--text);margin:0;font-size:.83rem}.travel-login-footer{color:#8a94a6;letter-spacing:.05em;margin:34px 0 0;font-size:.72rem}@media (width<=900px){.travel-login-page{grid-template-rows:minmax(350px,44svh) auto;grid-template-columns:minmax(0,1fr);overflow:visible}.travel-login-visual{min-height:350px;padding:24px}.travel-login-visual:before{width:430px;top:-240px;right:-105px}.travel-login-visual:after{width:300px;bottom:-210px;left:-150px}.travel-login-brand{border-radius:14px;padding:5px 11px}.travel-login-brand .brand-logo img{height:42px}.travel-login-plane{width:clamp(200px,33vw,245px);top:8%;right:4%}.travel-login-visual-copy{max-width:430px;margin-top:clamp(38px,6vh,62px)}.travel-login-slogan{max-width:360px;margin-bottom:0;font-size:clamp(2.25rem,6vw,3rem)}.travel-login-mascot-stage{border-width:5px;width:clamp(270px,43vw,360px);bottom:-58px;right:-30px}.travel-login-panel{min-height:56svh;padding:54px clamp(24px,8vw,72px) 26px}.travel-login-card{width:min(100%,540px)}.travel-login-footer{text-align:center;margin-top:36px}}@media (width<=520px){.travel-login-page{grid-template-rows:minmax(320px,41svh) auto}.travel-login-visual{min-height:320px;padding:18px 20px}.travel-login-visual:before{width:330px;top:-205px;right:-115px}.travel-login-brand .brand-logo img{height:38px}.travel-login-plane{width:142px;top:8%;right:4%}.travel-login-visual-copy{max-width:260px;margin-top:34px}.travel-login-kicker{letter-spacing:.13em;margin-bottom:9px;font-size:.62rem}.travel-login-slogan{max-width:260px;font-size:clamp(1.75rem,8.2vw,2.3rem)}.travel-login-mascot-stage{border-width:4px;width:165px;display:block;bottom:-39px;right:-14px}.travel-login-panel{min-height:59svh;padding:38px 20px 16px}.travel-login-card h1{margin-bottom:14px;font-size:clamp(2.2rem,11vw,3rem)}.travel-login-intro{margin-bottom:22px;font-size:.93rem}.travel-login-card .travel-sign-in{min-height:56px}.travel-login-footer{margin-top:28px}}@media (height<=720px) and (width>=901px){.travel-login-visual-copy{margin-top:45px}.travel-login-slogan{font-size:clamp(2.5rem,4.5vw,4.3rem)}.travel-login-mascot-stage{width:clamp(360px,36vw,470px)}.travel-login-panel{padding-block:30px}.travel-login-footer{margin-top:20px}}@media (prefers-reduced-motion:reduce){.travel-login-plane{animation:none}}.travel-gate-main{background:radial-gradient(circle at 80% 10%, #fff20038, transparent 28rem), var(--background);place-items:center;min-height:calc(100vh - 68px);padding:32px 16px;display:grid}.travel-gate-card{text-align:center;width:min(100%,540px);padding:32px}.travel-gate-card h1,.travel-admin-heading h1{color:var(--myguru-blue-dark)}.travel-gate-card>p:not(.eyebrow){color:var(--text-muted)}.travel-gate-mascot{border-radius:22px;width:min(184px,48vw);height:auto;margin:-10px auto 16px;display:block}.travel-sign-in{margin:10px 0 15px}.travel-gate-note{margin:0;font-size:.8rem}.access-denied-cover{object-fit:cover;width:calc(100% + 64px);max-height:220px;margin:-32px -32px 28px;display:block}.travel-admin-main{padding-block:36px 60px}.travel-admin-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:24px;display:flex}.travel-admin-heading h1{letter-spacing:-.045em;margin-bottom:8px;font-size:clamp(2rem,6vw,3.5rem)}.travel-admin-heading p:not(.eyebrow){max-width:620px;color:var(--text-muted);margin-bottom:0}.trip-brief-main{padding-block:38px 70px}.trip-brief-main h1{color:var(--myguru-blue-dark);letter-spacing:-.045em;margin-bottom:12px;font-size:clamp(2rem,7vw,3.5rem)}.trip-brief-intro{max-width:700px;color:var(--text-muted);margin-bottom:24px}.trip-brief-card{justify-items:start;gap:18px;padding:24px;display:grid}.trip-brief-card h2{color:var(--myguru-blue-dark);margin-bottom:0}.trip-brief-card ul{color:var(--text-muted);gap:8px;margin:0;padding-left:22px;display:grid}.trip-brief-privacy{color:var(--text-muted);margin-bottom:0;font-size:.85rem}.trip-brief-preview{margin-top:18px;padding:20px 24px}.trip-brief-preview summary{color:var(--myguru-blue-dark);cursor:pointer;font-weight:800}.trip-brief-preview pre{overflow-wrap:anywhere;white-space:pre-wrap;font:inherit;margin:18px 0 0;font-size:.9rem}.travel-admin-section-heading h2{color:var(--myguru-blue-dark);margin-bottom:8px}.travel-admin-section-heading p{color:var(--text-muted);margin-bottom:0}.travel-admin-drafts,.travel-admin-access{margin-bottom:28px}.travel-admin-section-heading{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px 24px;margin-bottom:16px;display:flex}.travel-admin-section-heading>p{max-width:620px}.travel-admin-draft-grid{gap:14px;display:grid}.travel-admin-draft-card{justify-items:start;gap:14px;padding:22px;display:grid}.travel-admin-draft-card h3{color:var(--myguru-blue-dark);margin:0}.travel-admin-trip-picker{width:min(100%,460px);margin-bottom:18px}.admin-trip-filters{grid-template-columns:minmax(150px,180px) minmax(0,560px);align-items:end;gap:14px;width:min(100%,754px);margin-bottom:18px;display:grid}.admin-trip-filters .trip-picker{width:100%;max-width:none;margin-bottom:0}.travel-admin-table select{border:1px solid var(--border);min-height:40px;color:var(--text);font:inherit;background:#fff;border-radius:10px;padding:7px 10px}.travel-admin-status{color:var(--myguru-blue-dark);background:var(--myguru-blue-light);border-radius:12px;padding:13px 15px;font-weight:700}.travel-admin-table-wrap{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:16px;overflow-x:auto}.travel-admin-table{border-collapse:collapse;width:100%;min-width:1040px;font-size:.84rem}.travel-admin-table th,.travel-admin-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;padding:12px 14px}.travel-admin-table th{color:#fff;background:var(--myguru-blue-dark);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem}.travel-admin-table tr:last-child td{border-bottom:0}.travel-admin-table td:nth-child(5){font-weight:750}.travel-admin-expense-entry{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;margin-bottom:28px;padding:22px;display:flex}.seat-intro,.seat-map-help{color:var(--text-muted);font-size:.9rem}.seat-page .seat-filter-fieldset{border:0;border-radius:0;min-width:0;margin:0;padding:0}.seat-section{margin-bottom:18px}.seat-section h2{color:var(--myguru-blue-dark);font-size:1.2rem}.seat-journey-details{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:8px;font-size:.9rem;display:flex}.seat-summary{grid-template-columns:repeat(3,minmax(0,1fr));margin:18px 0}.seat-map-scroll{border:1px solid var(--border);background:var(--background);border-radius:12px;max-width:100%;padding:12px;overflow-x:auto}.seat-map{gap:6px;width:100%;display:grid}.seat-map-row,.seat-map-group{display:contents}.seat-row-number{color:var(--text-muted);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;font-size:.8rem;display:flex}.seat-map-journey{overflow-wrap:anywhere;margin:8px 0;font-size:1rem}.seat-cell{border:1px solid var(--border);min-width:0;min-height:72px;color:var(--myguru-blue-dark);text-align:center;background:#fff;border-radius:8px;grid-template-rows:20px auto;align-content:start;gap:4px;padding:8px;display:grid}.seat-cell strong{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.85rem;line-height:20px}.seat-cell span{overflow-wrap:anywhere;min-width:0;font-size:.8rem;line-height:1.35}.seat-cell-assigned{border-color:var(--myguru-blue);background:var(--myguru-blue);color:#fff}.seat-map-scroll:focus-visible{outline:3px solid var(--myguru-blue);outline-offset:3px}.seat-page [disabled]{cursor:not-allowed}.travel-admin-expense-entry h2{color:var(--myguru-blue-dark);margin-bottom:6px}.travel-admin-expense-entry p:last-child{color:var(--text-muted);margin-bottom:0}.expense-page{padding-block:32px 64px}.expense-heading h1{color:var(--myguru-blue-dark);margin-bottom:8px;font-size:clamp(2rem,5vw,3rem)}.expense-heading p:last-child{color:var(--text-muted)}.expense-trip-picker{max-width:560px;margin-bottom:20px}.expense-trip-filters{margin-bottom:20px}.trip-picker{color:var(--myguru-blue-dark);gap:5px;font-weight:800;display:grid;position:relative}.trip-picker-native,.trip-picker-trigger{border:1px solid var(--border);width:100%;min-width:0;min-height:54px;color:var(--text);font:inherit;text-align:left;background:#fff;border-radius:10px;padding:12px 10px;font-size:1rem}.trip-picker-trigger{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;display:none}.trip-picker-trigger:focus-visible,.trip-picker-option:focus-visible{outline:3px solid color-mix(in srgb, var(--myguru-blue) 30%, transparent);outline-offset:2px}.trip-picker-chevron{color:var(--myguru-blue);font-size:1.45rem;line-height:.8;transform:translateY(-2px)}.trip-picker-menu{z-index:50;border:1px solid var(--border);background:#fff;border-radius:14px;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow:hidden;box-shadow:0 18px 42px #1010962e}.trip-picker-option{border:0;border-bottom:1px solid var(--border);width:100%;min-height:62px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:#fff;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;font-size:1.08rem;font-weight:750;display:flex}.trip-picker-option:last-child{border-bottom:0}.trip-picker-option:hover,.trip-picker-option[aria-selected=true]{background:var(--myguru-blue-light)}.trip-picker-option[aria-selected=true]{box-shadow:inset 5px 0 0 var(--myguru-yellow)}.trip-picker-check{color:var(--myguru-blue);font-size:1.15rem}.expense-roster-editor input[type=search],.expense-form input:not([type=checkbox]),.expense-form select,.expense-payment-form input{border:1px solid var(--border);width:100%;min-height:42px;color:var(--text);font:inherit;background:#fff;border-radius:10px;padding:8px 10px;font-size:1rem}.expense-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.expense-summary>div{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:14px;gap:4px;padding:16px;display:grid}.expense-summary span{color:var(--text-muted);font-size:.78rem}.expense-summary strong{color:var(--myguru-blue-dark);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:clamp(1rem,2.3vw,1.4rem)}.expense-estimate{color:var(--text-muted);margin:12px 0 22px;font-size:.85rem}.expense-roster,.expense-panel{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:18px;padding:20px}.expense-roster{margin-bottom:20px}.expense-roster>p{color:var(--text-muted);margin:0;font-size:.88rem}.expense-section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px 16px;margin-bottom:12px;display:flex}.expense-section-head h2{color:var(--myguru-blue-dark);margin-bottom:4px;font-size:1.25rem}.expense-section-head p{color:var(--text-muted);margin-bottom:0;font-size:.85rem}.expense-roster-editor{border-top:1px solid var(--border);margin-top:16px;padding-top:16px}.expense-roster-editor>label,.expense-form-grid>label,.expense-payment-form>label{color:var(--myguru-blue-dark);align-content:start;gap:5px;font-size:.84rem;font-weight:750;display:grid}.expense-form-grid>label small{color:var(--text-muted);font-size:.75rem;font-weight:500}.expense-roster-editor>label{max-width:360px}.expense-teacher-options,.expense-check-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:6px;max-height:260px;margin:12px 0;display:grid;overflow-y:auto}.expense-teacher-options label,.expense-check-grid label,.expense-bulk label{cursor:pointer;align-items:center;gap:8px;min-height:36px;font-size:.87rem;display:inline-flex}.expense-teacher-options input,.expense-check-grid input,.expense-bulk input,.expense-person-head input{width:18px;height:18px;accent-color:var(--myguru-blue)}.expense-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.expense-actions span{color:var(--text-muted);font-size:.82rem}.expense-tabs{border-bottom:1px solid var(--border);gap:8px;margin-bottom:18px;display:flex}.expense-tabs button{color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;padding:10px 14px;font-weight:800}.expense-tabs button[aria-selected=true]{color:var(--myguru-blue-dark);border-color:var(--myguru-blue)}.expense-form{background:var(--background);border:1px solid var(--border);border-radius:14px;margin:16px 0;padding:16px}.expense-form h3{color:var(--myguru-blue-dark);margin-bottom:14px;font-size:1.08rem}.expense-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.expense-form-wide{grid-column:1/-1}.expense-date-control{display:contents}.expense-form input:not([type=checkbox]),.expense-form select,.expense-payment-form input{box-sizing:border-box;height:48px;min-height:48px}.expense-form fieldset{border:1px solid var(--border);border-radius:10px;min-width:0;padding:10px 12px}.expense-form legend{color:var(--myguru-blue-dark);padding-inline:4px;font-size:.84rem;font-weight:750}.expense-split-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 14px;display:flex}.expense-split-toolbar p{color:var(--text-muted);flex:260px;margin:0;font-size:.8rem}.expense-split-actions{align-items:stretch;gap:8px;max-width:100%;display:flex}.expense-selected-count{border:1px solid var(--border);min-height:40px;color:var(--myguru-blue-dark);font-variant-numeric:tabular-nums;white-space:nowrap;background:#fff;border-radius:10px;flex:none;justify-content:center;align-items:center;padding:8px 12px;font-size:.82rem;font-weight:800;display:flex}.expense-select-all{min-width:0;min-height:40px;padding:8px 12px;font-size:.82rem}.expense-check-grid{max-height:180px}.expense-text-button{color:var(--myguru-blue-dark);font:inherit;cursor:pointer;background:0 0;border:0;padding:6px 0;font-size:.83rem;font-weight:800}.expense-text-button:disabled{opacity:.5;cursor:not-allowed}.expense-list{border-top:1px solid var(--border)}.expense-item,.expense-person{border-bottom:1px solid var(--border)}.expense-item-toggle{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 0;display:flex}.expense-item-toggle span{overflow-wrap:anywhere;gap:3px;min-width:0;display:grid}.expense-item-toggle small,.expense-person-head small{color:var(--text-muted);font-size:.78rem;font-weight:500}.expense-item-toggle .expense-split-summary{color:var(--myguru-blue-dark);font-weight:750}.expense-person-actions{flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:8px;display:flex}.expense-person-actions .expense-text-button{min-height:44px}.expense-person-actions .button{min-height:44px;padding:8px 12px;font-size:.83rem}.expense-statement{border:1px solid var(--border);background:var(--background);border-radius:12px;margin:12px 0;padding:14px}.expense-statement h3{color:var(--myguru-blue-dark);margin:0 0 8px;font-size:.95rem}.expense-statement>p{color:var(--text-muted);overflow-wrap:anywhere;font-size:.83rem}.expense-statement-text{color:var(--myguru-blue-dark);gap:8px;font-size:.84rem;font-weight:750;display:grid}.expense-statement-text textarea{box-sizing:border-box;resize:vertical;border:1px solid var(--border);width:100%;min-width:0;color:var(--text);font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;background:#fff;border-radius:10px;padding:10px;font-weight:400;line-height:1.6}.expense-statement .expense-statement-status{color:var(--myguru-blue-dark)}.expense-item-toggle b{font-variant-numeric:tabular-nums;white-space:nowrap}.expense-item-detail,.expense-person-detail{background:var(--background);border-radius:12px;margin-bottom:14px;padding:14px}.expense-item-detail dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.expense-item-detail dl>div{min-width:0}.expense-item-detail dt{color:var(--text-muted);font-size:.75rem}.expense-item-detail dd{overflow-wrap:anywhere;margin:0;font-weight:700}.expense-item-detail>p,.expense-detail-note{color:var(--text-muted);font-size:.86rem}.expense-share-detail{border-top:1px solid var(--border);max-width:500px;margin-bottom:10px;padding-top:10px}.expense-share-detail>strong{color:var(--myguru-blue-dark);margin-bottom:5px;display:block}.expense-share-detail p,.expense-detail-row{justify-content:space-between;align-items:start;gap:12px;margin:0;padding:5px 0;font-size:.88rem;display:flex}.expense-share-detail p>span:last-child,.expense-detail-row>b{font-variant-numeric:tabular-nums;white-space:nowrap}.expense-total{color:var(--myguru-blue-dark);justify-content:space-between;gap:10px;padding:14px 0 4px;font-weight:850;display:flex}.expense-total strong{font-variant-numeric:tabular-nums}.expense-footnote{color:var(--text-muted);margin-bottom:0;font-size:.79rem}.saving-export .expense-actions+.saving-export-help{margin-top:10px}.saving-export-help{color:var(--text-muted);overflow-wrap:anywhere;font-size:.85rem}.saving-month{align-content:start;gap:5px;min-width:0;display:grid}.saving-month>span{color:var(--myguru-blue-dark);font-size:.84rem;font-weight:750}.saving-month>div{gap:8px;display:flex}.saving-month select{flex:1;min-width:0}.saving-export .expense-bulk output{color:var(--myguru-blue-dark);font-size:.9rem;font-weight:800}.saving-export-teachers{border-block:1px solid var(--border);max-height:320px;overflow-y:auto}.saving-export-row{cursor:pointer;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:9px;padding:12px 0;display:grid}.saving-export-row input[type=checkbox]{width:18px;height:18px;min-height:0;accent-color:var(--myguru-blue)}.saving-export-row span{overflow-wrap:anywhere;gap:2px;min-width:0;display:grid}.saving-export-row strong,.saving-export-row b{color:var(--myguru-blue-dark);font-size:.9rem}.saving-export-row b{font-variant-numeric:tabular-nums;white-space:nowrap}.saving-export-row small,.saving-export-text small{color:var(--text-muted);font-size:.77rem}.saving-export-status{color:var(--myguru-blue-dark);overflow-wrap:anywhere;margin:12px 0;font-size:.85rem}.saving-export-preview{border:1px solid var(--border);border-radius:12px;margin-top:12px;padding:14px}.saving-export-preview h4{color:var(--myguru-blue-dark);margin:0 0 8px}.saving-export-preview .expense-actions{margin:10px 0 14px}.saving-export-text{color:var(--myguru-blue-dark);gap:5px;font-size:.84rem;font-weight:750;display:grid}.saving-export-text textarea{box-sizing:border-box;resize:vertical;border:1px solid var(--border);width:100%;min-width:0;color:var(--text);white-space:pre;background:#fff;border-radius:10px;padding:10px;font-size:.85rem}.expense-empty{color:var(--text-muted);padding:18px 0}.expense-bulk{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:14px 0;display:flex}.expense-person{padding:12px 0}.expense-person-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.expense-person-head label{align-items:flex-start;gap:9px;min-width:0;display:flex}.expense-person-head label>span{gap:2px;display:grid}.expense-person-head label strong{color:var(--myguru-blue-dark)}.expense-person-head>div{text-align:right;white-space:nowrap}.expense-person-head>div strong{color:var(--myguru-blue-dark);font-variant-numeric:tabular-nums;display:block}.expense-person-head>div small{display:block}.expense-person-detail h3{color:var(--myguru-blue-dark);margin:8px 0;font-size:.95rem}.expense-detail-row em{color:var(--text-muted);font-size:.72rem;font-style:normal}.expense-detail-sum{border-top:1px solid var(--border);margin-top:5px;padding-top:8px;font-weight:800}.expense-detail-row .expense-text-button{margin-left:6px}.expense-payment-form{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:10px;margin-top:12px;display:grid}.expense-payment-form button{justify-self:start}@media (width<=720px){.admin-trip-filters{grid-template-columns:minmax(0,1fr);width:min(100%,560px)}.expense-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.expense-payment-form{grid-template-columns:1fr 1fr}}@media (width>=721px){.trip-picker-native{min-height:64px;padding:16px 14px;font-size:1.08rem}}@media (width>=721px) and (hover:hover) and (pointer:fine){.trip-picker-native{display:none}.trip-picker-trigger{min-height:68px;padding:16px 18px;font-size:1.1rem;display:flex}}@media (width>=481px) and (width<=900px){.expense-form-grid,.expense-payment-form{grid-template-columns:1fr}.expense-form-wide{grid-column:auto}}@media (any-pointer:coarse){.expense-form-grid>label{min-width:0}.expense-form input:not([type=checkbox]),.expense-form select,.expense-payment-form input{height:54px;min-height:54px;max-height:54px}.expense-form input[type=date]{text-align:left}.expense-form input[type=date]::-webkit-date-and-time-value{text-align:left;justify-content:flex-start;align-items:center;height:100%;margin:0;display:flex}.expense-payment-form input[type=date]::-webkit-date-and-time-value{text-align:left;justify-content:flex-start;align-items:center;height:100%;margin:0;display:flex}.expense-date-control{border:1px solid var(--border);box-sizing:border-box;background:#fff;border-radius:10px;width:100%;min-width:0;height:54px;min-height:54px;max-height:54px;display:block;position:relative;overflow:hidden}.expense-form .expense-date-control input[type=date],.expense-payment-form .expense-date-control input[type=date]{box-sizing:border-box;text-align:left;background:0 0;border:0;border-radius:0;width:100%;min-width:0;max-width:100%;height:100%;min-height:0;max-height:100%;margin:0;padding:0 10px;position:absolute;inset:0}}@media (width>=700px) and (height>=700px) and (width<=1400px) and (any-pointer:coarse){.expense-form-grid,.expense-payment-form{grid-template-columns:repeat(2,minmax(0,1fr))}.expense-form-wide{grid-column:1/-1}}@media (width<=480px){.expense-summary{gap:6px}.expense-summary>div{padding:11px}.expense-summary strong{font-size:1rem}.expense-roster,.expense-panel{padding:15px}.expense-form-grid,.expense-payment-form,.expense-item-detail dl{grid-template-columns:1fr}.expense-person-head{flex-direction:column}.expense-person-head>div{text-align:left;padding-left:27px}}@media (width<=600px){.directory-header{flex-wrap:wrap;row-gap:4px}.directory-header .header-actions{flex-wrap:wrap;flex:none;max-width:100%;margin-left:auto}.directory-header .header-link{min-height:44px}}@media (width<=360px){.directory-header{gap:8px}.directory-header .header-actions{gap:2px}.directory-header .header-link{white-space:nowrap;padding-inline:7px;font-size:.75rem}.directory-header .brand-logo img{height:44px}}@media (width>=700px) and (width<=1400px) and (any-pointer:coarse){.travel-gate-card{transform:translateY(clamp(-60px,-6vh,-40px))}}@media print{:root{--background:#fff;--shadow:none}.trip-theme-root{background:#fff;--trip-page-bg:#fff!important;--trip-surface:#fff!important;--trip-surface-alt:#fff!important;--trip-text:#111!important;--trip-muted:#333!important;--trip-border:#bbb!important;--trip-hero-overlay:#fff0!important;--trip-image-border:#bbb!important;--trip-image-bg:#fff!important}.trip-image-fallback{color:#333;border:1px solid var(--trip-image-border)}@page{size:A4 portrait;margin:14mm}html{scroll-padding-top:0}body{color:#111;background:#fff;font-size:10pt}.quick-nav,.header-link,.logout-form,.text-button,.copy-button,.button-row button,.draft-handoff-panel{display:none!important}.site-header{color:#111;background:#fff;min-height:0;padding:0 0 6mm}.site-header>.brand-link{background:0 0;padding:0}.site-header .print-button{display:none!important}.button-row{gap:4mm;margin-top:4mm}.button-row a{color:#111;background:0 0;border:0;min-height:0;padding:0}.page-shell{width:100%}.hero{grid-template-columns:1fr .65fr;min-height:auto;padding-block:0 12mm}.trip-theme-root[data-trip-theme=korea-coastal-modern] .hero,.trip-theme-root[data-trip-id=henan-2026] .hero{grid-template-columns:1fr}.hero h1{font-size:30pt}.cover-placeholder,.cover-image{min-height:72mm;max-height:72mm}.trip-theme-root[data-trip-theme=korea-coastal-modern] .cover-image,.trip-theme-root[data-trip-id=henan-2026] .cover-image{height:auto;min-height:0;max-height:none}.content-section{break-inside:auto;padding-block:8mm}.card,.day-card,.notice-card,.overview-card,.share-card{box-shadow:none;break-inside:avoid}.overview-grid,.notice-grid,.highlight-grid,.food-grid,.souvenir-grid{grid-template-columns:repeat(2,1fr)}.hotel-grid,.weather-grid{grid-template-columns:repeat(3,1fr)}.hotel-grid-single{grid-template-columns:1fr}.hotel-card-with-image{grid-template-columns:.8fr 1.2fr;display:grid}.hotel-card-with-image .hotel-image{aspect-ratio:auto;height:42mm}.highlight-card,.food-card,.souvenir-card,.related-media{break-inside:avoid}.media-link{color:#111;background:#fff}.timeline-details[hidden],.stacked-details[hidden],.expandable-details[hidden],.learning-details[hidden]{display:block!important}.share-card pre{max-height:none;overflow:visible}.personal-summary-section{display:none!important}footer{color:#111;background:#fff;border-top:1px solid #bbb;margin-top:8mm}.footer-inner .brand-logo{background:0 0;padding:0}.footer-inner p{color:#333}body.print-personal-summary{font-size:11pt}body.print-personal-summary .site-header,body.print-personal-summary .quick-nav,body.print-personal-summary .hero,body.print-personal-summary main>.page-shell>:not(.personal-summary-section),body.print-personal-summary footer{display:none!important}body.print-personal-summary main>.page-shell{width:100%}body.print-personal-summary .personal-summary-section{border:0;padding:0;display:block!important}body.print-personal-summary .personal-summary-section>:not(.personal-summary-print){display:none!important}body.print-personal-summary .personal-summary-print{color:#152235;-webkit-print-color-adjust:exact;print-color-adjust:exact;display:block}.summary-print-header{border-bottom:3px solid var(--myguru-yellow);margin-bottom:10mm;padding-bottom:6mm}.summary-print-header .brand-logo{margin-bottom:7mm}.summary-print-header .brand-logo img{max-width:62mm;height:16mm}.summary-print-header>p{color:var(--myguru-blue);margin-bottom:2mm;font-size:10pt;font-weight:800}.summary-print-header h1{color:var(--myguru-blue-dark);margin-bottom:0;font-size:24pt}.summary-print-content{gap:6mm;display:grid}.summary-print-content section{break-inside:avoid}.summary-print-content h2{color:var(--myguru-blue-dark);margin-bottom:2mm;font-size:12pt}.summary-print-content p{white-space:pre-wrap;margin-bottom:0}.summary-print-content ol{margin:0;padding-left:7mm}.summary-print-content li{white-space:pre-wrap;break-inside:avoid;padding-left:1.5mm}.summary-print-content li+li{margin-top:3mm}}.admin-trip-selection{margin-bottom:22px}.admin-trip-selection .admin-trip-filters{margin-bottom:12px}.admin-trip-selection p{margin:0}.admin-trip-context{border:1px solid var(--border);background:var(--surface);border-radius:16px;margin:20px 0;padding:18px}.admin-trip-context-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-trip-context-heading small,.admin-trip-context-heading strong{overflow-wrap:anywhere;display:block}.admin-trip-context-heading small{color:var(--text-muted);margin-bottom:5px}.admin-trip-context-heading strong{color:var(--myguru-blue-dark);font-size:1.1rem}.admin-trip-context-heading a{font-size:.9rem}.admin-trip-nav{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.admin-trip-nav a{border:1px solid var(--border);min-height:44px;color:var(--myguru-blue-dark);border-radius:10px;align-items:center;padding:9px 12px;text-decoration:none;display:inline-flex}.admin-trip-nav a[aria-current=page]{color:#fff;background:var(--myguru-blue-dark);border-color:var(--myguru-blue-dark)}.seat-source-picker{margin:12px 0}.seat-source-note{color:var(--text-muted);overflow-wrap:anywhere}.seat-roster{margin-bottom:18px;padding:12px}.seat-roster h2{color:var(--myguru-blue-dark);margin:0 0 6px;font-size:1.1rem}.seat-roster>.seat-map-help{margin:0 0 10px;font-size:.82rem}.seat-roster-list{border-top:1px solid var(--border);column-gap:18px;display:grid}.seat-roster-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) 76px;align-items:center;gap:8px;min-width:0;padding:5px 0;display:grid}.seat-roster-train{grid-template-columns:minmax(0,1fr) 60px 76px}.seat-roster .seat-roster-person{cursor:pointer;align-items:center;gap:7px;min-width:0;min-height:36px;display:flex}.seat-roster-person span{overflow-wrap:anywhere;gap:2px;min-width:0;line-height:1.2;display:grid}.seat-roster-person strong{font-size:.86rem}.seat-roster-person small{color:var(--text-muted);font-size:.66rem}.seat-roster .seat-roster-person input{width:20px;height:20px;min-height:20px;accent-color:var(--myguru-blue);flex:0 0 20px}.seat-roster-field{min-width:0;color:var(--text-muted);gap:0;font-size:.66rem;line-height:1.2;display:grid}.seat-roster-field-title{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.seat-roster .seat-roster-field input{border-radius:7px;width:100%;min-width:0;height:36px;min-height:36px;max-height:36px;padding:5px 7px;font-size:1rem}.seat-roster .seat-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:10px 0}.seat-roster .seat-summary>div{box-shadow:none;border-radius:8px;justify-content:space-between;align-items:center;gap:6px;padding:8px;display:flex}.seat-roster .seat-summary span{font-size:.72rem}.seat-roster .seat-summary strong{font-size:1rem}@media (any-pointer:coarse){.seat-roster .seat-roster-field input{height:44px;min-height:44px;max-height:44px}.seat-roster .seat-roster-person{min-height:44px}}@media (width>=700px){.seat-roster-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1200px){.seat-roster-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=380px){.seat-roster-row{grid-template-columns:minmax(0,1fr) 68px;gap:6px}.seat-roster-train{grid-template-columns:minmax(0,1fr) 52px 68px}.seat-roster .seat-summary>div{gap:3px;padding:6px}.seat-roster .seat-summary span{font-size:.66rem}}.seat-layout-section{padding:16px}.seat-page .seat-layout-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:10px;display:grid}.seat-layout-grid .trip-picker{gap:5px;min-width:0}.seat-layout-grid .trip-picker-label,.seat-layout-grid>label{font-size:.84rem;line-height:1.4}.seat-layout-grid .trip-picker-native,.seat-layout-grid .trip-picker-trigger,.seat-distribution input:not([type=checkbox]),.seat-distribution select{box-sizing:border-box;height:44px;min-height:44px;max-height:44px;padding:7px 9px;font-size:1rem}.seat-layout-grid .trip-picker-trigger{gap:6px}.seat-layout-grid .trip-picker-trigger>span:first-child,.seat-map-switch .trip-picker-trigger>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.seat-layout-grid .trip-picker-chevron{flex:none}.seat-page .trip-picker-menu{max-height:min(60vh,360px);overflow-y:auto}.seat-page .trip-picker-option{overflow-wrap:anywhere;min-height:44px;padding:10px;font-size:.9rem}.seat-page .seat-distribution{background:0 0;border:0;margin:12px 0 0;padding:0}.seat-distribution .seat-map-help{margin:8px 0 0;font-size:.78rem}.seat-distribution .expense-actions{margin-top:10px}.seat-layout-section .seat-journey-details>span{overflow-wrap:anywhere;min-width:0}.seat-layout-section>.seat-map-help{margin:10px 0 0;font-size:.78rem}.seat-map-switch{grid-template-columns:auto minmax(0,1fr) auto;align-items:end;gap:10px;display:grid;margin-bottom:14px!important}.seat-map-switch .trip-picker{min-width:0}.seat-map-switch .trip-picker-label{font-size:.84rem}.seat-map-switch .trip-picker-native,.seat-map-switch .trip-picker-trigger,.seat-map-switch>button{box-sizing:border-box;height:44px;min-height:44px;padding:7px 10px;font-size:.9rem}.seat-cabin-nav{flex-wrap:wrap;gap:8px;margin:14px 0;display:flex}.seat-cabin-nav button{border:1px solid var(--border);background:var(--myguru-blue-light);min-height:44px;color:var(--myguru-blue-dark);font:inherit;cursor:pointer;border-radius:8px;padding:8px 12px;font-size:.85rem;font-weight:750}.seat-pending{border:1px solid var(--border);border-radius:10px;margin:12px 0;padding:10px 12px;font-size:.85rem}.seat-pending summary{color:var(--myguru-blue-dark);cursor:pointer;font-weight:750}.seat-pending ul{margin:10px 0 0;padding-left:20px}.seat-pending li{overflow-wrap:anywhere}.seat-map-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,520px),1fr));align-items:start;gap:14px;display:grid}.seat-map-card{border:1px solid var(--border);border-radius:12px;min-width:0;padding:12px}.seat-map-card-wide{grid-column:1/-1}.seat-map-card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 12px;margin-bottom:10px;display:flex}.seat-map-card-head h4{color:var(--myguru-blue-dark);overflow-wrap:anywhere;gap:2px;margin:0;scroll-margin-top:90px;display:grid}.seat-map-card-head h4 span{color:var(--text-muted);font-size:.78rem;font-weight:500}.seat-map-card-head>div{flex-wrap:wrap;gap:16px;display:flex}.seat-map-card-head button{min-height:44px}.seat-map-dialog{border:1px solid var(--border);width:calc(100% - 24px);max-width:1400px;max-height:calc(100dvh - 24px);color:var(--text);background:#fff;border-radius:16px;padding:20px;overflow-y:auto}.seat-map-dialog::backdrop{background:#00000080}.seat-map-dialog-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.seat-map-dialog-head h3{overflow-wrap:anywhere;min-width:0;color:var(--myguru-blue-dark);margin:0}.seat-map-dialog-head button{min-height:44px}@media (width<=480px){.seat-map-switch{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.seat-map-switch .trip-picker{grid-area:1/1/auto/-1}.seat-map-switch>button{width:100%}.seat-map-card{padding:10px}.seat-map-card .seat-map-scroll{padding:8px}.seat-map-dialog{padding:12px}}@media (width<=360px){.seat-layout-grid .trip-picker-label{min-height:38px}.seat-layout-grid>label{gap:5px}.seat-layout-grid .trip-picker-label,.seat-layout-grid>label{font-size:.78rem}}.room-page>.expense-actions{margin:0 0 16px}.room-selection,.room-overview,.room-personal{margin-block:18px}.room-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.room-picker-grid .trip-picker{gap:5px}.room-picker-grid .trip-picker-label{font-size:.84rem;line-height:1.4}.room-picker-grid .trip-picker-native,.room-picker-grid .trip-picker-trigger{box-sizing:border-box;height:44px;min-height:44px;max-height:44px;padding:7px 9px;font-size:1rem}.room-picker-grid .trip-picker-trigger>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.room-picker-grid .trip-picker-chevron{flex:none}.room-picker-grid .expense-actions{margin-block:10px 0}.room-selection .trip-picker-menu{max-height:min(60vh,360px);overflow-y:auto}.room-selection .trip-picker-option{overflow-wrap:anywhere;min-height:44px;padding:10px;font-size:.9rem}.room-picker-grid>*,.room-member-editor>label{min-width:0}.room-help,.room-members-summary{color:var(--text-muted);overflow-wrap:anywhere;font-size:.86rem}.room-help{margin-block:12px}.room-editor h2,.room-overview h2,.room-personal h2{color:var(--myguru-blue-dark);font-size:1.25rem}.room-editor .room-editor-fields{border:0;padding:0}.room-editor-groups{gap:12px;margin-top:14px;display:grid}.room-edit-card,.room-saved-card{border:1px solid var(--border);background:#fff;border-radius:12px;min-width:0;padding:14px}.room-card-head{align-items:center;gap:12px;display:flex}.room-group-toggle{min-width:0;min-height:44px;color:var(--myguru-blue-dark);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;flex:1;justify-content:space-between;align-items:center;gap:12px;padding:0;display:flex}.room-group-toggle strong{overflow-wrap:anywhere}.room-group-toggle span{white-space:nowrap;font-size:.85rem}.room-card-head .expense-text-button{flex-shrink:0;min-height:44px}.room-members-summary{margin:4px 0}.room-member-editor{gap:12px;margin-top:12px;display:grid}.room-member-editor>label{color:var(--myguru-blue-dark);gap:5px;font-size:.84rem;font-weight:750;display:grid}.room-teacher-grid{border-block:1px solid var(--border);grid-template-columns:repeat(auto-fill,minmax(min(100%,210px),1fr));grid-auto-rows:max-content;align-content:start;gap:4px 12px;max-height:270px;padding-block:8px;display:grid;overflow-y:auto}.room-teacher-grid label{cursor:pointer;align-items:center;gap:10px;min-height:48px;display:flex}.room-teacher-grid span{overflow-wrap:anywhere;gap:2px;min-width:0;display:grid}.room-teacher-grid strong{font-size:.87rem}.room-teacher-grid small{color:var(--text-muted);font-size:.77rem}.room-teacher-grid input[type=checkbox]{width:18px;height:18px;accent-color:var(--myguru-blue);flex-shrink:0}.room-teacher-grid label:has(input:disabled){opacity:.65}.room-overview-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.room-overview-heading h2{min-width:0;margin:0;line-height:1.3}.room-stay-nav{flex:none;grid-template-columns:auto auto auto;align-items:center;gap:8px;margin:0;display:grid}.room-stay-nav .button{min-width:0;min-height:44px;padding:7px 9px;font-size:.84rem}.room-stay-nav>span{color:var(--text-muted);text-align:center;white-space:nowrap;font-size:.84rem}.room-overview h3{overflow-wrap:anywhere;color:var(--myguru-blue-dark);margin-block:12px 6px}.room-overview>p{font-size:.9rem}.room-counts{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.room-counts span{background:var(--background);color:var(--myguru-blue-dark);border-radius:10px;padding:8px 12px;font-size:.86rem}.room-overview-grid{grid-template-columns:minmax(0,1fr);gap:6px 10px;display:grid}.room-overview{--room-control-height:36px}.room-saved-number{min-width:0;min-height:var(--room-control-height);border:1px solid var(--border);box-sizing:border-box;color:var(--myguru-blue-dark);text-align:center;overflow-wrap:anywhere;background:#fff;border-radius:7px;justify-content:center;align-items:center;padding:5px 7px;font-size:1rem;line-height:1.2;display:flex}.room-saved-number-empty{color:var(--text-muted);font-size:.72rem}.room-personal-extra{border-top:1px solid var(--border);margin-top:14px;padding-top:8px}.room-personal-extra summary{cursor:pointer;min-height:44px;color:var(--myguru-blue-dark);align-content:center}.room-saved-card h4{overflow-wrap:anywhere;color:var(--myguru-blue-dark);justify-content:space-between;gap:12px;display:flex}.room-saved-card h4 small{flex-shrink:0;font-weight:500}.room-saved-card ul{margin:10px 0 0;padding-left:20px}.room-saved-card li{overflow-wrap:anywhere;padding-block:4px}.room-saved-card li small{color:var(--text-muted)}.room-unassigned{border-top:1px solid var(--border);margin-top:18px;padding-top:12px}.room-unassigned summary{cursor:pointer;min-height:44px;color:var(--myguru-blue-dark);font-weight:750;display:list-item}.room-unassigned p{overflow-wrap:anywhere;font-size:.88rem}.room-unassigned small{color:var(--text-muted)}.room-copy-filters{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:10px;display:grid}.room-personal .trip-picker{min-width:0}.room-personal .trip-picker-native,.room-personal .trip-picker-trigger{box-sizing:border-box;height:44px;min-height:44px;padding:7px 9px;font-size:.9rem}.room-personal .trip-picker-trigger>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.room-personal .trip-picker-menu{max-height:min(60vh,360px);overflow-y:auto}.room-personal .trip-picker-option{overflow-wrap:anywhere;min-height:44px}.room-personal .expense-statement-text{margin-top:14px}.room-empty{color:var(--text-muted);margin-block:24px}.room-control-fields{border:0;min-width:0;margin:0;padding:0}.room-editor{--room-control-height:36px;padding:12px}.room-editor h2{margin:0 0 6px;font-size:1.1rem}.room-stay-fields{grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr));gap:10px;display:grid}.room-stay-fields>label{min-width:0;color:var(--myguru-blue-dark);gap:5px;font-size:.84rem;font-weight:750;display:grid}.room-stay-fields input:not([type=date]),.room-roster-toolbar input[type=search],.room-editor input.room-number-input{height:var(--room-control-height);min-height:var(--room-control-height);max-height:var(--room-control-height);border-radius:7px;padding:5px 7px}.room-stay-fields .expense-date-control{width:100%;min-width:0;height:var(--room-control-height);min-height:var(--room-control-height);max-height:var(--room-control-height);border:1px solid var(--border);box-sizing:border-box;background:#fff;border-radius:7px;display:block;position:relative;overflow:hidden}.room-stay-fields .expense-date-control input[type=date]{box-sizing:border-box;text-align:left;background:0 0;border:0;border-radius:0;width:100%;min-width:0;max-width:100%;height:100%;min-height:0;max-height:100%;margin:0;padding:0 7px;position:absolute;inset:0}.room-roster-toolbar{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:5px 10px;margin:16px 0 8px;display:grid}.room-roster-toolbar>label:first-child{min-width:0;color:var(--myguru-blue-dark);gap:5px;font-size:.84rem;font-weight:750;display:grid}.room-roster-toolbar .room-add-group{height:var(--room-control-height);min-height:var(--room-control-height);border-radius:7px;padding:5px 9px;font-size:.83rem}.room-unassigned-filter{cursor:pointer;grid-column:1/-1;align-items:center;gap:8px;min-height:44px;font-size:.86rem;display:flex}.room-unassigned-filter input{width:18px;height:18px;accent-color:var(--myguru-blue)}.room-quick-roster{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr);column-gap:18px;display:grid}.room-quick-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) 52px 44px;align-items:center;gap:8px;min-width:0;padding:5px 0;display:grid}.room-quick-identity{overflow-wrap:anywhere;align-content:center;gap:2px;min-width:0;min-height:36px;line-height:1.2;display:grid}.room-quick-identity strong{color:var(--myguru-blue-dark);font-size:.86rem}.room-quick-identity small{color:var(--text-muted);font-size:.66rem}.room-editor input.room-group-input{text-align:center;border-radius:7px;height:36px;min-height:36px;max-height:36px;padding:5px 4px;font-size:1rem;font-weight:800}.room-quick-row .room-choose-group{border-radius:7px;height:36px;min-height:36px;padding:5px 2px;font-size:.83rem}.room-group-options{border:1px solid var(--border);background:#fff;border-radius:10px;flex-wrap:wrap;grid-column:1/-1;gap:6px;padding:8px;display:flex}.room-group-options .button{min-width:44px;min-height:44px;padding:6px 10px}.room-group-options .button[aria-pressed=true]{background:var(--myguru-blue);color:#fff;border-color:var(--myguru-blue)}.room-group-error{color:var(--myguru-red);grid-column:1/-1;font-size:.8rem}.room-live-heading{margin-top:22px}.room-live-groups{grid-template-columns:minmax(0,1fr);gap:6px 10px;display:grid}.room-live-groups .room-edit-card,.room-saved-card{border-radius:8px;grid-template-columns:62px minmax(0,1fr) 68px;align-items:center;gap:8px;padding:6px;display:grid}.room-live-groups .room-card-head,.room-saved-card .room-card-head{min-width:0;color:var(--myguru-blue-dark);justify-items:start;gap:5px;font-size:.86rem;line-height:1.2;display:grid}.room-occupancy{background:var(--myguru-blue-light);color:var(--myguru-blue-dark);border-radius:6px;padding:3px 4px;font-size:.72rem;font-weight:850}.room-occupancy-warning{color:var(--myguru-red)}.room-preview-members{min-width:0;color:var(--myguru-blue-dark);overflow-wrap:anywhere;margin:0;padding:0;font-size:.86rem;line-height:1.3;list-style:none}.room-number-label{min-width:0;color:var(--text-muted);gap:4px;font-size:.72rem;display:grid}@media (width>=700px){.room-quick-roster,.room-live-groups,.room-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1200px){.room-quick-roster,.room-live-groups,.room-overview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=380px){.room-quick-row{gap:6px}}@media (width<=480px){.room-copy-filters{grid-template-columns:minmax(0,1fr)}.room-overview-heading{gap:8px}.room-overview-heading h2{font-size:1rem}.room-stay-nav{gap:4px}.room-stay-nav .button{padding-inline:5px;font-size:.75rem}.room-stay-nav>span{font-size:.7rem}.room-picker-grid .trip-picker-label{min-height:34px;font-size:.78rem}.room-picker-grid .trip-picker-native,.room-picker-grid .trip-picker-trigger{padding-inline:5px;font-size:.85rem}.room-picker-grid .expense-actions .button{padding-inline:7px;font-size:.76rem}.room-stay-fields{grid-template-columns:minmax(0,1fr) repeat(2,minmax(0,92px));gap:6px}.room-stay-fields>label{font-size:.75rem}.room-stay-fields .expense-date-control input[type=date]{padding-inline:3px;font-size:.75rem;font-weight:400}.room-stay-fields input[type=date]::-webkit-calendar-picker-indicator{width:12px;height:12px;margin:0;padding:0}.room-live-groups{gap:6px}.room-live-groups .room-edit-card,.room-saved-card{gap:6px;padding:6px}.room-live-groups .room-card-head,.room-saved-card .room-card-head{font-size:.8rem}.room-occupancy{padding:3px 4px;font-size:.72rem}.room-preview-members{font-size:.78rem}}@media (any-pointer:coarse){.room-editor,.room-overview{--room-control-height:44px}.room-editor input.room-group-input{height:44px;min-height:44px;max-height:44px}.room-quick-row .room-choose-group,.room-unassigned-filter{height:44px;min-height:44px}.room-quick-identity{min-height:44px}}.passport-page{min-width:0}.passport-fields{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:10px;display:grid}.passport-full-name-field{grid-column:span 2}.passport-fields label,.passport-filters label{min-width:0;color:var(--myguru-blue-dark);gap:5px;font-size:.84rem;font-weight:750;display:grid}.passport-fields input,.passport-fields select,.passport-filters input,.passport-filters select{box-sizing:border-box;border:1px solid var(--border);width:100%;min-width:0;max-width:100%;height:44px;color:var(--text);font:inherit;background:#fff;border-radius:8px;padding:7px 9px;font-size:.9rem}.passport-fields .passport-date-control{box-sizing:border-box;border:1px solid var(--border);background:#fff;border-radius:8px;align-items:center;width:100%;min-width:0;max-width:100%;height:44px;padding:0 8px;display:flex}.passport-fields .passport-date-control input{background:0 0;border:0;flex:1 1 0;width:100%;min-width:0;max-width:100%;height:100%;margin:0;padding:0;display:inline-flex}.passport-date-control input::-webkit-date-and-time-value{text-align:left;min-height:1.5em}.passport-date-control:focus-within{outline:2px solid var(--myguru-blue);outline-offset:2px}.passport-review{align-items:flex-start;gap:10px;min-height:44px;margin-top:18px;padding:8px 0;display:flex}.passport-review input{flex:none;width:20px;height:20px;margin-top:2px}.passport-warning{color:#8a3900;overflow-wrap:anywhere;font-size:.82rem}.passport-filters{grid-template-columns:minmax(0,1fr) minmax(0,2fr) auto;align-items:end;gap:10px;margin-bottom:14px;display:grid}.passport-roster-header,.passport-roster-row{grid-template-columns:96px minmax(100px,1fr) 126px minmax(245px,2.5fr) 100px 96px minmax(76px,.65fr) 110px;align-items:center;gap:10px;display:grid}.passport-roster-header{color:var(--myguru-blue-dark);padding:10px 0;font-size:.82rem;font-weight:800}.passport-roster-row{border-top:1px solid var(--border);padding:12px 0;font-size:.88rem}.passport-roster-row>div{overflow-wrap:anywhere;min-width:0}.passport-roster-row p{margin:5px 0 0}.passport-roster-row small{color:var(--text-muted);display:none}.passport-roster-operation button{width:100%}.passport-scan{border:1px solid var(--border);border-radius:10px;margin:14px 0 20px;padding:10px}.passport-scan summary{cursor:pointer;min-height:44px;color:var(--myguru-blue-dark);align-content:center;font-weight:750}.passport-scan input[type=file]{display:none}.passport-photo{background:var(--myguru-blue-light);border-radius:8px;justify-content:center;align-items:center;height:280px;margin-top:12px;display:flex;overflow:hidden}.passport-photo img{object-fit:contain;max-width:min(100%,250px);max-height:240px}@media (width<=1200px){.passport-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.passport-full-name-field{grid-column:auto}}@media (width<=1100px){.passport-roster-header{display:none}.passport-roster-row{grid-template-columns:repeat(3,minmax(0,1fr))}.passport-roster-row small{margin-bottom:4px;display:block}.passport-roster-operation button{width:auto;max-width:100%}.passport-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.passport-filters button{justify-self:start}}@media (width<=600px){.passport-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.passport-full-name-field,.passport-ic-field{grid-column:1/-1}.passport-roster-row{grid-template-columns:repeat(2,minmax(0,1fr))}.passport-filters{grid-template-columns:minmax(0,1fr)}}@media (any-pointer:coarse){.passport-fields input,.passport-fields select,.passport-filters input,.passport-filters select{font-size:16px}}@media print{.passport-page{display:none}}@media (width<=380px){.passport-date-field{grid-column:1/-1}}.passport-name-preview{background:var(--myguru-blue-light);border-radius:8px;gap:4px;min-width:0;margin:12px 0 0;padding:10px;display:grid}.passport-name-preview small{color:var(--text-muted);font-size:.8rem}.passport-name-preview strong{overflow-wrap:anywhere;white-space:normal;font-size:.9rem}.passport-camera-button{display:none}@media (any-pointer:coarse){.passport-camera-button{display:inline-flex}}.passport-self-page{padding-block:18px 24px}.passport-self-heading{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:6px 14px;margin-bottom:12px;display:grid}.passport-self-title{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.passport-self-title h1{color:var(--myguru-blue-dark);letter-spacing:-.02em;margin:0;font-size:1.4rem}.passport-self-identity{color:#4b5563;flex-wrap:wrap;align-items:baseline;gap:0 .35em;min-width:0;max-width:100%;margin:0 0 4px;font-size:.9rem;line-height:1.6;display:flex}.passport-self-identity[data-tone=confirmed]{color:#0f766e}.passport-heading-separator{color:inherit}.passport-self-teacher{overflow-wrap:anywhere;min-width:0;font-weight:600}.passport-self-state{font-size:inherit;font-weight:600}.passport-self-caption{color:var(--text-muted);grid-column:1/-1;margin:0;font-size:.82rem}.passport-reload{min-height:44px;padding:8px 12px;font-size:.82rem}.passport-editor-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 14px;margin-block:8px;display:flex}.passport-editor-meta .room-help{margin:0}.passport-editor-meta .button{min-height:44px;padding:8px 12px;font-size:.8rem}.passport-editor-self{padding:16px}.passport-editor-self .room-help{margin-block:6px;font-size:.8rem}.passport-editor-self .passport-editor-meta{margin-block:4px}.passport-editor-self .passport-scan{margin:8px 0 12px;padding:4px 8px}.passport-editor-self .passport-scan summary{min-height:44px;font-size:.9rem}.passport-editor-self .passport-name-preview{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:4px 10px;margin-top:8px;padding:8px 10px;display:grid}.passport-editor-self .passport-name-preview strong{min-width:0}.passport-editor-self .passport-review{margin-top:10px;padding:4px 0;font-size:.88rem}.passport-editor-self .expense-actions{margin-top:8px}.passport-self-page .travel-admin-status{margin-block:8px;padding:8px 12px;font-size:.85rem}@media (width<=600px){.passport-self-title h1{font-size:1.15rem}.passport-self-heading{gap:6px 10px}.passport-editor-self .passport-ic-field{grid-column:auto}.passport-editor-self{padding:12px}}@media (width<=380px){.passport-editor-self .passport-ic-field{grid-column:1/-1}}.passport-ic-conflict{border:1px solid var(--border);background:var(--myguru-blue-light);overflow-wrap:anywhere;border-radius:8px;padding:10px}.passport-heading-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;min-width:0;display:flex}.passport-update{min-height:44px;padding:8px 12px;font-size:.85rem}@media (width<=600px){.passport-heading-actions{grid-column:1/-1}}:where(.passport-expiry-notice,.passport-expiry-badge,.passport-expiry-filters [data-level]){--expiry-ink:#526175;--expiry-bg:#eef2f6;--expiry-border:#c9d2df}[data-level=yellow]{--expiry-ink:#665300;--expiry-bg:#fffbd6;--expiry-border:#d1b700}[data-level=orange]{--expiry-ink:#8a3900;--expiry-bg:#fff0df;--expiry-border:#df7900}[data-level=red],[data-level=expired]{--expiry-ink:#a00f15;--expiry-bg:#fff0f1;--expiry-border:#f01820}.passport-expiry-notice{border:1px solid var(--expiry-border);background:var(--expiry-bg);color:var(--expiry-ink);border-left-width:4px;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 14px;min-width:0;margin:10px 0 14px;padding:10px 12px;font-size:.86rem;display:flex}.passport-expiry-notice>div{overflow-wrap:anywhere;gap:3px;min-width:0;display:grid}.passport-expiry-notice span{font-size:.8rem}.passport-expiry-notice .button{flex:none;min-height:44px;font-size:.82rem}.passport-expiry-badge{border-left:3px solid var(--expiry-border);background:var(--expiry-bg);color:var(--expiry-ink);border-radius:5px;margin-top:5px;padding:4px 6px;font-size:.76rem;line-height:1.5;display:block}.passport-expiry-filters{flex-wrap:wrap;gap:8px;margin:10px 0;display:flex}.passport-expiry-filters button,.passport-expiry-filters a{box-sizing:border-box;border:1px solid var(--expiry-border);background:var(--expiry-bg);max-width:100%;min-height:44px;color:var(--expiry-ink);font:inherit;cursor:pointer;border-radius:8px;flex-wrap:wrap;align-items:center;gap:5px;padding:7px 10px;font-size:.82rem;text-decoration:none;display:inline-flex}.passport-expiry-filters button[aria-pressed=true]{outline:2px solid var(--myguru-blue);outline-offset:2px;font-weight:750}.passport-entry-expiry{margin-top:10px}.passport-date-control{position:relative}.passport-date-control[data-empty=true] input:not(:focus){opacity:0}.passport-empty-calendar{pointer-events:none;fill:none;width:18px;height:18px;stroke:var(--text);stroke-width:1.8px;position:absolute;top:50%;right:9px;transform:translateY(-50%)}.passport-date-control:focus-within .passport-empty-calendar{visibility:hidden}.hero .passport-expiry-notice{max-width:100%}@media print{.passport-expiry-notice,.passport-entry-expiry{display:none!important}}.admin-trip-selection h3{color:var(--myguru-blue-dark);margin:10px 0 0;font-size:1rem}.trip-theme-root .site-header .logout-form{flex:none}.trip-theme-root .site-header .header-link,.trip-theme-root .site-header .print-button{white-space:nowrap}@media (width<=600px){.trip-theme-root .site-header{flex-wrap:wrap;row-gap:4px}.trip-theme-root .site-header .header-actions{flex-wrap:wrap;flex:none;max-width:100%;margin-left:auto}.trip-theme-root .site-header .header-link,.trip-theme-root .site-header .print-button{min-height:44px}}@media (width<=360px){.trip-theme-root .site-header .header-actions{gap:2px}.trip-theme-root .site-header .header-link{padding-inline:7px;font-size:.75rem}.trip-theme-root .site-header .print-button{padding-inline:9px;font-size:.8rem}}
