@import "https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght,wdth@12..96,200..800,75..100&display=swap";.rb-dock-outer{pointer-events:none;justify-content:center;align-items:flex-end;width:100%;max-width:100%;display:flex;position:relative}.rb-dock-panel{z-index:40;pointer-events:all;background:var(--surface);border:1px solid var(--line);scrollbar-width:none;border-radius:1rem;align-items:flex-end;gap:.55rem;width:max-content;max-width:min(100%,980px);padding:.45rem;display:flex;position:absolute;bottom:0;left:50%;overflow-x:auto;transform:translate(-50%);box-shadow:0 18px 44px #22202714}.rb-dock-panel::-webkit-scrollbar{display:none}.rb-dock-item{color:var(--text);background:var(--bg);border:1px solid var(--line);cursor:pointer;border-radius:12px;outline:none;flex:none;justify-content:center;align-items:center;display:inline-flex;position:relative;box-shadow:0 4px 6px -1px #22202714,0 2px 4px -1px #2220270a}.rb-dock-item.is-active{color:#fff;background:var(--utm-red);border-color:var(--utm-red)}.rb-dock-item:focus-visible{outline:2px solid var(--utm-teal);outline-offset:3px}.rb-dock-icon{justify-content:center;align-items:center;display:flex}.rb-dock-inline-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.88rem;font-weight:800;display:none;overflow:hidden}.rb-dock-label{width:max-content;max-width:160px;color:var(--text);white-space:nowrap;background:var(--surface);border:1px solid var(--line);border-radius:.45rem;padding:.2rem .55rem;font-size:.75rem;font-weight:800;position:absolute;top:-1.75rem;left:50%;transform:translate(-50%)}.rb-stack-container{perspective:650px;width:100%;height:100%;position:relative}.rb-card-rotate,.rb-card-rotate-disabled{width:100%;height:100%;position:absolute}.rb-card-rotate{cursor:grab}.rb-card-rotate:active{cursor:grabbing}.rb-card-rotate-disabled{cursor:pointer}.rb-stack-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;justify-content:center;align-items:stretch;width:100%;height:100%;display:flex;overflow:hidden;box-shadow:0 22px 60px #0000003d}.rb-stack-card img{pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.rb-stepper-outer{flex-direction:column;justify-content:center;align-items:stretch;width:100%;display:flex}.rb-stepper-shell{width:100%;color:var(--text);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px}.rb-stepper-indicator-row{align-items:center;width:100%;padding:18px 20px 10px;display:flex}.rb-stepper-indicator-group{display:contents}.rb-stepper-content{position:relative;overflow:hidden}.rb-stepper-step{gap:16px;padding:12px 20px 4px;display:grid}.rb-stepper-footer{padding:14px 20px 20px}.rb-stepper-nav{gap:10px;display:flex}.rb-stepper-nav.spread{justify-content:space-between}.rb-stepper-nav.end{justify-content:flex-end}.rb-stepper-back,.rb-stepper-next{border:1px solid var(--line);cursor:pointer;border-radius:999px;min-height:42px;padding:.45rem 1rem;font-weight:800;transition:transform .18s,border-color .18s,background .18s}.rb-stepper-back{color:var(--text);background:var(--surface-strong)}.rb-stepper-next{color:#fff;background:var(--utm-red);border-color:var(--utm-red)}.rb-stepper-back:hover,.rb-stepper-next:hover{transform:translateY(-1px)}.rb-stepper-next:disabled,.rb-stepper-back:disabled{cursor:not-allowed;opacity:.55;transform:none}.rb-stepper-indicator{cursor:pointer;outline:none;position:relative}.rb-stepper-indicator-inner{border-radius:999px;justify-content:center;align-items:center;width:2rem;height:2rem;font-weight:800;display:flex}.rb-stepper-dot{background:#fff;border-radius:999px;width:.75rem;height:.75rem}.rb-stepper-number{font-size:.875rem}.rb-stepper-connector{background:var(--line);border-radius:999px;flex:1;height:.125rem;margin:0 .5rem;position:relative;overflow:hidden}.rb-stepper-connector-inner{height:100%;position:absolute;top:0;left:0}.rb-stepper-check{color:#fff;width:1rem;height:1rem}.chat-input-bar{z-index:5;background:var(--surface);border-top:1px solid var(--line);gap:9px;padding:12px;display:grid;position:relative;bottom:auto;box-shadow:0 -14px 34px #22202714}.chat-input-shell{background:var(--surface-strong);border:1px solid var(--line);border-radius:16px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:end;gap:8px;padding:8px;display:grid}.chat-input-actions{align-items:center;gap:4px;display:flex}.chat-input-actions label.icon-button{cursor:pointer}.chat-input-actions label.icon-button input[type=file]{display:none}.chat-input-shell textarea{resize:none;min-height:34px;max-height:120px;box-shadow:none;background:0 0;border:0;padding:7px 4px;line-height:1.45}.chat-send-button{border-radius:50%;width:38px;min-width:38px;height:38px;padding:0}.chat-send-loading{white-space:nowrap;font-size:12px;font-weight:900}.chat-attachment-tray{gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.chat-attachment-chip{min-width:190px;color:var(--text);background:var(--surface-strong);border:1px solid var(--line);border-radius:12px;grid-template-columns:42px minmax(88px,1fr) auto;align-items:center;gap:8px;padding:6px 8px 6px 6px;display:grid;position:relative}.chat-attachment-chip img,.chat-attachment-chip video{object-fit:cover;border-radius:8px;width:42px;height:42px}.chat-attachment-chip>svg{color:var(--utm-red);justify-self:center}.chat-attachment-chip span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;font-weight:900;overflow:hidden}.chat-attachment-chip small{color:var(--muted);grid-column:2/3;font-size:10px}.chat-attachment-chip button{color:#fff;background:#0000008f;border:0;border-radius:50%;place-items:center;width:20px;height:20px;display:grid;position:absolute;top:5px;right:5px}.chat-input-reply,.chat-input-voice-preview{grid-column:auto}@media (width>=721px){.chat-input-bar{padding:14px 18px}.chat-input-shell{border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:end;gap:10px;padding:10px 14px}.chat-input-shell textarea{min-height:40px;padding:9px 6px;font-size:15px;line-height:1.45}.chat-input-shell .icon-button{width:40px;min-width:40px;height:40px}.chat-send-button{border-radius:11px;width:44px;min-width:44px;height:44px}.chat-attachment-chip{min-width:220px;padding:8px 10px 8px 8px}}@media (width<=720px){.chat-input-bar{padding:8px}.chat-input-shell{grid-template-columns:auto minmax(0,1fr) 42px 46px;align-items:center;gap:6px;padding:6px}.chat-input-shell textarea{min-height:40px;max-height:86px;padding:8px 3px;font-size:16px;line-height:1.35}.chat-send-button{width:40px;min-width:40px;height:40px}}.chat-video-viewer{z-index:10000;-webkit-backdrop-filter:blur(14px);background:#04060cdb;place-items:center;padding:24px;animation:.16s ease-out both chat-video-in;display:grid;position:fixed;inset:0}.chat-video-shell{background:#050509;border:1px solid #ffffff24;border-radius:18px;place-items:center;width:min(960px,100%);max-height:min(82vh,720px);display:grid;overflow:hidden;box-shadow:0 28px 80px #0000008a}.chat-video-shell video{object-fit:contain;background:#000;width:100%;max-height:min(82vh,720px);display:block}.chat-video-close{top:max(18px, env(safe-area-inset-top));right:max(18px, env(safe-area-inset-right));z-index:10001;color:#fff;cursor:pointer;background:#ffffff1f;border:1px solid #fff3;border-radius:999px;place-items:center;width:44px;height:44px;display:grid;position:fixed;box-shadow:0 12px 32px #00000059}.chat-video-close span{font-size:28px;line-height:1;transform:translateY(-1px)}.chat-video-close:active{transform:scale(.96)}@keyframes chat-video-in{0%{opacity:0}to{opacity:1}}@media (width<=640px){.chat-video-viewer{padding:12px}.chat-video-shell{border-radius:14px}}.image-crop-content{max-width:100%;max-height:277px}.image-crop-content .image-crop-img{width:100%;height:100%;display:block}.image-crop-content .ord-handle,.image-crop-content .ReactCrop__drag-handle:after{background-color:var(--rc-focus-color,var(--utm-red))}.image-crop-content .ReactCrop__crop-selection{border-color:var(--rc-focus-color,var(--utm-red))}.image-crop-actions{justify-content:center;gap:8px;margin-top:10px;display:flex}.image-crop-button{place-items:center;display:inline-grid}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f4ef;--surface:#fff;--surface-strong:#fffaf1;--text:#222027;--muted:#6b6672;--line:#ded9ce;--utm-red:#9d2235;--utm-red-dark:#76192a;--teal:#00856f;--utm-teal:#00856f;--blue:#2364aa;--gold:#bf8c2c;--orange:#cc4b37;--violet:#6d5dfc;--shadow:0 18px 50px #2220271a;--body-wash:#9d223514;--terracotta-espresso:#4e2c23;--terracotta-peach:#e2725b;--terracotta-apricot:#ffdab9;--success-green:#2fbf71;--active-gradient:linear-gradient(135deg, var(--terracotta-espresso) 0%, var(--terracotta-peach) 56%, var(--terracotta-apricot) 118%);font-family:Bricolage Grotesque,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0e1116;--surface:#171c24;--surface-strong:#222936;--text:#f8fafc;--muted:#cbd5e1;--line:#3a4658;--utm-red:#d84a5f;--utm-red-dark:#b9364a;--teal:#35b99f;--utm-teal:#35b99f;--blue:#6aa8ef;--gold:#d8a94b;--orange:#e16b55;--violet:#9e95ff;--shadow:0 20px 54px #0000005c;--body-wash:#d84a5f24;--active-gradient:linear-gradient(135deg, #4e2c23 0%, #e2725b 58%, #ffdab9 126%)}:root[data-platform=android]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#111318;--surface:#191b20;--surface-strong:#24262d;--text:#e4e2e9;--muted:#c7c5d0;--line:#44464f;--utm-red:#d84a5f;--utm-red-dark:#9d2235;--teal:#d8a94b;--utm-teal:#d8a94b;--blue:#e16b55;--gold:#d8a94b;--orange:#e16b55;--violet:#bf8c2c;--shadow:0 18px 48px #00000061;--body-wash:#d84a5f1f;--active-gradient:linear-gradient(135deg, #4e2c23 0%, #e2725b 58%, #ffdab9 126%);font-family:Roboto,Bricolage Grotesque,Inter,ui-sans-serif,system-ui,sans-serif}:root[data-platform=android][data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fffbff;--surface:#fffbff;--surface-strong:#f3edf7;--text:#1d1b20;--muted:#625b71;--line:#cac4d0;--utm-red:#9d2235;--utm-red-dark:#76192a;--teal:#bf8c2c;--utm-teal:#bf8c2c;--blue:#cc4b37;--gold:#bf8c2c;--orange:#cc4b37;--violet:#a56e10;--shadow:0 16px 40px #1d1b2029;--body-wash:#9d223514;--active-gradient:linear-gradient(135deg, #4e2c23 0%, #e2725b 58%, #ffdab9 126%)}:root[data-palette=indigo],:root[data-platform=android][data-palette=indigo][data-theme=light]{--utm-red:#5145c7;--utm-red-dark:#3d32a8;--active-gradient:linear-gradient(135deg, #3d32a8 0%, #5145c7 56%, #8a7cf0 118%)}:root[data-palette=indigo][data-theme=dark],:root[data-platform=android][data-palette=indigo]{--utm-red:#8a7cf0;--utm-red-dark:#6d5dfc;--active-gradient:linear-gradient(135deg, #4536b0 0%, #6d5dfc 58%, #a99dff 126%)}:root[data-palette=emerald],:root[data-platform=android][data-palette=emerald][data-theme=light]{--utm-red:#0f7a52;--utm-red-dark:#0a5c3e;--active-gradient:linear-gradient(135deg, #0a5c3e 0%, #0f7a52 56%, #1fa978 118%)}:root[data-palette=emerald][data-theme=dark],:root[data-platform=android][data-palette=emerald]{--utm-red:#189a6c;--utm-red-dark:#12805a;--active-gradient:linear-gradient(135deg, #0e6b49 0%, #189a6c 58%, #5ad1a8 126%)}:root[data-palette=sapphire],:root[data-platform=android][data-palette=sapphire][data-theme=light]{--utm-red:#1c5fb8;--utm-red-dark:#134890;--active-gradient:linear-gradient(135deg, #134890 0%, #1c5fb8 56%, #4d8fe6 118%)}:root[data-palette=sapphire][data-theme=dark],:root[data-platform=android][data-palette=sapphire]{--utm-red:#4d8fe6;--utm-red-dark:#3b79cc;--active-gradient:linear-gradient(135deg, #1c5fb8 0%, #4d8fe6 58%, #86b6f2 126%)}@supports (color:color-mix(in srgb, red, blue)){:root[data-palette=indigo],:root[data-palette=emerald],:root[data-palette=sapphire],:root[data-platform=android][data-palette=indigo][data-theme=light],:root[data-platform=android][data-palette=emerald][data-theme=light],:root[data-platform=android][data-palette=sapphire][data-theme=light]{--bg:color-mix(in srgb, var(--utm-red) 8%, #f7f7f5);--surface:color-mix(in srgb, var(--utm-red) 3%, #fff);--surface-strong:color-mix(in srgb, var(--utm-red) 7%, #fff);--line:color-mix(in srgb, var(--utm-red) 20%, #dcd9d0);--muted:color-mix(in srgb, var(--utm-red) 18%, #6b6672);--body-wash:color-mix(in srgb, var(--utm-red) 12%, transparent);--shadow:0 18px 50px color-mix(in srgb, var(--utm-red-dark) 16%, transparent)}:root[data-palette=indigo][data-theme=dark],:root[data-palette=emerald][data-theme=dark],:root[data-palette=sapphire][data-theme=dark],:root[data-platform=android][data-palette=indigo],:root[data-platform=android][data-palette=emerald],:root[data-platform=android][data-palette=sapphire]{--bg:color-mix(in srgb, var(--utm-red) 10%, #0d0f14);--surface:color-mix(in srgb, var(--utm-red) 10%, #161922);--surface-strong:color-mix(in srgb, var(--utm-red) 13%, #20242f);--line:color-mix(in srgb, var(--utm-red) 20%, #333b49);--muted:color-mix(in srgb, var(--utm-red) 14%, #c7c5d0);--body-wash:color-mix(in srgb, var(--utm-red) 20%, transparent);--shadow:0 20px 54px #00000080}}.palette-picker{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.palette-swatch{border:1px solid var(--line);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;transition:border-color .15s,box-shadow .15s,transform .15s;display:inline-flex}.palette-swatch:hover{transform:translateY(-1px)}.palette-swatch.is-active{border-color:var(--utm-red);box-shadow:0 0 0 1px var(--utm-red)}.palette-dot{border-radius:50%;flex:none;width:16px;height:16px;box-shadow:inset 0 0 0 1px #00000026}:root[data-theme=dark] .destination-preview{background:#171c24f5}*{box-sizing:border-box;letter-spacing:0}:root.theme-switching *,:root.theme-switching :before,:root.theme-switching :after{transition:none!important}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}.lenis.lenis-smooth iframe{pointer-events:none}:root[data-platform=android] .panel,:root[data-platform=android] .product-card,:root[data-platform=android] .detail-modal,:root[data-platform=android] .search-box,:root[data-platform=android] .bus-stop-select,:root[data-platform=android] .bus-stop-timetable-panel,:root[data-platform=android] .bus-live-map-container,:root[data-platform=android] .app-select,:root[data-platform=android] .modal-backdrop .detail-modal{border-radius:18px}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}::view-transition-old(root){z-index:1}::view-transition-new(root){z-index:9999}:root[data-platform=android] .primary-button,:root[data-platform=android] .secondary-button,:root[data-platform=android] .ghost-button,:root[data-platform=android] .toggle-btn,:root[data-platform=android] .chip,:root[data-platform=android] .pill,:root[data-platform=android] .status-pill{border-radius:999px}@keyframes pageForward{0%{opacity:0;transform:translate(56px)}to{opacity:1;transform:translate(0)}}@keyframes pageBack{0%{opacity:0;transform:translate(-56px)}to{opacity:1;transform:translate(0)}}@keyframes pressPop{50%{transform:scale(.97)}}@keyframes voicePulse{0%,to{transform:scaleY(.45)}50%{transform:scaleY(1)}}@keyframes dots{0%{width:0}to{width:1.25em}}@keyframes replySwipePulse{0%{transform:translate(0)}45%{transform:translate(18px)}to{transform:translate(0)}}@keyframes replyHighlightFlash{0%{box-shadow:0 0 0 5px #00856fa6}40%{box-shadow:0 0 0 5px #00856fa6}to{box-shadow:0 0 #00856f00}}@keyframes screenShake{0%,to{transform:translate(0,0)}18%{transform:translate(-7px)}36%{transform:translate(7px)}54%{transform:translate(-5px)}72%{transform:translate(5px)}}html.screen-shake body{animation:.42s screenShake}body{min-width:320px;color:var(--text);background:linear-gradient(180deg, var(--body-wash), transparent 220px), var(--bg);margin:0}#root.is-content-blurred{filter:blur(6px);transition:filter .2s}.search-overlay{z-index:1100;padding:calc(env(safe-area-inset-top,0px) + 12px) 12px 12px;background:#00000073;flex-direction:column;align-items:center;display:flex;position:fixed;inset:0}.search-overlay-panel{width:100%;max-width:760px}.search-box.search-overlay-box{align-items:center;gap:12px;width:100%;display:flex}.search-box.search-overlay-box input{width:auto;min-width:0;box-shadow:none;border:0;outline:none;flex:1}.search-overlay-close{width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;display:inline-grid}.search-wrapper:focus-within,.search-box:focus-within,.search-box input:focus,.search-box input:focus-visible,.chat-search-box input:focus,.chat-search-box input:focus-visible{outline:none}html,body{scrollbar-width:none;max-width:100%;overflow-x:clip}html::-webkit-scrollbar{display:none}body::-webkit-scrollbar{display:none}.auth-shell{color:#fff;background:linear-gradient(135deg,#9d22356b,#0000 38%),linear-gradient(225deg,#00856f4d,#0000 46%),#10151d;place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{color:#fff;background:#171c24f0;border:1px solid #ffffff24;border-radius:14px;gap:18px;width:min(470px,100%);padding:24px;display:grid;box-shadow:0 26px 80px #00000061}.auth-card .brand{color:#fff;justify-content:flex-start}.auth-card .brand div:not(.brand-mark){display:block}.auth-card .brand span,.auth-card .muted,.auth-card .fine-print,.auth-card .stacked-form span{color:#ffffffb8}.auth-card h1{margin:4px 0 8px;font-size:32px;line-height:1.1}.auth-card input,.auth-card select{color:#fff;background:#10151d;border-color:#ffffff2e}.auth-card .segmented-control{background:#ffffff14;border-color:#ffffff24}.auth-card .segmented-control button{color:#ffffffb8}.auth-card .segmented-control button.is-active{color:#171c24;background:#fff;border-color:#fff}.auth-action-stack,.account-actions{gap:10px;display:grid}.account-actions .cl-userButton-root{justify-self:start}button,input,select,textarea{font:inherit}button,a,button,a,[role=button],input,select,textarea{-webkit-tap-highlight-color:transparent}button:focus:not(:focus-visible),a:focus:not(:focus-visible),[role=button]:focus:not(:focus-visible){box-shadow:none;outline:none}button{cursor:pointer;transition:transform .16s,box-shadow .16s,background-color .16s,border-color .16s,color .16s}button:active,.link-button:active{animation:.18s pressPop}button:disabled{cursor:not-allowed;opacity:.55}.destination-preview{left:12px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:1200;max-width:min(560px,100vw - 24px);color:var(--text);white-space:nowrap;text-overflow:ellipsis;pointer-events:none;border:1px solid var(--line);background:#fffffff0;border-radius:8px;padding:5px 9px;font-size:12px;font-weight:700;line-height:1.2;position:fixed;overflow:hidden;box-shadow:0 8px 24px #22202729}img{max-width:100%;display:block}.app-shell{--mobile-nav-clearance:calc(118px + env(safe-area-inset-bottom));grid-template-columns:252px minmax(0,1fr);min-height:100vh;display:grid}.app-shell.app-reveal{transform-origin:top;animation:.52s cubic-bezier(.16,1,.3,1) backwards appReveal}@keyframes appReveal{0%{opacity:0;filter:blur(7px);transform:translateY(10px)scale(.992)}to{opacity:1;filter:none;transform:none}}.sidebar{height:100vh;color:var(--text);background:var(--surface);border-right:1px solid var(--line);flex-direction:column;gap:24px;padding:22px 18px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;min-width:0;display:flex}.brand-mark{background:0 0;border:0;border-radius:10px;flex:0 0 46px;place-items:center;width:46px;height:46px;font-weight:900;display:grid;overflow:hidden}.brand-mark img{object-fit:cover;border-radius:inherit;width:100%;height:100%;display:block}.brand p,.brand span{overflow-wrap:anywhere;min-width:0;margin:0;display:block}.brand p{font-size:18px;font-weight:800}.brand span{color:var(--muted);margin-top:2px;font-size:13px}.nav-list{gap:7px;display:grid}.nav-item{color:#ffffffc2;text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:10px;width:100%;min-height:42px;padding:9px 10px;display:grid}.nav-item span{overflow-wrap:anywhere;min-width:0}.nav-item:hover,.nav-item.is-active{color:#fff;background:#ffffff1a;border-color:#ffffff21}.sidebar-summary{background:#ffffff14;border:1px solid #ffffff1f;border-radius:8px;margin-top:auto;padding:14px}.sidebar-summary span,.sidebar-summary strong{display:block}.sidebar-summary span{color:#ffffff9e;font-size:13px}.sidebar-summary strong{margin-top:4px;font-size:22px}.main-content{flex-direction:column;flex:1;min-width:0;padding:32px 34px 34px;display:flex}.app-footer{padding:16px 0 calc(16px + env(safe-area-inset-bottom));color:var(--muted);text-align:center;border-top:1px solid var(--line);margin:auto 0 0;font-size:13px;font-weight:700}.main-content.is-chat-page{flex-direction:column;height:100dvh;padding-bottom:0;display:flex;overflow:hidden}@media (width<=720px){.main-content.is-chat-page{gap:0;padding:0}.main-content.is-chat-page .topbar{margin-bottom:8px;padding:14px 14px 0}.main-content.is-chat-page .module-heading{margin-bottom:12px;padding:0 14px}.main-content.is-chat-page .chat-panel{border-bottom:0;border-left:0;border-right:0;border-radius:0;flex:1;min-height:0;margin-bottom:0}.main-content.is-chat-page .chat-thread{flex:1;padding-bottom:12px}}.main-content.is-chat-page .topbar{margin-bottom:16px}.topbar{grid-template-columns:minmax(260px,700px) max-content;align-items:center;gap:18px;margin-bottom:22px;display:grid}.search-backdrop,.chat-search-backdrop{z-index:990;background:#0000006b;position:fixed;inset:0}.search-box{min-width:0;min-height:48px;color:var(--text);-webkit-backdrop-filter:blur(12px);z-index:1000;background:#7878781a;border:1px solid #78787833;border-radius:18px;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:12px;padding:0 18px;transition:background-color .2s cubic-bezier(.16,1,.3,1),border-color .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1);display:grid;position:relative;box-shadow:0 4px 20px #0000000d}.search-box:focus-within{background:var(--surface);border:1px solid var(--line);transform:translateY(-2px);box-shadow:0 16px 48px #0003}.search-wrapper{z-index:1000;min-width:0;position:relative}.search-box input{width:100%;min-width:0;color:var(--text);background:0 0;border:0;outline:none;font-size:15px;font-weight:500}.topbar-actions,.heading-actions,.filter-row,.card-actions,.paper-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.topbar-actions{justify-content:flex-end;position:relative}.module-heading .heading-actions{flex-wrap:nowrap}.search-results-panel{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;background:var(--surface);border:1px solid var(--line);border-radius:18px;flex-direction:column;gap:4px;width:100%;max-height:min(60vh,460px);margin-top:8px;padding:8px;display:flex;position:static;overflow-y:auto;box-shadow:0 20px 50px #0003}.notifications-popover{z-index:950;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;position:absolute;overflow:hidden}.search-results-panel{border-radius:18px;width:100%;padding:8px;box-shadow:0 24px 60px #00000047}.search-result-row{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:12px;justify-content:space-between;align-items:center;padding:12px 16px;transition:background-color .2s;display:flex}.search-result-row:hover{background:#0000000d}.notification-row{width:100%;color:var(--text);text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;gap:4px;padding:10px;display:grid}.notification-row:hover{background:var(--surface-strong);border-color:var(--line)}.notification-row span,.notification-row small,.search-result-empty{color:var(--muted);font-size:13px}.notification-row strong{overflow-wrap:anywhere;min-width:0}.search-result-content{flex-direction:column;gap:2px;min-width:0;display:flex}.search-result-content strong{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.search-result-content span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.search-result-icon{width:28px;height:28px;color:var(--muted);background:#7878781a;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.search-result-empty{padding:12px}.icon-button{width:40px;height:40px;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:8px;flex:none;place-items:center;display:inline-grid}.icon-button:hover{border-color:#9d223547;box-shadow:0 10px 24px #22202714}.icon-button.danger{color:var(--utm-red)}.profile-chip{min-width:180px;color:var(--text);text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:8px;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:2px 10px;padding:8px 12px;display:grid}.profile-chip .person-avatar{grid-row:span 2}.profile-chip span,.profile-chip small{overflow-wrap:anywhere;min-width:0}.profile-chip span{font-weight:800}.profile-chip small{color:var(--muted)}.notification-button{position:relative}.notification-button span{color:#fff;background:var(--utm-red);border-radius:999px;place-items:center;min-width:19px;height:19px;padding:0 5px;font-size:11px;font-weight:900;display:grid;position:absolute;top:-6px;right:-6px}.notifications-popover{width:min(380px,100vw - 28px);padding:14px;top:calc(100% + 10px);right:0}.notification-list{gap:8px;max-height:390px;display:grid;overflow:auto}.notification-row.is-unread{background:#9d223514;border-color:#9d223533}.notice{z-index:900;color:#fff;max-width:min(420px,100vw - 32px);box-shadow:var(--shadow);background:#173f35;border-radius:8px;align-items:center;gap:10px;padding:12px 14px;display:flex;position:fixed;bottom:24px;right:24px}.notice.is-error{background:#8f1d2f}.inline-notice{max-width:none;box-shadow:none;position:static}.notify{left:50%;top:calc(12px + env(safe-area-inset-top));z-index:2000;color:#fff;max-width:min(420px,100vw - 32px);box-shadow:var(--shadow);opacity:0;touch-action:none;cursor:grab;background:#173f35;border-radius:8px;align-items:center;gap:10px;padding:12px 14px;transition:transform .55s cubic-bezier(.18,1.25,.4,1),opacity .3s;display:flex;position:fixed;transform:translate(-50%,-160%)}.notify.is-error{background:#8f1d2f}.notify.show{opacity:1;transform:translate(-50%)}.hold-btn{touch-action:none;position:relative;overflow:hidden}.hold-btn .hold-fill{transform-origin:0;pointer-events:none;background:#0000004d;position:absolute;inset:0;transform:scaleX(0)}.hold-btn.holding .hold-fill{transition:transform var(--hold-ms,.8s) linear;transform:scaleX(1)}.hold-btn .hold-label{z-index:1;position:relative}.loading-dots:after{content:"...";vertical-align:bottom;width:1.25em;animation:1.1s steps(4,end) infinite dots;display:inline-block;overflow:hidden}.scanner-loading-spinner{border:6px solid #9d223524;border-top-color:var(--utm-red);border-radius:50%;width:78px;height:78px;animation:.82s linear infinite scannerSpin}@keyframes scannerSpin{to{transform:rotate(360deg)}}.person-avatar{color:#fff;background:var(--utm-red);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:900;display:inline-grid;overflow:hidden}.person-avatar.is-empty{color:#7e8794;background:var(--surface-strong);border:1px solid var(--line)}.person-avatar img{object-fit:cover;width:100%;height:100%}.module{grid-template-columns:minmax(0,1fr);gap:28px;animation:.32s cubic-bezier(.16,1,.3,1) both pageForward;display:grid}.chat-module{flex-direction:column;flex:1;gap:16px;min-height:0;display:flex}.chat-module .chat-panel{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.main-content[data-page-direction=back] .module{animation-name:pageBack}.module-heading{justify-content:space-between;align-items:flex-end;gap:24px;min-width:0;display:flex}.module-heading h1,.module-heading p{margin:0}.module-heading h1{overflow-wrap:break-word;margin-top:4px;font-size:34px;line-height:1.1}.module-heading p:not(.eyebrow){max-width:680px;color:var(--muted);line-height:1.55}.eyebrow{color:var(--utm-red);text-transform:uppercase;font-size:13px;font-weight:900}.panel,.metric-card,.product-card,.question-card,.paper-card,.request-card{border:1px solid var(--line);background:#fffffff0;border-radius:8px;box-shadow:0 12px 34px #22202712}.panel{padding:24px}.panel-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.panel-heading h2{margin:0;font-size:18px}.panel-heading span{color:var(--muted);font-weight:700}.primary-button,.secondary-button,.ghost-button,.chip,.status-pill,.link-button{border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:9px 12px;font-weight:800;text-decoration:none;display:inline-flex}.primary-button{color:#fff;background:var(--utm-red);border:1px solid var(--utm-red)}.primary-button:hover{background:var(--utm-red-dark)}.primary-button:active,.secondary-button:active,.ghost-button:active,.chip:active,.metric-button:active,.nav-item:active,.rb-dock-item:active{background:var(--active-gradient);border-color:#e2725bb8;box-shadow:0 12px 28px #4e2c233d}.secondary-button{color:var(--utm-red);background:#fff4f1;border:1px solid #9d223538}.secondary-button:hover{border-color:#9d22357a}.secondary-button.is-selected{color:#fff;background:var(--active-gradient);border-color:#e2725bb8}.ghost-button{color:var(--text);background:var(--surface);border:1px solid var(--line)}.chip{min-height:34px;color:var(--muted);border:1px solid var(--line);background:#fffc;padding:7px 11px;transition:transform .3s cubic-bezier(.34,1.56,.64,1),background .2s,color .2s,border-color .2s}.chip.is-active,.chip:hover{color:#fff;background:var(--active-gradient);border-color:#e2725bb8}.chip:active,.category-picker button:active{transform:scale(1.12)}.category-picker button{transition:transform .3s cubic-bezier(.34,1.56,.64,1),background .2s,color .2s,border-color .2s}.full-width{width:100%}.underline-link{text-decoration:none;position:relative}.underline-link:after{content:"";transform-origin:0;background:currentColor;width:100%;height:2px;transition:transform .4s cubic-bezier(.65,0,.35,1);position:absolute;bottom:-4px;left:0;transform:scaleX(0)}.underline-link:hover:after{transform:scaleX(1)}.metric-grid,.payment-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.metric-card{min-height:116px;padding:16px}.metric-button{width:100%;color:var(--text);text-align:left}.metric-button:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.metric-card>svg{color:var(--utm-red)}.metric-card span,.metric-card small,.metric-card strong{overflow-wrap:anywhere;min-width:0;display:block}.metric-card span{color:var(--muted);font-size:13px;font-weight:800}.metric-card strong{margin-top:8px;font-size:28px}.metric-card small{color:var(--muted);margin-top:6px}.home-grid{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);grid-template-areas:"feed places""feed requests";gap:16px;display:grid}.activity-panel{grid-area:feed}.route-panel{grid-area:places}.request-panel{grid-area:requests}.feed-list,.compact-list,.cart-list,.ledger-list,.answer-list{gap:10px;display:grid}.feed-item,.compact-row,.cart-row,.ledger-row{border:1px solid var(--line);background:#faf7f0;border-radius:8px;grid-template-columns:28px minmax(0,1fr);gap:10px;padding:12px;display:grid}.feed-item{width:100%;color:var(--text);text-align:left}.feed-item p,.feed-item strong,.feed-item span,.compact-row strong,.compact-row span,.cart-row strong,.cart-row span,.ledger-row strong,.ledger-row span{overflow-wrap:anywhere;min-width:0;margin:0}.feed-item svg{color:var(--teal)}.feed-item strong{margin-bottom:3px;display:block}.feed-item span,.compact-row span,.cart-row span,.ledger-row span{color:var(--muted);font-size:13px}.quick-place-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.quick-place,.location-row{width:100%;color:var(--text);text-align:left;border:1px solid var(--line);background:#fff;border-radius:8px;gap:5px;padding:12px;display:grid}.quick-place:hover,.location-row:hover,.location-row.is-active{border-color:#9d223561;box-shadow:0 10px 22px #22202712}.quick-place span,.location-row span,.location-row small{color:var(--muted);font-size:12px;font-weight:800}.quick-place strong,.location-row strong{overflow-wrap:anywhere;min-width:0}.compact-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}.compact-row b{color:var(--teal)}.market-layout{grid-template-columns:320px minmax(0,1fr);align-items:start;gap:16px;display:grid}.market-products{gap:14px;display:grid}.listing-form-panel,.cart-panel,.upload-panel,.request-form-panel,.qa-form-panel{position:sticky;top:22px}.stacked-form{gap:12px;display:grid}.stacked-form label,.payment-select,.inline-select{gap:6px;min-width:0;display:grid}.stacked-form span,.payment-select span{color:var(--muted);font-size:13px;font-weight:800}.field-label-icon{align-items:center;gap:6px;display:inline-flex}input,select,textarea{width:100%;min-width:0;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:8px;outline:none;padding:10px 11px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:#9d223580;box-shadow:0 0 0 3px #9d22351f}.two-col{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.category-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.category-picker button{min-height:38px;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:8px;font-weight:800;display:inline-flex}.category-picker button.is-active{color:#fff;background:var(--utm-red);border-color:var(--utm-red)}.price-field{background:var(--surface);border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid;overflow:hidden}.price-field input{box-shadow:none;border:0}.price-field span{color:var(--muted);padding:0 11px;font-weight:900}.product-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;display:grid}.product-card{border-radius:12px;overflow:hidden}.product-card.is-sold,.listing-detail-modal.is-sold{background:#eef0f2}.product-card.is-sold img,.listing-detail-modal.is-sold .listing-modal-image img{filter:grayscale(.72)}.sold-pill{color:#5f6570;background:#5f657024;border-color:#5f65703d;width:fit-content}.clickable-card{cursor:pointer}.clickable-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.product-card img{aspect-ratio:4/3;object-fit:cover;background:#ddd5c7;width:100%}.product-body{gap:10px;padding:14px;display:grid}.product-body h2,.question-body h2,.paper-card h2,.request-card h2{overflow-wrap:anywhere;min-width:0;margin:0;font-size:18px;line-height:1.22}.product-body p,.question-body p,.paper-card p,.request-card p,.selected-place p,.empty-state p{color:var(--muted);overflow-wrap:anywhere;margin:0;line-height:1.45}.card-title-row{justify-content:space-between;align-items:flex-start;gap:10px;min-width:0;display:flex}.pill,.status-pill,.request-status{min-height:26px;color:var(--teal);background:#00856f1a;border:1px solid #00856f2e;border-radius:8px;align-items:center;padding:4px 8px;font-size:12px;font-weight:900;display:inline-flex}.meta-row,.tag-row,.best-for,.request-meta,.route-line,.driver-chip,.map-link-row{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.meta-row span,.tag-row span,.best-for span,.request-meta span,.route-line span,.driver-chip{overflow-wrap:anywhere;min-width:0}.meta-row{color:var(--muted);font-size:13px}.meta-row span{width:fit-content;max-width:100%;min-height:28px;color:var(--text);background:var(--surface-strong);border:1px solid var(--line);border-radius:999px;align-items:center;padding:5px 8px;font-size:12px;font-weight:800;display:inline-flex}.listing-info-pills{align-items:flex-start}.listing-info-pills span,.listing-detail-modal .listing-info-pills span{color:var(--text);background:#d84a5f1f;border-color:#d84a5f47;padding:6px 10px;box-shadow:inset 0 0 0 1px #ffffff08}.tag-row span,.best-for span{color:#4f4a55;background:#f5efe2;border-radius:8px;padding:5px 7px;font-size:12px;font-weight:800}.listing-action-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.compact-actions{gap:7px}.seller-inline,.author-line,.author-button{width:fit-content;max-width:100%;color:var(--text);text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:0;display:inline-flex}.seller-inline span,.author-line span,.author-button strong{overflow-wrap:anywhere;min-width:0}.favourites-panel{gap:10px;display:grid}.favourites-list{gap:8px;display:grid;position:relative}.collapse{transform-origin:top;overflow:hidden}.collapse-inner{min-height:0;overflow:hidden}@media (prefers-reduced-motion:reduce){.app-shell.app-reveal{animation:none}}.favourite-row{width:100%;color:var(--text);text-align:left;background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px;display:grid}.favourite-row img{object-fit:cover;border-radius:8px;width:48px;height:48px}.favourite-row span,.favourite-row strong{overflow-wrap:anywhere;min-width:0}.cart-row{grid-template-columns:minmax(0,1fr) 40px;align-items:center}.muted,.fine-print{color:var(--muted)}.total-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:14px 0;display:flex}.total-row strong{font-size:22px}.map-layout{grid-template-columns:minmax(420px,1fr) 330px;align-items:start;gap:16px;display:grid}.campus-map-panel{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;grid-row:span 2;overflow:hidden}.campus-map{width:100%;min-height:650px}.campus-marker-shell{background:0 0;border:0}.campus-marker{color:#fff;background:var(--pin-color);border:3px solid #fff;border-radius:50%;place-items:center;width:34px;height:34px;font-size:12px;font-weight:900;display:grid;box-shadow:0 8px 18px #00000042}.campus-marker.is-selected{outline:4px solid #9d223542;width:38px;height:38px}.location-list{gap:8px;max-height:360px;padding-right:4px;display:grid;overflow:auto}.selected-place{gap:14px;display:grid}.selected-place-header{gap:9px;display:grid}.selected-place-header h2{overflow-wrap:anywhere;margin:0;font-size:22px}.fine-print{margin:0;font-size:12px}.chat-panel{border:1px solid var(--line);min-height:0;box-shadow:var(--shadow);margin-bottom:calc(env(safe-area-inset-bottom) + 12px);background:#fffffff0;border-radius:10px;flex-direction:column;flex:1;display:flex;overflow:hidden}.chat-thread{background:linear-gradient(135deg,#9d22351f,#0000 34%),linear-gradient(215deg,#00856f24,#0000 48%),linear-gradient(#fff7ec,#edf6f2);flex-direction:column;flex:1;gap:12px;min-height:0;padding:18px;display:flex;overflow:auto}.chat-input-container{flex:none;width:100%;min-width:0;position:relative}.message-wrapper{flex-direction:column;width:100%;display:flex;position:relative;overflow:visible}.swipe-reply-indicator{opacity:0;color:#94a3b8;pointer-events:none;z-index:1;transition:transform .1s,opacity .1s,color .15s;position:absolute;top:50%;left:16px;transform:translateY(-50%)scale(.6)}.message-bubble{border:1px solid var(--line);touch-action:pan-y;will-change:transform;background:#fff;border-radius:12px;max-width:min(680px,88%);margin-bottom:6px;padding:5px 10px;font-size:14px;transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s,opacity .2s}.message-bubble,.question-card,.answer-row,.request-card{transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s,opacity .2s}.message-bubble.is-pressing{opacity:.9;transform:scale(.96)!important;box-shadow:0 4px 16px #00000014!important}.message-bubble.is-mine{color:#fff;background:var(--utm-red);border-color:var(--utm-red);border-bottom-right-radius:6px;align-self:flex-end}.message-bubble:has(+.message-bubble:not(:has(.message-head))){margin-bottom:1px}.message-bubble:not(:has(.message-head)){margin-top:1px;margin-bottom:1px}.message-bubble.is-reply-flash{animation:.52s both replySwipePulse,1.2s both replyHighlightFlash}.message-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px;display:flex}.message-bubble p,.message-bubble strong,.message-bubble span{overflow-wrap:anywhere;min-width:0;margin:0}.message-bubble span{color:var(--muted);font-size:12px}.message-bubble.is-mine span{color:#ffffffb8}.reply-preview{width:100%;color:var(--text);text-align:left;border:0;border-left:3px solid var(--utm-teal);background:#00856f14;border-radius:10px;margin:0 0 8px;padding:8px 10px;display:block}.message-bubble.is-mine .reply-preview{color:#fff;background:#ffffff1f;border-left-color:#ffffffb8}.reply-preview span,.reply-composer span{color:var(--utm-teal);margin-bottom:2px;font-size:12px;font-weight:800;display:block}.message-bubble.is-mine .reply-preview span{color:#fff}.reply-preview p,.reply-composer p{color:inherit;margin:0;font-size:13px;line-height:1.35}.chat-composer{z-index:5;background:var(--surface);border-top:1px solid var(--line);grid-template-columns:auto auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:14px;display:grid;position:sticky;bottom:0;box-shadow:0 -14px 34px #22202714}.reply-composer{border:1px solid #00856f33;border-left:4px solid var(--utm-teal);background:#00856f14;border-radius:12px;grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px;display:grid}.voice-button.is-recording{color:#fff;background:var(--utm-red);border-color:var(--utm-red)}.voice-preview{background:#0f172ad1;border:1px solid #35b99f38;border-radius:999px;grid-column:1/-1;align-items:center;gap:10px;padding:8px;display:flex}.modern-voice-player{color:#fff;background:#0f172ad1;border:1px solid #ffffff1a;border-radius:999px;grid-template-columns:34px minmax(90px,1fr) auto;align-items:center;gap:10px;width:min(280px,100%);padding:7px 9px;display:grid}.voice-play-button{color:#fff;background:var(--utm-red);border:0;border-radius:999px;place-items:center;width:32px;height:32px;padding:0;display:grid}.modern-voice-wave{align-items:center;gap:3px;min-width:0;height:26px;display:flex;overflow:hidden}.modern-voice-wave span{width:3px;height:calc(var(--bar) * 3px);transform-origin:50%;background:#ff5d78;border-radius:999px;transform:scaleY(.45)}.modern-voice-duration{color:#ffffffbf;white-space:nowrap;font-size:12px;font-weight:900}.voice-play-dot,.voice-recording-dot{color:#fff;background:var(--utm-red);border-radius:999px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.voice-recording-dot{background:#ff4058;width:14px;height:14px;animation:1.1s ease-in-out infinite recordingPulse;box-shadow:0 0 #ff405880}.voice-bars{flex:1;align-items:center;gap:3px;min-width:74px;height:28px;display:flex}.voice-bars span{width:4px;height:calc(var(--bar) * 3px);background:var(--utm-teal);transform-origin:50%;border-radius:999px}.voice-bars.is-recording span,.voice-bars.is-live span{animation:1s ease-in-out infinite voicePulse;animation-delay:calc(var(--bar) * -.06s)}.voice-ready-chip{white-space:nowrap;color:var(--utm-red);align-items:center;gap:5px;font-weight:900;display:inline-flex}@keyframes recordingPulse{70%{box-shadow:0 0 0 10px #ff405800}to{box-shadow:0 0 #ff405800}}.attachment-button{position:relative;overflow:hidden}.attachment-button input{opacity:0;cursor:pointer;position:absolute;inset:0}.message-image,.question-image{background:var(--surface-strong);border:1px solid var(--line);border-radius:10px;width:min(360px,100%);padding:0;overflow:hidden}.message-image img,.question-image img{object-fit:cover;width:100%;max-height:260px}.message-attachments{gap:8px;width:min(380px,100%);margin-top:8px;display:grid}.message-attachment{width:100%;color:var(--text);text-align:left;background:var(--surface-strong);border:1px solid var(--line);border-radius:10px;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:10px;padding:7px 9px 7px 7px;display:grid}.message-attachment img,.message-attachment video{object-fit:cover;border-radius:8px;width:56px;height:48px}.message-attachment>svg{color:var(--utm-red);justify-self:center}.message-attachment span{color:var(--text);font-size:13px;font-weight:900}.message-attachment small{color:var(--muted);white-space:nowrap;font-size:11px}.message-bubble.is-mine .message-attachment{background:#ffffff21;border-color:#fff3}.message-bubble.is-mine .message-attachment span,.message-bubble.is-mine .message-attachment small,.message-bubble.is-mine .message-attachment>svg{color:#fff}.typing-indicator{width:fit-content;max-width:calc(100% - 28px);color:var(--muted);background:var(--surface-strong);border:1px solid var(--line);border-radius:999px;align-self:flex-start;align-items:center;gap:6px;margin-top:4px;margin-bottom:6px;padding:5px 11px 5px 5px;font-size:12px;font-weight:800;display:inline-flex;box-shadow:0 10px 24px #2220271a}.chat-input-container>.chat-input-bar{width:100%;min-width:0;position:relative;bottom:auto}.typing-indicator .person-avatar{flex:none}.typing-indicator i{background:var(--utm-red);border-radius:50%;width:7px;height:7px;animation:.86s ease-in-out infinite typingBounce}.typing-indicator i:nth-of-type(2){animation-delay:.12s}.typing-indicator i:nth-of-type(3){animation-delay:.24s}@keyframes typingBounce{0%,70%,to{opacity:.45;transform:translateY(0)}35%{opacity:1;transform:translateY(-4px)}}.qa-layout,.papers-layout,.requests-layout{grid-template-columns:330px minmax(0,1fr);align-items:start;gap:16px;display:grid}@media (width>=981px){.qa-layout,.papers-layout,.requests-layout{transition:grid-template-columns .38s cubic-bezier(.04,.62,.23,.98)}.papers-layout.is-form-minimized,.qa-layout.is-form-minimized,.requests-layout.is-form-minimized{grid-template-columns:0 minmax(0,1fr)}.qa-layout>.collapse,.papers-layout>.collapse,.requests-layout>.collapse{min-width:0}}.papers-layout.is-form-minimized .paper-grid,.qa-layout.is-form-minimized .question-list,.requests-layout.is-form-minimized .request-list{width:100%}@media (width<=980px){.papers-layout{flex-direction:column;display:flex}}.question-list,.paper-grid,.request-list{gap:14px;display:grid}.question-card{gap:14px;padding:16px;display:grid}.question-votes{align-content:start;justify-items:center;gap:8px;padding-top:2px;display:grid}.question-votes strong{font-size:20px}.question-body{gap:12px;min-width:0;display:grid}.status-pill{color:var(--muted);border-color:var(--line);background:#f3f1ec}.status-pill.is-good{color:#0a6a55;background:#00856f1a;border-color:#00856f2e}.answer-row{border:1px solid var(--line);background:#fbf7ee;border-radius:8px;gap:8px;padding:12px;display:grid}.answer-row div{justify-content:space-between;gap:10px;display:flex}.answer-row span{color:var(--muted);font-size:12px}.answer-composer{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.answer-composer .file-input{grid-column:1/-1;min-height:40px;padding:8px 11px}.inline-editor,.inline-question-editor{gap:8px;display:grid}@keyframes actionsSlideDown{0%{opacity:0;transform:translateY(-8px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.message-actions{border-top:1px solid var(--line);transform-origin:0 0;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;padding-top:10px;animation:.2s cubic-bezier(.16,1,.3,1) forwards actionsSlideDown;display:flex}.message-bubble.is-mine .message-actions{transform-origin:100% 0}.message-actions button{min-height:32px;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:8px;align-items:center;gap:6px;padding:6px 9px;display:inline-flex}.message-actions .danger-action{color:var(--utm-red);border-color:#d84a5f57}.reaction-palette{background:var(--surface-strong);border:1px solid var(--line);border-radius:999px;align-items:center;gap:5px;padding:3px;display:inline-flex}.reaction-palette button{background:0 0;border:0;border-radius:999px;min-width:31px;min-height:31px;padding:4px 7px;font-size:16px}.reaction-palette button:hover{background:#9d22351f}.translation-box{background:#2364aa14;border:1px solid #2364aa2e;border-radius:8px;padding:10px 11px;color:var(--text)!important}.danger-text{color:var(--utm-red)!important}.reaction-row{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.reaction-chip{min-height:28px;color:var(--text);background:var(--surface-strong);border:1px solid var(--line);border-radius:999px;align-items:center;gap:5px;padding:4px 8px;display:inline-flex}.reaction-chip.is-active{color:#fff;background:var(--utm-red);border-color:var(--utm-red)}.file-input{min-height:48px;color:var(--muted);background:#fff;border:1px dashed #9d22356b;border-radius:8px;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:10px;padding:11px;display:grid;position:relative}.file-input input{opacity:0;cursor:pointer;position:absolute;inset:0}.file-input span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.paper-card{grid-template-columns:52px minmax(0,1fr) auto;align-items:start;gap:14px;padding:16px;display:grid}.paper-icon,.ledger-icon{width:44px;height:44px;color:var(--blue);background:#2364aa1a;border-radius:8px;place-items:center;display:grid}.paper-actions{justify-content:flex-end}.paper-actions span{color:var(--muted);font-size:13px;font-weight:700}.external-drive-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;display:grid}.drive-card,.review-row{color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:8px;gap:10px;padding:14px;text-decoration:none;display:grid}.drive-card{grid-template-columns:28px minmax(0,1fr) 18px;align-items:start}.drive-card:hover{border-color:#9d22356b;box-shadow:0 10px 24px #22202714}.drive-card strong,.drive-card span,.review-row strong,.review-row span{overflow-wrap:anywhere;min-width:0;display:block}.drive-card span,.review-row span{color:var(--muted);margin-top:4px;font-size:13px}.review-panel,.review-list{gap:10px;display:grid}.review-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}.inline-select{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:20px minmax(160px,220px);align-items:center;padding:8px 10px}.inline-select select{box-shadow:none;border:0;padding:4px}.sort-control{min-height:40px;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:999px;grid-template-columns:18px auto minmax(150px,1fr);align-items:center;gap:8px;padding:7px 10px;font-weight:900;display:grid}.sort-control select{width:auto;min-width:0;color:var(--text);box-shadow:none;background:0 0;border:0;padding:4px 24px 4px 6px}.segmented-control{border:1px solid var(--line);background:#f3eee4;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:4px;display:grid}.segmented-control button{min-height:38px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:7px;font-weight:800;display:inline-flex}.segmented-control button.is-active{color:var(--text);border-color:var(--line);background:#fff}.map-input-panel,.payment-detail-panel{background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;gap:10px;padding:12px;display:grid}.map-input-heading,.payment-detail-panel{align-items:center}.map-input-heading{color:var(--text);gap:8px;display:flex}.location-dropdown-wrapper{position:relative}.location-suggestions{z-index:120;background:var(--surface);border:1px solid var(--line);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border-top:0;border-radius:0 0 8px 8px;max-height:220px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 10px 28px #00000024}.location-suggestions::-webkit-scrollbar{width:5px}.location-suggestions::-webkit-scrollbar-thumb{background:var(--line);border-radius:6px}.location-suggestion-item{width:100%;color:var(--text);text-align:left;border:0;border-bottom:1px solid var(--line);cursor:pointer;background:0 0;align-items:center;gap:8px;padding:10px 12px;font-size:13px;transition:background .15s;display:flex}.location-suggestion-item:last-child{border-bottom:0}.location-suggestion-item:hover,.location-suggestion-item:focus-visible{background:#00856f14}.location-suggestion-item svg{color:var(--muted);flex-shrink:0}.transport-location-col{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width<=600px){.transport-location-col{grid-template-columns:1fr}}.map-action-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.payment-detail-panel{color:var(--muted);grid-template-columns:22px minmax(0,1fr)}.payment-detail-panel.is-disabled{opacity:.58;pointer-events:none;filter:grayscale(.25)}.request-card{gap:12px;padding:16px;display:grid}.transport-filter-row{padding-bottom:2px}.scan-pay-badge{min-height:38px;color:var(--teal);background:#00856f1a;border:1px solid #00856f33;border-radius:8px;align-items:center;gap:8px;padding:8px 11px;font-weight:900;display:inline-flex}.request-card-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.request-status.open{color:var(--blue);background:#2364aa1a;border-color:#2364aa2e}.request-status.matched{color:var(--gold);background:#bf8c2c1f;border-color:#bf8c2c3d}.request-status.paid,.request-status.completed{color:var(--teal);background:#00856f1a;border-color:#00856f2e}.route-line{border:1px solid var(--line);background:#f9f4e9;border-radius:8px;padding:10px 12px}.route-line svg,.request-meta svg,.driver-chip svg{flex:none}.request-meta{justify-content:space-between}.request-meta span,.driver-chip{color:var(--muted);align-items:center;gap:7px;display:inline-flex}.request-meta strong{color:var(--utm-red);font-size:20px}.driver-chip{background:#6d5dfc1a;border-radius:8px;width:fit-content;padding:6px 8px}.bus-layout{grid-template-columns:360px minmax(0,1fr);align-items:start;gap:16px;display:grid}.bus-view-toggle{background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;gap:2px;padding:2px;display:flex}.bus-view-toggle .toggle-btn{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px 12px;font-size:13px;font-weight:600;transition:color .2s cubic-bezier(.16,1,.3,1),background-color .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1)}.bus-view-toggle .toggle-btn:hover{color:var(--text)}.bus-view-toggle .toggle-btn.is-active{color:var(--text);background:var(--surface);box-shadow:0 2px 8px #00000014}.app-shell .sidebar{-webkit-user-select:none;user-select:none;flex-direction:column;gap:20px;display:flex}.bus-live-map-container{flex-direction:column;gap:12px;margin:12px 0;display:flex}.bus-live-map{border:1px solid var(--line);width:100%;height:380px;box-shadow:var(--shadow);border-radius:8px;overflow:hidden}.bus-marker-shell{background:0 0;border:0}.bus-marker{color:#fff;background:#2364aa;border:3px solid #fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:42px;height:42px;font-size:15px;animation:2s infinite pulse-bus;display:flex;box-shadow:0 8px 18px #2364aa59}.bus-marker small{font-size:9px;font-weight:800;line-height:1}@keyframes pulse-bus{0%{box-shadow:0 0 #2364aa99}70%{box-shadow:0 0 0 12px #2364aa00}to{box-shadow:0 0 #2364aa00}}.bus-stop-marker-shell{background:0 0;border:0}.bus-stop-marker{text-transform:uppercase;color:#2364aa;background:#fff;border:2px solid #2364aa;border-radius:50%;place-items:center;width:28px;height:28px;font-size:8px;font-weight:800;display:grid;box-shadow:0 4px 10px #2364aa33}.bus-stop-marker.is-start{color:#10b981;background-color:#10b9811f;border-color:#10b981;box-shadow:0 4px 10px #10b98140}.bus-telemetry-banner{background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;padding:12px 14px}.telemetry-info{color:var(--text);align-items:center;gap:10px;font-size:14px;display:flex}.telemetry-info.is-offline{color:var(--muted)}.telemetry-info.is-estimate{color:var(--muted);align-items:flex-start}.telemetry-info.is-estimate svg{color:var(--accent,currentColor);flex:none;margin-top:2px}.bus-next-departures{gap:6px;margin-top:10px;display:grid}.bus-next-departure{background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px;padding:8px 12px;font-size:13px;display:flex}.bus-next-departure-origin{color:var(--muted);font-weight:600}.bus-next-departure-time{color:var(--text)}.live-pulse{background:#10ac84;border-radius:50%;width:10px;height:10px;animation:1.5s infinite pulse-live;display:inline-block}@keyframes pulse-live{0%{box-shadow:0 0 #10ac8499}70%{box-shadow:0 0 0 8px #10ac8400}to{box-shadow:0 0 #10ac8400}}.bus-document-tabs{margin-bottom:12px}.bus-search{color:var(--muted);background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;margin-bottom:12px;padding:8px 10px;display:grid}.bus-search input{box-shadow:none;background:0 0;border:0;padding:4px}.bus-route-list,.bus-doc-list{touch-action:pan-y;gap:9px;max-height:540px;padding-right:4px;display:grid;overflow-y:auto}.bus-route-row,.bus-doc-card{width:100%;color:var(--text);text-align:left;background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;gap:5px;padding:11px;display:grid}.bus-route-row.is-active,.bus-route-row:hover{border-color:#9d22356b;box-shadow:0 10px 22px #22202714}.bus-route-row strong{color:var(--utm-red);font-size:16px}.bus-route-title{justify-content:space-between;align-items:center;gap:8px;display:flex}.bus-availability{width:fit-content;min-height:26px;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:999px;align-items:center;padding:4px 8px;font-size:12px;font-weight:900;display:inline-flex}.bus-availability.is-available{color:#08735f;background:#00856f1f;border-color:#00856f38}.bus-route-row span,.bus-route-row small{color:var(--muted);overflow-wrap:anywhere}.bus-timetable-panel{gap:14px;display:grid}.bus-summary-strip,.bus-stop-flow,.bus-notes{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.bus-summary-strip span:not(.pill),.bus-notes span{color:var(--muted);font-size:13px}.paj-api-strip{width:fit-content;max-width:100%;color:var(--muted);background:#2364aa14;border:1px solid #2364aa33;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 10px;font-size:13px;font-weight:800;display:flex}.paj-api-strip a{color:var(--utm-red);text-decoration:none}.paj-api-strip a:hover{text-decoration:underline}.bus-direction-toggle{width:fit-content;max-width:100%;color:var(--muted);background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 10px;font-size:13px;font-weight:900;display:flex}.bus-direction-toggle button{color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:6px 10px;font-size:13px;font-weight:900}.bus-direction-toggle button.is-active{color:#fff;background:var(--utm-red);border-color:var(--utm-red)}.bus-stop-select{width:fit-content;max-width:100%;color:var(--muted);background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;grid-template-columns:18px auto minmax(120px,260px);align-items:center;gap:8px;min-width:0;padding:8px 10px;font-weight:900;display:grid}.bus-stop-direction-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.bus-stop-select select{background:var(--surface);padding:5px 8px}.bus-stop-flow button{color:var(--text);background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;padding:6px 8px;font-size:13px;font-weight:800}.bus-stop-flow button.is-active{color:#fff;background:var(--utm-red);border-color:var(--utm-red)}.bus-stop-flow.is-compact{gap:6px}.bus-stop-flow.is-compact button{padding:5px 7px;font-size:12px}.bus-schedule-groups,.bus-stop-timetable-stack{gap:10px;display:grid}.bus-stop-timetable-panel,.bus-schedule-group{background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;gap:10px;padding:12px;display:grid}.bus-stop-timetable-panel{border-color:color-mix(in srgb, var(--teal) 26%, var(--line))}.bus-schedule-group.is-active{box-shadow:inset 3px 0 0 var(--utm-red);border-color:#9d223557}.bus-schedule-group-heading{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.bus-schedule-group-heading strong{color:var(--text);font-size:14px}.bus-schedule-group-heading span{color:var(--muted);font-size:13px;font-weight:700}.bus-time-caption{color:var(--muted);font-size:12px;font-weight:800}.bus-time-grid{grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:6px;display:grid}.bus-time-grid span{min-height:28px;color:var(--text);text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:6px 8px;font-size:12px;font-weight:900}.bus-time-grid span.is-active{color:#fff;background:#08735f;border-color:#08735f}.bus-timetable-image{background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;max-height:720px;margin:0;overflow:auto}.bus-timetable-image img{width:100%;min-width:520px}.bus-doc-card h2,.bus-doc-card p{margin:0}.bus-doc-card h2{margin-top:8px;font-size:20px}.bus-doc-card p{color:var(--muted);line-height:1.45}.bus-doc-meta{color:var(--muted);gap:4px;font-size:13px;display:grid}.bus-doc-meta span,.bus-doc-meta small{overflow-wrap:anywhere}.compact-help-list{gap:8px}.compact-help-list article{padding:9px}.help-list{gap:12px;display:grid}.help-list article{background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;gap:5px;padding:12px;display:grid}.help-list h3,.help-list p{overflow-wrap:anywhere;margin:0}.payment-ledger{margin-top:16px}.ledger-row{grid-template-columns:44px minmax(0,1fr) auto;align-items:center}.ledger-meta{margin-top:6px;display:block}.ledger-amount{justify-items:end;gap:3px;display:grid}.ledger-amount strong{color:var(--utm-red)}.duitnow-box{background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;align-items:center;gap:12px;width:fit-content;max-width:100%;margin-top:10px;padding:10px;display:flex}.duitnow-box img{object-fit:cover;border-radius:6px;width:76px;height:76px}.duitnow-box span,.duitnow-box strong{overflow-wrap:anywhere;min-width:0;display:block}.mini-button{min-height:30px;padding:5px 8px;font-size:12px}.helpful-button{transition:background-color .25s cubic-bezier(.4,0,.2,1),border-color .25s cubic-bezier(.4,0,.2,1),color .25s cubic-bezier(.4,0,.2,1),transform .15s cubic-bezier(.25,.46,.45,.94)}.helpful-button:active{transform:scale(.93)!important}.helpful-button.is-active{color:#fff;background:var(--success-green);border-color:var(--success-green)}.helpful-button.is-active svg{color:#fff;animation:.35s cubic-bezier(.175,.885,.32,1.275) both thumbs-up-pop}@keyframes thumbs-up-pop{0%{transform:scale(1)rotate(0)}30%{transform:scale(1.35)rotate(-15deg)}60%{transform:scale(.9)rotate(5deg)}to{transform:scale(1)rotate(0)}}.answer-delete-button{color:var(--utm-red);border-color:#d84a5f57;margin-left:8px}.locked-answer-note{color:var(--muted);background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;padding:11px 12px;font-weight:800}.profile-layout{grid-template-columns:320px minmax(0,1fr);align-items:start;gap:16px;display:grid}.profile-card-panel{text-align:center;justify-items:center;gap:14px;display:grid}.profile-photo{width:150px;height:150px;color:var(--muted);background:var(--surface-strong);border:1px solid var(--line);border-radius:50%;place-items:center;display:grid;overflow:hidden}.profile-photo img{object-fit:cover;width:100%;height:100%}.profile-upload{position:relative;overflow:hidden}.profile-photo-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.profile-upload input{opacity:0;cursor:pointer;position:absolute;inset:0}.profile-crop-modal{width:min(560px,100%)}.profile-crop-body{gap:16px;padding:22px;display:grid}.profile-crop-body h2,.profile-crop-body p{margin:0}.crop-frame{aspect-ratio:1;background:var(--surface-strong);border:1px solid var(--line);border-radius:50%;width:min(320px,100%);margin:0 auto;position:relative;overflow:hidden;box-shadow:inset 0 0 0 2px #ffffff73}.crop-frame:after{pointer-events:none;content:"";border:1px dashed #ffffffb8;border-radius:50%;position:absolute;inset:14px}.crop-frame img{object-fit:cover;transform-origin:50%;will-change:transform;width:100%;height:100%;transition:transform .16s}.crop-controls{gap:12px;display:grid}.crop-controls label{gap:7px;font-weight:800;display:grid}.crop-controls input[type=range]{accent-color:var(--utm-red)}.profile-card-text h2,.profile-card-text p,.profile-card-text span,.profile-card-text small{overflow-wrap:anywhere;margin:0}.profile-card-text{gap:5px;display:grid}.profile-card-text p,.profile-card-text span,.profile-card-text small{color:var(--muted)}.setup-theme-toggle{background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(210px,300px);align-items:center;gap:12px;margin-bottom:14px;padding:12px;display:grid}.setup-theme-toggle strong,.setup-theme-toggle span{display:block}.setup-theme-toggle span{color:var(--muted);margin-top:2px;font-size:13px}.setup-theme-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-stats,.profile-detail-list{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:8px;display:flex}.profile-stats span,.profile-detail-list span{color:var(--text);background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;align-items:center;gap:5px;padding:6px 8px;font-size:12px;font-weight:800;display:inline-flex}.profile-detail-list{justify-content:stretch;display:grid}.profile-widget-panel{background:radial-gradient(circle at top right, color-mix(in srgb, var(--utm-red) 28%, transparent), transparent 42%), linear-gradient(145deg, var(--surface), var(--surface-strong));grid-column:1/-1;gap:14px;display:grid;position:relative;overflow:hidden}.profile-widget-heading-button{white-space:nowrap;justify-self:end}.profile-widget-copy{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;display:grid}.profile-widget-copy h2,.profile-widget-copy p{margin:0}.profile-widget-copy h2{margin-top:2px;font-size:18px}.profile-widget-copy p:not(.eyebrow){color:var(--muted);margin-top:5px;font-size:13px;line-height:1.45}.profile-widget-icon,.widget-pin-hero-icon,.widget-choice-preview,.profile-widget-strip span{color:#fff;background:linear-gradient(135deg, color-mix(in srgb, var(--widget-accent,var(--utm-red)) 88%, #fff 12%), var(--widget-accent,var(--utm-red))), var(--widget-accent,var(--utm-red));place-items:center;display:inline-grid}.profile-widget-icon{--widget-accent:var(--utm-red);width:42px;height:42px;box-shadow:0 14px 28px color-mix(in srgb, var(--utm-red) 26%, transparent);border-radius:8px}.profile-widget-strip{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.profile-widget-strip span{border-radius:8px;min-height:42px;box-shadow:inset 0 1px #ffffff38}.widget-pin-backdrop{-webkit-backdrop-filter:blur(14px)saturate(120%);backdrop-filter:blur(14px)saturate(120%);background:linear-gradient(#0a0c12a8,#0a0c12bd),#0a0c126b}.widget-pin-modal{width:min(780px,100%);overflow:hidden}.widget-pin-body{gap:18px;padding:22px;display:grid}.widget-pin-hero{background:linear-gradient(135deg, color-mix(in srgb, var(--widget-accent) 15%, transparent), transparent), var(--surface-strong);border:1px solid color-mix(in srgb, var(--widget-accent) 28%, var(--line));border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;padding:14px;display:grid}.widget-pin-hero-icon{width:58px;height:58px;box-shadow:0 18px 36px color-mix(in srgb, var(--widget-accent) 28%, transparent);border-radius:8px}.widget-pin-hero h2,.widget-pin-hero p{margin:0}.widget-pin-hero h2{margin-top:3px;font-size:22px}.widget-pin-hero p:not(.eyebrow){color:var(--muted);margin-top:4px}.widget-choice-grid{grid-template-columns:repeat(auto-fit,minmax(172px,1fr));gap:10px;display:grid}.widget-choice{min-height:88px;color:var(--text);text-align:left;background:var(--surface);border:1px solid var(--line);cursor:pointer;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:5px 10px;padding:12px;transition:border-color .18s,background-color .18s,transform .18s;display:grid}.widget-choice:hover,.widget-choice:focus-visible,.widget-choice.is-selected{border-color:color-mix(in srgb, var(--widget-accent) 70%, var(--line));background:color-mix(in srgb, var(--widget-accent) 10%, var(--surface))}.widget-choice:focus-visible{outline:2px solid color-mix(in srgb, var(--widget-accent) 60%, transparent);outline-offset:2px}.widget-choice.is-selected{transform:translateY(-1px)}.widget-choice-preview{border-radius:8px;grid-row:span 2;width:44px;height:44px}.widget-choice strong,.widget-choice span:not(.widget-choice-preview){min-width:0}.widget-choice span:not(.widget-choice-preview){color:var(--muted);font-size:12px;line-height:1.35}.widget-pin-status{color:var(--text);background:linear-gradient(135deg, #2ed5a824, transparent), color-mix(in srgb, var(--surface-strong) 92%, transparent);border:1px solid #2ed5a842;border-radius:8px;padding:11px 12px;font-size:13px;line-height:1.45}.widget-pin-status.is-error{background:linear-gradient(135deg, #e94b7229, transparent), color-mix(in srgb, var(--surface-strong) 92%, transparent);border-color:#e94b7252}.widget-pin-actions{justify-content:flex-end;gap:10px;display:flex}.profile-reviews-panel{grid-column:1/-1}.review-form{grid-template-columns:140px minmax(0,1fr) auto;gap:10px;margin-bottom:12px;display:grid}.modal-backdrop{z-index:1000;background:#00000080;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.detail-modal{background:var(--surface);border:1px solid var(--line);width:min(760px,100%);max-height:min(860px,100vh - 40px);box-shadow:var(--shadow);border-radius:8px;display:grid;position:relative;overflow:auto}.listing-detail-modal{grid-template-columns:minmax(260px,.95fr) minmax(300px,1.05fr)}.listing-modal-backdrop{-webkit-backdrop-filter:blur(12px)saturate(118%);backdrop-filter:blur(12px)saturate(118%);background:linear-gradient(#0e111694,#0e1116ad),#0e111661}.listing-modal-backdrop .listing-detail-modal{box-shadow:0 28px 80px #00000057}.listing-detail-modal>img{object-fit:cover;width:100%;height:100%;min-height:420px}.listing-modal-image{color:#fff;text-align:left;background:#ddd5c7;border:0;min-height:420px;padding:0;position:relative;overflow:hidden}.listing-modal-image img{object-fit:cover;width:100%;height:100%;min-height:420px}.listing-modal-image span{background:#222027bd;border-radius:8px;align-items:center;gap:7px;padding:8px 10px;font-weight:900;display:inline-flex;position:absolute;bottom:14px;left:14px}.detail-modal-body{align-content:start;gap:14px;padding:22px;display:grid}.detail-modal-body h2,.detail-modal-body p{overflow-wrap:anywhere;margin:0}.pin-picker-modal{width:min(780px,100%)}.pin-picker-body{gap:14px;padding:22px;display:grid}.pin-picker-body h2,.pin-picker-body p{margin:0}.pin-picker-map{border:1px solid var(--line);border-radius:8px;width:100%;min-height:420px;overflow:hidden}.pin-place-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-price{color:var(--utm-red);font-size:28px}.modal-close{z-index:2;position:absolute;top:12px;right:12px}.seller-card{width:100%;color:var(--text);text-align:left;background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:10px;padding:12px;display:grid}.seller-avatar{color:#fff;background:var(--utm-red);border-radius:50%;place-items:center;width:48px;height:48px;font-weight:900;display:grid;overflow:hidden}.seller-avatar img{object-fit:cover;width:100%;height:100%}.seller-card span,.seller-card strong{overflow-wrap:anywhere;min-width:0;display:block}.seller-card span{color:var(--muted);font-size:13px}.listing-edit-panel{background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;gap:12px;padding:14px;display:grid}.listing-edit-panel h3{margin:0}.image-viewer-backdrop{z-index:1100}.image-viewer{width:min(980px,100%);min-height:min(720px,100vh - 40px);box-shadow:var(--shadow);background:#0a0c10eb;border:1px solid #ffffff2e;border-radius:8px;place-items:center;padding:18px;display:grid;position:relative}.image-viewer img{object-fit:contain;border-radius:8px;max-width:100%;max-height:calc(100vh - 140px)}.image-nav{color:#fff;background:#ffffff21;border:1px solid #ffffff3d;border-radius:999px;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.image-nav.previous{left:18px}.image-nav.next{right:18px}.image-viewer-caption{color:#fff;justify-content:space-between;align-items:center;gap:10px;display:flex;position:absolute;bottom:14px;left:18px;right:18px}.image-viewer-caption strong,.image-viewer-caption span{overflow-wrap:anywhere;min-width:0}.settings-layout{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;display:grid}@media (width>=981px){.settings-layout{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;display:grid}.settings-layout .settings-column{flex-direction:column;gap:16px;display:flex}.settings-layout .settings-column:nth-of-type(3){grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.settings-layout>.panel,.settings-layout .settings-column>.panel{width:100%;margin:0;display:block}.settings-layout>.auth-inline-panel,.settings-layout>.privacy-policy-panel{grid-column:1/-1}}.settings-payment-panel{grid-column:1/-1}.settings-info-panel{min-height:0}.auth-inline-panel{grid-column:1/-1}.delete-confirm-field{gap:6px;margin-bottom:12px;display:grid}.delete-confirm-field span{color:var(--utm-red);font-size:13px;font-weight:900}.danger-zone{color:var(--text);background:#9d223514;border-color:#9d223559}.danger-zone p{color:var(--muted);margin:0 0 14px;line-height:1.45}.danger-button{color:#fff;background:#b42336;border:1px solid #b42336;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:9px 12px;font-weight:900;display:inline-flex}.language-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.language-option{min-height:78px;color:var(--text);text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:8px;gap:5px;padding:12px;display:grid}.language-option.is-active,.language-option:hover{border-color:#9d22356b;box-shadow:0 10px 24px #22202714}.language-option span,.settings-note{color:var(--muted)}.settings-note{margin:12px 0 0;line-height:1.45}.privacy-policy-panel{grid-column:1/-1;min-height:0}.privacy-policy-content{color:var(--muted);gap:11px;padding-right:8px;line-height:1.5;display:grid}.privacy-policy-content>div{-webkit-overflow-scrolling:touch;max-height:min(620px,70vh);overflow-y:auto}.privacy-policy-content p,.privacy-policy-content h3{margin:0}.privacy-policy-content h3{color:var(--text);margin-top:4px;font-size:15px}.policy-updated{color:var(--text);font-weight:900}.cookie-classification-list{gap:7px;display:grid}.policy-toc{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.policy-toc span{min-width:0;color:var(--muted);background:var(--surface);border:1px solid var(--line);overflow-wrap:anywhere;border-radius:8px;padding:8px 10px;font-size:12px;font-weight:800}.cookie-classification-list span{color:var(--text);background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-size:13px;font-weight:800}.payment-provider-control{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:14px}.status-list{gap:10px;display:grid}.status-list span{min-width:0;color:var(--muted);background:var(--surface-strong);border:1px solid var(--line);overflow-wrap:anywhere;border-radius:8px;padding:10px 11px;display:block}.status-list strong{color:var(--text)}.support-panel{align-content:start;gap:12px;display:grid}.professor-module{align-content:start}.professor-controls-panel{grid-template-columns:minmax(260px,1fr) minmax(220px,320px);align-items:center;gap:18px;display:grid}.professor-search{margin:0}.professor-grid{gap:18px;display:grid}.professor-card{grid-template-columns:auto minmax(0,1fr) minmax(260px,.52fr);align-items:center;gap:20px;display:grid}.professor-card .person-avatar{border-radius:999px}.professor-card-main{gap:7px;min-width:0;display:grid}.professor-card-main>span{width:fit-content;color:var(--utm-teal);text-transform:uppercase;background:#00856f1a;border:1px solid #00856f38;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:900}.professor-card-main h2,.professor-card-main p{margin:0}.professor-card-main h2{font-size:clamp(22px,3vw,30px);line-height:1.05}.professor-card-main p{color:var(--muted);font-weight:800}.professor-contact-row{flex-wrap:wrap;gap:8px;display:flex}.professor-contact-row a,.professor-contact-row span{min-height:32px;color:var(--text);background:var(--surface-strong);border:1px solid var(--line);border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-weight:800;text-decoration:none;display:inline-flex}.professor-rating-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.professor-rating-grid span{text-align:center;background:var(--surface-strong);border:1px solid var(--line);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:0;padding:10px 4px;transition:background-color .2s,border-color .2s,color .2s;display:flex}.professor-rating-grid span.is-bad{background:#d84a5f1f;border-color:#d84a5f57}.professor-rating-grid span.is-bad strong{color:#d84a5f}.professor-rating-grid span.is-okay{background:#bf8c2c1f;border-color:#bf8c2c57}.professor-rating-grid span.is-okay strong{color:#bf8c2c}.professor-rating-grid span.is-goated{background:#00856f1f;border-color:#00856f57}.professor-rating-grid span.is-goated strong{color:#00856f}:root[data-theme=dark] .professor-rating-grid span.is-bad{background:#d84a5f38}:root[data-theme=dark] .professor-rating-grid span.is-okay{background:#bf8c2c38}:root[data-theme=dark] .professor-rating-grid span.is-goated{background:#00856f38}.professor-rating-grid small{color:var(--muted);text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;width:100%;font-size:10px;font-weight:900;overflow:hidden}.professor-rating-grid strong{font-size:20px}@media (width<=480px){.professor-rating-grid{gap:6px}.professor-rating-grid strong{font-size:18px}.professor-rating-grid small{font-size:9px}}.dock-nav{flex:1;min-height:0;display:block;position:relative;overflow:hidden}.dock-nav .rb-dock-outer{justify-content:flex-start;align-items:stretch;min-height:0;height:100%!important}.dock-nav .rb-dock-panel{flex-direction:column;align-items:stretch;width:100%;max-width:none;max-height:100%;position:static;bottom:auto;left:auto;overflow:hidden auto;transform:none;height:auto!important}.dock-nav .rb-dock-item{justify-content:flex-start;gap:10px;padding:0 12px;width:100%!important;height:46px!important}.dock-nav .rb-dock-inline-label{display:block}.dock-nav .rb-dock-label{display:none}@media (width>=721px) and (hover:hover){.dock-nav .rb-dock-panel{box-shadow:none;background:0 0;border:0;gap:9px}.dock-nav .rb-dock-item{isolation:isolate;background:#ffffff0f;border-color:#ffffff21;border-radius:999px;transition:color .25s,border-color .25s,box-shadow .25s,transform .25s;overflow:visible}.dock-nav .rb-dock-item:before,.dock-nav .rb-dock-item:after{z-index:-1;content:"";opacity:0;border-radius:inherit;transition:opacity .35s;position:absolute;inset:0}.dock-nav .rb-dock-item:before{background:var(--active-gradient)}.dock-nav .rb-dock-item:after{filter:blur(15px);background:var(--active-gradient);top:9px}.dock-nav .rb-dock-item:hover,.dock-nav .rb-dock-item.is-active{color:#fff;box-shadow:none;border-color:#0000;transform:translate(2px)}.dock-nav .rb-dock-item:hover:before,.dock-nav .rb-dock-item.is-active:before{opacity:1}.dock-nav .rb-dock-item:hover:after,.dock-nav .rb-dock-item.is-active:after{opacity:.48}.dock-nav .rb-dock-icon,.dock-nav .rb-dock-inline-label{z-index:1;transition:opacity .25s,transform .25s;position:relative}.dock-nav .rb-dock-item:hover .rb-dock-icon{opacity:.24;transform:scale(.72)}.dock-nav .rb-dock-item:hover .rb-dock-inline-label,.dock-nav .rb-dock-item.is-active .rb-dock-inline-label{color:#fff}}.family-gallery-panel{background:radial-gradient(circle at 30% 20%, #9d223524, transparent 38%), radial-gradient(circle at 70% 70%, #00856f1f, transparent 42%), var(--surface);height:min(560px,58vh);min-height:360px;overflow:hidden}.family-grid,.admin-grid,.reels-layout,.skeleton-grid{gap:14px;display:grid}.family-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.family-card{width:100%;color:var(--text);text-align:center;justify-items:center;gap:8px;display:grid}.family-card .person-avatar{aspect-ratio:1;border-radius:9999px}.family-card .person-avatar img{border-radius:inherit}.family-card .person-avatar.is-empty{color:#0000}.family-card .person-avatar.is-empty span{display:none}.family-card strong,.family-card span,.family-card small{overflow-wrap:anywhere;min-width:0}.family-card span,.family-card small{color:var(--muted)}.family-card.is-banned{opacity:.72;border-color:#9d223559}.family-card em{color:var(--utm-red);font-style:normal;font-weight:900}.reels-layout{grid-template-columns:minmax(280px,1fr);place-items:start center}.reels-stage{place-items:center;min-height:520px;display:grid}.reel-stack-shell{width:min(340px,80vw);height:min(470px,68vh)}.reel-card{color:#fff;text-align:left;background:#111820;border:0;align-content:end;width:100%;height:100%;display:grid;position:relative;overflow:hidden}.reel-card:after{content:"";background:linear-gradient(#0000,#000000c7);position:absolute;inset:35% 0 0}.reel-card img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.reel-card span,.reel-card strong,.reel-card p{z-index:1;overflow-wrap:anywhere;margin:0 18px;position:relative}.reel-card span{background:var(--utm-red);border-radius:999px;width:fit-content;margin-bottom:8px;padding:5px 8px;font-size:12px;font-weight:900}.reel-card strong{font-size:24px;line-height:1.12}.reel-card p{color:#fffc;margin-bottom:20px;font-weight:800}.reels-list{gap:10px;display:grid}.admin-login-card{width:min(560px,100%);color:var(--text);background:var(--surface);box-shadow:var(--shadow);border:2px solid #f1c40f;border-radius:18px;gap:22px;margin:24px auto;padding:34px;display:grid}:root[data-theme=dark] .admin-login-card{color:#fff;background:linear-gradient(135deg,#9d223542,#0000 44%),#172033}.admin-emblem{color:#f1c40f;background:#f1c40f21;border-radius:50%;justify-self:center;place-items:center;width:74px;height:74px;display:grid}.admin-login-copy{text-align:center}.admin-login-copy h2,.admin-login-copy p{margin:0}.admin-login-copy p{color:var(--muted);margin-top:8px}:root[data-theme=dark] .admin-login-copy p{color:#ffffffb8}.admin-login-card input{color:var(--text);background:var(--bg);border-color:var(--line)}:root[data-theme=dark] .admin-login-card input{color:#fff;background:#101827;border-color:#ffffff2e}.admin-auth-actions{gap:10px;display:grid}.admin-auth-actions .cl-userButton-root{justify-self:center}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.admin-bus-panel{grid-column:1/-1}.admin-list{gap:10px;display:grid}.admin-isid-form-row{align-items:stretch}.admin-isid-form-row .primary-button{justify-content:center;width:100%}.admin-isid-result{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.admin-isid-result>div{background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;min-width:0;padding:10px}.admin-isid-result span,.admin-isid-result strong{overflow-wrap:anywhere;min-width:0;display:block}.admin-isid-result span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:850}.admin-isid-result strong{color:var(--text);margin-top:4px;font-size:15px}.admin-row{background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px;display:grid}.admin-row strong,.admin-row span,.admin-row p{overflow-wrap:anywhere;min-width:0;margin:0;display:block}.admin-row span,.admin-row p{color:var(--muted);font-size:13px}.skeleton-shell{pointer-events:none}.skeleton-brand,.skeleton-nav,.skeleton-heading{gap:12px;display:grid}.skeleton-box,.skeleton-line{background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;position:relative;overflow:hidden}.skeleton-box:after,.skeleton-line:after{content:"";background:linear-gradient(90deg,#0000,#ffffff57,#0000);animation:1.35s infinite skeletonSweep;position:absolute;inset:0}@keyframes skeletonSweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}.skeleton-logo{width:46px;height:46px}.skeleton-line{height:16px}.skeleton-line.short{width:150px}.skeleton-line.title{width:min(420px,80%);height:38px}.skeleton-search{width:min(700px,100%);height:46px}.skeleton-chip{width:190px;height:54px}.skeleton-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.skeleton-card{min-height:170px}:root[data-theme=dark] body{background:linear-gradient(180deg, var(--body-wash), transparent 220px), var(--bg)}:root[data-theme=dark] .sidebar{background:#171314}:root[data-theme=dark] .search-box,:root[data-theme=dark] .panel,:root[data-theme=dark] .family-card,:root[data-theme=dark] .metric-card,:root[data-theme=dark] .product-card,:root[data-theme=dark] .question-card,:root[data-theme=dark] .paper-card,:root[data-theme=dark] .request-card,:root[data-theme=dark] .profile-chip,:root[data-theme=dark] .campus-map-panel,:root[data-theme=dark] .chat-panel,:root[data-theme=dark] .empty-state,:root[data-theme=dark] .search-results-panel,:root[data-theme=dark] .notifications-popover,:root[data-theme=dark] .detail-modal,:root[data-theme=dark] .drive-card,:root[data-theme=dark] .review-row,:root[data-theme=dark] .category-picker button,:root[data-theme=dark] .price-field,:root[data-theme=dark] .message-image,:root[data-theme=dark] .question-image,:root[data-theme=dark] input,:root[data-theme=dark] select,:root[data-theme=dark] textarea{background:var(--surface);color:var(--text)}:root[data-theme=dark] .feed-item,:root[data-theme=dark] .compact-row,:root[data-theme=dark] .cart-row,:root[data-theme=dark] .ledger-row,:root[data-theme=dark] .quick-place,:root[data-theme=dark] .location-row,:root[data-theme=dark] .answer-row,:root[data-theme=dark] .route-line,:root[data-theme=dark] .chat-thread,:root[data-theme=dark] .file-input,:root[data-theme=dark] .seller-card,:root[data-theme=dark] .duitnow-box,:root[data-theme=dark] .favourite-row,:root[data-theme=dark] .listing-edit-panel,:root[data-theme=dark] .profile-stats span,:root[data-theme=dark] .profile-detail-list span,:root[data-theme=dark] .help-list article,:root[data-theme=dark] .map-input-panel,:root[data-theme=dark] .payment-detail-panel,:root[data-theme=dark] .reaction-palette,:root[data-theme=dark] .bus-doc-card,:root[data-theme=dark] .status-list span,:root[data-theme=dark] .voice-message,:root[data-theme=dark] .voice-preview,:root[data-theme=dark] .bus-search,:root[data-theme=dark] .bus-route-row,:root[data-theme=dark] .bus-stop-select,:root[data-theme=dark] .bus-stop-flow button,:root[data-theme=dark] .sort-control,:root[data-theme=dark] .bus-timetable-image,:root[data-theme=dark] .location-suggestions{background:var(--surface-strong);color:var(--text)}:root[data-theme=dark] .location-suggestion-item:hover,:root[data-theme=dark] .location-suggestion-item:focus-visible{background:#00856f29}:root[data-theme=dark] .family-gallery-panel,:root[data-theme=dark] .admin-row,:root[data-theme=dark] .skeleton-box,:root[data-theme=dark] .skeleton-line{background:var(--surface-strong);color:var(--text)}:root[data-theme=dark] .chat-thread{background:linear-gradient(135deg,#d84a5f33,#0000 35%),linear-gradient(215deg,#35b99f24,#0000 48%),linear-gradient(#151b23,#10151d)}:root[data-theme=dark] .secondary-button{color:#ffd8df;background:#d84a5f1f}:root[data-theme=dark] .product-card.is-sold,:root[data-theme=dark] .listing-detail-modal.is-sold,:root[data-theme=dark] .sold-pill{color:#d2d7df;background:#242a31;border-color:#3a434d}:root[data-theme=dark] .tag-row span,:root[data-theme=dark] .best-for span,:root[data-theme=dark] .segmented-control{color:var(--text);background:#292323}:root[data-theme=dark] .chip{color:var(--text);background:var(--surface)}:root[data-theme=dark] .segmented-control button{color:var(--muted)}:root[data-theme=dark] .status-pill{color:var(--text);background:var(--surface-strong);border-color:var(--line)}:root[data-theme=dark] .chip.is-active,:root[data-theme=dark] .chip:hover,:root[data-theme=dark] .primary-button{color:#fff}:root[data-theme=dark] .chip.is-active,:root[data-theme=dark] .segmented-control button.is-active,:root[data-theme=dark] .secondary-button.is-selected,:root[data-theme=dark] .language-option.is-active,:root[data-theme=dark] .status-pill.is-good,:root[data-theme=dark] .reaction-chip.is-active,:root[data-theme=dark] .category-picker button.is-active,:root[data-theme=dark] .bus-stop-flow button.is-active{color:#fff;background:var(--utm-red-dark);border-color:var(--utm-red-dark)}:root[data-theme=dark] .chip.is-active svg,:root[data-theme=dark] .segmented-control button.is-active svg,:root[data-theme=dark] .secondary-button.is-selected svg,:root[data-theme=dark] .language-option.is-active svg,:root[data-theme=dark] .status-pill.is-good svg,:root[data-theme=dark] .reaction-chip.is-active svg{color:#fff}:root[data-theme=dark] .language-option.is-active span,:root[data-theme=dark] .status-pill.is-good span{color:#ffffffd6}:root[data-theme=dark] .message-bubble{color:var(--text);background:var(--surface)}:root[data-theme=dark] .message-bubble.is-mine{color:#fff;background:#a1283a;border-color:#d84a5f}:root[data-theme=dark] .bus-availability{color:var(--muted);background:var(--surface);border-color:var(--line)}:root[data-theme=dark] .bus-availability.is-available{color:#bdf7e8;background:#35b99f33;border-color:#35b99f61}:root[data-theme=dark] .chat-composer{background:var(--surface)}:root[data-theme=dark] .message-actions button,:root[data-theme=dark] .reply-preview,:root[data-theme=dark] .reply-composer,:root[data-theme=dark] .translation-box{background:var(--surface);border-color:var(--line);color:var(--text)!important}:root[data-theme=dark] .muted,:root[data-theme=dark] .fine-print,:root[data-theme=dark] .meta-row,:root[data-theme=dark] .message-bubble span,:root[data-theme=dark] .ledger-row span,:root[data-theme=dark] .drive-card span,:root[data-theme=dark] .review-row span,:root[data-theme=dark] .settings-note{color:var(--muted)}.empty-state{min-height:240px;color:var(--muted);text-align:center;border:1px dashed var(--line);background:#ffffffc7;border-radius:8px;place-items:center;gap:8px;padding:28px;display:grid}.empty-state-actions{place-items:center;gap:12px;display:grid}.empty-state h3{color:var(--text);margin:0;font-size:20px}@media (width<=1180px){.app-shell{grid-template-columns:92px minmax(0,1fr)}.app-footer{left:110px;right:18px}.sidebar{padding:18px 12px}.brand{justify-content:center}.brand div:not(.brand-mark),.nav-item span,.sidebar-summary span{display:none}.nav-item{grid-template-columns:1fr;justify-items:center}.sidebar-summary{text-align:center;padding:10px}.sidebar-summary strong{font-size:16px}.market-layout{grid-template-columns:320px minmax(0,1fr)}.cart-panel{grid-column:1/-1;position:static}}@media (width<=980px){.app-shell{padding-bottom:var(--mobile-nav-clearance);flex-direction:column;display:flex}.sidebar{z-index:920;height:auto;padding:8px 10px calc(8px + env(safe-area-inset-bottom));border-top:1px solid #ffffff29;border-right:0;transition:transform .28s,opacity .28s;position:fixed;inset:auto 0 0;overflow:hidden;box-shadow:0 -18px 40px #22202738}.app-shell.is-bottom-nav-hidden .sidebar{opacity:0;pointer-events:none;transform:translateY(calc(100% + 18px))}.app-shell.is-bottom-nav-hidden{padding-bottom:var(--mobile-nav-clearance)}.sidebar .brand,.sidebar-summary{display:none}.nav-list{overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;grid-template-columns:none;gap:8px;padding:2px 2px 5px;display:flex;overflow-x:auto}.nav-list::-webkit-scrollbar{display:none}.nav-list.dock-nav{height:76px;min-height:76px;padding:0;display:block;overflow:hidden}.dock-nav .rb-dock-outer{justify-content:center;align-items:flex-end;overflow:hidden;height:76px!important}.dock-nav .rb-dock-panel{flex-direction:row;align-items:flex-end;width:auto;max-width:none;position:absolute;bottom:0;left:0;right:0;overflow:auto hidden;transform:none;height:66px!important}.dock-nav .rb-dock-item{justify-content:center;gap:0;padding:0;width:48px!important;height:48px!important}.dock-nav .rb-dock-inline-label,.dock-nav .rb-dock-label{display:none}.nav-item{scroll-snap-align:start;flex:0 0 96px;grid-template-columns:1fr;justify-items:center;gap:5px;min-height:52px;padding:8px 6px}.nav-item span{text-align:center;overflow-wrap:normal;word-break:keep-all;max-width:100%;font-size:11px;line-height:1.1;display:block}.main-content{padding:calc(24px + env(safe-area-inset-top)) 20px calc(24px + var(--mobile-nav-clearance))}.main-content:not(.is-chat-page){flex:1}.app-footer{margin:auto 0 0;padding:6px 0}.main-content.is-chat-page{overflow:hidden;height:100dvh!important;padding-top:92px!important;padding-bottom:0!important}.topbar,.module-heading,.home-grid,.market-layout,.map-layout,.qa-layout,.papers-layout,.requests-layout,.profile-layout,.reels-layout,.admin-grid,.settings-layout{grid-template-columns:1fr}.bus-layout{grid-template-columns:minmax(118px,.42fr) minmax(0,.58fr);gap:10px}.module-heading{align-items:start;display:grid}.metric-grid,.payment-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card{aspect-ratio:1;align-content:space-between;min-height:0;padding:12px}.metric-card strong{margin-top:4px;font-size:clamp(22px,8vw,30px)}.home-grid{grid-template-areas:"feed""places""requests"}.listing-form-panel,.upload-panel,.request-form-panel,.qa-form-panel{position:static}.campus-map-panel{grid-row:auto}.campus-map{min-height:480px}.location-list{max-height:260px}.settings-payment-panel,.profile-reviews-panel{grid-column:auto}.widget-pin-body{padding:18px}.widget-pin-hero,.widget-choice-grid{grid-template-columns:1fr}.widget-pin-actions{flex-direction:column-reverse}.widget-pin-actions .primary-button,.widget-pin-actions .secondary-button{width:100%}.map-action-row,.professor-controls-panel,.professor-card{grid-template-columns:1fr}.professor-rating-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.chat-module{height:100%;min-height:0}.chat-panel{height:100%!important;min-height:0!important;margin-bottom:0!important}.chat-composer{grid-template-columns:auto auto minmax(0,1fr) auto;position:sticky;bottom:0}.voice-preview{grid-template-columns:1fr}.bus-timetable-image img{min-width:0}.bus-route-list,.bus-doc-list{max-height:240px;overflow-y:auto}.bus-update-panel,.bus-timetable-panel{min-width:0;padding:10px}.bus-document-tabs,.bus-stop-flow{flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.bus-document-tabs .chip,.bus-stop-flow button{white-space:nowrap;flex:none}.bus-route-row{padding:8px}.bus-route-row strong{font-size:14px}.bus-route-row span,.bus-route-row small{font-size:12px}.bus-route-title{flex-direction:column;align-items:flex-start}.bus-stop-select{grid-template-columns:18px auto minmax(0,1fr);width:100%}.bus-stop-select select,.bus-stop-select .app-select{grid-column:1/-1;width:100%}.bus-stop-direction-row{flex-direction:column;align-items:stretch}.family-gallery-panel{height:430px;min-height:320px}.reels-stage{min-height:440px}.reel-stack-shell{width:min(310px,84vw);height:min(450px,58vh)}.admin-row,.skeleton-grid{grid-template-columns:1fr}}@media (width<=720px){button:focus,a:focus,[role=button]:focus{box-shadow:none;outline:none}.app-shell{padding-bottom:var(--mobile-nav-clearance);flex-direction:column;display:flex}.destination-preview{display:none}.sidebar{z-index:920;height:auto;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);border-right:0;transition:transform .28s,opacity .28s;position:fixed;bottom:0;left:0;right:0;overflow:hidden;box-shadow:0 -18px 40px #22202714}.app-shell.is-bottom-nav-hidden .sidebar{opacity:0;pointer-events:none;transform:translateY(calc(100% + 18px))}.app-shell.is-bottom-nav-hidden{padding-bottom:var(--mobile-nav-clearance)}.main-content{padding-bottom:calc(24px + var(--mobile-nav-clearance));flex:1}.main-content.is-chat-page{padding-top:calc(10px + env(safe-area-inset-top));flex:0 auto;padding-bottom:0}.app-footer{margin:auto 0 0;padding:6px 0}.sidebar .brand,.sidebar-summary{display:none}.nav-list{overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;grid-template-columns:none;gap:8px;padding:2px 2px 5px;display:flex;overflow-x:auto}.nav-list::-webkit-scrollbar{display:none}.nav-list.dock-nav{height:76px;min-height:76px;padding:0;display:block;overflow:hidden}.dock-nav .rb-dock-outer{justify-content:center;align-items:flex-end;overflow:hidden;height:76px!important}.dock-nav .rb-dock-panel{flex-direction:row;align-items:flex-end;width:auto;max-width:none;position:absolute;bottom:0;left:0;right:0;overflow:auto hidden;transform:none;height:66px!important}.dock-nav .rb-dock-item{justify-content:center;gap:0;padding:0;width:48px!important;height:48px!important}.dock-nav .rb-dock-inline-label,.dock-nav .rb-dock-label{display:none}.nav-item{scroll-snap-align:start;flex:0 0 96px;grid-template-columns:1fr;justify-items:center;gap:5px;min-height:52px;padding:8px 6px}.nav-item span{text-align:center;overflow-wrap:normal;word-break:keep-all;max-width:100%;font-size:11px;line-height:1.1;display:block}.topbar{gap:12px}.topbar-actions{justify-content:stretch}.profile-chip{flex:1;min-width:0}.module-heading h1{font-size:28px}.bus-module .module-heading{gap:10px}.bus-module .module-heading h1{font-size:20px}.bus-module .module-heading .secondary-button{min-height:38px;padding:8px 10px;font-size:13px}.bus-module .bus-layout{grid-template-columns:1fr;gap:16px}.bus-module .bus-update-panel,.bus-module .bus-timetable-panel{gap:8px;padding:8px}.bus-module .panel-heading{gap:6px;margin-bottom:8px}.bus-module .panel-heading h2{font-size:15px}.bus-module .panel-heading span,.bus-module .bus-summary-strip span:not(.pill),.bus-module .bus-notes span{font-size:11px}.bus-module .chip,.bus-module .bus-stop-flow button{min-height:30px;padding:5px 7px;font-size:11px}.bus-module .bus-search{grid-template-columns:16px minmax(0,1fr);gap:5px;margin-bottom:8px;padding:6px 7px}.bus-module .bus-search input{font-size:12px}.bus-module .bus-route-list{gap:7px;max-height:200px;overflow-y:auto}.bus-module .bus-route-row{gap:4px;padding:7px}.bus-module .bus-route-row strong{font-size:13px}.bus-module .bus-route-row span,.bus-module .bus-route-row small{font-size:10.5px;line-height:1.28}.bus-module .bus-availability{min-height:22px;padding:3px 6px;font-size:10px}.bus-module .bus-stop-select{gap:5px;padding:6px 7px;font-size:12px}.bus-module .bus-timetable-image{max-height:54vh}.bus-module .bus-timetable-image img{width:100%;min-width:0}.bus-module .bus-summary-strip,.bus-module .bus-stop-flow{flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.bus-module .bus-summary-strip>*,.bus-module .bus-stop-flow button{white-space:nowrap;flex:none}.bus-module .bus-timetable-panel .panel-heading h2{font-size:13px;line-height:1.15}.bus-module .bus-layout{zoom:1;grid-template-columns:1fr;gap:16px;width:100%;max-width:100%;transform:none}.heading-actions,.filter-row{width:100%}.module-heading .heading-actions{flex-wrap:nowrap;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.module-heading .heading-actions .primary-button,.module-heading .heading-actions .secondary-button{justify-content:center;width:100%;padding-inline:8px;font-size:12px}.primary-button,.secondary-button,.ghost-button{min-width:0}.metric-grid,.payment-summary,.quick-place-grid,.policy-toc,.two-col,.setup-theme-toggle,.paper-card,.question-card,.ledger-row,.listing-detail-modal,.review-row,.language-grid,.payment-provider-control,.category-picker,.review-form,.favourite-row{grid-template-columns:1fr}.metric-grid{gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))!important}.metric-card{aspect-ratio:1;min-height:0;padding:9px}.metric-card span{font-size:10px;line-height:1.15}.metric-card strong{margin-top:0;font-size:clamp(19px,7vw,26px);line-height:1}.metric-card small{font-size:9.5px;line-height:1.15}.listing-detail-modal>img,.listing-modal-image,.listing-modal-image img{min-height:240px;max-height:320px}.question-votes{justify-content:flex-start;display:flex}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.market-products{order:1}.listing-form-panel{order:2}.product-card img{aspect-ratio:1}.product-body{gap:6px;padding:8px}.product-body .card-title-row{flex-wrap:wrap;justify-content:flex-start;gap:5px}.product-body h2{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:1.22;display:-webkit-box;overflow:hidden}.product-body p,.product-body .meta-row,.product-body .tag-row,.product-body .compact-actions{display:none}.product-body .pill,.product-body .card-title-row strong{white-space:normal;overflow-wrap:anywhere;max-width:100%;padding:3px 5px;font-size:10px}.seller-inline{width:fit-content}.listing-action-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;display:grid}.product-card .listing-action-row button{gap:0;min-height:32px;padding:6px;font-size:0}.paper-actions,.ledger-amount{justify-content:flex-start;justify-items:start}.answer-composer{grid-template-columns:1fr}.main-content.is-chat-page{flex-direction:column;display:flex;overflow:hidden;height:100dvh!important;min-height:100dvh!important;padding:calc(10px + env(safe-area-inset-top)) 0 0!important;margin:0!important}.main-content.is-chat-page .topbar,.main-content.is-chat-page .topbar-actions{display:none}.app-shell.is-chat-fullscreen{padding-bottom:0!important}.app-shell.is-chat-fullscreen .sidebar{display:none}.chat-module{flex-direction:column;flex:1;gap:0;height:100%;min-height:0;display:flex;overflow:hidden}.chat-module .module-heading{gap:8px}.chat-module .module-heading h1{font-size:24px}.chat-module .filter-row{flex-wrap:nowrap;padding-bottom:3px;overflow-x:auto}.chat-module .chat-panel{border-radius:16px;height:100%;min-height:0;margin-bottom:0}.chat-thread{gap:8px;min-height:0;padding:12px 10px}.message-bubble{border-radius:12px 12px 12px 3px;width:fit-content;max-width:84%;margin-bottom:2px;padding:4px 9px;font-size:13px;box-shadow:0 8px 22px #0000001f}.message-bubble.is-mine{border-radius:12px 12px 3px}.message-bubble:has(+.message-bubble:not(:has(.message-head))){margin-bottom:0}.message-bubble:not(:has(.message-head)){margin-top:0;margin-bottom:0}.message-head{gap:8px;margin-bottom:3px}.message-head .person-avatar{width:28px;min-width:28px;height:28px}.message-head span{font-size:10px}.message-bubble p{font-size:14px;line-height:1.38}.chat-composer{border-radius:0 0 16px 16px;grid-template-columns:auto auto minmax(0,1fr) auto;gap:7px;padding:8px;position:sticky;bottom:0}.chat-composer input{border-radius:999px;min-height:42px}.chat-composer .primary-button{border-radius:999px;width:48px;min-height:42px;padding:0;font-size:0}.voice-preview{grid-template-columns:1fr}.notice{top:calc(12px + env(safe-area-inset-top));z-index:1800;max-width:none;bottom:auto;left:14px;right:14px}}@media (width<=460px){.main-content{padding:calc(14px + env(safe-area-inset-top)) 14px 24px}.nav-list{grid-template-columns:none;display:flex}.nav-item{flex-basis:96px}.filter-row{flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.map-filter-row{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 26px),#0000 100%);mask-image:linear-gradient(90deg,#000 calc(100% - 26px),#0000 100%)}.chip{white-space:nowrap}.campus-map{min-height:390px}.auth-shell{padding:16px}.auth-card{border-radius:14px;padding:18px}.auth-card h1{font-size:28px}.pin-picker-map{min-height:330px}.pin-place-grid{grid-template-columns:1fr}}.reels-module .reels-layout{justify-items:center;width:100%}.reels-module .focus-rail-panel,.reels-module .reels-stage{border:1px solid var(--line);width:min(390px,100%);height:620px;min-height:620px;box-shadow:var(--shadow);border-radius:18px;padding:0;overflow:hidden;background:#fff!important}:root[data-theme=dark] .reels-module .focus-rail-panel,:root[data-theme=dark] .reels-module .reels-stage{background:var(--bg)!important}.reels-module .focus-rail-panel>*{width:100%;height:100%;min-height:100%}.reels-module .focus-rail{border:0;border-radius:18px;height:100%;min-height:100%}.reels-module .focus-rail-stage{height:360px;margin-top:18px}.reels-module .focus-rail-card{width:min(270px,72%)}.reels-module .focus-rail-card:not(.is-center) span,.reels-module .focus-rail-card:not(.is-center) strong{display:none}.reels-module .focus-rail-info{align-items:end;gap:14px;width:auto;min-height:0;margin:0;display:grid;position:absolute;bottom:18px;left:22px;right:22px}.reels-module .focus-rail-info>div{min-width:0}.reels-module .focus-rail-info h2{overflow-wrap:anywhere;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;max-width:100%;padding-bottom:.08em;font-size:clamp(26px,7vw,36px);line-height:1.14;display:-webkit-box;overflow:hidden}.reels-module .focus-rail-info p{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;max-width:100%;display:-webkit-box;overflow:hidden}.reels-module .focus-rail-actions{justify-content:space-between;gap:6px;width:100%;min-width:0}.reels-module .focus-rail-actions button:not(.focus-rail-explore){flex:0 0 42px;width:42px;min-width:42px}.reels-module .focus-rail-actions small{flex:0 0 42px;min-width:42px}.reels-module .focus-rail-actions .focus-rail-explore{white-space:nowrap;flex:0 124px;min-width:0;max-width:124px;padding-inline:13px}.reels-module .focus-rail-panel img,.reels-module .focus-rail-panel video{object-fit:cover;width:100%;height:100%}@media (width<=640px){.reels-module .focus-rail-panel,.reels-module .reels-stage{border-radius:12px;width:min(360px,100vw - 28px);height:min(600px,100vh - 180px);min-height:520px}.reels-module .focus-rail-stage{height:min(360px,100% - 188px);margin-top:14px}.reels-module .focus-rail-info{bottom:16px;left:16px;right:16px}.reels-module .focus-rail-info h2{font-size:clamp(24px,8vw,32px)}}.rating-inputs{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.rating-field{gap:6px;display:grid}.rating-field label{text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:800}.rating-field input{width:100%}.number-picker{background:var(--surface);border:1px solid var(--line);border-radius:999px;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:4px;display:flex}.number-picker-btn{background:var(--bg);width:32px;height:32px;color:var(--text);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;transition:transform .1s,background-color .2s;display:flex}.number-picker-btn:hover:not(:disabled){background:var(--surface-strong);transform:scale(1.05)}.number-picker-btn:active:not(:disabled){transform:scale(.95)}.number-picker-btn:disabled{opacity:.5;cursor:not-allowed}.number-picker-value{text-align:center;min-width:0;color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:700;overflow:hidden}.date-picker-trigger{white-space:nowrap;text-overflow:ellipsis;background:var(--surface);border:1px solid var(--line);width:100%;min-width:0;color:var(--text);cursor:pointer;text-align:left;border-radius:12px;padding:10px 14px;font-size:14px;overflow:hidden}.date-picker-trigger:focus,.dp-item:focus,.date-picker-modal:focus,.date-picker-close:focus,.date-picker-segments button:focus,.number-picker-btn:focus{outline:none}.date-picker-modal-overlay{z-index:100000;-webkit-backdrop-filter:blur(4px);background:#0006;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.date-picker-modal.is-compact{padding:16px}.date-picker-modal.is-compact .date-picker-header{margin-bottom:10px}.date-picker-modal{background:linear-gradient(135deg, #ffffff0d, #ffffff03), var(--surface);background-blend-mode:overlay;border:1px solid var(--line);width:min(340px,100%);color:var(--text);border-radius:24px;padding:24px;position:relative;overflow:hidden;box-shadow:0 20px 40px #0000004d,inset 0 1px #ffffff0d}.date-picker-modal:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle at 50% 100%,#dc326426,#0000 60%);position:absolute;inset:0}.date-picker-header{z-index:1;justify-content:space-between;align-items:center;margin-bottom:32px;display:flex;position:relative}.date-picker-segments{background:#78787826;border-radius:12px;padding:4px;display:flex}.date-picker-segments button{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:6px 12px;font-size:13px;font-weight:600;transition:color .2s,background-color .2s,box-shadow .2s}.date-picker-segments button.active{background:var(--bg);color:var(--text);box-shadow:0 2px 8px #0000001a}.date-picker-close{color:var(--text);cursor:pointer;background:#78787826;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.date-picker-close-checkmark{color:#10b981;cursor:pointer;background:#10b98126;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;margin-left:auto;transition:background-color .2s,transform .2s;display:flex}.date-picker-close-checkmark:hover{background:#10b98140;transform:scale(1.05)}.date-picker-close-checkmark:active{transform:scale(.95)}.date-picker-display{z-index:1;justify-content:center;align-items:baseline;gap:12px;margin-bottom:40px;display:flex;position:relative}.date-picker-display .dp-month{letter-spacing:-1px;font-size:42px;font-weight:500}.date-picker-display .dp-day{font-size:46px;font-weight:300}.date-picker-scroller{z-index:1;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:16px;margin:0 -24px -10px;padding:10px calc(50% - 24px);display:flex;position:relative;overflow-x:auto}.date-picker-scroller::-webkit-scrollbar{display:none}@media (width<=640px){.date-picker-modal{padding:18px}.date-picker-header{margin-bottom:18px}.date-picker-display{margin-bottom:20px}.date-picker-display .dp-month{font-size:32px}.date-picker-display .dp-day{font-size:36px}}.date-picker-scroller .dp-item{scroll-snap-align:center;min-width:48px;height:64px;color:var(--muted);cursor:pointer;touch-action:pan-x;background:0 0;border:none;border-radius:32px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:8px;transition:color .2s,background-color .2s,transform .2s;display:flex}.date-picker-scroller .dp-item span{text-transform:capitalize;font-size:12px;font-weight:500}.date-picker-scroller .dp-item strong{font-size:18px;font-weight:600}.date-picker-scroller .dp-item.active{color:#fff;background:linear-gradient(135deg,#f0506e,#ff8a66);transform:scale(1.1);box-shadow:0 8px 16px #f0506e4d}.scroll-bottom-button{z-index:100;width:40px;height:40px;color:var(--text);background:var(--surface);border:1px solid var(--line);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;transition:transform .2s cubic-bezier(.16,1,.3,1),opacity .2s,background-color .2s;animation:.25s cubic-bezier(.16,1,.3,1) both scrollBottomBtnEntrance;display:flex;position:absolute;top:-56px;right:18px;box-shadow:0 4px 12px #00000014}@keyframes scrollBottomBtnEntrance{0%{opacity:0;transform:scale(.6)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.scroll-bottom-button:hover{background:var(--surface-strong);transform:translateY(-2px);box-shadow:0 6px 16px #0000001f}.scroll-bottom-button:active{transform:scale(.95)translateY(0)}.scroll-bottom-badge{color:#fff;background:var(--utm-teal);border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:700;animation:.2s cubic-bezier(.175,.885,.32,1.275) both badgePop;display:inline-flex;position:absolute;top:-6px;right:-6px;box-shadow:0 2px 5px #0003}@keyframes badgePop{0%{transform:scale(0)}to{transform:scale(1)}}.confirm-modal{background:var(--surface);border:1px solid var(--line);width:min(360px,100%);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;gap:14px;padding:22px 24px;animation:.28s cubic-bezier(.16,1,.3,1) both confirmPop;display:flex}@keyframes confirmPop{0%{opacity:0;transform:scale(.94)translateY(12px)}to{opacity:1;transform:scale(1)translateY(0)}}.confirm-modal-title{color:var(--text);margin:0;font-size:19px;font-weight:800}.confirm-modal-message{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.confirm-modal-actions{justify-content:flex-end;gap:12px;margin-top:6px;display:flex}.confirm-modal-btn{border:1px solid var(--line);background:var(--surface);color:var(--text);cursor:pointer;border-radius:8px;padding:8px 16px;font-size:14px;font-weight:700;transition:transform .16s,background-color .16s,border-color .16s,box-shadow .16s}.confirm-modal-btn:active{transform:scale(.97)}.confirm-modal-btn.is-confirm{background:var(--utm-red);color:#fff;border-color:var(--utm-red)}.confirm-modal-btn.is-confirm:hover{background:var(--utm-red-dark);border-color:var(--utm-red-dark)}.confirm-modal-btn.is-cancel:hover{background:var(--surface-strong);border-color:var(--line)}.fullscreen-image-viewer{-webkit-backdrop-filter:blur(10px);z-index:10000;background:#000000d9;justify-content:center;align-items:center;width:100vw;height:100vh;animation:.2s cubic-bezier(.16,1,.3,1) forwards viewer-fade-in;display:flex;position:fixed;top:0;left:0}@keyframes viewer-fade-in{0%{opacity:0}to{opacity:1}}.fullscreen-image-viewer .close-button{color:#fff;cursor:pointer;z-index:10001;background:#ffffff1a;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:background-color .2s,transform .2s;display:flex;position:absolute;top:20px;right:20px}.fullscreen-image-viewer .close-button:hover{background:#ffffff40;transform:scale(1.05)}.fullscreen-image-viewer .close-button:active{transform:scale(.95)}.fullscreen-image-viewer .viewer-content{justify-content:center;align-items:center;max-width:90%;max-height:90%;animation:.25s cubic-bezier(.34,1.56,.64,1) forwards viewer-scale-up;display:flex}@keyframes viewer-scale-up{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.fullscreen-image-viewer .viewer-content img{object-fit:contain;border:1px solid #ffffff1a;border-radius:12px;max-width:100%;max-height:100%;box-shadow:0 20px 50px #00000080}.app-redirect-container{background:var(--bg);box-sizing:border-box;justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.app-redirect-card{background:var(--surface);border:1px solid var(--line);text-align:center;border-radius:16px;width:100%;max-width:400px;padding:32px;animation:.3s ease-out redirect-card-fade;box-shadow:0 10px 30px #0003}@keyframes redirect-card-fade{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.app-redirect-card .redirect-logo{background:#d84a5f1a;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:24px;display:inline-flex}.app-redirect-card h2{color:var(--text);margin:0 0 12px;font-size:24px;font-weight:800}.app-redirect-card p{color:var(--muted);margin:0 0 24px;font-size:14px;line-height:1.6}.app-redirect-card .redirect-button{background:var(--utm-red);color:#fff;cursor:pointer;box-sizing:border-box;border:none;border-radius:10px;justify-content:center;align-items:center;width:100%;padding:14px;font-size:16px;font-weight:700;transition:transform .2s,background-color .2s;display:inline-flex}.app-redirect-card .redirect-button:hover{background:var(--utm-red-dark);transform:scale(1.02)}.app-redirect-card .redirect-button:active{transform:scale(.98)}.location-click-link{color:var(--text);font-weight:600;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;transition:color .2s,text-decoration-color .2s}.location-click-link:hover{color:var(--utm-red);text-decoration-style:solid}.trip-estimates{background:#2364aa0a;border:1px solid #2364aa1f;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:4px;padding:12px;font-size:13px;display:grid}.estimate-item{flex-direction:column;gap:3px;display:flex}.estimate-label{color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:700}.estimate-value{color:var(--text);font-weight:600}.estimate-item.fuel-price{background:#00856f0a;border:1px solid #00856f1a;border-radius:6px;padding:6px 8px}.estimate-item.fuel-price .estimate-label{color:var(--teal)}.topbar{grid-template-columns:none;align-items:center;gap:12px;display:flex;position:relative}.search-wrapper{flex:auto}.topbar .icon-button{border-radius:12px;width:42px;height:42px}.topbar-profile-button{padding:0;overflow:hidden}.notification-wrap{flex:none;display:inline-flex;position:relative}.topbar .notifications-popover{top:calc(100% + 10px);left:-54px;right:auto}.segmented-control.view-toggle{flex:none;width:max-content;display:inline-flex}.segmented-control.view-toggle button{white-space:nowrap;align-items:center;gap:6px;padding:8px 14px;display:inline-flex}.academic-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;display:grid}.academic-card{color:var(--text);text-align:left;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;grid-template-columns:54px minmax(0,1fr) 18px;align-items:center;gap:14px;padding:18px;transition:transform .18s,box-shadow .18s;display:grid}.academic-card:hover{transform:translateY(-2px)}.academic-card.is-featured{grid-column:1/-1}.academic-card-icon{color:#fff;background:var(--active-gradient);border-radius:14px;place-items:center;width:54px;height:54px;display:grid}.academic-card-text{gap:4px;min-width:0;display:grid}.academic-card-text strong{font-size:17px}.academic-card-text>span{color:var(--muted);font-size:13px}.app-shell.is-chat-fullscreen{grid-template-columns:minmax(0,1fr)}.app-shell.is-chat-fullscreen .sidebar{display:none}.chat-page-header{align-items:center;gap:12px;display:flex}.chat-page-title .eyebrow{margin:0 0 2px}.chat-page-title h1{margin:0;font-size:24px}.chat-back-button{border-radius:12px;flex:none;width:42px;height:42px}.chat-page-body{flex:1;grid-template-columns:64px minmax(0,1fr);gap:12px;min-height:0;display:grid}.chat-rail{background:var(--surface);border:1px solid var(--line);margin-bottom:calc(env(safe-area-inset-bottom) + 12px);border-radius:14px;flex-direction:column;align-items:center;gap:10px;padding:12px 6px;display:flex;overflow-y:auto}.chat-rail-label{letter-spacing:.08em;color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:800}.chat-rail-item{background:0 0;border:2px solid #0000;border-radius:50%;flex:none;place-items:center;width:48px;height:48px;padding:0;transition:border-color .18s,transform .18s;display:grid;position:relative}.chat-rail-item.is-active{border-color:var(--utm-red);transform:scale(1.04)}.chat-rail-empty{width:44px;height:44px;color:var(--muted);border:1px dashed var(--line);border-radius:50%;place-items:center;display:grid}.chat-main{flex-direction:column;gap:10px;min-height:0;display:flex}.chat-main .chat-panel{flex:1;min-height:0}.chat-category-row{scrollbar-width:none;flex-wrap:nowrap;flex:none;padding-bottom:3px;overflow-x:auto}.chat-category-row::-webkit-scrollbar{display:none}@media (width<=980px){.dock-nav .rb-dock-item.is-primary{width:54px!important;height:54px!important}.main-content.is-chat-page .chat-page-header{padding:4px 14px 8px}.main-content.is-chat-page .chat-page-body{padding:0 10px}.chat-rail{margin-bottom:calc(env(safe-area-inset-bottom) + 8px)}.chat-page-body{grid-template-columns:58px minmax(0,1fr);gap:8px}.chat-rail-item{width:44px;height:44px}.module-heading .segmented-control.view-toggle{order:-1}}.search-box{border-radius:16px}.search-box input,.search-box input::placeholder{font-size:14px}.topbar-profile-button{border-radius:50%}.dock-icon-wrap{display:inline-flex;position:relative}.nav-dot{background:var(--utm-red);border:2px solid var(--surface);border-radius:50%;width:9px;height:9px;position:absolute;top:-2px;right:-2px}.price-row{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.price-row strong{font-size:20px}.price-row small{color:var(--muted);flex:none;font-size:12px}.location-pill{color:var(--utm-red);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:4px;padding:0;display:inline-flex}.location-pill:hover{text-decoration:underline}.product-card{flex-direction:column;display:flex}.product-card .product-body{flex:1}.product-body .listing-action-row{margin-top:auto}.listing-action-row .secondary-button,.listing-action-row .primary-button{justify-content:center;width:100%}.favourites-list{scrollbar-width:none;gap:8px;display:flex;overflow-x:auto}.favourites-list::-webkit-scrollbar{display:none}.favourites-panel .favourite-row{flex:0 0 clamp(180px,22vw,300px);grid-template-columns:36px minmax(0,1fr);width:auto;max-width:300px;padding:6px 8px;overflow:hidden;transform:translate(0,0)}.favourites-panel .favourite-row strong{display:none}.market-filter-row{flex-wrap:nowrap;align-items:center;gap:10px}.market-filter-row .chip-scroller{scrollbar-width:none;gap:8px;min-width:0;padding-bottom:2px;display:flex;overflow-x:auto}.market-filter-row .chip-scroller::-webkit-scrollbar{display:none}.market-filter-row .chip{flex:none}.market-filter-row .sort-control{flex:none;position:sticky;right:0}.profile-stats button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;display:inline-flex}.profile-stats button:hover{color:var(--utm-red)}button.profile-photo{cursor:pointer;background:var(--surface-strong);border:0}.reels-module{flex-direction:column;gap:18px;display:flex;position:relative}.reels-topbar{align-items:center;gap:12px;display:flex}.reels-back-button{border-radius:12px;flex:none;width:42px;height:42px}.reels-topbar-text h1{margin:0;font-size:22px}.reels-topbar-text span{color:var(--muted);font-size:13px}.reels-stack-stage{justify-content:center;align-items:center;min-height:min(60vh,520px);padding:12px 0;display:flex}.reel-card{background:var(--surface-strong);border:1px solid var(--line);cursor:pointer;border-radius:22px;width:100%;height:100%;position:relative;overflow:hidden;box-shadow:0 24px 60px #00000059}.reel-card img{object-fit:cover;width:100%;height:100%}.reel-card-overlay{color:#fff;background:linear-gradient(#0000,#000000c7);flex-direction:column;align-items:flex-start;gap:8px;padding:48px 18px 18px;display:flex;position:absolute;inset:auto 0 0}.reel-card-overlay strong{font-size:24px;line-height:1.1}.reel-card-seller{opacity:.92;align-items:center;gap:8px;font-size:13px;display:inline-flex}.reels-actions{justify-content:center;align-items:center;gap:22px;padding-bottom:8px;display:flex}.reels-action-button{color:#fff;background:var(--utm-red);cursor:pointer;border:0;border-radius:20px;place-items:center;width:66px;height:66px;transition:transform .16s,opacity .16s;display:grid;box-shadow:0 14px 30px #9d223566}.reels-action-button:active{transform:scale(.94)}.reels-action-button.is-heart.is-active{background:var(--utm-red-dark)}.reels-action-button:disabled{opacity:.5;cursor:default}.chat-search-box{background:var(--surface);border:1px solid var(--line);border-radius:12px;margin:0 0 4px;padding:8px 12px}.chat-search-button{border-radius:12px;flex:none;width:42px;height:42px;margin-left:auto}.chat-input-container{margin:8px 10px calc(env(safe-area-inset-bottom) + 12px);background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:6px;position:sticky;bottom:0;box-shadow:0 18px 40px #00000047}.message-actions{max-width:100%}.message-actions .reaction-palette{flex-wrap:wrap}.zoomable-image{touch-action:none;justify-content:center;align-items:center;max-width:100%;max-height:100%;display:flex;position:relative;overflow:hidden}.zoom-controls{z-index:2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1414148c;border-radius:999px;align-items:center;gap:4px;padding:4px;display:flex;position:absolute;bottom:12px;right:12px}.zoom-controls button{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;width:32px;height:32px;transition:background .16s,opacity .16s;display:grid}.zoom-controls button:hover:not(:disabled){background:#ffffff29}.zoom-controls button:disabled{opacity:.35;cursor:default}.zoomable-image img{object-fit:contain;transform-origin:50%;will-change:transform;-webkit-user-select:none;user-select:none;max-width:100%;max-height:100%}.modern-voice-wave span.is-played{background:var(--utm-red)}.corner-cropper{flex-direction:column;gap:16px;display:flex}.corner-cropper-frame{aspect-ratio:1;touch-action:none;-webkit-user-select:none;user-select:none;background:#111;border-radius:12px;width:100%;max-height:60vh;position:relative;overflow:hidden}.corner-cropper-frame img{object-fit:contain;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.corner-cropper-shade{pointer-events:none;background:#0000008c;position:absolute;inset:0}.corner-cropper-box{cursor:move;touch-action:none;border:2px solid #fff;border-radius:50%;position:absolute;box-shadow:0 0 0 9999px #0000}.corner-cropper-box .crop-handle{border:2px solid var(--utm-red);touch-action:none;background:#fff;border-radius:50%;width:22px;height:22px;position:absolute}.crop-handle.nw{cursor:nwse-resize;top:-11px;left:-11px}.crop-handle.ne{cursor:nesw-resize;top:-11px;right:-11px}.crop-handle.sw{cursor:nesw-resize;bottom:-11px;left:-11px}.crop-handle.se{cursor:nwse-resize;bottom:-11px;right:-11px}@media (width<=980px){.dock-nav .rb-dock-panel{justify-content:space-around;padding:0 6px}.dock-nav .rb-dock-item{flex:1 1 0;max-width:72px}}html{overscroll-behavior:none}body{overscroll-behavior:none;overflow-x:clip}.topbar .icon-button.topbar-profile-button{border-radius:50%}.topbar-profile-button .person-avatar{width:100%!important;height:100%!important}.person-avatar,.person-avatar img,.seller-avatar,.seller-avatar img,.profile-photo,.profile-photo img{border-radius:50%}.search-box input{min-width:0}.search-box input::placeholder{font-size:12.5px}.profile-stats{flex-wrap:wrap;gap:8px;display:flex}.profile-stats button{background:var(--surface-strong);border:1px solid var(--line);border-radius:999px;padding:5px 11px;font-size:13px}.listing-info-pills .location-pill{min-height:28px;color:var(--utm-red);background:#d84a5f1f;border:1px solid #d84a5f57;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800}.listing-info-pills .location-pill:hover{border-color:var(--utm-red);text-decoration:none}.market-filter-row{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.market-filter-row .sort-control{flex:none;grid-template-columns:16px auto auto;align-self:center;gap:6px;width:auto;min-width:0;min-height:32px;margin-left:auto;padding:4px 10px;font-size:12px;position:static}.market-filter-row .sort-control svg{width:14px;height:14px}.market-filter-row .sort-control select{width:auto;min-width:0;font-size:12px}.favourites-panel{padding:8px 12px}.favourites-panel .panel-heading{margin-bottom:4px}.favourites-panel .favourite-row{grid-template-columns:30px minmax(0,1fr);padding:4px 6px}.favourites-panel .favourite-row img{width:30px;height:30px}.chat-search-wrapper{z-index:1000;margin:0 10px 4px;position:relative}.chat-search-box{margin:0}.chat-search-results{z-index:1010;background:var(--surface);-webkit-backdrop-filter:blur(16px);border:1px solid var(--line);border-radius:18px;gap:4px;max-height:220px;padding:8px;display:grid;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 20px 50px #00000040}.chat-search-result{color:var(--text);text-align:left;background:var(--surface-strong);border:1px solid var(--line);border-radius:9px;gap:2px;padding:7px 9px;display:grid}.chat-search-result strong{color:var(--utm-red);font-size:12.5px}.chat-search-result span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.chat-input-container{width:auto}.message-actions .reaction-palette{flex-wrap:nowrap;gap:3px;padding:2px}.reaction-palette button{min-width:26px;min-height:26px;padding:2px 4px;font-size:14px}.reels-stack-stage .rb-stack-container{width:min(82vw,340px);height:min(58vh,460px)}.reels-stack-stage .rb-stack-card{width:100%;height:100%}.topbar .search-box{grid-template-columns:18px minmax(0,1fr);gap:6px;padding:0 10px}.topbar .search-box input::placeholder{letter-spacing:-.01em;font-size:10px}.favourites-panel .favourite-row{grid-template-columns:30px minmax(0,1fr) auto;align-items:center}.favourite-pills{flex:none;gap:4px;display:inline-flex}.favourite-pills small{color:var(--text);white-space:nowrap;background:#d84a5f1f;border:1px solid #d84a5f47;border-radius:999px;padding:2px 7px;font-size:10.5px;font-weight:800}.reels-action-button.is-heart.is-active{color:var(--utm-red);background:#fff;box-shadow:0 14px 30px #00000059}.reels-action-button.is-heart.is-active svg{fill:currentColor}.rb-card-rotate,.rb-card-rotate-disabled,.rb-stack-card{will-change:transform}.reel-card{box-shadow:0 10px 22px #0000004d}@media (width<=980px){.dock-nav .rb-dock-outer{height:66px!important}.dock-nav .rb-dock-panel{align-items:center;overflow:hidden;transition:none!important}.dock-nav .rb-dock-item,.dock-nav .rb-dock-item:active{transition:none!important;animation:none!important;transform:none!important}.reels-stack-stage .rb-stack-container{width:min(86vw,360px);height:min(56vh,480px)}.chat-thread{gap:6px}.message-bubble{padding:3px 8px}}html,body{touch-action:pan-x pan-y}@keyframes pageForwardSoft{0%{opacity:0;transform:translate(22px)}to{opacity:1;transform:translate(0)}}@keyframes pageBackSoft{0%{opacity:0;transform:translate(-22px)}to{opacity:1;transform:translate(0)}}.main-content[data-page-direction=forward] .module{animation:.26s both pageForwardSoft}.main-content[data-page-direction=back] .module{animation:.26s both pageBackSoft}.main-content[data-page-direction=swipe-forward] .module{animation:.32s cubic-bezier(.16,1,.3,1) both pageForward}.main-content[data-page-direction=swipe-back] .module{animation:.32s cubic-bezier(.16,1,.3,1) both pageBack}.icon-button:active{animation:none}.reels-stack-stage{touch-action:none}.reels-stack-stage .rb-stack-card{box-shadow:none;background:0 0;border:0;border-radius:22px;overflow:hidden}.reel-card-overlay .pill{color:var(--teal);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0e1116d1;border:1px solid #00856f66;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:900}.reel-card-overlay{text-align:left;align-items:flex-start;padding-left:14px;padding-right:14px}.reel-card-overlay>.pill,.reel-card-overlay>strong,.reel-card-overlay>.reel-card-seller{margin-left:0;margin-right:0}.reel-card-overlay .reel-card-seller{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff2e;border:1px solid #ffffff3d;border-radius:999px;align-self:flex-start;align-items:center;gap:7px;max-width:88%;min-height:32px;margin-bottom:0;padding:4px 12px 4px 5px;font-size:12px;font-weight:700;line-height:1.25;display:inline-flex}.reel-card-seller .person-avatar{flex:0 0 24px;place-items:center;margin:0;padding:0;display:inline-grid;overflow:hidden;width:24px!important;height:24px!important}.reel-card-seller .person-avatar,.reel-card-seller .person-avatar.is-empty{color:#fff;background:var(--utm-red);border:0}.reel-card-seller .person-avatar>span{background:0 0;place-items:center;width:100%;height:100%;margin:0;padding:0;font-size:10px;line-height:1;display:grid}.module{position:relative}.pull-refresh-indicator{z-index:5;pointer-events:none;justify-content:center;align-items:flex-end;height:0;display:flex;position:absolute;top:0;left:0;right:0;overflow:hidden}.pull-refresh-indicator.is-refreshing{transition:height .2s}.pull-refresh-icon{color:#fff;background:var(--active-gradient);border-radius:50%;place-items:center;width:40px;height:40px;margin-bottom:8px;display:grid;box-shadow:0 12px 26px #9d22356b}.pull-refresh-indicator.is-refreshing .pull-refresh-icon{opacity:1;animation:.8s linear infinite pullSpin}@keyframes pullSpin{to{transform:rotate(360deg)}}@media (width<=980px){.sidebar{padding-bottom:calc(4px + env(safe-area-inset-bottom))}}.leaflet-container{isolation:isolate}.admin-search-box{max-width:540px}.transport-filter-row{flex-wrap:nowrap;align-items:center;gap:10px;display:flex}.transport-filter-row .chip-scroller{scrollbar-width:none;gap:8px;min-width:0;padding-bottom:2px;display:flex;overflow-x:auto}.transport-filter-row .chip-scroller::-webkit-scrollbar{display:none}.request-form-fab{color:#fff;background:var(--active-gradient);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;width:38px;height:38px;margin-left:auto;display:grid;box-shadow:0 10px 22px #9d223559}.market-layout{grid-template-columns:1fr;gap:16px;display:grid}.market-products{display:contents}.market-layout .favourites-panel{grid-area:1/1/auto/-1}.favourites-panel .panel-heading{gap:7px;margin:0}.favourites-panel .panel-heading h2{font-size:16px}.favourites-panel>.muted{margin:0;font-size:12px}.favourites-list{grid-auto-columns:minmax(220px,300px);min-width:0}.favourites-list:empty{display:none}.market-form-fab{width:34px;height:34px}.listing-form-panel{transform-origin:top;grid-area:2/1/auto/-1;width:100%;position:static;overflow:hidden}.market-products>.product-grid,.market-products>.empty-state-actions{grid-area:3/1/auto/-1}.request-form-panel .panel-heading .icon-button{border-radius:10px;width:32px;height:32px}.utm-connect-card{background:linear-gradient(150deg, #d84a5f1a, transparent 55%), var(--surface-strong);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;flex-direction:column;gap:12px;padding:18px;display:flex}.utm-connect-form{gap:12px;display:grid}.utm-connect-intro{align-items:center;gap:12px;display:flex}.utm-connect-intro strong{font-size:15px;display:block}.utm-connect-intro span{color:var(--muted);font-size:12.5px}.utm-connect-badge{color:#fff;background:var(--active-gradient);border-radius:13px;flex:none;place-items:center;width:40px;height:40px;display:grid;box-shadow:0 10px 22px #9d22354d}.utm-connect-field{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;gap:6px;font-size:12px;font-weight:800;display:grid}.utm-connect-field input{width:100%;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:12px;outline:none;padding:12px 14px;font-size:14px;transition:border-color .16s,box-shadow .16s}.utm-connect-field input:focus{border-color:#d84a5f8c;box-shadow:0 0 0 3px #d84a5f29}.utm-connect-submit{border-radius:12px;justify-content:center;width:100%}.utm-connect-connected{justify-content:space-between;align-items:center;gap:10px;display:flex}.utm-connect-identity{align-items:center;gap:10px;min-width:0;display:flex}.utm-connect-name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;overflow:hidden}.utm-connect-clear{color:var(--utm-red);flex:none}.utm-connect-status{color:var(--muted);margin:0;font-size:12px;line-height:1.35}.utm-connect-status.is-error{color:var(--utm-red)}.scanner-header-actions{flex:none;align-items:center;gap:10px;display:flex}.attendance-title-action-row{justify-content:space-between;align-items:flex-end;gap:14px;width:100%;min-width:0;display:flex}.attendance-title-action-row>div:first-child{min-width:0}.attendance-title-action-row .attendance-refresh-button,.attendance-title-action-row .secondary-button{flex:none}.attendance-header-description{max-width:760px}.attendance-page{gap:18px;display:grid}.attendance-page-header{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;display:grid}.scanner-page-header,.results-page-header{grid-template-columns:1fr;align-items:start}.attendance-page-header h1,.attendance-page-header p{margin:0}.attendance-page-header h1{font-size:30px;line-height:1.08}.attendance-page-header p:not(.eyebrow){color:var(--muted);margin-top:6px;line-height:1.45}.attendance-back-button,.attendance-refresh-button{white-space:nowrap}.academic-back-row{align-items:center;min-width:0;display:flex}.academic-subpage-title-row{min-width:0}.paper-faculty-filter-row,.qa-filter-row,.campus-filter-row,.chat-category-row{flex-wrap:nowrap;width:100%;min-width:0;display:flex}.paper-faculty-filter-row .chip-scroller,.qa-filter-row .chip-scroller,.campus-filter-row .chip-scroller,.chat-category-row .chip-scroller{scrollbar-width:none;gap:8px;width:100%;min-width:0;padding-bottom:2px;display:flex;overflow-x:auto}.paper-faculty-filter-row .chip-scroller::-webkit-scrollbar{display:none}.qa-filter-row .chip-scroller::-webkit-scrollbar{display:none}.campus-filter-row .chip-scroller::-webkit-scrollbar{display:none}.chat-category-row .chip-scroller::-webkit-scrollbar{display:none}.paper-faculty-filter-row .chip,.qa-filter-row .chip,.campus-filter-row .chip,.chat-category-row .chip{flex:none}.attendance-connect-panel{max-width:520px}.attendance-summary-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.attendance-summary-strip>div{background:var(--surface);border:1px solid var(--line);border-radius:8px;gap:4px;min-width:0;padding:14px;display:grid}.attendance-summary-strip span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.attendance-summary-strip strong{min-width:0;color:var(--text);overflow-wrap:anywhere;font-size:22px}.attendance-summary-strip .is-alert strong{color:#b42335}.attendance-summary-strip .is-safe strong{color:var(--utm-teal)}.attendance-alert svg{flex-shrink:0}.attendance-alert{color:#8b1d2c;background:#d84a5f1a;border:1px solid #d84a5f3d;border-radius:8px;align-items:center;gap:8px;padding:12px 14px;display:flex}.attendance-alert.is-notice{color:#5d4b16;background:#e7b33b21;border-color:#a57c1c38}.attendance-estimate-note{color:var(--muted);background:#00856f14;border:1px solid #00856f2e;border-radius:8px;align-items:flex-start;gap:9px;padding:12px 14px;font-size:13px;font-weight:750;line-height:1.45;display:flex}.attendance-estimate-note svg{color:var(--utm-teal);flex:none;margin-top:1px}.attendance-layout{grid-template-columns:minmax(280px,.42fr) minmax(0,.58fr);align-items:start;gap:16px;display:grid}.attendance-course-panel,.attendance-detail-panel{gap:16px;display:grid}.attendance-search{color:var(--muted);background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding:10px 12px;display:grid}.attendance-search input{box-shadow:none;background:0 0;border:0;padding:0}.attendance-course-list{gap:8px;display:grid}.attendance-course-row{width:100%;color:var(--text);text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:13px 12px;display:grid}.attendance-course-row:hover,.attendance-course-row.is-active{border-color:#9d223561;box-shadow:0 10px 24px #22202714}.attendance-course-row.is-active{background:#d84a5f14}.attendance-course-row.is-low{border-color:#b4233557}.attendance-course-row strong,.attendance-course-row small{overflow-wrap:anywhere;min-width:0;display:block}.attendance-course-row strong{font-size:16px}.attendance-course-row small{color:var(--muted);text-transform:uppercase;margin-top:4px;font-size:12px;font-weight:800}.attendance-course-meta{color:var(--muted);margin-top:7px;font-size:11px;font-weight:750;line-height:1.4;display:block}.attendance-row-percent{min-width:54px;min-height:30px;color:var(--utm-teal);background:#00856f1a;border-radius:8px;justify-content:center;align-items:center;padding:4px 8px;font-weight:900;display:inline-flex}.attendance-course-row.is-low .attendance-row-percent{color:#b42335;background:#b423351a}.attendance-detail-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.attendance-detail-heading h2,.attendance-detail-heading p{margin:0}.attendance-detail-heading h2{margin-top:4px;font-size:22px;line-height:1.18}.attendance-detail-heading span{color:var(--muted);margin-top:6px;font-weight:800;display:inline-block}.attendance-credit-pill,.attendance-status-pill{border-radius:8px;justify-content:center;align-items:center;min-height:32px;padding:6px 9px;font-size:12px;font-weight:900;display:inline-flex}.attendance-credit-pill{color:var(--utm-red);background:#fff4f1;border:1px solid #9d223533;flex:none}.attendance-detail-main{grid-template-columns:180px minmax(0,1fr);align-items:center;gap:20px;display:grid}.attendance-progress-ring{--attendance-deg:0deg;--attendance-color:var(--utm-teal);aspect-ratio:1;background:radial-gradient(circle at center, var(--surface) 0 57%, transparent 58%), conic-gradient(var(--attendance-color) var(--attendance-deg), #ece8df 0);width:170px;box-shadow:inset 0 0 0 1px var(--line), 0 14px 32px #22202714;border-radius:50%;place-items:center;display:grid}.attendance-progress-ring.is-low{--attendance-color:#b42335}.attendance-progress-ring.is-unknown{--attendance-color:#9aa0a6}.attendance-progress-ring span{color:var(--text);font-size:34px;font-weight:950}.attendance-detail-stats{gap:10px;display:grid}.attendance-detail-stats>div{background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:10px;padding:10px 12px;display:grid}.attendance-detail-stats strong{font-size:24px}.attendance-detail-stats span{color:var(--muted);font-size:13px;font-weight:800}.attendance-detail-stats p{color:#8b1d2c;margin:0;font-size:13px;font-weight:800;line-height:1.4}.attendance-detail-stats .attendance-caveat{color:var(--muted);font-weight:750}.attendance-status-pill.is-safe{color:#05634f;background:#00856f1f;border:1px solid #00856f33}.attendance-status-pill.is-low{color:#b42335;background:#b423351a;border:1px solid #b4233533}.attendance-status-pill.is-unknown{color:var(--muted);background:var(--surface-strong);border:1px solid var(--line)}.attendance-records{gap:10px;display:grid}.attendance-records-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.attendance-records-heading h3{margin:0;font-size:16px}.attendance-record-table{border:1px solid var(--line);border-radius:8px;display:grid;overflow:hidden}.attendance-record-head,.attendance-record-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:10px 12px;display:grid}.attendance-record-head{color:var(--text);background:var(--surface-strong);border-bottom:1px solid var(--line);font-weight:900}.attendance-record-row{color:var(--muted);font-weight:750}.attendance-record-row+.attendance-record-row{border-top:1px solid var(--line)}.attendance-record-row span,.attendance-record-head span{overflow-wrap:anywhere;min-width:0}.attendance-empty-note,.attendance-empty-state{color:var(--muted);line-height:1.45}.attendance-empty-note{text-align:center;background:var(--surface-strong);border:1px dashed var(--line);border-radius:8px;padding:14px}.attendance-empty-state{text-align:center;place-items:center;gap:8px;min-height:320px;display:grid}.attendance-empty-state h2,.attendance-empty-state p{margin:0}.results-page{gap:18px;display:grid}.results-session-panel{justify-content:space-between;align-items:center;gap:18px;display:flex}.results-session-panel h2,.results-session-panel p{margin:0}.results-session-panel h2{margin-top:4px;font-size:21px}.results-session-select{width:min(320px,100%)}.results-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.slips-page .results-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.results-metric-card{min-width:0;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:12px;gap:5px;padding:18px;display:grid;box-shadow:0 12px 28px #2220270f}.results-metric-card.is-primary{color:#fff;background:linear-gradient(135deg,#9d2235,#d84a5f);border-color:#0000}.results-metric-card.is-secondary{color:#fff;background:linear-gradient(135deg,#006b5a,#00a389);border-color:#0000}.results-metric-card span{letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:900}.results-metric-card strong{font-size:clamp(34px,5vw,48px);line-height:1}.results-metric-card small{min-width:0;color:var(--muted);overflow-wrap:anywhere;font-size:12px;font-weight:750;line-height:1.4}.results-metric-card.is-primary small,.results-metric-card.is-secondary small{color:#ffffffc7}.results-course-panel{gap:16px;display:grid}.results-course-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.results-course-heading h2,.results-course-heading p{margin:0}.results-course-heading h2{margin-top:4px;font-size:22px}.results-course-heading svg{color:var(--utm-red)}.results-course-list{border:1px solid var(--line);border-radius:10px;display:grid;overflow:hidden}.results-course-head,.results-course-row{grid-template-columns:minmax(0,1fr) 90px;align-items:center;gap:14px;padding:12px 14px;display:grid}.results-course-head{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;background:var(--surface-strong);border-bottom:1px solid var(--line);font-size:12px;font-weight:900}.results-course-head span:last-child{text-align:center}.results-course-row{background:var(--surface)}.results-course-row+.results-course-row{border-top:1px solid var(--line)}.results-course-row>div{min-width:0}.results-course-row strong,.results-course-row span{min-width:0;display:block}.results-course-row>div>strong{font-size:15px}.results-course-row>div>span{color:var(--muted);overflow-wrap:anywhere;margin-top:4px;font-size:13px;font-weight:700;line-height:1.35}.results-grade-pill{min-width:54px;color:var(--text);text-align:center;background:var(--surface-strong);border:1px solid var(--line);border-radius:999px;justify-self:center;padding:7px 10px;font-size:15px;font-weight:950}.results-grade-pill.is-excellent{color:#05634f;background:#00856f1f;border-color:#00856f38}.results-grade-pill.is-good{color:#8b5b00;background:#eab30821;border-color:#ca8a043d}.results-grade-pill.is-low{color:#b42335;background:#b423351a;border-color:#b4233533}.results-course-footer{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.results-course-footer>span{color:var(--muted);background:var(--surface-strong);border:1px solid var(--line);border-radius:9px;gap:5px;padding:12px 14px;font-size:12px;font-weight:800;display:grid}.results-course-footer strong{color:var(--text);overflow-wrap:anywhere;font-size:17px}.results-loading-state,.results-empty-state{min-height:220px;color:var(--muted);text-align:center;place-items:center;gap:10px;display:grid}.results-loading-state strong,.results-empty-state strong{color:var(--text)}.results-empty-state span{max-width:520px;line-height:1.45}.slip-panel{gap:16px;display:grid}.slip-panel-actions{justify-content:flex-end;align-items:center;gap:10px;min-width:0;display:inline-flex}.slips-page .results-metric-card strong{overflow-wrap:anywhere;font-size:clamp(26px,4vw,38px)}.slip-table{border:1px solid var(--line);border-radius:10px;display:grid;overflow:hidden}.slip-table-head,.slip-table-row{align-items:center;gap:12px;padding:12px 14px;display:grid}.slip-registration-table .slip-table-head,.slip-registration-table .slip-table-row{grid-template-columns:minmax(0,1.6fr) minmax(70px,.45fr) minmax(70px,.45fr) minmax(90px,.65fr)}.slip-exam-table .slip-table-head,.slip-exam-table .slip-table-row{grid-template-columns:minmax(0,1.25fr) minmax(120px,.7fr) minmax(120px,.75fr) minmax(90px,.55fr)}.slip-table-head{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;background:var(--surface-strong);border-bottom:1px solid var(--line);font-size:12px;font-weight:900}.slip-table-row{background:var(--surface)}.slip-table-row+.slip-table-row{border-top:1px solid var(--line)}.slip-table-row>div,.slip-table-row>span{min-width:0}.slip-table-row strong,.slip-table-row span{overflow-wrap:anywhere;min-width:0;display:block}.slip-table-row strong{font-size:15px}.slip-table-row span{color:var(--muted);font-size:13px;font-weight:750;line-height:1.35}.slip-table-row>.slip-table-value{color:var(--text);font-weight:850}.slip-table-value:before{content:"";display:none}.slip-total-row{color:var(--text);background:var(--surface-strong);border:1px solid var(--line);border-radius:10px;justify-content:flex-end;align-items:center;gap:12px;padding:10px 14px;display:flex}.slip-total-row span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:900}.slip-total-row strong{font-size:20px;line-height:1}@media (width<=980px){.scanner-header-actions{align-items:center}.attendance-page-header{grid-template-columns:1fr}.attendance-title-action-row{align-items:flex-end;gap:10px}.attendance-back-button,.attendance-refresh-button{width:fit-content}.attendance-layout{grid-template-columns:1fr}.results-session-panel{flex-direction:column;align-items:stretch}.slips-page .results-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.attendance-summary-strip,.attendance-detail-main,.results-summary-grid,.admin-isid-result,.results-course-footer{grid-template-columns:1fr}.attendance-progress-ring{justify-self:center}.attendance-record-head,.attendance-record-row{grid-template-columns:minmax(0,1fr)}.results-course-head,.results-course-row{grid-template-columns:minmax(0,1fr) 64px;padding-inline:11px}.slip-registration-table .slip-table-head,.slip-exam-table .slip-table-head{display:none}.slip-registration-table .slip-table-row,.slip-exam-table .slip-table-row{grid-template-columns:1fr;gap:7px;padding-inline:12px}.slip-table-row>.slip-table-value{text-align:left;background:var(--surface-strong);border:1px solid var(--line);border-radius:8px;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:10px;width:100%;max-width:100%;padding:7px 9px;display:grid}.slip-table-value:before{content:attr(data-label);color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:900;line-height:1;display:block}}@media (width>=981px){.reels-stack-stage{min-height:min(74vh,680px)}.reels-stack-stage .rb-stack-container{width:min(26vw,400px);height:min(70vh,640px)}.academic-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.academic-card,.academic-card.is-featured{grid-column:auto;grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:18px;min-height:clamp(220px,17vw,300px);padding:24px;display:grid}.academic-card .academic-card-icon{border-radius:18px;grid-column:1/-1;width:64px;height:64px}.academic-card .academic-card-text{grid-area:3/1;align-self:end}.academic-card-text strong{font-size:20px}.academic-card-text>span{font-size:14px}.academic-card>svg:last-child{grid-area:3/2;align-self:end;margin-bottom:2px}.results-page>.attendance-connect-panel{justify-self:center;width:100%;max-width:620px;padding:24px}.bus-live-map{height:560px}.bus-timetable-image{max-height:880px}}@media (width>=1400px){.academic-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.settings-column{display:contents}.chat-page-body{grid-template-rows:minmax(0,1fr)}.chat-rail{overscroll-behavior:contain;scrollbar-width:none;min-height:0}.chat-rail::-webkit-scrollbar{display:none}.bus-marker.is-returning{background:#f26419;animation-name:pulse-bus-return;box-shadow:0 8px 18px #f2641959}@keyframes pulse-bus-return{0%{box-shadow:0 0 #f2641999}70%{box-shadow:0 0 0 12px #f2641900}to{box-shadow:0 0 #f2641900}}:root{--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-smooth:cubic-bezier(.22, 1, .36, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--motion-fast:.16s;--motion-base:.24s}.chat-thread{overscroll-behavior-y:contain}.primary-button,.secondary-button,.ghost-button,.link-button,.chip,.status-pill,.segmented-control button,.metric-button,.nav-item,.chat-rail-item,.panel,.metric-card,.product-card,.question-card,.paper-card,.request-card,.clickable-card{transition:background-color var(--motion-base) var(--ease-smooth), border-color var(--motion-base) var(--ease-smooth), color var(--motion-base) var(--ease-smooth), box-shadow var(--motion-base) var(--ease-smooth), transform var(--motion-fast) var(--ease-spring)}.primary-button,.secondary-button,.ghost-button,.link-button,.icon-button,.chip,.nav-item,.segmented-control button,.metric-button,.clickable-card,.chat-rail-item{touch-action:manipulation;-webkit-tap-highlight-color:transparent}.primary-button:active,.secondary-button:active,.ghost-button:active,.link-button:active,.chip:active,.segmented-control button:active,.metric-button:active{transform:scale(.96)}.clickable-card:active,.paper-card:active{transform:scale(.985)}@media (hover:hover) and (pointer:fine){.primary-button:hover,.secondary-button:hover,.ghost-button:hover{transform:translateY(-1px)}}.main-content,.chat-thread,.chip-scroller,.product-grid{-webkit-overflow-scrolling:touch}.main-content[data-page-direction=forward] .module,.main-content[data-page-direction=back] .module{animation-duration:.32s;animation-timing-function:var(--ease-smooth)}@media (prefers-reduced-motion:no-preference){.product-card,.question-card,.paper-card,.request-card{animation:riseIn .46s var(--ease-smooth) both}.product-grid>:first-child{animation-delay:20ms}.product-grid>:nth-child(2){animation-delay:60ms}.product-grid>:nth-child(3){animation-delay:.1s}.product-grid>:nth-child(4){animation-delay:.14s}.product-grid>:nth-child(5){animation-delay:.18s}.product-grid>:nth-child(6){animation-delay:.22s}}@keyframes riseIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.modal-backdrop:not(.image-viewer-backdrop):not(.listing-modal-backdrop){animation:modalScrimIn .22s var(--ease-smooth) both}.detail-modal:not(.pin-picker-modal):not(.listing-detail-modal){animation:modalPopIn .3s var(--ease-spring) both}@keyframes modalScrimIn{0%{opacity:0}to{opacity:1}}@keyframes modalPopIn{0%{opacity:0;transform:translateY(10px)scale(.96)}to{opacity:1;transform:none}}.app-select{width:100%;min-width:0;min-height:40px;color:var(--text);font:inherit;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:10px 11px;font-weight:700;display:flex}.app-select.is-open,.app-select:focus-visible{border-color:#9d223580;box-shadow:0 0 0 3px #9d22351f}.app-select:disabled{opacity:.55;cursor:not-allowed}.app-select-value{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.app-select-value.is-placeholder{color:var(--muted);font-weight:600}.app-select-caret{color:var(--muted);transition:transform .2s var(--ease-smooth);flex:none}.app-select.is-open .app-select-caret{transform:rotate(180deg)}.app-select-portal{z-index:4000;position:fixed;inset:0}.app-select-scrim{cursor:default;background:0 0;border:0;width:100%;height:100%;padding:0;position:fixed;inset:0}.app-select-menu{background:var(--surface);border:1px solid var(--line);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;max-height:min(280px,60vh);animation:appSelectIn .16s var(--ease-smooth) both;border-radius:12px;padding:6px;overflow-y:auto;box-shadow:0 18px 44px #22202738}@keyframes appSelectIn{0%{opacity:0;transform:translateY(-6px)scale(.98)}to{opacity:1;transform:none}}.app-select-option{width:100%;color:var(--text);text-align:left;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:14px;font-weight:700;display:flex}.app-select-option:hover,.app-select-option:focus-visible{background:#9d223514}.app-select-option.is-selected{color:#fff;background:var(--active-gradient)}.app-select-option:disabled{opacity:.45;cursor:not-allowed}.app-select-option svg{flex:none}.mention-suggestions{z-index:30;background:var(--surface);border:1px solid var(--line);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;max-height:240px;animation:appSelectIn .16s var(--ease-smooth) both;border-radius:14px;padding:6px;position:absolute;bottom:calc(100% + 6px);left:8px;right:8px;overflow-y:auto;box-shadow:0 18px 44px #22202747}.mention-suggestion{text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;width:100%;padding:8px 10px;display:flex}.mention-suggestion:hover,.mention-suggestion:focus-visible{background:#9d223514}.mention-suggestion-name{min-width:0;color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-weight:800;overflow:hidden}.mention-suggestion-handle{max-width:45%;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-left:auto;font-size:12px;font-weight:700;overflow:hidden}.market-filter-row .chip-scroller,.transport-filter-row .chip-scroller,.paper-faculty-filter-row .chip-scroller,.qa-filter-row .chip-scroller,.campus-filter-row .chip-scroller,.chat-category-row .chip-scroller{cursor:grab;overscroll-behavior-x:contain;-webkit-user-select:none;user-select:none;flex:1;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 26px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 26px),#0000)}.collapsible-heading{width:100%;color:var(--text);text-align:left;background:0 0;border:0;padding:0}.collapsible-heading span{align-items:center;gap:8px;display:inline-flex}.collapsible-caret{transition:transform .35s cubic-bezier(.04,.62,.23,.98)}.collapsible-heading[aria-expanded=true] .collapsible-caret{transform:rotate(180deg)}.market-filter-row .chip-scroller.is-dragging,.transport-filter-row .chip-scroller.is-dragging{cursor:grabbing;scroll-behavior:auto}.market-filter-row .chip-scroller.is-dragging .chip,.transport-filter-row .chip-scroller.is-dragging .chip{pointer-events:none}@media (hover:none){.market-filter-row .chip-scroller,.transport-filter-row .chip-scroller,.paper-faculty-filter-row .chip-scroller,.qa-filter-row .chip-scroller,.campus-filter-row .chip-scroller,.chat-category-row .chip-scroller{cursor:auto}}.transport-filter-row .request-form-fab{box-shadow:0 8px 16px #9d223538}.transportation-page{--teal:var(--success-green);--utm-teal:var(--success-green);--gold:var(--success-green)}.transportation-page .request-status.matched,.transportation-page .request-status.paid,.transportation-page .request-status.completed,.transportation-page .scan-pay-badge,.transportation-page .request-card-head>.pill{color:var(--success-green);background:#2fbf711f;border-color:#2fbf713d}:root .transportation-page .route-line,:root .transportation-page .segmented-control{background:#2fbf7112}.image-viewer{overflow:hidden}.image-viewer-frame{will-change:transform, opacity;grid-area:1/1;justify-content:center;align-items:center;width:100%;min-width:0;height:100%;display:flex}.image-viewer .image-nav,.image-viewer .modal-close,.image-viewer-caption{z-index:3}.sort-control .app-select{width:auto;min-height:0;box-shadow:none;background:0 0;border:0;padding:4px 2px 4px 4px;font-weight:900}.bus-stop-select .app-select,.inline-select .app-select{min-height:0;box-shadow:none;background:0 0;border:0;padding:5px 8px;font-weight:900}.sort-control .app-select.is-open,.bus-stop-select .app-select.is-open,.inline-select .app-select.is-open{box-shadow:none}.product-photo{line-height:0;position:relative;overflow:hidden}.condition-badge{z-index:2;color:#2a2730;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffffeb;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:800;line-height:1;position:absolute;top:10px;left:10px;box-shadow:0 4px 12px #00000029}.card-fav{z-index:2;color:#2a2730;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffffeb;border:0;border-radius:50%;place-items:center;width:34px;height:34px;display:grid;position:absolute;top:8px;right:8px;box-shadow:0 4px 12px #00000029}.card-fav svg{transition:transform .2s var(--ease-spring), fill .2s ease}.card-fav.is-active{color:var(--utm-red)}.card-fav.is-active svg{fill:var(--utm-red);animation:.45s cubic-bezier(.34,1.56,.64,1) heart-pop}.card-fav.is-active:after{content:"";border:2px solid var(--utm-red);pointer-events:none;border-radius:50%;animation:.5s ease-out forwards heart-burst;position:absolute;inset:0}@keyframes heart-pop{0%{transform:scale(1)}25%{transform:scale(.7)}55%{transform:scale(1.35)}to{transform:scale(1)}}@keyframes heart-burst{0%{opacity:.7;transform:scale(.6)}to{opacity:0;transform:scale(1.85)}}.card-fav:active svg{transform:scale(.8)}.card-sold-tag{z-index:2;color:#fff;background:#222027d1;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:800;line-height:1;position:absolute;bottom:10px;left:10px}.product-card .product-body{gap:6px;padding:12px 12px 14px}.card-price{letter-spacing:-.01em;color:var(--utm-red);font-size:19px;font-weight:900}.card-price.is-free,.modal-price.is-free{color:var(--success-green)}.card-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;font-weight:700;display:flex}.card-meta .location-pill{color:var(--muted);gap:3px;font-size:12px;font-weight:700}.card-meta .location-pill:hover{color:var(--utm-red);text-decoration:none}.card-seller-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:4px;display:flex}.card-seller-row .seller-inline{flex:1;gap:7px;min-width:0;font-size:13px;font-weight:800}.card-seller-row .seller-inline span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.fulfillment-badges{flex:none;align-items:center;gap:5px;display:flex}.fulfil-badge{border-radius:999px;align-items:center;gap:3px;padding:3px 7px;font-size:11px;font-weight:800;line-height:1;display:inline-flex}.fulfil-badge.is-delivery{color:var(--blue);background:#2364aa1f}.fulfil-badge.is-pickup{color:var(--success-green);background:#2fbf7124}@media (width<=720px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.product-card .product-body{padding:10px 10px 12px}.card-price{font-size:17px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media (width<=980px){.filter-row:not(.market-filter-row):not(.chat-category-row):not(.transport-filter-row):not(.paper-faculty-filter-row):not(.qa-filter-row){margin-left:-20px;margin-right:-20px;padding-left:20px;padding-right:20px}}.modal-backdrop{transition:opacity .25s,background-color .25s}@media (width>=981px){body{zoom:1.1}}.favourites-panel .favourite-row span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.attendance-back-button{grid-column:1/-1;width:fit-content}.onboarding-overlay{z-index:3000;padding:calc(20px + env(safe-area-inset-top)) 20px calc(20px + env(safe-area-inset-bottom));background:radial-gradient(circle at 50% 0%, var(--body-wash), transparent 60%), var(--bg);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.onboarding-card{background:var(--surface);border:1px solid var(--line);width:100%;max-width:420px;box-shadow:var(--shadow);border-radius:24px;flex-direction:column;gap:22px;padding:28px 24px;display:flex}.onboarding-brand{color:var(--text);align-items:center;gap:10px;font-weight:700;display:flex}.onboarding-brand img{border-radius:9px;width:32px;height:32px}.onboarding-body{flex-direction:column;gap:12px;min-height:184px;display:flex}.onboarding-icon{color:#fff;background:var(--active-gradient);border-radius:18px;justify-content:center;align-items:center;width:60px;height:60px;display:inline-flex}.update-gate-overlay{z-index:4000;padding:calc(20px + env(safe-area-inset-top)) 20px calc(20px + env(safe-area-inset-bottom));background:radial-gradient(circle at 50% 0%, var(--body-wash), transparent 60%), var(--bg);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.update-gate-card{background:var(--surface);border:1px solid var(--line);width:100%;max-width:400px;box-shadow:var(--shadow);text-align:center;border-radius:24px;flex-direction:column;gap:20px;padding:28px 24px;display:flex}.update-gate-card .onboarding-brand{justify-content:center}.update-gate-body{flex-direction:column;align-items:center;gap:12px;display:flex}.update-gate-icon{color:#fff;background:var(--active-gradient);border-radius:18px;justify-content:center;align-items:center;width:60px;height:60px;display:inline-flex}.update-gate-body h2{color:var(--text);margin:0;font-size:1.35rem}.update-gate-body p{color:var(--text);opacity:.78;margin:0;line-height:1.5}.update-gate-versions{font-size:.85rem}.update-gate-versions strong{opacity:1}.answer-body{white-space:pre-wrap;overflow-wrap:anywhere}.answer-composer-input{resize:vertical;width:100%;min-height:40px;font:inherit}.inline-answer-editor{gap:8px;display:grid}.inline-answer-editor textarea{resize:vertical;width:100%;font:inherit}.admin-version-note{font-size:.8rem;line-height:1.45}.onboarding-body h2{color:var(--text);margin:4px 0 0;font-size:1.4rem}.onboarding-body p{color:var(--muted);margin:0;line-height:1.55}.onboarding-lang-toggle{color:var(--utm-red);cursor:pointer;background:0 0;border:1px solid #9d223552;border-radius:100px;align-self:flex-start;padding:5px 12px;font-size:.8rem;font-weight:700}.onboarding-transfer-notice{background:#9d22350f;border:1px solid #9d22352e;border-radius:10px;padding:10px 12px;font-size:.86rem}.onboarding-consent{color:var(--text);cursor:pointer;align-items:flex-start;gap:10px;margin-top:4px;display:flex}.onboarding-consent input{width:18px;height:18px;accent-color:var(--utm-red);flex:none;margin-top:3px}.onboarding-dots{justify-content:center;gap:8px;display:flex}.onboarding-dots span{background:var(--line);border-radius:50%;width:7px;height:7px;transition:width .2s,background .2s}.onboarding-dots span.is-active{background:var(--utm-red);border-radius:4px;width:20px}.onboarding-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.onboarding-actions .primary-button,.onboarding-actions .ghost-button{align-items:center;gap:6px;display:inline-flex}.onboarding-actions .primary-button:disabled{opacity:.5;cursor:not-allowed}.profile-module-heading{justify-content:space-between;align-items:flex-end;gap:14px;display:flex}.profile-module-heading>div{min-width:0}.profile-module-heading .profile-widget-heading-button{flex:none;align-self:flex-end}@media (width<=720px){.profile-module-heading{align-items:flex-end;gap:10px;display:flex}.profile-module-heading h1{font-size:28px}.profile-module-heading .profile-widget-heading-button{min-height:40px;padding-inline:12px;font-size:13px}}@media (width<=370px){.profile-module-heading .profile-widget-heading-button{padding-inline:10px;font-size:12px}}@media (width<=980px){.sidebar,:root[data-theme=dark] .sidebar{right:14px;bottom:calc(4px + env(safe-area-inset-bottom));box-shadow:none;background:0 0;border:0;padding:0;left:14px}.nav-list.dock-nav,.dock-nav .rb-dock-outer{overflow:visible}.dock-nav .rb-dock-panel{background:color-mix(in srgb, var(--surface) 60%, transparent);border:1px solid var(--line);-webkit-backdrop-filter:blur(18px)saturate(1.5);backdrop-filter:blur(18px)saturate(1.5);border-radius:20px;box-shadow:0 10px 26px #0a0c123d}.app-shell.is-bottom-nav-hidden .sidebar{transform:translateY(calc(100% + 24px + env(safe-area-inset-bottom)))}.reels-module{gap:10px}.reels-stack-stage{min-height:0;padding:4px 0}.reels-stack-stage .rb-stack-container{width:min(80vw,330px);height:min(48vh,430px)}.reels-actions{padding-bottom:0}}.account-identity{align-items:center;gap:12px;display:flex}.account-identity .settings-note{overflow-wrap:anywhere;min-width:0;margin:0}.theme-mode-toggle{background:color-mix(in srgb, var(--utm-red) 5%, var(--surface));border:0;border-radius:999px;gap:5px;padding:5px;overflow:hidden}.theme-mode-toggle button{border:0;border-radius:999px;min-height:44px}.theme-mode-toggle button.is-active,:root[data-theme=dark] .theme-mode-toggle button.is-active{color:#fff;background:var(--active-gradient);box-shadow:none;border-color:#0000}:root[data-theme=dark] .theme-mode-toggle{background:color-mix(in srgb, var(--utm-red) 8%, var(--surface));border:0}.palette-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.palette-swatch{border-radius:16px;gap:11px;padding:13px 14px;font-weight:800}.palette-swatch:hover{border-color:color-mix(in srgb, var(--utm-red) 30%, var(--line));transform:none}.palette-dot{width:24px;height:24px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #0000001f,0 3px 8px #00000040}.palette-dot:after{content:"";border-radius:inherit;background:linear-gradient(150deg,#ffffff80,#ffffff14 46%,#00000038);position:absolute;inset:0}.palette-swatch.is-active{border-color:color-mix(in srgb, var(--utm-red) 60%, var(--line));background:color-mix(in srgb, var(--utm-red) 9%, var(--surface));box-shadow:0 8px 22px color-mix(in srgb, var(--utm-red) 22%, transparent)}.palette-swatch.is-active .palette-dot{box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--utm-red), 0 3px 8px #00000040}
