@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/roboto-latin-500-normal-7RbcRiD8.woff2)format("woff2"),url(/assets/roboto-latin-500-normal-DQZyH_nt.woff)format("woff")}:root{color:#151515;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}.mobile-carousel{overscroll-behavior:contain;scrollbar-width:none;-webkit-user-select:none;user-select:none;width:100%;min-width:0;max-width:100%;display:block;position:relative;overflow:auto}.mobile-carousel::-webkit-scrollbar{display:none}.mobile-carousel{touch-action:pan-y;overflow:auto hidden}.mobile-carousel[data-dragging=true]{cursor:none}.mobile-carousel-content{width:max-content;min-width:100%;transform:translateX(var(--mobile-carousel-overdrag));will-change:transform;display:flex}.mobile-carousel-scrollbar{z-index:4;opacity:0;pointer-events:none;transition:opacity .15s;position:absolute;inset:0}.mobile-carousel-scrollbar[data-visible=true]{opacity:1}.mobile-carousel-scrollbar-thumb{background:#00000059;border-radius:999px;height:3px;position:absolute;bottom:4px;right:4px}body{min-width:320px;overflow:hidden}button,input,textarea{font:inherit}button{cursor:pointer}.phone-stage{place-items:center;width:100%;height:100%;padding:24px;display:grid;position:relative}.device-menu-bar{z-index:100;border-radius:12px;padding:3px;position:absolute;top:18px;right:18px}.device-picker-trigger{color:#151515;background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;height:34px;padding:0 10px 0 12px;font:600 14px/1 ui-sans-serif,system-ui,sans-serif;display:flex}.device-picker-trigger:hover,.device-picker-trigger[data-state=open]{background:#0000000e}.device-picker-trigger:focus-visible{outline-offset:2px;outline:2px solid #000000b8}.device-picker-menu{z-index:200;min-width:168px;transform-origin:var(--radix-dropdown-menu-content-transform-origin);background:#fffffffa;border-radius:12px;padding:3px;animation:.12s ease-out device-menu-in;box-shadow:0 0 1px #0000000f,0 0 0 1px #00000014,0 4px 4px #0000000d}.device-picker-item{color:#181818;-webkit-user-select:none;user-select:none;border-radius:8px;outline:none;justify-content:space-between;align-items:center;height:34px;padding:0 9px 0 10px;font:500 14px/1 ui-sans-serif,system-ui,sans-serif;display:flex}.device-picker-item[data-highlighted]{background:#f0f0f0}.device-picker-item[data-state=checked]{font-weight:600}.device-picker-check{color:#181818;place-items:center;display:grid}@keyframes device-menu-in{0%{opacity:0;transform:scale(.98)translateY(-2px)}to{opacity:1;transform:scale(1)translateY(0)}}.phone-scale-box{position:relative}.phone-device{transform-origin:0 0;-webkit-user-select:none;user-select:none;position:absolute;top:0;left:0}.phone-bezel{object-fit:contain;z-index:2;-webkit-user-drag:none;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.device-screen{cursor:none;z-index:1;-webkit-user-select:none;user-select:none;background:#fff;border-radius:42px;position:absolute;overflow:hidden;box-shadow:inset 0 0 0 1px #00000014}.device-camera{z-index:75;pointer-events:none;background:#050505;border-radius:50%;display:block;position:absolute;box-shadow:inset 0 0 0 1px #ffffff14}.device-screen,.device-screen *{cursor:none!important}.device-screen img,.keyboard-asset{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.device-screen input,.device-screen textarea,.device-screen select,.device-screen option,.device-screen [contenteditable=true]{-webkit-user-select:auto;user-select:auto}.device-screen:active,.device-screen:active *,.device-screen input,.device-screen textarea,.device-screen button,.device-screen a,.device-screen [role=button]{cursor:none!important}.device-screen[data-cursor-debug=true],.device-screen[data-cursor-debug=true] *{cursor:default!important}.device-screen :focus,.device-screen :focus-visible{box-shadow:none!important;outline:0!important}.flow-stack,.flow-scenes,.flow-screen,.mobile-app-viewport{position:absolute;inset:0}.mobile-app-viewport[data-platform=android][data-keyboard-visible=false]{bottom:var(--device-safe-area-bottom,48px)}.flow-stack{--flow-header-height:0px;--flow-header-content-height:0px;--flow-header-safe-area:0px;--flow-footer-height:0px;--keyboard-height:0px;touch-action:pan-y;background:0 0;overflow:hidden}.flow-fixed-header{z-index:12;height:var(--flow-header-height);padding-top:var(--flow-header-safe-area);box-sizing:border-box;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-bottom:0;position:absolute;top:0;left:0;right:0}.flow-fixed-footer{z-index:12;right:0;bottom:var(--keyboard-height);height:var(--flow-footer-height);background:0 0;transition:bottom .26s cubic-bezier(.2,.8,.2,1);position:absolute;left:0}.flow-scenes{top:var(--flow-header-height);bottom:0;overflow:hidden}.flow-screen{will-change:transform;background:0 0;overflow:hidden}.mobile-page{--mobile-safe-area-height:var(--device-safe-area-bottom,34px);--keyboard-height:0px;position:absolute;inset:0}.mobile-page[data-keyboard-visible=true],.mobile-app-viewport[data-platform=android] .mobile-page{--mobile-safe-area-height:0px}.mobile-scroll{top:0;right:0;bottom:var(--keyboard-height);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:none;touch-action:none;-webkit-user-select:none;user-select:none;transition:bottom .26s cubic-bezier(.2,.8,.2,1);position:absolute;left:0;overflow:hidden auto}.mobile-scroll::-webkit-scrollbar{display:none}.mobile-scroll[data-dragging=true]{cursor:none}.mobile-cursor{z-index:80;opacity:0;pointer-events:none;will-change:transform;background:radial-gradient(circle at 50% 44%,#ffffffb3 0 34%,#ffffff8a 58%,#eeeeee7a 100%);border:.5px solid #0000001f;border-radius:999px;width:48px;height:48px;transition:opacity 90ms,background 80ms,box-shadow 80ms;position:absolute;top:0;left:0;box-shadow:inset 0 1px 2px #fff9,inset 0 -5px 10px #0000000d,inset 0 0 0 1px #00000006}.mobile-cursor:before{content:"";pointer-events:none;background:linear-gradient(#ffffff61,#fff0);border-radius:999px;width:32px;height:17px;position:absolute;top:3px;left:50%;transform:translate(-50%)}.mobile-cursor:after{border-radius:inherit;content:"";pointer-events:none;position:absolute;inset:0;box-shadow:inset 1px 0 3px #ffffff47,inset -1px 0 3px #00000005}.mobile-cursor-hotspot{pointer-events:none;background:#ffffffd1;border:1px solid #007afff2;border-radius:999px;width:9px;height:9px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #ffffffbf,0 0 0 3px #007aff29}.mobile-cursor-hotspot:before,.mobile-cursor-hotspot:after{content:"";background:#007afff2;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mobile-cursor-hotspot:before{width:17px;height:1px}.mobile-cursor-hotspot:after{width:1px;height:17px}.mobile-cursor[data-visible=true]{opacity:1}.mobile-cursor[data-active=true]{background:radial-gradient(circle at 50% 55%,#e8e8e894 0 30%,#f8f8f880 62%,#ffffffad 100%);box-shadow:inset 0 3px 7px #00000014,inset 0 -4px 8px #ffffff57,inset 0 0 0 1px #00000008}.mobile-cursor[data-active=true]:before{background:linear-gradient(#0000000e,#0000)}.mobile-cursor[data-active=true]:after{box-shadow:inset 0 5px 9px #0000000b,inset 0 -3px 7px #ffffff47}.mobile-scroll-content{will-change:transform;grid-template-columns:minmax(0,1fr);gap:0;min-width:0;padding:0;display:grid}.app-screen{background:#fff}.mobile-scrollbar{z-index:9;top:4px;right:5px;bottom:calc(var(--mobile-safe-area-height) + var(--keyboard-height) + 4px);opacity:0;pointer-events:none;width:4px;transition:bottom .26s cubic-bezier(.2,.8,.2,1),opacity .18s;position:absolute}.mobile-page[data-keyboard-dragging=true] .mobile-scroll,.mobile-page[data-keyboard-dragging=true] .mobile-scrollbar,.flow-stack[data-keyboard-dragging=true] .flow-fixed-footer{transition:none}.mobile-scrollbar[data-visible=true]{opacity:1}.mobile-scrollbar-thumb{background:#00000047;border-radius:999px;width:4px;min-height:36px;transition:background .12s;box-shadow:0 0 0 1px #ffffff2e}.status-bar{z-index:72;color:#050505;pointer-events:none;background:0 0;grid-template-columns:1fr auto;align-items:center;height:54px;padding:10px 34px 0 36px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,Arial,sans-serif;display:grid;position:absolute;top:0;left:0;right:0}.device-screen[data-device=pixel-10] .status-bar{align-items:start;height:auto;padding:32px 32px 0;font-family:Roboto,Arial,sans-serif}.status-time{text-align:center;letter-spacing:0;justify-self:start;min-width:58px;font-size:15px;font-weight:600;line-height:1}.status-indicators{justify-self:end;align-items:center;display:flex}.status-indicator-svg{display:block}.status-indicator-svg[data-platform=ios]{width:79px;height:13px}.status-indicator-svg[data-platform=android]{width:50px;height:14px}.device-screen[data-device=pixel-10] .status-time{font-weight:500;transform:translateY(2px)}.home-indicator-svg{z-index:70;width:100%;height:var(--device-safe-area-bottom,34px);pointer-events:none;display:block;position:absolute;bottom:0;left:0;right:0}.android-navigation-bar{z-index:70;width:428px;height:var(--device-safe-area-bottom,48px);pointer-events:none;-webkit-user-drag:none;display:block;position:absolute;bottom:-1px;left:-1px}h1,h2,p{margin:0}h1{letter-spacing:0;font-size:26px;line-height:1.08}h2{font-size:15px}p{color:#555;font-size:14px;line-height:1.45}.field-label{color:#555;font-size:13px;font-weight:800}.mobile-field{gap:8px;display:grid}.mobile-field input{color:#151515;background:#fff;border:1px solid #0000001a;border-radius:8px;outline:0;width:100%;min-height:44px;padding:0 12px}.mobile-field input:focus{box-shadow:none;border-color:#00000029}.device-screen .mobile-field input:focus,.device-screen .mobile-field input:focus-visible{border-color:#0000001f;box-shadow:none!important;outline:0!important}.sheet-overlay{z-index:20;background:#00000057;position:absolute;inset:0}.bottom-sheet{z-index:21;touch-action:none;background:#fff;border-radius:22px 22px 0 0;flex-direction:column;min-height:260px;display:flex;position:absolute;left:0;right:0;overflow:hidden;box-shadow:0 -16px 48px #0003}.sheet-handle-zone{touch-action:none;place-items:center;height:30px;display:grid}.sheet-handle{background:#c9c9c4;border-radius:999px;width:42px;height:5px}.sheet-header{gap:4px;padding:0 18px 14px;display:grid}.sheet-title{margin:0;font-size:18px;font-weight:900}.sheet-description{color:#737373;margin:0;font-size:13px;line-height:1.35}.sheet-content{padding:0 18px 24px;overflow:auto}.keyboard-dock{z-index:30;height:339px;box-shadow:none;pointer-events:none;will-change:transform;background:#d8d9de;border-radius:32px 32px 0 0;padding:0;position:absolute;bottom:-1px;left:0;right:0;overflow:hidden}.keyboard-dock[data-platform=android]{background:#f3f2f6;border-radius:0;box-shadow:0 -1px 2px #00000014}.keyboard-dock[data-visible=true]{pointer-events:auto}.keyboard-asset{z-index:1;border-radius:inherit;object-fit:cover;object-position:center bottom;-webkit-user-drag:none;pointer-events:none;width:100%;height:100%;display:block;position:relative}.keyboard-dock[data-platform=android] .keyboard-asset{object-fit:fill;border-radius:0}:root{--sun-cream:#f7f4ec;--sun-paper:#fffdf8;--sun-ink:#1d2721;--sun-muted:#787970;--sun-soft:#ddd8cc;--sun-green:#204638;--sun-green-deep:#14352b;--sun-lime:#d9eca6;--sun-blue:#2768d8;--sun-orange:#dc812c;--sun-orange-soft:#fff0d8;--sun-coral:#ed6a49;--sun-shadow:0 18px 42px #3136271a}.prototype-root{color:var(--sun-ink);background:var(--sun-cream);font-family:PingFang SC,Hiragino Sans GB,Microsoft YaHei,-apple-system,BlinkMacSystemFont,sans-serif;position:absolute;inset:0;overflow:hidden}.prototype-root *,.bottom-sheet,.bottom-sheet *{box-sizing:border-box}.prototype-root button,.bottom-sheet button,.prototype-root input,.bottom-sheet input{font:inherit}.prototype-root button,.bottom-sheet button{-webkit-tap-highlight-color:transparent}.sunshine-scroll{z-index:1;background:var(--sun-cream)}.sunshine-page{background:radial-gradient(circle at 96% 1%, #e8a55b2e, transparent 22%), var(--sun-cream);min-height:100%;padding:68px 20px 0}.page-bottom-spacer{height:calc(116px + var(--device-safe-area-bottom,34px))}.home-header,.page-top{justify-content:space-between;align-items:center;gap:16px;display:flex}.home-header{min-height:54px;margin-bottom:32px}.brand-name{color:var(--sun-ink);letter-spacing:-.045em;font-size:21px;font-weight:900}.brand-meta{color:#79786f;margin-top:3px;font-size:10px;line-height:1.35}.profile-button{color:#625d53;background:#fffdf8ad;border:1px solid #e3ddd1;border-radius:999px;flex:none;align-items:center;gap:7px;min-height:44px;padding:3px 8px 3px 4px;font-size:10px;font-weight:700;display:flex}.header-actions{align-items:center;gap:5px;display:flex}.install-mini{color:#456453;background:#fffdf8ad;border:1px solid #e3ddd1;border-radius:13px;flex-direction:column;flex:0 0 42px;justify-content:center;align-items:center;gap:2px;width:42px;height:44px;padding:0;font-size:8px;font-weight:700;display:flex}.install-mini svg{width:14px;height:14px}.person-avatar{letter-spacing:-.05em;border-radius:50%;flex:0 0 32px;place-items:center;width:32px;height:32px;font-size:11px;font-weight:800;display:inline-grid}.person-avatar.is-dark{color:#17382d!important;background:#dcefaf!important}.home-intro{padding:0 2px}.eyebrow,.section-kicker{color:#9b5b18;letter-spacing:.08em;font-size:10px;font-weight:800}.home-intro h1{max-width:310px;color:var(--sun-ink);letter-spacing:-.075em;margin-top:10px;font-family:Songti SC,STSong,serif;font-size:43px;font-weight:700;line-height:1.08}.intro-copy{color:#6f6d64;max-width:300px;margin:15px 0 23px;font-size:13px;line-height:1.7}.event-hero{height:278px;box-shadow:var(--sun-shadow);background:#355546;border-radius:28px;position:relative;overflow:hidden}.event-hero-image,.event-hero-shade{width:100%;height:100%;position:absolute;inset:0}.event-hero-image{object-fit:cover}.event-hero-shade{background:linear-gradient(#0a1f1814 0%,#0b251d3d 42%,#081d17e6 100%),linear-gradient(90deg,#051d1647,#0000 70%)}.event-hero-content{color:#fff;position:absolute;bottom:19px;left:20px;right:20px}.date-badge{color:#f7f3e9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff1a;border:1px solid #ffffff2e;border-radius:999px;align-items:center;height:26px;padding:0 10px;font-size:10px;font-weight:700;display:inline-flex}.event-series{color:#d7e6d6;letter-spacing:.16em;margin-top:16px;font-size:8px;font-weight:700}.event-hero h2{color:#fff;letter-spacing:-.045em;margin-top:5px;font-size:27px;font-weight:800}.event-location{color:#e8eee8;align-items:center;gap:4px;margin-top:7px;font-size:11px;display:flex}.event-location svg{width:12px;height:12px}.event-meta-row{gap:8px;margin-top:12px;display:flex}.event-meta-row span{color:#ecf1e9;background:#e0edd61a;border-radius:8px;align-items:center;gap:5px;padding:6px 9px;font-size:9px;display:inline-flex}.event-meta-row svg{width:12px;height:12px}.event-signup-block{padding:18px 0 4px}.signup-progress{justify-content:space-between;align-items:center;padding:0 3px;display:flex}.avatar-stack{align-items:center;display:flex}.avatar-stack .person-avatar,.avatar-more{border:2px solid var(--sun-cream);flex-basis:27px;width:27px;height:27px;margin-right:-7px;font-size:9px}.avatar-more{color:#69645b;background:#ece7dc;border-radius:50%;place-items:center;font-size:8px;font-weight:800;display:grid}.signup-progress p{color:#66645c;font-size:11px}.signup-progress strong{color:var(--sun-ink);font-size:17px}.primary-button{color:#fff;background:var(--sun-green-deep);border:0;border-radius:16px;justify-content:center;align-items:center;gap:7px;width:100%;height:52px;margin-top:15px;font-size:14px;font-weight:800;display:flex;box-shadow:0 13px 24px #18362b2e}.primary-button svg{width:15px;height:15px}.home-shortcuts{border-top:1px solid #e5dfd3;border-bottom:1px solid #e5dfd3;grid-template-columns:repeat(3,minmax(0,1fr));margin:22px 0 25px;display:grid}.home-shortcuts button{min-width:0;min-height:87px;color:var(--sun-ink);background:0 0;border:0;flex-direction:column;justify-content:center;align-items:flex-start;padding:12px 10px;display:flex}.home-shortcuts button+button{border-left:1px solid #e5dfd3}.shortcut-title{color:#76736b;font-size:9px}.shortcut-value{letter-spacing:-.04em;margin-top:4px;font-size:18px;font-weight:800}.shortcut-note{color:#a07a4f;margin-top:2px;font-size:8px}.carpool-peek{background:#fffdf8d4;border:1px solid #e5ded1;border-radius:22px;padding:18px}.carpool-peek-top{justify-content:space-between;align-items:center;display:flex}.carpool-peek h2{color:var(--sun-ink);letter-spacing:-.03em;margin-top:7px;font-size:17px}.round-arrow{width:44px;height:44px;color:var(--sun-green);background:0 0;border:1px solid #dbd5c9;border-radius:50%;place-items:center;display:grid}.round-arrow svg{width:17px;height:17px}.carpool-preview-row{border-top:1px solid #e9e3d8;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;margin-top:17px;padding-top:15px;display:grid}.carpool-preview-row div:nth-child(2){min-width:0}.carpool-preview-row strong,.carpool-preview-row span{display:block}.carpool-preview-row strong{color:#373c37;font-size:11px}.carpool-preview-row div span{color:#838078;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:9px;overflow:hidden}.seat-left{color:#2c604e;background:#e9f1dc;border-radius:8px;padding:6px 8px;font-size:9px;font-weight:800}.reminder-strip{background:#eae6dc;border-radius:17px;align-items:center;gap:12px;margin-top:14px;padding:14px 15px;display:flex}.reminder-mark{color:#314d41;background:#d5ddcc;border-radius:12px;flex:0 0 35px;place-items:center;width:35px;height:35px;font-family:Songti SC,STSong,serif;font-size:17px;font-weight:700;display:grid}.reminder-strip strong,.reminder-strip span{display:block}.reminder-strip strong{color:#454a44;font-size:11px}.reminder-strip span{color:#838077;margin-top:3px;font-size:9px}.ad-slot{color:#8f8a80;border:1px dashed #d9d2c5;border-radius:13px;grid-template-columns:auto minmax(0,1fr) 44px;align-items:center;gap:9px;min-height:50px;margin-top:13px;padding:9px 10px;display:grid}.ad-slot>span{color:#8c704d;background:#eee6d9;border-radius:4px;padding:3px 5px;font-size:8px;font-weight:800}.ad-slot p{color:#99948a;font-size:9px}.ad-slot button{color:#a7a197;background:0 0;border:0;place-items:center;width:44px;height:44px;display:grid}.page-top{min-height:58px;margin-bottom:20px}.page-top h1{color:var(--sun-ink);letter-spacing:-.06em;font-size:28px;font-weight:900}.page-top p{color:#79776f;margin-top:4px;font-size:10px}.lock-button{color:#3a584c;background:#fbfaf5;border:1px solid #d8d2c6;border-radius:11px;justify-content:center;align-items:center;gap:5px;min-width:68px;min-height:40px;padding:0 10px;font-size:10px;font-weight:800;display:flex}.lock-button.is-locked{color:#9d4f38;background:#fff2ec;border-color:#ead2c8}.lock-button svg{width:12px;height:12px}.collab-note{color:#315344;background:#edf4e3;border:1px solid #d8e4c6;border-radius:15px;align-items:center;gap:11px;padding:13px 14px;display:flex}.collab-note>svg{flex:none;width:16px;height:16px}.collab-note strong,.collab-note span{display:block}.collab-note strong{font-size:11px}.collab-note span{color:#718070;margin-top:3px;font-size:9px}.collab-note.is-locked{color:#8c4b39;background:#fff2ed;border-color:#ead7cd}.collab-note.is-locked span{color:#93776c}.collab-note.compact{margin-top:13px}.insurance-summary-card{background:#faf7ef;border:1px solid #dfd9cc;border-radius:15px;margin-top:12px;padding:14px}.insurance-summary-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.insurance-summary-head strong,.insurance-kicker{display:block}.insurance-kicker{color:#9b6c36;letter-spacing:.07em;font-size:8px;font-weight:800}.insurance-summary-head strong{color:#303831;margin-top:4px;font-size:13px}.insurance-summary-head button{color:#a1593e;background:#fff3ea;border:1px solid #e3c9b7;border-radius:9px;min-height:34px;padding:0 10px;font-size:8px;font-weight:800}.insurance-summary-head button.is-active{color:#fff;background:#a75c3f}.insurance-progress{background:#e7e0d3;border-radius:999px;height:6px;margin-top:12px;overflow:hidden}.insurance-progress span{border-radius:inherit;background:#71906c;height:100%;display:block}.insurance-summary-card p{color:#918b81;margin-top:8px;font-size:8px}.search-field{color:#8c887e;background:#fbfaf5;border:1px solid #dfd9ce;border-radius:14px;align-items:center;gap:9px;height:46px;margin-top:15px;padding:0 13px;display:flex}.search-field svg{flex:none;width:15px;height:15px}.search-field input{width:100%;min-width:0;height:100%;color:var(--sun-ink);background:0 0;border:0;outline:none;font-size:12px}.search-field input::placeholder{color:#aaa59a}.filter-row{gap:7px;margin-top:12px;display:flex;overflow:hidden}.filter-row button{color:#77736b;background:0 0;border:1px solid #ddd7cc;border-radius:999px;flex:none;height:40px;padding:0 11px;font-size:10px}.filter-row button.is-active{border-color:var(--sun-green);color:#fff;background:var(--sun-green)}.table-summary{color:#8b877d;letter-spacing:.03em;justify-content:space-between;align-items:center;margin:21px 1px 8px;font-size:9px;font-weight:700;display:flex}.roster-list{background:#fffdf8bf;border:1px solid #e4ded2;border-radius:18px;overflow:hidden}.roster-row{width:100%;min-height:72px;color:var(--sun-ink);text-align:left;background:0 0;border:0;grid-template-columns:20px 32px minmax(0,1fr) auto 12px;align-items:center;gap:8px;padding:9px 10px;display:grid}.roster-row+.roster-row{border-top:1px solid #eae5db}.roster-index{color:#b2ada2;font-variant-numeric:tabular-nums;font-family:Roboto,sans-serif;font-size:9px}.roster-main{min-width:0}.roster-main>span{display:block}.roster-name{color:#253029;font-size:12px;font-weight:800}.roster-name em{color:#39604e;background:#e4eedc;border-radius:4px;margin-left:5px;padding:2px 4px;font-size:8px;font-style:normal}.roster-meta{color:#8a867d;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:9px;overflow:hidden}.roster-insurance{color:#b06847;margin-top:3px;font-size:8px;display:block}.roster-insurance.is-confirmed{color:#5e8064}.transport-tag{border-radius:6px;padding:4px 6px;font-size:8px;font-weight:700}.transport-拼车{color:#39634f;background:#e8f0dc}.transport-自驾{color:#7b5b30;background:#f2e9d6}.transport-公共交通{color:#52647a;background:#e7ebef}.row-arrow{color:#aaa59c;width:12px;height:12px}.secondary-wide-button{width:100%;height:49px;color:var(--sun-green);background:0 0;border:1px solid #d5cec1;border-radius:14px;justify-content:center;align-items:center;gap:6px;margin-top:14px;font-size:12px;font-weight:800;display:flex}.secondary-wide-button svg{width:14px;height:14px}.empty-state{color:#7d796f;text-align:center;place-items:center;padding:46px 20px;display:grid}.empty-state svg{width:24px;height:24px;margin-bottom:10px}.empty-state strong{font-size:13px}.empty-state span{color:#9b968c;margin-top:4px;font-size:10px}.add-icon-button,.archive-share{width:44px;height:44px;color:var(--sun-green);background:#fbfaf5;border:1px solid #d7d1c5;border-radius:12px;place-items:center;display:grid}.add-icon-button svg,.archive-share svg{width:16px;height:16px}.carpool-summary-card{color:#fff;background:var(--sun-green);border-radius:23px;padding:19px;overflow:hidden}.carpool-summary-card .section-kicker{color:#bad0b5}.carpool-summary-main{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:18px;display:grid}.carpool-summary-main div+div{border-left:1px solid #e8f5dc26}.carpool-summary-main div{padding-left:12px}.carpool-summary-main div:first-child{padding-left:0}.carpool-summary-main strong,.carpool-summary-main span{display:block}.carpool-summary-main strong{letter-spacing:-.04em;font-size:21px}.carpool-summary-main span{color:#b6cbbb;margin-top:4px;font-size:9px}.car-list{gap:13px;margin-top:14px;display:grid}.car-card{background:#fffdf8e6;border:1px solid #e0dace;border-radius:20px;padding:17px}.car-card.is-joined{border-color:#a9c58f;box-shadow:inset 0 0 0 1px #a9c58f}.car-card-top{justify-content:space-between;align-items:center;display:flex}.driver-block{align-items:center;gap:9px;display:flex}.driver-avatar-wrap{border:1px solid #e0dacf;border-radius:50%;padding:2px}.driver-block>div:last-child span,.driver-block>div:last-child strong{display:block}.driver-label{color:#999389;font-size:8px}.driver-block strong{color:#2c342e;margin-top:2px;font-size:12px}.car-actions button{color:#7d786f;background:0 0;border:1px solid #e0dace;border-radius:8px;align-items:center;gap:4px;min-height:38px;padding:0 8px;font-size:9px;display:flex}.car-actions{gap:5px;display:flex}.car-actions svg{width:11px;height:11px}.route-line{background:#f1efe7;border-radius:13px;grid-template-columns:12px minmax(0,1fr);gap:10px 8px;margin-top:17px;padding:13px;display:grid}.route-line>div{min-width:0}.route-line strong,.route-line span{display:block}.route-line strong{color:#40453f;font-size:10px}.route-line div span{color:#8e8a81;margin-top:2px;font-size:8px}.route-dot{border:2px solid #f1efe7;border-radius:50%;width:9px;height:9px;margin-top:3px;box-shadow:0 0 0 1px #bcb5a8}.route-dot.start{background:var(--sun-orange)}.route-dot.end{background:var(--sun-green)}.car-note{color:#77736a;margin-top:10px;font-size:9px}.seat-line{border-top:1px solid #e8e2d7;justify-content:space-between;align-items:center;gap:10px;margin-top:15px;padding-top:13px;display:flex}.seat-count{align-items:center;gap:8px;display:flex}.seat-pill{color:#3f634f;background:#e7f0db;border-radius:7px;padding:5px 7px;font-size:8px;font-weight:800}.seat-dots{gap:4px;display:flex}.seat-dots span{background:0 0;border:1px solid #b9baad;border-radius:3px;width:9px;height:9px}.seat-dots span.is-filled{border-color:var(--sun-green);background:var(--sun-green)}.join-button{color:#fff;background:var(--sun-green);border:0;border-radius:9px;min-height:40px;padding:0 11px;font-size:9px;font-weight:800}.join-button.is-joined{color:#35604b;background:#dceacb}.driver-contact-sheet{gap:13px;display:grid}.contact-driver-head{grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:11px;display:grid}.contact-driver-head .person-avatar{flex-basis:44px;width:44px;height:44px;font-size:14px}.contact-driver-head>div span,.contact-driver-head h3,.contact-driver-head p{display:block}.contact-driver-head>div span{color:#8b867c;font-size:8px}.contact-driver-head h3{color:#27342c;margin-top:2px;font-size:17px}.contact-driver-head p{color:#89847a;margin-top:3px;font-size:8px}.verified-driver{color:#3f654f;background:#e8f0dc;border-radius:7px;align-items:center;gap:3px;padding:5px 7px;font-size:8px;font-weight:800;display:flex}.verified-driver svg{width:10px;height:10px}.contact-fields{background:#fffefb;border:1px solid #e1dbcf;border-radius:15px;overflow:hidden}.contact-fields>div{padding:13px 14px}.contact-fields>div+div{border-top:1px solid #ebe5db}.contact-fields span,.contact-fields strong{display:block}.contact-fields span{color:#969086;font-size:8px}.contact-fields strong{color:#2f3932;letter-spacing:.01em;margin-top:4px;font-family:Roboto,PingFang SC,sans-serif;font-size:15px}.contact-actions{grid-template-columns:1fr 1fr;gap:9px;display:grid}.contact-actions a,.contact-actions button{color:#fff;background:var(--sun-green);border:0;border-radius:12px;justify-content:center;align-items:center;gap:6px;min-height:46px;font-size:10px;font-weight:800;text-decoration:none;display:flex}.contact-actions button{color:#2c5743;background:#e5efd9}.contact-actions svg{width:14px;height:14px}.contact-note{color:#918b81;text-align:center;font-size:8px;line-height:1.55}.archive-hero{background:var(--sun-blue);border-radius:28px;height:310px;position:relative;overflow:hidden}.archive-hero>img,.archive-hero-overlay{width:100%;height:100%;position:absolute;inset:0}.archive-hero>img{object-fit:cover}.archive-hero-overlay{background:linear-gradient(#14366d38,#122959d1)}.archive-hero-copy{color:#fff;position:absolute;bottom:22px;left:20px;right:20px}.archive-hero-copy>span{color:#c5d8ff;letter-spacing:.16em;font-size:8px;font-weight:700}.archive-hero h1{color:#fff;letter-spacing:-.055em;margin:9px 0 11px;font-family:Songti SC,STSong,serif;font-size:31px;line-height:1.18}.archive-hero p{color:#d5e2fa;font-size:10px}.archive-record-card{z-index:2;background:var(--sun-paper);border-radius:22px;margin:-27px 10px 0;padding:19px;position:relative;box-shadow:0 17px 40px #242f481f}.archive-record-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.archive-record-head>div{min-width:0}.archive-record-head h2{color:var(--sun-ink);letter-spacing:-.035em;margin-top:6px;font-size:19px}.archive-record-head p:last-child{color:#8a867d;margin-top:5px;font-size:9px;line-height:1.5}.record-stamp{color:#cc6245;border:2px solid #f1d0c5;border-radius:50%;flex:0 0 51px;place-items:center;width:51px;height:51px;font-size:9px;font-weight:800;display:grid;transform:rotate(8deg)}.archive-stats{border-top:1px solid #ebe7de;border-bottom:1px solid #ebe7de;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:17px;padding:14px 0;display:grid}.archive-stats div{text-align:center}.archive-stats div+div{border-left:1px solid #ebe7de}.archive-stats strong,.archive-stats span{display:block}.archive-stats strong{color:#17223c;letter-spacing:-.05em;font-size:21px}.archive-stats span{color:#92918a;margin-top:3px;font-size:8px}.upload-button{color:#fff;background:var(--sun-blue);border:0;border-radius:11px;justify-content:center;align-items:center;gap:6px;width:100%;height:44px;margin-top:14px;font-size:10px;font-weight:800;display:flex}.upload-button svg{width:14px;height:14px}.section-heading{justify-content:space-between;align-items:baseline;margin:24px 1px 10px;display:flex}.section-heading h2{color:var(--sun-ink);letter-spacing:-.03em;font-size:15px}.text-action{color:#858078;background:0 0;border:0;align-items:center;gap:2px;min-height:32px;font-size:9px;display:flex}.text-action svg{width:11px;height:11px}.photo-grid{grid-template-columns:1.15fr .85fr;grid-auto-rows:150px;gap:7px;display:grid}.photo-tile{background:#d6d3c9;border:0;border-radius:15px;position:relative;overflow:hidden}.photo-tile:first-child{grid-row:span 2}.photo-tile img{object-fit:cover;width:100%;height:100%}.photo-tile:after{content:"";background:linear-gradient(#0000,#0d18138c);height:46%;position:absolute;bottom:0;left:0;right:0}.photo-tile span{z-index:2;color:#fff;text-align:left;text-overflow:ellipsis;white-space:nowrap;font-size:8px;position:absolute;bottom:8px;left:9px;right:9px;overflow:hidden}.past-list{background:#fffdf8c7;border:1px solid #e0dace;border-radius:18px;overflow:hidden}.past-row{width:100%;min-height:72px;color:var(--sun-ink);text-align:left;background:0 0;border:0;grid-template-columns:58px minmax(0,1fr) 14px;align-items:center;gap:11px;padding:10px;display:grid}.past-row+.past-row{border-top:1px solid #eae5db}.past-row img{object-fit:cover;border-radius:10px;width:58px;height:50px}.past-row>span{min-width:0}.past-row strong,.past-row span>span{display:block}.past-row strong{color:#2f3731;font-size:11px}.past-row span>span{color:#8d887f;margin-top:4px;font-size:8px}.past-row>svg{color:#aaa59b;width:14px;height:14px}.next-event-card{background:#e8ece0;border-radius:19px;justify-content:space-between;align-items:center;gap:15px;margin-top:15px;padding:17px;display:flex}.next-event-card h2{color:#2a3c2e;margin-top:5px;font-size:15px}.next-event-card span{color:#788078;margin-top:4px;font-size:8px;display:block}.next-event-card button{color:#fff;background:var(--sun-green);border:0;border-radius:10px;flex:none;height:36px;padding:0 12px;font-size:9px;font-weight:800}.app-tabbar{z-index:9;max-height:calc(92px + var(--device-safe-area-bottom,34px));padding:8px 10px calc(8px + var(--device-safe-area-bottom,34px));-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#f8f5edf0;border-top:1px solid #4f4a3e14;grid-template-columns:repeat(4,1fr);display:grid;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -12px 28px #262a220f}.app-tabbar button{color:#969188;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:48px;font-size:9px;font-weight:600;display:flex}.app-tabbar button.is-active{color:var(--sun-green-deep);font-weight:800}.tab-icon{border-radius:7px;place-items:center;width:22px;height:22px;display:grid}.tab-icon svg{width:16px;height:16px}.app-tabbar button.is-active .tab-icon{background:#dceacb}.toast{z-index:40;right:20px;bottom:calc(98px + var(--device-safe-area-bottom,34px));color:#f7f8f3;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#1c2d25f0;border-radius:13px;align-items:center;gap:8px;min-height:44px;padding:10px 13px;font-size:10px;line-height:1.35;animation:.18s ease-out toast-in;display:flex;position:absolute;left:20px;box-shadow:0 12px 30px #101f183b}.toast svg{flex:none;width:15px;height:15px}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.bottom-sheet{background:#fbfaf5;border-radius:28px 28px 0 0;box-shadow:0 -16px 44px #25271e2e}.sheet-handle{background:#ccc7bb}.sheet-header{padding-bottom:13px;padding-left:20px;padding-right:20px}.sheet-title{color:var(--sun-ink);letter-spacing:-.04em;font-size:20px}.sheet-description{color:#89837a;font-size:10px}.sheet-content{padding:0 20px calc(26px + var(--device-safe-area-bottom,34px))}.editor-form{gap:13px;display:grid}.form-intro{color:#817b71;margin:-3px 0 2px;font-size:10px;line-height:1.55}.form-field{color:#57554e;gap:7px;font-size:10px;font-weight:700;display:grid}.form-field input{width:100%;height:44px;color:var(--sun-ink);background:#fffefb;border:1px solid #ded7ca;border-radius:11px;outline:0;padding:0 12px;font-size:12px;font-weight:500}.form-field input:focus{border-color:#7b977e;box-shadow:0 0 0 3px #4c745c17!important}.form-field input::placeholder{color:#b2ada2}.choice-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.choice-chip{color:#767168;background:#fffefb;border:1px solid #ded7ca;border-radius:10px;min-height:44px;font-size:10px;font-weight:700}.choice-chip.is-selected{color:#284a3b;background:#e1ecd6;border-color:#6f8e74;box-shadow:inset 0 0 0 1px #6f8e74}.form-two-column{grid-template-columns:1fr 1fr;gap:10px;display:grid}.insurance-proof-control{gap:5px;display:grid}.insurance-proof-control button{color:#45614e;text-align:left;text-overflow:ellipsis;white-space:nowrap;background:#f2f6eb;border:1px dashed #c9d5bf;border-radius:10px;justify-content:flex-start;align-items:center;gap:7px;width:100%;min-height:42px;padding:0 11px;font-size:9px;font-weight:700;display:flex;overflow:hidden}.insurance-proof-control button svg{flex:none;width:13px;height:13px}.insurance-proof-control>span{color:#9a9489;font-size:8px;line-height:1.45}.sheet-primary-action{color:#fff;background:var(--sun-green);border:0;border-radius:13px;width:100%;min-height:49px;margin-top:5px;font-size:12px;font-weight:800}.sheet-close-float{z-index:2;color:#777168;background:#f6f3eb;border:1px solid #e0dace;border-radius:50%;place-items:center;width:36px;height:36px;display:grid;position:absolute;top:12px;right:13px}.sheet-close-float svg{width:14px;height:14px}.editor-identity,.profile-sheet-head{align-items:center;gap:11px;display:flex}.editor-identity>div strong,.editor-identity>div span,.profile-sheet-head h3,.profile-sheet-head p{display:block}.editor-identity>div strong{color:#303a33;font-size:12px}.editor-identity>div span{color:#8a857b;margin-top:3px;font-size:9px}.profile-sheet-head{padding-bottom:16px}.profile-sheet-head .person-avatar{flex-basis:54px;width:54px;height:54px;font-size:17px}.profile-sheet-head h3{color:#28342d;letter-spacing:-.04em;font-size:19px}.profile-sheet-head p{color:#88837a;margin-top:3px;font-size:9px}.profile-stats{border-top:1px solid #e9e4da;border-bottom:1px solid #e9e4da;grid-template-columns:repeat(3,minmax(0,1fr));padding:15px 0;display:grid}.profile-stats div{text-align:center}.profile-stats div+div{border-left:1px solid #e9e4da}.profile-stats strong,.profile-stats span{display:block}.profile-stats strong{color:var(--sun-ink);font-size:18px}.profile-stats span{color:#938e84;margin-top:3px;font-size:8px}.role-switch-card,.profile-group-card{background:#f0ede4;border-radius:15px;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding:14px;display:flex}.role-switch-card strong,.role-switch-card span,.profile-group-card strong,.profile-group-card span{display:block}.role-switch-card strong,.profile-group-card strong{color:#353c36;font-size:11px}.role-switch-card>div span,.profile-group-card>div:last-child span{color:#8d887e;margin-top:3px;font-size:8px}.switch{background:#cac5ba;border:0;border-radius:999px;flex:0 0 44px;width:44px;height:26px;transition:background .15s;position:relative}.switch span{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 2px 5px #1e221b29}.switch.is-on{background:#4e7963}.switch.is-on span{transform:translate(18px)}.profile-group-card{justify-content:flex-start}.group-mark{color:#264b3b;background:#d7e8b7;border-radius:12px;flex:0 0 39px;place-items:center;width:39px;height:39px;font-family:Songti SC,STSong,serif;font-size:17px;font-weight:800;display:grid}.profile-install-card{color:#2e4c3e;text-align:left;background:#eef4e5;border:1px solid #dfe7d2;border-radius:15px;grid-template-columns:38px minmax(0,1fr) 14px;align-items:center;gap:10px;width:100%;margin-top:12px;padding:13px;display:grid}.profile-install-icon{color:#fff;background:var(--sun-green);border-radius:12px;place-items:center;width:38px;height:38px;display:grid}.profile-install-icon svg{width:16px;height:16px}.profile-install-card strong,.profile-install-card span>span{display:block}.profile-install-card strong{font-size:11px}.profile-install-card span>span{color:#7a877c;margin-top:3px;font-size:8px}.profile-install-card>svg{width:14px;height:14px}.install-sheet{gap:11px;display:grid}.install-hero-card{color:#fff;background:var(--sun-green);border-radius:17px;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:13px;padding:14px;display:grid}.install-hero-card img{object-fit:cover;border-radius:15px;width:64px;height:64px;box-shadow:0 8px 20px #0b211a33}.install-hero-card span,.install-hero-card strong,.install-hero-card p{display:block}.install-hero-card span{color:#b7cfbe;letter-spacing:.08em;font-size:8px;font-weight:700}.install-hero-card strong{margin-top:4px;font-size:15px}.install-hero-card p{color:#c9d8cd;margin-top:5px;font-size:8px;line-height:1.5}.install-platform-card{background:#fffefb;border:1px solid #e2dcd1;border-radius:14px;grid-template-columns:27px minmax(0,1fr);gap:9px;padding:13px;display:grid}.install-platform-card.is-primary{background:#f4f7ed;border-color:#d6e2c9}.platform-index{color:#44624f;background:#e3edda;border-radius:9px;place-items:center;width:27px;height:27px;font-family:Roboto,sans-serif;font-size:8px;font-weight:700;display:grid}.install-platform-card strong{color:#373f38;font-size:11px}.install-platform-card p{color:#858078;margin-top:4px;font-size:9px;line-height:1.55}.sheet-secondary-action{color:#3c5a47;background:#f5f7f0;border:1px solid #cfd8c5;border-radius:12px;justify-content:center;align-items:center;gap:6px;width:100%;min-height:47px;font-size:11px;font-weight:800;display:flex}.install-note{color:#aaa49a;text-align:center;font-size:8px;line-height:1.5}.photo-sheet img{object-fit:cover;border-radius:18px;width:100%;max-height:390px}.photo-sheet-meta{justify-content:space-between;align-items:center;gap:12px;margin-top:13px;display:flex}.photo-sheet-meta strong,.photo-sheet-meta span{display:block}.photo-sheet-meta strong{color:#303a33;font-size:13px}.photo-sheet-meta span{color:#8a857c;margin-top:3px;font-size:9px}.photo-sheet-meta button{width:38px;height:38px;color:var(--sun-blue);background:#fff;border:1px solid #ddd7cc;border-radius:50%;flex:0 0 38px;place-items:center;display:grid}.photo-sheet>p,.activity-sheet>p{color:#7b776e;margin-top:14px;font-size:10px;line-height:1.65}.activity-sheet>img{object-fit:cover;border-radius:17px;width:100%;height:180px}.activity-sheet .section-kicker{margin-top:14px}.activity-sheet h3{color:#27312b;letter-spacing:-.04em;margin-top:6px;font-size:20px}.compact-stats{margin-top:13px}@media (width<=370px){.sunshine-page{padding-left:16px;padding-right:16px}.home-intro h1{font-size:39px}.event-hero{height:260px}.roster-row{grid-template-columns:17px 30px minmax(0,1fr) 10px}.transport-tag{display:none}}@media (width<=600px),(display-mode:standalone){html,body,#root{background:var(--sun-cream);width:100%;height:100%;overflow:hidden}.phone-stage{background:var(--sun-cream);width:100%;height:100%;padding:0;display:block}.device-menu-bar,.phone-bezel,.device-camera,.status-bar,.home-indicator-svg,.android-navigation-bar,.mobile-cursor{display:none!important}.phone-scale-box{width:100%!important;height:100%!important}.phone-device{width:100vw!important;height:100dvh!important;position:relative!important;top:0!important;left:0!important;transform:none!important}.device-screen{--device-safe-area-bottom:env(safe-area-inset-bottom,0px);width:100vw!important;height:100dvh!important;box-shadow:none!important;cursor:default!important;border-radius:0!important;inset:0!important}.device-screen,.device-screen *{cursor:auto!important}.device-screen input,.device-screen textarea{cursor:text!important}.device-screen button,.device-screen a,.device-screen [role=button]{cursor:pointer!important}.sunshine-page{padding-top:calc(18px + env(safe-area-inset-top,24px))}}
