/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-content:""}}}@layer theme{:root,:host{--font-sans:"Geist", system-ui, -apple-system, sans-serif;--font-mono:"Geist Mono", monospace;--color-red-500:oklch(63.7% .237 25.331);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-green-500:oklch(72.3% .219 149.579);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-blue-900:oklch(37.9% .146 265.522);--color-zinc-900:oklch(21% .006 285.885);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--leading-snug:1.375;--leading-relaxed:1.625;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:20px;--ease-out:cubic-bezier(0, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-sm:8px;--aspect-video:16 / 9;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-primary:var(--bg-primary);--color-secondary:var(--bg-secondary);--color-card:var(--bg-card);--color-elevated:var(--bg-elevated);--color-hover:var(--surface-hover);--color-fg:var(--text-primary);--color-fg-secondary:var(--text-secondary);--color-fg-muted:var(--text-muted);--color-accent:var(--accent);--color-accent-hover:var(--accent-hover);--color-accent-text:var(--accent-text);--color-accent-on:var(--accent-text-on);--color-error:var(--error);--color-border:var(--border);--color-overlay:var(--overlay);--color-ring:var(--ring);--radius-pill:9999px}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@font-face{font-family:Geist;src:url(/fonts/Geist-Variable.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono;src:url(/fonts/GeistMono-Variable.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@layer legacy{:root{--bg-primary:#000;--bg-secondary:#0a0a0a;--bg-card:#111;--text-primary:#ededed;--text-secondary:#888;--text-muted:#555;--accent:#34d399;--accent-hover:#10b981;--accent-rgb:52, 211, 153;--accent-hover-rgb:16, 185, 129;--accent-text:#6ee7b7;--accent-text-soft:#a7f3d0;--accent-text-dim:#d1fae5;--accent-text-on:#000;--error:#f87171;--border:#1a1a1a;--radius-xs:8px;--radius-sm:12px;--radius-md:16px;--radius-lg:20px;--radius-pill:999px;--transition-fast:.15s cubic-bezier(.23, 1, .32, 1);--transition-normal:.25s cubic-bezier(.23, 1, .32, 1);--transition-slow:.35s cubic-bezier(.23, 1, .32, 1);--ease-out:cubic-bezier(.23, 1, .32, 1);--scale-press:.98;--padding-input-y:12px;--padding-input-x:14px;--icon-btn-size:36px;--card-padding:16px;--glass-bg:#ffffff05;--glass-border:#ffffff0f;--glass-blur:blur(16px) saturate(1.2);--glass-shadow:0 1px 0 #ffffff0a, 0 2px 8px #00000014;--hero-border:rgba(var(--accent-rgb), .1);--hero-label-color:var(--accent);--hero-bg:var(--bg-card)}:root[data-theme=light]{--bg-primary:#f5f5f5;--bg-secondary:#fff;--bg-card:#fff;--text-primary:#171717;--text-secondary:#737373;--text-muted:#a3a3a3;--accent:#059669;--accent-hover:#047857;--accent-rgb:5, 150, 105;--accent-hover-rgb:4, 120, 87;--accent-text:#047857;--accent-text-soft:#a7f3d0;--accent-text-dim:#d1fae5;--accent-text-on:#000;--error:#dc2626;--border:#e5e5e5;--glass-bg:#fff9;--glass-border:#0000000f;--glass-blur:blur(16px) saturate(1.2);--glass-shadow:0 1px 2px #0000000a;--hero-border:rgba(var(--accent-rgb), .15);--hero-label-color:var(--accent);--hero-bg:var(--bg-card)}:root[data-theme=light] body{background-color:var(--bg-primary);color:var(--text-primary)}:root[data-theme=light] .logo{color:#171717;text-shadow:none}:root[data-theme=light] .sheet-modal{border-color:var(--glass-border);background:#ffffffe0;box-shadow:0 8px 32px #00000014}:root[data-theme=light] .account-sheet{-webkit-backdrop-filter:blur(20px)saturate(1.2);backdrop-filter:blur(20px)saturate(1.2);border-color:var(--glass-border);background:#ffffffe0;box-shadow:0 -8px 32px #0000000f}:root[data-theme=light] .header-actions{background:#ffffffe6}:root[data-theme=light] .tabs{background:#ffffffa6;border-color:#0000000f;box-shadow:0 -1px #0000000a}:root[data-theme=light] .menu-btn{color:#525252;background:#ffffffe6;border-color:#00000014}:root[data-theme=light] .menu-btn:hover{color:#171717;box-shadow:none;background:#f5f5f5f2;border-color:#0000001f}:root[data-theme=light] .tab{color:#a3a3a3}:root[data-theme=light] .tab.active{color:var(--accent)}:root[data-theme=light] .tabs.is-dragging .tab.active{color:#a3a3a3}:root[data-theme=light] .tabs.is-dragging .tab.drag-target{color:var(--accent)}:root[data-theme=light] .tab:not(.active):hover{color:#737373;background:#00000008}:root[data-theme=light] .tab-indicator{background:var(--accent);box-shadow:0 0 6px rgba(var(--accent-rgb),.2);border-color:#0000}:root[data-theme=light] .dashboard-meta .meta-item{color:#525252;background:#ffffffb3;border-color:#0000000f}:root[data-theme=light] .dashboard-meta .meta-item.muted{color:#737373;background:#ffffff80;border-color:#0000000a}:root[data-theme=light] .account-sheet,:root[data-theme=light] .sheet-modal.info-sheet{background:#fafafafa}:root[data-theme=light] .account-sheet .account-title,:root[data-theme=light] .account-sheet .profile-name,:root[data-theme=light] .account-sheet .account-value,:root[data-theme=light] .account-sheet .profile-section-title,:root[data-theme=light] .account-sheet .profile-stats-title,:root[data-theme=light] .account-sheet .profile-history-time,:root[data-theme=light] .account-sheet .profile-history-message,:root[data-theme=light] .account-sheet .share-toggle span{color:#171717}:root[data-theme=light] .account-sheet .account-subtitle,:root[data-theme=light] .account-sheet .profile-id,:root[data-theme=light] .account-sheet .account-label,:root[data-theme=light] .account-sheet .profile-section-meta,:root[data-theme=light] .account-sheet .profile-history-meta,:root[data-theme=light] .account-sheet .profile-stats-foot{color:#737373}:root[data-theme=light] .account-sheet .account-row,:root[data-theme=light] .account-sheet .profile-section,:root[data-theme=light] .account-sheet .profile-stats,:root[data-theme=light] .account-sheet .stat-card,:root[data-theme=light] .account-sheet .profile-history-item,:root[data-theme=light] .account-sheet .share-toggle,:root[data-theme=light] .account-sheet .profile-kv-row,:root[data-theme=light] .sheet-modal.info-sheet .info-text{background:var(--glass-bg);border-color:var(--glass-border);box-shadow:var(--glass-shadow)}:root[data-theme=light] .account-sheet .account-close{color:#525252;background:#ffffffe6;border-color:#00000014}:root[data-theme=ocean]{--bg-primary:#0a1525;--bg-secondary:#0e1b32;--bg-card:#121f3a;--text-primary:#e2e8f0;--text-secondary:#8494a7;--text-muted:#506478;--accent:#22d3ee;--accent-hover:#06b6d4;--accent-rgb:34, 211, 238;--accent-hover-rgb:6, 182, 212;--accent-text:#67e8f9;--accent-text-soft:#a5f3fc;--accent-text-dim:#cffafe;--accent-text-on:#000;--error:#f87171;--border:#1a2d4a;--glass-bg:#22d3ee08;--glass-border:#22d3ee14;--glass-blur:blur(16px) saturate(1.2);--glass-shadow:0 1px 0 #22d3ee0a, 0 2px 8px #0000001a}:root[data-theme=ocean] body{background-color:var(--bg-primary);color:var(--text-primary)}:root[data-theme=ocean] .logo{color:#c8daf0}:root[data-theme=ocean] .header-actions{background:#22d3ee05;border-color:#22d3ee14}:root[data-theme=ocean] .menu-btn{color:#8494a7;background:#22d3ee0a;border-color:#22d3ee1a}:root[data-theme=ocean] .menu-btn:hover{color:#a5f3fc;box-shadow:none;background:#22d3ee14;border-color:#22d3ee33}:root[data-theme=ocean] .menu-btn:focus-visible{border-color:#22d3ee66;box-shadow:0 0 0 3px #22d3ee26}:root[data-theme=ocean] .tabs{box-shadow:none;background:#22d3ee08;border-color:#22d3ee14}:root[data-theme=ocean] .tab-indicator{background:var(--accent);border-color:#0000;box-shadow:0 0 8px #22d3ee40}:root[data-theme=ocean] .tabs.is-dragging .tab.drag-target{color:#e2e8f0}:root[data-theme=ocean] .status-pill{color:#67e8f9;background:#22d3ee1f;border-color:#22d3ee40}:root[data-theme=ocean] .status-pill.is-off{color:#8494a7;background:#22d3ee0a;border-color:#22d3ee1a}:root[data-theme=ocean] .dashboard-meta .meta-item{color:#94a3b8;background:#22d3ee0a;border-color:#22d3ee1a}:root[data-theme=ocean] .dashboard-meta .meta-item.muted{color:#64748b;background:#22d3ee05;border-color:#22d3ee0f}:root[data-theme=ocean] .dashboard-profile-btn:hover{color:#a5f3fc;background:#22d3ee14;border-color:#22d3ee40}:root[data-theme=ocean] .dashboard-subtitle{color:#64748b}:root[data-theme=ocean] .friends-plus{background:var(--accent)}:root[data-theme=ocean] .friends-plus:before,:root[data-theme=ocean] .friends-plus:after{background:#0a1525eb}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);letter-spacing:-.011em;-webkit-font-smoothing:antialiased;min-height:100vh;font-family:Geist,system-ui,-apple-system,sans-serif}.app{flex-direction:column;max-width:100%;min-height:100vh;padding:20px;display:flex}.header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;padding:0 4px;display:flex}.header-actions{border-radius:var(--radius-pill);background:linear-gradient(#ffffff07,#ffffff03);border:1px solid #ffffff1c;align-items:center;gap:8px;padding:4px;display:flex;box-shadow:inset 0 1px #ffffff0a,0 8px 18px #0003}.logo{letter-spacing:-.5px;color:#eef4fb;text-shadow:0 1px #00000040;font-size:22px;font-weight:600}.menu-btn{color:#c0ccdc;cursor:pointer;border-radius:var(--radius-pill);width:40px;height:40px;transition:transform var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast);background:linear-gradient(#ffffff08,#ffffff04);border:1px solid #ffffff24;justify-content:center;align-items:center;padding:0;display:inline-flex;box-shadow:inset 0 1px #ffffff08}.menu-btn svg{flex-shrink:0;width:20px;height:20px}.friends-btn{position:relative}.friends-plus{border-radius:var(--radius-pill);background:var(--accent);pointer-events:none;border:1px solid #00000059;justify-content:center;align-items:center;width:14px;height:14px;font-size:0;display:flex;position:absolute;top:5px;right:5px;transform:translate(40%,-40%);box-shadow:0 8px 18px #00000073}.friends-plus.pending{background:var(--error);letter-spacing:-.2px;font-variant-numeric:tabular-nums;color:#fffffffa;width:auto;min-width:16px;height:16px;padding:0 5px;font-size:11px;font-weight:700;line-height:1}.friends-plus.pending:before,.friends-plus.pending:after{content:none}.friends-plus:before,.friends-plus:after{content:"";border-radius:var(--radius-pill);background:#000000eb;width:8px;height:2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.friends-plus:after{transform:translate(-50%,-50%)rotate(90deg)}.menu-btn:hover{color:var(--accent-text-soft);background:linear-gradient(180deg,rgba(var(--accent-rgb),.17),rgba(var(--accent-rgb),.1));border-color:rgba(var(--accent-rgb),.35);box-shadow:inset 0 1px #ffffff0d,0 10px 20px #1a794533}.menu-btn:focus-visible{border-color:rgba(var(--accent-rgb),.5);box-shadow:inset 0 1px #ffffff0d,0 0 0 3px rgba(var(--accent-rgb),.2);outline:none}.menu-btn:active{transform:scale(var(--scale-press))}.main-content{flex-direction:column;flex:1;display:flex}.dashboard{flex-direction:column;gap:14px;width:100%;display:flex}.dashboard-hero,.dashboard-card{background:var(--bg-card);-webkit-backdrop-filter:none;backdrop-filter:none;border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--card-padding);box-shadow:none}.dashboard-hero{border:1px solid var(--border);background:var(--bg-card);-webkit-backdrop-filter:none;backdrop-filter:none;flex-direction:column;gap:14px;display:flex}.dashboard-hero-top{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.dashboard-label{text-transform:uppercase;letter-spacing:.05em;color:var(--hero-label-color);font-family:Geist Mono,monospace;font-size:11px;font-weight:500}.dashboard-name{letter-spacing:-.02em;margin-top:5px;font-size:19px;font-weight:600;line-height:1.2}.dashboard-subtitle{color:#9aa6b6;margin-top:5px;font-size:12px;line-height:1.45}.dashboard-meta{color:var(--text-secondary);flex-wrap:wrap;gap:6px;margin-top:9px;font-size:11px;display:flex}.dashboard-meta .meta-item{border-radius:var(--radius-pill);color:#c6cfdb;background:#ffffff0b;border:1px solid #ffffff24;align-items:center;gap:4px;padding:4px 9px;display:inline-flex}.dashboard-meta .meta-item.muted{color:#7f8b9c;background:#ffffff05;border-color:#ffffff14}.status-pill{letter-spacing:.05em;text-transform:uppercase;background:rgba(var(--accent-rgb),.12);color:var(--accent-text);border:1px solid rgba(var(--accent-rgb),.25);border-radius:4px;align-items:center;padding:4px 9px;font-family:Geist Mono,monospace;font-size:10px;font-weight:500;display:inline-flex}.status-pill.is-off{color:#a8b4c4;background:#ffffff14;border-color:#ffffff2e}.dashboard-profile-btn{color:var(--text-primary);border-radius:var(--radius-pill);cursor:pointer;min-height:40px;transition:transform var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);background:#ffffff0a;border:1px solid #ffffff1f;padding:10px 14px;font-size:12px;font-weight:600}.dashboard-profile-btn:hover{border-color:rgba(var(--accent-rgb),.34);background:rgba(var(--accent-rgb),.12);color:var(--accent-text-soft)}.dashboard-profile-btn:active{transform:scale(var(--scale-press))}.dashboard-toggles{flex-direction:column;gap:8px;display:flex}.dashboard-card{flex-direction:column;gap:13px;display:flex}.dashboard-card-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.dashboard-card-title{color:var(--text-primary);letter-spacing:-.1px;font-size:15px;font-weight:600}.dashboard-card-meta{color:#9aa8ba;border-radius:var(--radius-pill);background:#ffffff0b;border:1px solid #ffffff26;padding:4px 9px;font-size:11px}.dashboard-muted{color:#8490a2;font-size:12px;line-height:1.45}.dashboard-error{color:var(--error);font-size:12px;line-height:1.45}.today-next{border:1px solid rgba(var(--accent-rgb),.28);background:rgba(var(--accent-rgb),.09);border-radius:var(--radius-md);flex-direction:column;gap:6px;padding:12px;display:flex;box-shadow:inset 0 1px #ffffff08}.today-time{color:var(--accent-text);border:1px solid rgba(var(--accent-rgb),.2);background:rgba(var(--accent-rgb),.08);letter-spacing:.05em;border-radius:4px;align-self:flex-start;padding:3px 8px;font-family:Geist Mono,monospace;font-size:11px;font-weight:500;display:inline-flex}.today-title{font-size:14px;font-weight:600;line-height:1.35}.today-location{color:#a4afbe;font-size:12px}.today-more{color:#8693a6;font-size:11px}.dashboard-card-actions{margin-top:0}.dashboard-acs{gap:12px}.acs-list{flex-direction:column;gap:8px;display:flex}.acs-item{border:1px solid var(--border);background:var(--bg-secondary);border-radius:var(--radius-md);padding:10px 12px}.acs-item-top{justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;display:flex}.acs-time{color:var(--accent);font-size:14px;font-weight:600}.acs-duration{color:var(--text-secondary);font-size:12px}.acs-route{align-items:center;gap:6px;min-width:0;display:flex}.acs-zone{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.acs-arrow{color:var(--text-muted);flex:none}.btn-compact{border-radius:var(--radius-pill);width:auto;padding:10px 16px;font-size:13px}.dashboard-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.quick-action{background:var(--glass-bg);border:.5px solid var(--glass-border);border-radius:var(--radius-sm);min-height:56px;color:var(--text-primary);transition:transform var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast);-webkit-tap-highlight-color:transparent;align-items:center;gap:9px;padding:10px 12px;font-size:12px;font-weight:600;display:flex}.quick-action svg{opacity:.92;color:#b5c0cf;flex-shrink:0;width:18px;height:18px}.quick-action:hover{border-color:rgba(var(--accent-rgb),.32);background:rgba(var(--accent-rgb),.12);color:var(--accent-text-soft)}.quick-action:active{transform:scale(var(--scale-press))}.dashboard-friends .friends-checkbox{border-radius:var(--radius-md);background:linear-gradient(#ffffff09,#ffffff04);border-color:#ffffff24;max-width:none;margin-top:0;padding:12px 13px;box-shadow:inset 0 1px #ffffff08}.dashboard-friends .friends-checkbox input[type=checkbox]{width:42px;height:24px}.dashboard-friends .friends-checkbox input[type=checkbox]:after{width:18px;height:18px}.dashboard-friends .friends-checkbox input[type=checkbox]:checked:after{transform:translate(17px,-50%)}.dashboard-friends .group-card{border-radius:var(--radius-md);background:linear-gradient(#ffffff06,#ffffff03);border-color:#ffffff21;max-width:none;margin-top:0;padding:12px}.dashboard-friends .friends-checkbox:hover{border-color:rgba(var(--accent-rgb),.37);background:linear-gradient(180deg,rgba(var(--accent-rgb),.15),rgba(var(--accent-rgb),.08))}.dashboard-friends .friends-checkbox span{color:var(--text-primary);letter-spacing:-.04px;font-size:13px;font-weight:600}.dashboard-friends .group-header{margin-bottom:10px}.dashboard-friends .group-title{letter-spacing:.75px;text-transform:uppercase;color:#aebbd0;font-size:11px;font-weight:600}.dashboard-friends .group-count{letter-spacing:.45px;text-transform:uppercase;border-radius:var(--radius-pill);color:#c7d2e3;background:#ffffff08;border:1px solid #ffffff26;padding:4px 8px;font-size:10px;font-weight:600}.dashboard-friends .group-members{-webkit-overflow-scrolling:touch;padding:0 2px 0 0;flex-direction:column;gap:8px;max-height:250px;margin:0;display:flex;overflow-y:auto}.dashboard-friends .friend-selectable{margin:0}.dashboard-friends .friend-select-label{border-radius:var(--radius-md);transition:border-color var(--transition-fast),background var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);background:linear-gradient(#ffffff08,#ffffff04);border:1px solid #ffffff24;align-items:center;gap:10px;padding:10px 12px;display:flex;position:relative;box-shadow:inset 0 1px #ffffff08}.dashboard-friends .friend-select-label:after{content:"";border-radius:inherit;pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;box-shadow:inset 0 1px #ffffff05}.dashboard-friends .friend-select-label:hover{border-color:rgba(var(--accent-rgb),.4);background:linear-gradient(180deg,rgba(var(--accent-rgb),.16),rgba(var(--accent-rgb),.08));transform:translateY(-1px)}.dashboard-friends .friend-select-label.is-selected{border-color:rgba(var(--accent-rgb),.52);background:linear-gradient(180deg,rgba(var(--accent-rgb),.2),rgba(var(--accent-rgb),.11));box-shadow:inset 0 1px #ffffff0b,0 0 0 1px rgba(var(--accent-rgb),.14)}.dashboard-friends .friend-checkbox{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;width:20px;height:20px;transition:border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);background:#090c10db;border:1px solid #bacbe085;border-radius:6px;flex:0 0 20px;place-items:center;display:inline-grid}.dashboard-friends .friend-checkbox:after{content:"";border-left:2px solid var(--accent-text-on);border-bottom:2px solid var(--accent-text-on);transform-origin:50%;opacity:0;width:10px;height:6px;transition:transform var(--transition-fast),opacity var(--transition-fast);transform:rotate(-45deg)scale(.35)}.dashboard-friends .friend-checkbox:hover{border-color:rgba(var(--accent-rgb),.48)}.dashboard-friends .friend-checkbox:checked{border-color:rgba(var(--accent-rgb),.76);background:linear-gradient(180deg,rgba(var(--accent-rgb),.98),rgba(var(--accent-hover-rgb),.96));box-shadow:0 0 0 1px rgba(var(--accent-rgb),.24),0 8px 18px rgba(var(--accent-hover-rgb),.22)}.dashboard-friends .friend-checkbox:checked:after{opacity:1;transform:rotate(-45deg)scale(1)}.dashboard-friends .friend-select-label.is-selected .friend-checkbox{box-shadow:0 0 0 1px rgba(var(--accent-rgb),.28),0 8px 18px rgba(var(--accent-hover-rgb),.2)}.dashboard-friends .member-indicator{border-radius:var(--radius-pill);background:rgba(var(--accent-rgb),.94);width:8px;height:8px;box-shadow:0 0 0 3px rgba(var(--accent-rgb),.14)}.dashboard-friends .member-indicator.inactive{background:var(--text-muted);box-shadow:0 0 0 2px #ffffff0f}.dashboard-friends .friend-select-name{letter-spacing:-.02px;color:#e7edf7;flex:1;min-width:0;font-size:13.5px;font-weight:550}.dashboard-friends .friend-select-label.is-selected .friend-select-name{color:var(--accent-text-dim)}.dashboard-friends .friend-noauth{color:#a8b4c5;font-size:10px}.dashboard-shortcuts{gap:12px}.scanner-section{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:20px 0 10px;animation:.35s cubic-bezier(.16,1,.3,1) forwards tabFadeIn;display:flex}.scanner-section.is-dashboard{justify-content:flex-start;align-items:stretch;gap:14px;padding-top:0;padding-bottom:10px}.scanner-section:not(.is-dashboard) .btn,.scanner-section:not(.is-dashboard) .status-message,.scanner-section:not(.is-dashboard) .results-list{max-width:340px}.scanner-section .btn-primary{background:linear-gradient(180deg,rgba(var(--accent-rgb),.96),rgba(var(--accent-hover-rgb),.96));color:var(--accent-text-on);border:1px solid rgba(var(--accent-rgb),.44);box-shadow:0 8px 18px rgba(var(--accent-hover-rgb),.24)}.scanner-section .btn-primary:hover{background:linear-gradient(180deg,rgba(var(--accent-rgb),1),rgba(var(--accent-hover-rgb),1))}.scanner-section .btn-secondary{background:#ffffff08;border-color:#ffffff24}.scanner-section .btn-secondary:hover{background:rgba(var(--accent-rgb),.1);border-color:rgba(var(--accent-rgb),.3);color:var(--accent-text-soft)}.scanner-section .status-message{max-width:340px;margin:8px 0 2px;padding:14px 16px;box-shadow:inset 0 1px #ffffff05}.scanner-section .status-message.scanning{color:#b6c0ce;background:#ffffff05;border-color:#ffffff1f}.scanner-section .status-message.processing{background:rgba(var(--accent-rgb),.12);color:var(--accent-text);border-color:rgba(var(--accent-rgb),.36)}.scanner-section .status-message.success{background:rgba(var(--accent-rgb),.14);color:var(--accent-text);border-color:rgba(var(--accent-rgb),.38)}.scanner-section .status-message.error{color:#ff9e9e;background:#ef444424;border-color:#ef444466}@media (max-width:420px){.dashboard-hero-top{flex-direction:column;align-items:flex-start}.dashboard-profile-btn{width:100%}.dashboard-actions{grid-template-columns:1fr 1fr}.quick-action{min-height:50px;padding:9px 11px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes tabFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.scanner-icon{opacity:.5;width:100px;height:100px;transition:opacity var(--transition-normal);margin-bottom:24px}.scanner-section:hover .scanner-icon{opacity:.7}.scanner-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:2px;margin-bottom:20px;font-size:13px}#qr-reader{border-radius:var(--radius-lg);background:#ffffff04;border:1px solid #ffffff1f;width:100%;max-width:340px;overflow:hidden;box-shadow:inset 0 1px #ffffff08,0 10px 24px #0003}#qr-reader video{border-radius:calc(var(--radius-lg) - 2px)}#qr-reader__scan_region{background:0 0!important}#qr-reader__dashboard{display:none!important}.btn{border-radius:var(--radius-md);cursor:pointer;width:100%;transition:all var(--transition-fast);text-transform:none;letter-spacing:0;-webkit-tap-highlight-color:transparent;border:none;padding:16px 24px;font-family:Geist,system-ui,-apple-system,sans-serif;font-size:14px;font-weight:600}.btn:active{transform:scale(var(--scale-press))}.btn-primary{background:var(--accent);-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--accent-text-on);box-shadow:none;border:none}.btn-primary:hover{opacity:.88}.btn-secondary{-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--text-primary);border:1px solid var(--border);box-shadow:none;background:0 0}.btn-secondary:hover{background:#ffffff0a;border-color:#ffffff1f}.btn-danger{-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--error);box-shadow:none;background:0 0;border:1px solid #f8717140}.btn-danger:hover{background:#f8717114;border-color:#f8717166}.btn-large{padding:18px 24px;font-size:15px}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.status-message{border-radius:var(--radius-md);width:100%;max-width:300px;animation:fadeIn var(--transition-fast);justify-content:center;align-items:center;gap:12px;margin:16px 0;padding:14px 20px;font-size:14px;display:flex}.status-message.scanning{background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border)}.status-message.processing{background:rgba(var(--accent-rgb),.1);color:var(--accent);border:1px solid rgba(var(--accent-rgb),.3)}.status-message.notice{background:var(--bg-card);color:var(--text-secondary);border:1px dashed rgba(var(--accent-rgb),.45)}.status-message.success{background:rgba(var(--accent-rgb),.12);color:var(--accent);border:1px solid rgba(var(--accent-rgb),.35)}.status-message.error{color:var(--error);background:#ef44441f;border:1px solid #ef444459}.status-icon{font-size:18px}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;margin-top:16px;padding:16px}.card-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px;font-family:Geist Mono,monospace;font-size:11px;font-weight:500}.results-list{width:100%;max-width:340px}.result-item{border-radius:var(--radius-md);animation:fadeIn var(--transition-fast);transition:border-color var(--transition-fast),background var(--transition-fast),transform var(--transition-fast);background:#ffffff04;border:1px solid #ffffff1a;justify-content:space-between;align-items:center;margin-bottom:8px;padding:12px 13px;display:flex}.result-item:hover{border-color:rgba(var(--accent-rgb),.28);background:rgba(var(--accent-rgb),.08);transform:translateY(-1px)}.result-item .name{font-size:13px;font-weight:500}.result-item .status-badge{border-radius:var(--radius-xs);text-transform:uppercase;letter-spacing:.5px;padding:4px 10px;font-size:11px;font-weight:600}.result-item .status-badge.success{background:rgba(var(--accent-rgb),.2);color:var(--accent)}.result-item .status-badge.error{color:var(--error);background:#ef444433}.result-item .status-badge.pending{color:#ca8a04;background:#eab30833}.results-friend-note{color:var(--text-secondary);text-align:center;margin:6px 0 0;font-size:11px}.group-card{background:var(--bg-card);-webkit-backdrop-filter:none;backdrop-filter:none;border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:300px;box-shadow:none;margin-top:24px;padding:16px}.group-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.group-title{color:var(--text-secondary);font-size:13px;font-weight:500}.group-count{color:var(--accent);background:rgba(var(--accent-rgb),.15);border-radius:var(--radius-pill);padding:4px 10px;font-size:12px}.group-members{list-style:none}.group-members li{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:10px 0;font-size:13px;display:flex}.group-members li:last-child{border-bottom:none}.member-indicator{background:var(--accent);border-radius:50%;flex-shrink:0;width:6px;height:6px}.group-hint{color:var(--text-muted);margin-top:12px;font-size:11px}.bottom-spacer{height:20px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.scanning-indicator{animation:1.5s ease-in-out infinite pulse}.auth-warning{border-radius:var(--radius-md);text-align:center;background:#ef44441a;border:1px solid #ef44444d;flex-direction:column;align-items:center;gap:8px;width:100%;max-width:300px;margin-bottom:20px;padding:16px 20px;display:flex}.auth-warning .warning-icon{width:32px;height:32px;color:var(--error);background:#ef444433;border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:flex}.auth-warning span{color:var(--text-secondary);font-size:13px}.auth-link{border:1px solid var(--border);color:var(--accent);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;margin-top:4px;padding:8px 16px;font-family:Geist,system-ui,-apple-system,sans-serif;font-size:12px}.auth-link:hover{background:rgba(var(--accent-rgb),.1)}.login-form{width:100%;max-width:300px;animation:fadeIn var(--transition-normal)}.login-header{text-align:center;margin-bottom:28px}.login-icon{opacity:.5;width:56px;height:56px;margin-bottom:16px}.login-header h2{margin-bottom:6px;font-size:18px;font-weight:600}.login-header p{color:var(--text-secondary);font-size:13px}.login-2fa-meta{color:var(--text-muted);margin-top:10px;font-size:12px}.input-group{margin-bottom:12px}.input-group input{width:100%;padding:var(--padding-input-y) var(--padding-input-x);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);-webkit-appearance:none;-moz-appearance:none;appearance:none;touch-action:manipulation;-webkit-user-select:text;user-select:text;background:0 0;outline:none;font-family:Geist,system-ui,-apple-system,sans-serif;font-size:16px;transform:translateZ(0)}.input-group input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.1)}.input-group input::placeholder{color:var(--text-muted)}.input-group input:disabled{opacity:.6}.login-error{border-radius:var(--radius-sm);color:var(--error);text-align:center;animation:fadeIn var(--transition-fast);background:#ef44441a;border:1px solid #ef44444d;margin-bottom:16px;padding:12px;font-size:13px}.login-form .btn{margin-top:8px}.auth-required{text-align:center;flex-direction:column;align-items:center;width:100%;max-width:300px;display:flex}.auth-icon{opacity:.5;width:72px;height:72px;margin-bottom:20px}.auth-required h2{margin-bottom:8px;font-size:18px;font-weight:600}.auth-required p{color:var(--text-secondary);margin-bottom:20px;font-size:14px}.auth-required .btn{width:100%}.tabs{--tabs-pad:0px;--tabs-gap:0px;--tab-count:4;--active-index:0;padding:8px 12px;padding-bottom:calc(8px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(20px)saturate(1.8);backdrop-filter:blur(20px)saturate(1.8);gap:var(--tabs-gap);box-shadow:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:none;background:#000000a6;border:none;border-top:.5px solid #ffffff14;border-radius:0;margin-bottom:16px;display:flex;position:relative;overflow:hidden}.tab-indicator{height:2px;width:calc(100% / var(--tab-count));background:var(--accent);-webkit-backdrop-filter:none;backdrop-filter:none;transform:translate(calc(var(--active-index) * 100%));will-change:transform;z-index:0;box-shadow:0 0 8px rgba(var(--accent-rgb),.3);border:none;border-radius:1px;transition:transform .25s cubic-bezier(.22,.61,.36,1);position:absolute;top:0;left:0}.tabs.is-dragging .tab-indicator{transition:none}.tabs.is-dragging .tab{pointer-events:none}.tabs.is-dragging .tab.active{color:var(--text-muted);font-weight:500}.tabs.is-dragging .tab.active svg{opacity:.5}.tabs.is-dragging .tab.drag-target{color:var(--accent);font-weight:500}.tabs.is-dragging .tab.drag-target svg{opacity:1}.tab{color:var(--text-muted);letter-spacing:.01em;cursor:pointer;transition:color .2s var(--ease-out),transform .15s var(--ease-out);white-space:nowrap;text-overflow:ellipsis;z-index:1;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;min-width:0;padding:6px 4px 4px;font-family:Geist,system-ui,-apple-system,sans-serif;font-size:10px;font-weight:500;display:flex;position:relative;overflow:hidden}.tab.active{color:var(--accent);font-weight:500}.tab:not(.active):hover{color:var(--text-secondary);background:0 0}.tab:active{transform:scale(.96)}.tab svg{opacity:.5;width:20px;height:20px;transition:opacity .2s var(--ease-out);flex-shrink:0}.tab.active svg{opacity:1}@media (max-width:340px){.tab{gap:0;padding:10px 4px}.tab span{display:none}.tab svg{width:19px;height:19px}}@media (min-width:341px) and (max-width:400px){.tab{gap:4px;padding:10px 5px;font-size:10px}.tab svg{width:20px;height:20px}}@media (min-width:401px){.tab{flex-direction:row;gap:7px;padding:11px 8px;font-size:12px}.tab svg{width:20px;height:20px}}.grades-section{flex-direction:column;flex:1;width:100%;animation:.35s cubic-bezier(.16,1,.3,1) forwards tabFadeIn;display:flex}.grades-list{flex-direction:column;gap:10px;width:100%;display:flex}.grade-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:14px 16px}.subject-name{color:var(--text-primary);margin-bottom:10px;font-size:13px;line-height:1.4;display:block}.score-container{align-items:center;gap:12px;display:flex}.score-bar{background:var(--bg-secondary);border-radius:3px;flex:1;height:6px;overflow:hidden}.score-fill{background:var(--accent);height:100%;transition:width var(--transition-slow);border-radius:3px}.score-value{color:var(--accent);text-align:right;min-width:40px;font-size:14px;font-weight:600}.empty-state{text-align:center;animation:fadeIn var(--transition-normal);flex-direction:column;justify-content:center;align-items:center;padding:40px 20px;display:flex}.empty-state p{color:var(--text-secondary);margin-bottom:16px;font-size:13px}.pulse-redirect{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:40px 20px;display:flex}.pulse-text{color:var(--text-secondary);margin-bottom:20px;font-size:14px;line-height:1.5}.pulse-btn{min-width:160px;text-decoration:none}.schedule-section{flex-direction:column;flex:1;width:100%;animation:.35s cubic-bezier(.16,1,.3,1) forwards tabFadeIn;display:flex}.schedule-panel{background:var(--bg-card);-webkit-backdrop-filter:none;backdrop-filter:none;border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--card-padding);box-shadow:none;margin-bottom:16px}.schedule-panel-title{color:var(--text-primary);margin-bottom:12px;font-size:13px;font-weight:600}.schedule-panel-head{flex-flow:column wrap;justify-content:flex-start;align-items:stretch;gap:12px;margin-bottom:12px;display:flex}.schedule-panel-head .schedule-panel-title{margin-bottom:0}.schedule-modes{border-radius:var(--radius-pill);border:1px solid var(--border);background:#ffffff05;flex-shrink:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%;padding:4px;display:grid}.schedule-mode{color:var(--text-secondary);letter-spacing:.4px;text-transform:uppercase;border-radius:var(--radius-pill);cursor:pointer;text-align:center;white-space:nowrap;min-height:36px;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0 12px;font-family:inherit;font-size:12px;font-weight:700;line-height:1;display:flex}.schedule-mode.active{background:var(--accent);color:#000;font-weight:700}.schedule-mode:active{transform:scale(.98)}.schedule-controls{grid-template-columns:1fr auto;align-items:center;gap:10px;margin-bottom:8px;display:grid}.schedule-input-wrap{width:100%;position:relative}.schedule-input{width:100%;padding:var(--padding-input-y) 44px var(--padding-input-y) var(--padding-input-x);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);letter-spacing:.1px;transition:border-color var(--transition-fast);outline:none;font-family:Geist,system-ui,-apple-system,sans-serif;font-size:14px}.schedule-input-clear{border-radius:var(--radius-pill);border:1px solid var(--border);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast);background:#ffffff0f;justify-content:center;align-items:center;font-family:inherit;font-size:18px;line-height:1;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.schedule-input-clear:hover{color:var(--text-primary);background:#ffffff1a}.schedule-input-clear:active{transform:translateY(-50%)scale(.96)}.schedule-input.upper{letter-spacing:.3px;text-transform:uppercase}.schedule-input:focus{border-color:var(--accent)}.schedule-input::placeholder{text-transform:none;color:var(--text-muted)}.schedule-controls .btn{border-radius:var(--radius-md);width:auto;margin-top:0;padding:12px 18px;font-size:13px;font-weight:600}.schedule-hint{color:var(--text-muted);margin:0;font-size:11px}.schedule-advanced{border-top:1px dashed #ffffff14;flex-direction:column;gap:8px;margin-top:10px;padding-top:10px;display:flex}.schedule-advanced-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.schedule-advanced-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.9px;font-size:11px}.schedule-select{border:1px solid var(--border);color:var(--text-primary);border-radius:var(--radius-pill);background:#ffffff0a;outline:none;padding:8px 10px;font-family:inherit;font-size:12px}.schedule-advanced-hint{color:var(--text-secondary);font-size:11px}.schedule-suggestions{border:1px solid var(--border);border-radius:var(--radius-md);background:#ffffff05;margin-top:10px;overflow:hidden}.schedule-suggestion{width:100%;color:var(--text-primary);cursor:pointer;text-align:left;transition:background var(--transition-fast);background:0 0;border:none;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.schedule-suggestion+.schedule-suggestion{border-top:1px solid #ffffff0f}.schedule-suggestion-meta{color:var(--text-secondary);border-radius:var(--radius-pill);background:#ffffff0a;border:1px solid #ffffff14;padding:4px 8px;font-size:11px}.schedule-list{flex-direction:column;gap:16px;display:flex}.schedule-resolved{color:var(--text-secondary);margin-bottom:4px;padding-left:2px;font-size:12px}.schedule-day{animation:fadeIn var(--transition-fast);flex-direction:column;gap:10px;display:flex}.schedule-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.schedule-toolbar-left{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.schedule-toolbar-right{align-items:center;gap:10px;display:flex}.schedule-view{gap:6px;display:flex}.schedule-pill{border:1px solid var(--border);color:var(--text-secondary);letter-spacing:.4px;text-transform:uppercase;border-radius:var(--radius-pill);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast);background:#ffffff05;padding:8px 10px;font-family:inherit;font-size:11px;font-weight:700}.schedule-pill.active{background:var(--accent);color:#000;font-weight:600}.schedule-pill:active{transform:scale(var(--scale-press))}.schedule-nav{align-items:center;gap:8px;display:flex}.schedule-icon-btn{width:var(--icon-btn-size);height:var(--icon-btn-size);border-radius:var(--radius-pill);border:1px solid var(--border);color:var(--text-primary);cursor:pointer;transition:transform var(--transition-fast),background var(--transition-fast);background:#ffffff05;justify-content:center;align-items:center;display:inline-flex}.schedule-icon-btn:active{transform:scale(var(--scale-press))}.schedule-range{color:var(--text-secondary);letter-spacing:.2px;font-size:12px;font-weight:600}.schedule-date{color:var(--text-secondary);text-transform:capitalize;padding-left:2px;font-size:12px;font-weight:500}.schedule-cards{flex-direction:column;gap:8px;display:flex}.schedule-card{background:var(--glass-bg);border:.5px solid var(--glass-border);border-left:3px solid var(--accent);border-radius:var(--radius-md);transition:transform var(--transition-fast),border-color var(--transition-fast);flex-direction:column;gap:4px;padding:12px 14px;display:flex}.schedule-card:hover{border-left-color:var(--accent-hover)}.schedule-time{color:var(--accent);letter-spacing:.05em;font-family:Geist Mono,monospace;font-size:11px;font-weight:500}.schedule-title{color:var(--text-primary);font-size:13px;line-height:1.4}.schedule-description{color:var(--text-muted);white-space:pre-line;margin-top:2px;font-size:11px}.schedule-empty-day{border-radius:var(--radius-md);color:var(--text-muted);background:#ffffff05;border:1px dashed #ffffff1f;padding:10px 12px;font-size:12px}.schedule-raw{border:1px dashed var(--border);border-radius:var(--radius-md);color:var(--text-secondary);background:#ffffff05;margin-top:12px;padding:12px;font-size:11px}.schedule-raw-title{margin-bottom:8px;font-size:12px;font-weight:600}.schedule-raw pre{white-space:pre-wrap;word-break:break-word;color:var(--text-muted);margin:0}.schedule-section{gap:12px}.schedule-panel{background:linear-gradient(#ffffff05,#ffffff03);border-color:#ffffff1a;flex-direction:column;gap:14px;margin-bottom:0;display:flex;box-shadow:inset 0 1px #ffffff08,0 10px 26px #0003}.schedule-panel-secondary{gap:12px;padding:14px}.schedule-panel-secondary .schedule-panel-subtitle,.schedule-panel-secondary .schedule-hint{display:none}.schedule-panel-head{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:0}.schedule-panel-title{letter-spacing:-.15px;margin-bottom:0;font-size:16px;font-weight:600}.schedule-panel-subtitle{color:#98a3b3;margin-top:4px;font-size:12px;line-height:1.45}.schedule-mode-badge{border:1px solid rgba(var(--accent-rgb),.3);background:linear-gradient(180deg,rgba(var(--accent-rgb),.2),rgba(var(--accent-rgb),.1));color:var(--accent-text);border-radius:var(--radius-pill);letter-spacing:.45px;text-transform:uppercase;flex:none;padding:5px 10px;font-size:10px;font-weight:700}.schedule-modes-wrap{border-radius:var(--radius-md);background:#03080b66;border:1px solid #ffffff17;padding:7px;box-shadow:inset 0 1px #ffffff08}.schedule-modes{gap:7px;margin:0}.schedule-mode{letter-spacing:.15px;text-transform:none;border:1px solid #0000;min-height:38px;font-size:12px;font-weight:630}.schedule-mode:hover{color:#d4deea;background:#ffffff08}.schedule-mode.active{background:linear-gradient(180deg,rgba(var(--accent-rgb),.95),rgba(var(--accent-hover-rgb),.95));border-color:rgba(var(--accent-rgb),.45);color:var(--accent-text-on);box-shadow:0 6px 16px rgba(var(--accent-hover-rgb),.25)}.schedule-controls{align-items:stretch;gap:10px;margin-bottom:0}.schedule-controls .btn{border-radius:var(--radius-pill);border:1px solid rgba(var(--accent-rgb),.36);background:linear-gradient(180deg,rgba(var(--accent-rgb),.2),rgba(var(--accent-rgb),.12));min-height:46px;color:var(--accent-text-soft);padding:12px 18px;box-shadow:inset 0 1px #ffffff0f}.schedule-controls .btn:hover:not(:disabled){background:linear-gradient(180deg,rgba(var(--accent-rgb),.28),rgba(var(--accent-rgb),.18))}.schedule-controls .btn:disabled{opacity:.6}.schedule-panel .schedule-input{min-height:46px;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast);background:#070a0ea8;border-color:#ffffff1a;border-radius:13px}.schedule-panel .schedule-input:focus{border-color:rgba(var(--accent-rgb),.5);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.14);background:#080c10e6}.schedule-panel .schedule-input::placeholder{color:#8190a3}.schedule-panel .schedule-input-clear{color:#9aa8ba;background:#ffffff0a;border-color:#ffffff1f}.schedule-panel .schedule-input-clear:hover{background:rgba(var(--accent-rgb),.15);color:var(--accent-text-soft);border-color:rgba(var(--accent-rgb),.32)}.schedule-hint{color:#8190a3;margin-top:0;padding-left:2px;line-height:1.45}.schedule-suggestions{border-radius:var(--radius-md);background:#05090d80;border:1px solid #ffffff17;margin-top:0;box-shadow:inset 0 1px #ffffff08}.schedule-suggestion{min-height:46px;transition:background var(--transition-fast),border-color var(--transition-fast);padding:11px 13px}.schedule-suggestion:hover{background:rgba(var(--accent-rgb),.12)}.schedule-suggestion+.schedule-suggestion{border-top-color:#ffffff14}.schedule-suggestion-name{font-size:13px;font-weight:600}.schedule-suggestion-meta{background:rgba(var(--accent-rgb),.16);border-color:rgba(var(--accent-rgb),.28);color:var(--accent-text-soft)}.schedule-hero{border:1px solid var(--border);background:var(--bg-card);border-radius:var(--radius-md);padding:12px}.schedule-hero-label{letter-spacing:.05em;text-transform:uppercase;color:var(--hero-label-color);font-family:Geist Mono,monospace;font-size:11px;font-weight:500}.schedule-hero-main{justify-content:space-between;align-items:center;gap:12px;margin-top:10px;display:flex}.schedule-hero-left{min-width:0}.schedule-hero-name{color:var(--text-primary);letter-spacing:-.2px;white-space:nowrap;text-overflow:ellipsis;font-size:17px;font-weight:600;overflow:hidden}.schedule-hero-sub{color:var(--text-secondary);margin-top:4px;font-size:12px}.schedule-hero-count{color:var(--accent-text);letter-spacing:-.75px;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;flex:none;font-size:31px;font-weight:700;line-height:1}.schedule-results-card{background:var(--bg-card);-webkit-backdrop-filter:none;backdrop-filter:none;border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--card-padding);box-shadow:none;flex-direction:column;gap:12px;display:flex}.schedule-toolbar{border-bottom:1px solid #ffffff14;margin-bottom:0;padding-bottom:12px}.schedule-list{gap:10px}.schedule-day{border-radius:var(--radius-md);background:#ffffff03;border:1px solid #ffffff14;gap:9px;padding:11px}.schedule-day-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.schedule-date{color:#d7dee9;text-transform:capitalize;font-size:13px;font-weight:600}.schedule-day-count{letter-spacing:.35px;text-transform:uppercase;color:#9aa8ba;border-radius:var(--radius-pill);background:#ffffff0b;border:1px solid #ffffff26;flex:none;padding:4px 9px;font-size:10px;font-weight:600}.schedule-cards{gap:9px}.schedule-card{border:1px solid #ffffff17;border-left:3px solid var(--accent);transition:opacity var(--transition-fast),transform var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast);background:#ffffff04;border-radius:12px;gap:5px;padding:12px 13px}.schedule-card:hover{border-left-color:var(--accent);border-color:rgba(var(--accent-rgb),.32);background:rgba(var(--accent-rgb),.08);transform:translateY(-1px)}.schedule-time{color:var(--accent-text);border:1px solid rgba(var(--accent-rgb),.3);background:rgba(var(--accent-rgb),.14);border-radius:var(--radius-pill);letter-spacing:.2px;align-self:flex-start;align-items:center;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.schedule-title{color:var(--text-primary);letter-spacing:-.1px;font-size:15px;font-weight:600;line-height:1.35}.schedule-location{color:#a9b4c2;font-size:12px}.schedule-description{color:#7f8b9c;font-size:11px;line-height:1.42}.schedule-view{border-radius:var(--radius-pill);background:#ffffff05;border:1px solid #ffffff1a;gap:4px;padding:3px}.schedule-pill{letter-spacing:.25px;text-transform:none;border-color:#0000;min-height:34px;padding:7px 11px;font-size:11px;font-weight:600}.schedule-pill:not(.active):hover{color:#d4deea;background:#ffffff0f}.schedule-pill.active{background:rgba(var(--accent-rgb),.2);border-color:rgba(var(--accent-rgb),.42);color:var(--accent-text);box-shadow:inset 0 1px #ffffff17}.schedule-nav{border-radius:var(--radius-pill);background:#ffffff04;border:1px solid #ffffff14;gap:6px;padding:3px}.schedule-icon-btn{color:#d0d9e4;background:#ffffff08;border-color:#0000;width:34px;height:34px}.schedule-icon-btn:hover{color:#fff;background:#ffffff17}.schedule-range{color:#b5c0cf;padding:0 6px;font-size:12px}.schedule-empty-day{color:#8d9aad;background:#ffffff05;border:1px dashed #ffffff24;border-radius:11px;padding:10px 12px;font-size:12px}@media (max-width:420px){.schedule-panel-head{flex-direction:column;align-items:flex-start}.schedule-controls{grid-template-columns:1fr}.schedule-controls .btn{width:100%}.schedule-toolbar{gap:10px}.schedule-toolbar-left,.schedule-nav{justify-content:space-between;width:100%}.schedule-range{text-align:center;flex:auto}.schedule-hero-main{flex-direction:row;justify-content:space-between;align-items:center;gap:10px}.schedule-hero-left{flex:auto;min-width:0}}.maps-section{flex-direction:column;flex:1;gap:14px;width:100%;animation:.35s cubic-bezier(.16,1,.3,1) forwards tabFadeIn;display:flex}.maps-shell{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:.5px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--card-padding);box-shadow:var(--glass-shadow);flex-direction:column;gap:10px;display:flex}.maps-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.maps-title{color:var(--text-primary);letter-spacing:-.15px;font-size:16px;font-weight:600}.maps-subtitle{color:#9aa6b6;margin-top:5px;font-size:12px;line-height:1.45}.maps-hero{border:1px solid var(--border);background:var(--bg-card);border-radius:var(--radius-md);padding:13px}.maps-hero-label{letter-spacing:.05em;text-transform:uppercase;color:var(--hero-label-color);font-family:Geist Mono,monospace;font-size:11px;font-weight:500}.maps-hero-main{justify-content:space-between;align-items:center;gap:12px;margin-top:11px;display:flex}.maps-hero-left{min-width:0}.maps-hero-name{color:var(--text-primary);letter-spacing:-.25px;font-size:18px;font-weight:600;line-height:1.2}.maps-hero-sub{color:#9ba8ba;margin-top:5px;font-size:12px;line-height:1.45}.maps-hero-right{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.maps-meta-chip{border:1px solid rgba(var(--accent-rgb),.36);background:rgba(var(--accent-rgb),.16);color:var(--accent-text);border-radius:var(--radius-pill);letter-spacing:.45px;text-transform:uppercase;white-space:nowrap;padding:5px 9px;font-size:10px;font-weight:600}.maps-controls{border-radius:var(--radius-md);background:#ffffff05;border:1px solid #ffffff1a;overflow:hidden;box-shadow:inset 0 1px #ffffff05}.maps-control-row{align-items:flex-start;gap:11px;padding:10px 11px;display:flex}.maps-control-row+.maps-control-row{border-top:1px solid #ffffff14}.maps-control-label{letter-spacing:.85px;text-transform:uppercase;color:#9eacbe;flex:0 0 54px;margin-top:2px;font-size:10px;font-weight:600}.maps-control-chips{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.maps-chip{color:#b9c5d4;letter-spacing:.25px;border-radius:var(--radius-pill);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast),border-color var(--transition-fast);background:#ffffff0a;border:1px solid #ffffff24;padding:7px 11px;font-family:inherit;font-size:11px;font-weight:700}.maps-floor-chip{text-transform:uppercase;font-size:10px}.maps-chip:hover{border-color:rgba(var(--accent-rgb),.3);background:rgba(var(--accent-rgb),.11);color:var(--accent-text-dim)}.maps-chip.active{background:rgba(var(--accent-rgb),.2);color:var(--accent-text);border-color:rgba(var(--accent-rgb),.42);box-shadow:inset 0 1px #ffffff14}.maps-chip:active{transform:scale(var(--scale-press))}.maps-control-row-toolbar{justify-content:space-between;align-items:center}.maps-toolbar-inline{align-items:center;gap:6px;display:inline-flex}.maps-zoom-btn,.maps-reset-btn{color:#d3dcea;border-radius:var(--radius-pill);cursor:pointer;transition:transform var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast);background:#ffffff0a;border:1px solid #ffffff24;font-family:inherit}.maps-zoom-btn{width:35px;height:35px;font-size:20px;line-height:1}.maps-reset-btn{height:35px;padding:0 13px;font-size:12px;font-weight:600}.maps-zoom-btn:hover,.maps-reset-btn:hover{border-color:rgba(var(--accent-rgb),.32);background:rgba(var(--accent-rgb),.12);color:var(--accent-text-dim)}.maps-zoom-btn:disabled,.maps-reset-btn:disabled{opacity:.5;cursor:not-allowed}.maps-zoom-btn:active,.maps-reset-btn:active{transform:scale(var(--scale-press))}.maps-viewer{border-radius:var(--radius-md);touch-action:none;cursor:grab;background:linear-gradient(#ffffff06,#ffffff03);border:1px solid #ffffff1a;justify-content:center;align-items:center;min-height:56vh;max-height:72vh;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff05}.maps-viewer.is-dragging{cursor:grabbing}.maps-placeholder{color:#a4afbe;text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:20px;font-size:13px;display:flex;position:absolute;top:0;right:0;bottom:0;left:0}.maps-placeholder-error{color:#ff9a9a;gap:12px}.maps-retry-btn{color:#ffd5d5;border-radius:var(--radius-pill);cursor:pointer;transition:transform var(--transition-fast),background var(--transition-fast);background:#ef44442e;border:1px solid #ef444466;padding:8px 12px;font-family:inherit;font-size:12px;font-weight:700}.maps-retry-btn:active{transform:scale(var(--scale-press))}.maps-stage{transform-origin:0 0;will-change:transform;position:absolute;top:0;left:0}.maps-image{background:#fff;width:auto;max-width:none;height:auto;max-height:none;display:block}.maps-image.is-hidden,.maps-stage.is-hidden{display:none}.maps-gesture-hint{color:#95a3b6;text-align:center;margin-top:3px;font-size:11px;line-height:1.4}.maps-search{position:relative}.maps-search-field{background:#ffffff0f;border:1px solid #ffffff1a;border-radius:12px;align-items:center;gap:8px;height:42px;padding:0 12px;display:flex}.maps-search-icon{color:#95a3b6;flex-shrink:0}.maps-search-input{color:inherit;background:0 0;border:none;outline:none;flex:1;padding:0;font-family:inherit;font-size:14px}.maps-search-input::placeholder{color:#95a3b6}.maps-search-clear{color:#95a3b6;cursor:pointer;background:0 0;border:none;flex-shrink:0;align-items:center;padding:4px;display:flex}.maps-search-results{background:var(--card-bg,#1a2233);z-index:20;border:1px solid #ffffff1a;border-radius:12px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden;box-shadow:0 8px 24px #0000004d}.maps-search-empty{color:#95a3b6;text-align:center;padding:12px 16px;font-size:13px}.maps-search-result{width:100%;color:inherit;cursor:pointer;text-align:left;background:0 0;border:none;border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding:10px 16px;font-family:inherit;font-size:14px;display:flex}.maps-search-result:last-child{border-bottom:none}.maps-search-result:active{background:#ffffff0f}.maps-search-result-name{font-weight:500}.maps-search-result-meta{color:#95a3b6;flex-shrink:0;margin-left:8px;font-size:12px}.maps-search-found{color:var(--accent-text,#5ba4f5);text-align:center;margin-top:6px;font-size:13px}.maps-room-highlight{pointer-events:none;background:#5ba4f559;border:3px solid #5ba4f5;border-radius:50%;width:24px;height:24px;margin-top:-12px;margin-left:-12px;animation:1.5s ease-in-out infinite room-pulse;position:absolute}@keyframes room-pulse{0%,to{transform:scale(1);box-shadow:0 0 #5ba4f566}50%{transform:scale(1.3);box-shadow:0 0 0 8px #5ba4f500}}@media (max-width:420px){.maps-shell{gap:10px}.maps-hero-main{flex-direction:column;align-items:flex-start}.maps-hero-right{justify-content:flex-start;width:100%}.maps-control-row{flex-direction:column;gap:7px}.maps-control-label{flex:initial;margin-top:0}.maps-control-row-toolbar{flex-direction:row;align-items:center}.maps-toolbar-inline{width:auto}.maps-viewer{min-height:50vh;max-height:66vh}}.passes-section{flex-direction:column;flex:1;gap:14px;width:100%;animation:.35s cubic-bezier(.16,1,.3,1) forwards tabFadeIn;display:flex}.passes-card{background:var(--bg-card);-webkit-backdrop-filter:none;backdrop-filter:none;border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--card-padding);box-shadow:var(--glass-shadow);flex-direction:column;gap:16px;display:flex}.passes-header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.passes-title{color:var(--text-primary);letter-spacing:-.02em;font-size:16px;font-weight:600}.passes-subtitle{color:#9aa6b6;margin-top:5px;font-size:12px;line-height:1.45}.passes-header .btn-compact{border-radius:var(--radius-pill);color:#d6dfea;background:#ffffff08;border:1px solid #ffffff24;min-height:42px;padding:11px 16px}.passes-header .btn-compact:hover:not(:disabled){border-color:rgba(var(--accent-rgb),.3);background:rgba(var(--accent-rgb),.1);color:var(--accent-text-soft)}.passes-wrap{flex-direction:column;gap:13px;display:flex}.passes-hero{border:1px solid var(--border);background:var(--bg-card);border-radius:var(--radius-md);padding:13px}.passes-hero-label{letter-spacing:.05em;text-transform:uppercase;color:var(--hero-label-color);font-family:Geist Mono,monospace;font-size:11px;font-weight:500}.passes-hero-main{justify-content:space-between;align-items:center;gap:13px;margin-top:11px;display:flex}.passes-hero-left{min-width:0}.passes-hero-count{color:var(--text-primary);letter-spacing:-.25px;font-size:18px;font-weight:600;line-height:1.2}.passes-hero-sub{color:#9ba8ba;margin-top:5px;font-size:12px;line-height:1.45}.passes-hero-time{letter-spacing:-.75px;color:var(--accent-text);font-variant-numeric:tabular-nums;flex:none;font-size:31px;font-weight:700;line-height:1}.passes-list{flex-direction:column;gap:9px;display:flex}.passes-item{border-radius:var(--radius-sm);transition:opacity var(--transition-fast),transform var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast);background:#ffffff04;border:1px solid #ffffff1a;padding:13px}.passes-item:hover{border-color:rgba(var(--accent-rgb),.3);background:rgba(var(--accent-rgb),.09);transform:translateY(-1px)}.passes-item-top{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.passes-time-wrap{align-items:center;gap:10px;display:flex}.passes-dot{border-radius:var(--radius-pill);background:var(--accent-text);width:8px;height:8px;box-shadow:0 0 0 4px rgba(var(--accent-rgb),.2);flex:none}.passes-time{color:var(--accent-text);letter-spacing:-.35px;font-variant-numeric:tabular-nums;font-size:20px;font-weight:700}.passes-duration-badge{letter-spacing:.4px;color:#a6b2c2;border-radius:var(--radius-pill);text-transform:uppercase;background:#ffffff0f;border:1px solid #ffffff1f;padding:4px 8px;font-size:10px;font-weight:600}.passes-route{align-items:center;gap:8px;min-width:0;display:flex}.passes-zone{color:#d8e0ea;white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.passes-arrow{color:#8f9db0;flex:none}@media (max-width:520px){.passes-header{flex-direction:column;align-items:stretch}.passes-header .btn-compact{width:100%}.passes-hero-main{flex-direction:column;align-items:flex-start;gap:9px}.passes-item-top{flex-wrap:wrap;margin-bottom:9px}.passes-duration-badge{margin-left:auto}}.azan-section{flex-direction:column;flex:1;gap:14px;width:100%;animation:.35s cubic-bezier(.16,1,.3,1) forwards tabFadeIn;display:flex}.azan-card{background:var(--bg-card);-webkit-backdrop-filter:none;backdrop-filter:none;border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--card-padding);box-shadow:none;flex-direction:column;gap:16px;display:flex}.azan-header{justify-content:flex-start;align-items:flex-start;gap:14px;display:flex}.azan-header-actions{justify-content:flex-end;align-items:center;display:flex}.azan-title{color:var(--text-primary);letter-spacing:-.15px;font-size:16px;font-weight:600}.azan-location{color:#a0adbe;margin-top:5px;font-size:12px;line-height:1.45}.azan-date{color:#95a3b6;text-transform:capitalize;margin-top:3px;font-size:12px}.azan-header .btn-compact,.azan-header-actions .btn-compact{border-radius:var(--radius-pill);color:#d6dfea;background:#ffffff08;border:1px solid #ffffff24;min-height:42px;padding:11px 16px}.azan-header .btn-compact:hover:not(:disabled),.azan-header-actions .btn-compact:hover:not(:disabled){border-color:rgba(var(--accent-rgb),.3);background:rgba(var(--accent-rgb),.1);color:var(--accent-text-soft)}.azan-times{flex-direction:column;gap:9px;display:flex}.azan-times-wrap{flex-direction:column;gap:13px;display:flex}.azan-hero{border:1px solid var(--border);background:var(--bg-card);border-radius:var(--radius-md);padding:13px}.azan-hero-label{letter-spacing:.05em;text-transform:uppercase;color:var(--hero-label-color);font-family:Geist Mono,monospace;font-size:11px;font-weight:500}.azan-hero-main{justify-content:space-between;align-items:center;gap:13px;margin-top:11px;display:flex}.azan-hero-left{min-width:0}.azan-hero-name{color:var(--text-primary);letter-spacing:-.25px;font-size:18px;font-weight:600;line-height:1.2}.azan-hero-sub{color:#9ba8ba;margin-top:5px;font-size:12px;line-height:1.45}.azan-hero-time{letter-spacing:-.75px;color:var(--accent-text);font-variant-numeric:tabular-nums;flex:none;font-size:31px;font-weight:700;line-height:1}.azan-row{border-radius:var(--radius-sm);transition:opacity var(--transition-fast),transform var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast);background:#ffffff04;border:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding:13px;display:flex}.azan-row:last-child{margin-bottom:0}.azan-row:first-child{margin-top:0}.azan-row.is-next{border-color:rgba(var(--accent-rgb),.4);background:rgba(var(--accent-rgb),.11);transform:translateY(-1px)}.azan-row.is-passed{opacity:.62}.azan-name{align-items:center;gap:10px;min-width:0;display:flex}.azan-dot{border-radius:var(--radius-pill);background:#8b99ab;flex:none;width:8px;height:8px}.azan-row.is-next .azan-dot{background:var(--accent);box-shadow:0 0 0 4px rgba(var(--accent-rgb),.18)}.azan-name-stack{align-items:baseline;gap:8px;min-width:0;display:flex}.azan-label{color:#dbe4ee;letter-spacing:-.05px;font-size:15px;font-weight:580}.azan-row.is-next .azan-label{font-weight:600}.azan-right{flex:none;align-items:center;gap:8px;display:flex}.azan-time{color:var(--accent-text);letter-spacing:-.4px;font-variant-numeric:tabular-nums;font-size:20px;font-weight:700}.azan-next-badge{letter-spacing:.4px;color:#a6b2c2;border-radius:var(--radius-pill);text-transform:uppercase;background:#ffffff0f;border:1px solid #ffffff1f;padding:4px 8px;font-size:10px;font-weight:600}.azan-next-badge.is-next{color:var(--accent-text);border-color:rgba(var(--accent-rgb),.4);background:rgba(var(--accent-rgb),.16)}@media (max-width:520px){.azan-header{flex-direction:column;align-items:stretch}.azan-header-actions .btn-compact{width:100%}.azan-hero-main{flex-direction:row;justify-content:space-between;align-items:center;gap:10px}.azan-hero-left{flex:auto;min-width:0}.azan-hero-time{white-space:nowrap;text-align:right;flex:none}.azan-right{gap:7px}.azan-time{font-size:18px}}.esports-section{flex-direction:column;flex:1;gap:14px;width:100%;animation:.35s cubic-bezier(.16,1,.3,1) forwards tabFadeIn;display:flex}.esports-shell{-webkit-backdrop-filter:blur(20px)saturate(180%);backdrop-filter:blur(20px)saturate(180%);padding:var(--card-padding);background:#ffffff0a;border:.5px solid #ffffff1f;border-radius:20px;flex-direction:column;gap:16px;display:flex;box-shadow:0 2px 12px #0000000f,inset 0 .5px #ffffff1a}.esports-header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.esports-title{color:var(--text-primary);letter-spacing:-.15px;font-size:16px;font-weight:600}.esports-subtitle{color:#9aa6b6;margin-top:5px;font-size:12px;line-height:1.45}.esports-login{flex-direction:column;align-items:center;gap:14px;padding:12px 0 4px;display:flex}.esports-login-icon{color:var(--text-secondary);opacity:.6}.esports-login-title{color:var(--text-primary);letter-spacing:-.2px;font-size:17px;font-weight:600}.esports-login-subtitle{color:var(--text-secondary);text-align:center;max-width:280px;font-size:13px;line-height:1.5}.esports-login-form{flex-direction:column;gap:10px;width:100%;margin-top:4px;display:flex}.esports-input{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:100%;color:var(--text-primary);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);box-sizing:border-box;background:#ffffff0d;border:.5px solid #ffffff24;border-radius:12px;outline:none;padding:13px 16px;font-size:15px;box-shadow:inset 0 .5px #ffffff0f}.esports-input:focus{border-color:rgba(var(--accent-rgb),.5);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.1),inset 0 .5px #ffffff0f}.esports-input::placeholder{color:var(--text-secondary);opacity:.6}:root[data-theme=light] .esports-input{background:#00000008;border-color:#788da84d}.esports-login-error{color:var(--error);text-align:center;font-size:12px}.esports-login-btn{margin-top:4px}.esports-flow{flex-direction:column;gap:16px;display:flex}.esports-field{flex-direction:column;gap:8px;display:flex}.esports-field-label{letter-spacing:1.05px;text-transform:uppercase;color:var(--text-secondary);font-size:11px;font-weight:600}.esports-row{gap:12px;display:flex}.esports-field-flex{flex:1;min-width:0}.esports-chips{flex-wrap:wrap;gap:7px;display:flex}.esports-chips-scroll{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.esports-chips-scroll::-webkit-scrollbar{display:none}.esports-chip{border-radius:var(--radius-pill);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:transform .3s cubic-bezier(.34,1.56,.64,1),background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast);background:#ffffff0d;border:.5px solid #ffffff24;flex:none;padding:8px 14px;font-size:13px;font-weight:500;box-shadow:inset 0 .5px #ffffff0f}.esports-chip:hover{background:#ffffff14;border-color:#ffffff38}.esports-chip:active{transform:scale(.95)}.esports-chip.active{border-color:rgba(var(--accent-rgb),.4);background:rgba(var(--accent-rgb),.12);color:var(--accent-text);box-shadow:0 1px 4px rgba(var(--accent-rgb),.08),inset 0 .5px rgba(var(--accent-rgb),.12);font-weight:600}:root[data-theme=light] .esports-chip{color:var(--text-secondary);background:#ffffff73;border-color:#ffffff80;box-shadow:0 1px 3px #0000000a,inset 0 .5px #ffffffb3}:root[data-theme=light] .esports-chip:hover{background:rgba(var(--accent-rgb),.08);border-color:rgba(var(--accent-rgb),.25)}:root[data-theme=light] .esports-chip.active{border-color:rgba(var(--accent-rgb),.4);background:rgba(var(--accent-rgb),.1);color:var(--accent-hover);box-shadow:0 1px 4px rgba(var(--accent-rgb),.08),inset 0 .5px #ffffff80}:root[data-theme=light] .esports-hero{background:#ffffff73;border-color:#ffffff80;box-shadow:0 2px 8px #0000000a,inset 0 .5px #fffc}:root[data-theme=light] .esports-hero-item{background:#fff6;border-color:#0000000f;box-shadow:inset 0 .5px #fff9}:root[data-theme=light] .esports-device-card,:root[data-theme=light] .esports-booking-card{background:#fff6;border-color:#ffffff80;box-shadow:0 1px 4px #0000000a,inset 0 .5px #ffffffb3}:root[data-theme=light] .esports-cancel-btn.esports-cancel-btn{background:#ffffff80;border-color:#00000014;box-shadow:0 1px 3px #0000000a,inset 0 .5px #fff9}:root[data-theme=light] .esports-cancel-btn.esports-cancel-btn:hover:not(:disabled){color:#dc2626;background:#dc26260f;border-color:#dc26264d}:root[data-theme=light] .esports-input{background:#ffffff80;border-color:#00000014;box-shadow:0 1px 3px #00000008,inset 0 .5px #fff9}:root[data-theme=light] .esports-input:focus{border-color:rgba(var(--accent-rgb),.45);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.08),inset 0 .5px #fff9}.esports-search-btn{margin-top:4px}.esports-actions{gap:9px;display:flex}.esports-action-btn{border-radius:var(--radius-pill);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#d6dfea;min-height:42px;transition:transform .3s cubic-bezier(.34,1.56,.64,1),background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);background:#ffffff0d;border:.5px solid #ffffff24;flex:1;padding:11px 16px;font-size:13px;font-weight:500;box-shadow:inset 0 .5px #ffffff14}.esports-action-btn:hover:not(:disabled){border-color:rgba(var(--accent-rgb),.3);background:rgba(var(--accent-rgb),.1);color:var(--accent-text-soft)}.esports-action-btn:active:not(:disabled){transform:scale(.97)}.esports-logout-btn{color:#f87171!important;border-color:#ef44444d!important}.esports-logout-btn:hover{color:#f87171!important;background:#ef444414!important;border-color:#ef444480!important}:root[data-theme=light] .esports-action-btn{color:#1f2d40;background:#0f172a08;border-color:#64748b47}:root[data-theme=light] .esports-action-btn:hover:not(:disabled){background:rgba(var(--accent-rgb),.12);border-color:rgba(var(--accent-rgb),.34);color:#171717}:root[data-theme=light] .esports-logout-btn{color:#dc2626!important;border-color:#dc26264d!important}:root[data-theme=light] .esports-logout-btn:hover{color:#dc2626!important;background:#dc26260f!important;border-color:#dc262680!important}.esports-subscreen{flex-direction:column;gap:14px;display:flex}.esports-subscreen-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.esports-subscreen-top .btn-compact{border-radius:var(--radius-pill);-webkit-backdrop-filter:blur(20px)saturate(180%);backdrop-filter:blur(20px)saturate(180%);color:#d6dfea;background:#ffffff0f;border:.5px solid #ffffff29;min-height:40px;padding:10px 18px;box-shadow:0 1px 3px #00000014,inset 0 .5px #ffffff1a}.esports-subscreen-top .btn-compact:hover:not(:disabled){border-color:rgba(var(--accent-rgb),.35);background:rgba(var(--accent-rgb),.12);color:var(--accent-text-soft)}.esports-back-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;align-self:flex-start;align-items:center;gap:6px;padding:6px 0;font-size:13px;font-weight:600;display:inline-flex}.esports-hero{border:1px solid var(--border);background:var(--bg-card);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:var(--radius-md);box-shadow:none;padding:14px}.esports-hero-label{letter-spacing:1.05px;text-transform:uppercase;color:var(--hero-label-color);font-size:11px;font-weight:600}.esports-hero-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}.esports-hero-item{background:#ffffff0a;border:.5px solid #ffffff1a;border-radius:12px;padding:12px;box-shadow:inset 0 .5px #ffffff0f}.esports-hero-value{letter-spacing:-.5px;color:var(--accent-text);font-variant-numeric:tabular-nums;font-size:22px;font-weight:700}.esports-hero-caption{color:#9eabbd;margin-top:3px;font-size:11px}.esports-results{flex-direction:column;gap:14px;display:flex}.esports-cat-group{flex-direction:column;gap:8px;display:flex}.esports-cat-label{letter-spacing:1.05px;text-transform:uppercase;color:var(--hero-label-color);font-size:11px;font-weight:600}.esports-device-list{flex-direction:column;gap:8px;display:flex}.esports-device-card{-webkit-backdrop-filter:blur(16px)saturate(170%);backdrop-filter:blur(16px)saturate(170%);transition:transform .3s cubic-bezier(.34,1.56,.64,1),border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast);background:#ffffff0a;border:.5px solid #ffffff1f;border-radius:14px;flex-direction:column;gap:10px;padding:14px;display:flex;box-shadow:0 1px 4px #0000000d,inset 0 .5px #ffffff14}.esports-device-card:hover{border-color:rgba(var(--accent-rgb),.3);background:rgba(var(--accent-rgb),.07);box-shadow:0 2px 10px rgba(var(--accent-rgb),.08),inset 0 .5px #ffffff1a}.esports-device-card.is-clickable{cursor:pointer}.esports-device-card.is-clickable:active{transform:scale(.97)}.esports-device-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.esports-device-name{color:var(--text-primary);font-size:15px;font-weight:600;line-height:1.3}.esports-timeslots{flex-wrap:wrap;gap:8px;display:flex}.esports-time-btn{border-radius:var(--radius-pill);border:.5px solid rgba(var(--accent-rgb),.3);background:rgba(var(--accent-rgb),.08);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--accent-text);font-variant-numeric:tabular-nums;cursor:pointer;box-shadow:inset 0 .5px rgba(var(--accent-rgb),.1);transition:transform .3s cubic-bezier(.34,1.56,.64,1),background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast);padding:8px 14px;font-size:13px;font-weight:600}.esports-time-btn:hover:not(:disabled){background:rgba(var(--accent-rgb),.16);border-color:rgba(var(--accent-rgb),.5);box-shadow:0 1px 6px rgba(var(--accent-rgb),.12),inset 0 .5px rgba(var(--accent-rgb),.15)}.esports-time-btn:active:not(:disabled){transform:scale(.95)}.esports-time-btn:disabled{opacity:.5;cursor:default}:root[data-theme=light] .esports-time-btn{border-color:rgba(var(--accent-rgb),.3);background:rgba(var(--accent-rgb),.07);color:var(--accent-hover);box-shadow:inset 0 .5px rgba(var(--accent-rgb),.08)}:root[data-theme=light] .esports-time-btn:hover:not(:disabled){background:rgba(var(--accent-rgb),.14);border-color:rgba(var(--accent-rgb),.45);box-shadow:0 1px 6px rgba(var(--accent-rgb),.1)}.esports-booking-list{flex-direction:column;gap:8px;display:flex}.esports-booking-card{-webkit-backdrop-filter:blur(16px)saturate(170%);backdrop-filter:blur(16px)saturate(170%);transition:transform .3s cubic-bezier(.34,1.56,.64,1),border-color var(--transition-fast),background var(--transition-fast);background:#ffffff0a;border:.5px solid #ffffff1f;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex;box-shadow:0 1px 4px #0000000d,inset 0 .5px #ffffff14}.esports-booking-card:hover{border-color:rgba(var(--accent-rgb),.25);background:rgba(var(--accent-rgb),.06)}.esports-booking-card.is-past{opacity:.5}.esports-booking-card.is-past:hover{background:#ffffff05;border-color:#ffffff1a;transform:none}.esports-booking-info{flex-direction:column;flex:1 1 0;gap:2px;min-width:0;display:flex}.esports-booking-device{color:var(--text-primary);font-size:15px;font-weight:600;line-height:1.3}.esports-booking-meta{color:#9eabbd;font-size:12px;line-height:1.6}.esports-booking-badge{letter-spacing:.3px;color:#a6b2c2;border-radius:var(--radius-pill);text-transform:uppercase;vertical-align:middle;background:#ffffff0f;border:.5px solid #ffffff1f;margin-right:5px;padding:2px 7px;font-size:10px;font-weight:600;display:inline-block}.esports-booking-status{color:var(--text-secondary);opacity:.7;font-size:11px}.esports-cancel-btn.esports-cancel-btn{white-space:nowrap;border-radius:var(--radius-pill);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:auto;min-width:0;transition:transform .3s cubic-bezier(.34,1.56,.64,1),background var(--transition-fast),border-color var(--transition-fast);background:#ffffff0f;border:.5px solid #ffffff24;flex:none;align-self:center;padding:8px 16px;font-size:12px;font-weight:600;box-shadow:inset 0 .5px #ffffff14}.esports-cancel-btn.esports-cancel-btn:hover:not(:disabled){color:#ffc0c0;background:#ef44441a;border-color:#ef444459}.esports-cancel-btn.esports-cancel-btn:active:not(:disabled){transform:scale(.95)}@media (max-width:520px){.esports-header{flex-direction:column;align-items:stretch}.esports-row{flex-direction:column;gap:16px}.esports-actions{flex-direction:column}.esports-hero-main{grid-template-columns:repeat(2,minmax(0,1fr))}}.account-overlay{z-index:50;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(4px);transition:opacity .28s var(--ease-out),background .28s var(--ease-out);will-change:opacity,background;background:0 0;justify-content:center;align-items:flex-end;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.account-overlay.is-open{opacity:1;pointer-events:auto;background:#00000080}.account-sheet{width:100%;max-width:480px;height:calc(100vh - (env(safe-area-inset-top,0px) + 18px));max-height:calc(100vh - (env(safe-area-inset-top,0px) + 18px));background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:var(--card-padding);padding-bottom:calc(28px + env(safe-area-inset-bottom,0px));opacity:0;transition:transform .34s var(--ease-out),opacity .34s var(--ease-out);will-change:transform,opacity;backface-visibility:hidden;border-bottom:none;flex-direction:column;display:flex;overflow:hidden;transform:translateY(110%)scale(1);box-shadow:0 -18px 44px #00000073}.account-overlay.is-open .account-sheet{opacity:1;transform:translate(0)scale(1)}.sheet-modal-overlay{-webkit-backdrop-filter:blur(12px);opacity:0;pointer-events:none;transition:opacity .26s var(--ease-out),background .26s var(--ease-out);will-change:opacity,background;z-index:70;touch-action:none;overscroll-behavior:contain;background:0 0;justify-content:center;align-items:flex-end;padding:12px;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.sheet-modal-overlay.is-open{opacity:1;pointer-events:auto;background:#00000059}.sheet-modal-overlay.confirm-overlay{z-index:90;-webkit-backdrop-filter:none;align-items:center}.sheet-modal-overlay.confirm-overlay.is-open{background:#00000073}.sheet-modal{-webkit-backdrop-filter:blur(40px)saturate(1.6);backdrop-filter:blur(40px)saturate(1.6);width:100%;max-width:480px;padding:var(--card-padding);padding-bottom:calc(var(--card-padding) + env(safe-area-inset-bottom,0px));opacity:0;transition:transform .3s var(--ease-out),opacity .3s var(--ease-out);will-change:transform,opacity;-webkit-overflow-scrolling:touch;background:#14181ed1;border:.5px solid #ffffff1a;border-radius:22px;max-height:calc(100% - 12px);overflow-y:auto;transform:translateY(22px)scale(1);box-shadow:inset 0 .5px #ffffff14,0 12px 40px #0006}.sheet-modal-overlay.is-open .sheet-modal{opacity:1;transform:translate(0)scale(1)}.sheet-modal.confirm-sheet{max-width:440px;padding:16px}.confirm-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.confirm-title{color:var(--text-primary);font-size:15px;font-weight:600}.confirm-message{color:var(--text-secondary);margin-bottom:14px;font-size:13px;line-height:1.35}.confirm-actions{gap:10px;display:flex}.confirm-actions .btn{flex:1;width:auto;padding:14px 16px}.confirm-actions .btn-secondary{margin-top:0}.sheet-modal.friends-modal{border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding-bottom:calc(18px + env(safe-area-inset-bottom,0px));height:78vh;max-height:calc(100% - (env(safe-area-inset-top,0px) + 12px));transform-origin:var(--origin-x,50%) var(--origin-y,0%);transition:transform .26s var(--ease-out),opacity .26s var(--ease-out);touch-action:auto;background:linear-gradient(#12151afc,#0d1014fc);border-top:1px solid #ffffff21;border-bottom:none;flex-direction:column;display:flex;overflow:hidden;transform:translateY(34px)scale(.88);box-shadow:inset 0 1px #ffffff0a,0 -18px 40px #00000073}.friends-modal-body{flex:1;min-height:0;position:relative}.friends-modal-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;height:100%;padding-bottom:2px;padding-right:2px;overflow-y:auto}.friends-loading-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#04080c61;justify-content:center;align-items:center;display:flex;position:absolute;top:0;right:0;bottom:0;left:0}.friends-loading-pill{border-color:rgba(var(--accent-rgb),.38);background:#0a120ee0;margin:0}@media (prefers-reduced-transparency:reduce){.account-overlay{-webkit-backdrop-filter:none!important}.account-overlay.is-open{background:#000000a6}.sheet-modal-overlay{-webkit-backdrop-filter:none!important}.sheet-modal-overlay.is-open{background:#0000008c}}.account-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.sheet-titles{flex:1;min-width:0}.sheet-back.is-hidden{display:none}.sheet-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1;min-height:0;position:relative;overflow-y:auto}.sheet-loading-overlay{pointer-events:none;justify-content:center;align-items:flex-start;padding-top:14px;display:flex;position:absolute;top:0;right:0;bottom:0;left:0}.sheet-loading-pill{max-width:320px;margin:0}.sheet-screen{will-change:transform,opacity}.sheet-screen.screen-push{animation:sheetScreenEnterRight .26s var(--ease-out) both}.sheet-screen.screen-pop{animation:sheetScreenEnterLeft .26s var(--ease-out) both}@keyframes sheetScreenEnterRight{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:translate(0)}}@keyframes sheetScreenEnterLeft{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:translate(0)}}.account-title{color:var(--text-primary);font-size:16px;font-weight:600}.account-subtitle{color:var(--text-secondary);margin-top:2px;font-size:12px}.account-close{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;width:32px;height:32px;transition:all var(--transition-fast);justify-content:center;align-items:center;font-size:18px;line-height:1;display:flex}.account-close:hover{background:var(--bg-card);color:var(--text-primary)}.account-row{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-secondary);justify-content:space-between;align-items:center;margin-bottom:8px;padding:12px 14px;display:flex}.account-label{color:var(--text-secondary);font-size:12px}.account-value{color:var(--text-primary);text-align:right;text-overflow:ellipsis;max-width:60%;font-size:13px;font-weight:500;overflow:hidden}.account-logout{width:100%;margin-top:12px}.delete-account-btn{color:#f44;background:0 0;border:1px solid #ff44444d;width:100%;margin-top:10px}.delete-account-btn:active{background:#ff44441a}.delete-account-hint{text-align:center;color:var(--text-secondary);opacity:.6;margin-top:6px;font-size:11px}.share-toggle{border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffffff08;align-items:center;gap:10px;margin:8px 0 12px;padding:10px 12px;display:flex}.share-toggle input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--radius-pill);border:1px solid var(--border);cursor:pointer;width:44px;height:26px;transition:background .22s var(--ease-out),border-color .22s var(--ease-out),transform var(--transition-fast);background:#ffffff0f;outline:none;flex-shrink:0;position:relative}.share-toggle input[type=checkbox]:after{content:"";border-radius:var(--radius-pill);width:20px;height:20px;transition:transform .22s var(--ease-out),background .22s var(--ease-out);background:#ffffffeb;position:absolute;top:50%;left:3px;transform:translateY(-50%);box-shadow:0 8px 16px #00000059}.share-toggle input[type=checkbox]:checked{background:rgba(var(--accent-rgb),.22);border-color:rgba(var(--accent-rgb),.55)}.share-toggle input[type=checkbox]:checked:after{background:#0a0a0a;transform:translate(18px,-50%)}.share-toggle input[type=checkbox]:focus-visible{box-shadow:0 0 0 3px rgba(var(--accent-rgb),.18)}.share-toggle input[type=checkbox]:disabled{cursor:not-allowed;opacity:.55}.share-toggle span{color:var(--text-secondary);font-size:12px}.profile-top{border:1px solid var(--border);border-radius:var(--radius-md);background:linear-gradient(145deg,#1a1a1ae6,#121212e6);align-items:center;gap:12px;margin-bottom:12px;padding:12px;display:flex}.profile-hero{text-align:center;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card);flex-direction:column;align-items:center;margin-bottom:12px;padding:16px 12px;display:flex}.profile-hero-avatar{width:96px;height:96px;margin-bottom:12px;position:relative}.profile-hero-avatar .avatar-img,.profile-hero-avatar .avatar-initials{border-radius:50%;width:96px;height:96px}.profile-hero-avatar .profile-avatar-edit{opacity:0;cursor:pointer;color:#fff;background:#00000080;border-radius:50%;justify-content:center;align-items:center;transition:opacity .15s;display:flex;position:absolute;top:0;right:0;bottom:0;left:0}.profile-hero-avatar:hover .profile-avatar-edit{opacity:1}.profile-hero-info{margin-bottom:14px}.profile-hero-name{color:var(--text-primary);font-size:18px;font-weight:700;line-height:1.2}.profile-hero-username{color:var(--text-muted);margin-top:2px;font-size:14px}.profile-hero-bio{color:var(--text-secondary);margin-top:6px;font-size:14px;line-height:1.4}.profile-hero-status{color:var(--text-secondary);justify-content:center;align-items:center;gap:6px;margin-top:6px;font-size:12px;display:flex}.profile-hero-stats{border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;display:flex;overflow:hidden}.profile-hero-stat{text-align:center;flex-direction:column;flex:1;gap:2px;padding:10px 6px;display:flex}.profile-hero-stat+.profile-hero-stat{border-left:1px solid var(--border)}.profile-hero-stat-value{color:var(--text-primary);font-family:Geist Mono,monospace;font-size:16px;font-weight:700}.profile-hero-stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:11px}.profile-avatar{border:1px solid var(--border);background:#ffffff0a;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:54px;height:54px;display:flex;overflow:hidden}.profile-avatar img{object-fit:cover;width:100%;height:100%;display:block}.profile-initials{letter-spacing:.6px;color:#000;background:var(--accent);justify-content:center;align-items:center;width:100%;height:100%;font-weight:700;display:flex}.profile-meta{flex:1;min-width:0}.profile-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;line-height:1.2;overflow:hidden}.profile-id{color:var(--text-secondary);margin-top:4px;font-size:12px}.profile-stats{margin-top:10px;padding-top:4px}.profile-stats-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.profile-stats-title{color:var(--text-secondary);margin-bottom:0;font-size:12px;font-weight:600}.profile-stats-info{color:var(--accent);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:10px;padding:6px 10px;font-size:12px;font-weight:600}.profile-stats-info:hover{background:rgba(var(--accent-rgb),.14)}.info-sheet .info-text{color:var(--text-secondary);font-size:13px;line-height:1.5}.info-sheet .info-text p{margin-bottom:10px}.info-sheet .info-text ul{flex-direction:column;gap:8px;padding-left:18px;display:flex}.info-sheet .info-text li code{border:1px solid var(--border);background:#ffffff0f;border-radius:8px;padding:2px 6px}.profile-stats-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.stat-card{background:var(--glass-bg);border:.5px solid var(--glass-border);border-radius:var(--radius-md);box-shadow:var(--glass-shadow);padding:12px}.stat-label{color:var(--text-secondary);font-size:11px}.stat-value{color:var(--text-primary);margin-top:6px;font-size:18px;font-weight:700}.profile-stats-foot{color:var(--text-muted);flex-direction:column;gap:4px;margin-top:10px;font-size:11px;display:flex}.account-sheet{-webkit-backdrop-filter:blur(44px)saturate(1.6);backdrop-filter:blur(44px)saturate(1.6);background:#0e1218cc;border:.5px solid #ffffff17;box-shadow:inset 0 .5px #ffffff14,0 -12px 40px #00000059}.account-sheet .account-header{border-bottom:1px solid #ffffff1a;margin-bottom:14px;padding-bottom:12px}.account-sheet .sheet-body{padding-right:2px}.account-sheet .account-title{letter-spacing:-.14px;font-size:17px;font-weight:600}.account-sheet .account-subtitle{color:#9ba8ba;margin-top:4px;line-height:1.4}.account-sheet .account-close{color:#b8c3d2;background:#ffffff0a;border:1px solid #ffffff24}.account-sheet .account-close:hover{background:rgba(var(--accent-rgb),.12);border-color:rgba(var(--accent-rgb),.34);color:var(--accent-text-soft)}.account-sheet .profile-top{border:1px solid var(--hero-border);background:var(--hero-bg);border-radius:var(--radius-lg);margin-bottom:10px;padding:14px}.account-sheet .profile-avatar{border-color:rgba(var(--accent-rgb),.28);box-shadow:0 8px 20px #0000003d}.account-sheet .profile-initials{background:linear-gradient(180deg,rgba(var(--accent-rgb),.98),rgba(var(--accent-hover-rgb),.98));color:var(--accent-text-on)}.account-sheet .profile-name{letter-spacing:-.12px;font-size:16px}.account-sheet .profile-id{color:#a7b3c3;margin-top:5px}.account-sheet .profile-overview-grid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px;display:grid}.account-sheet .account-row{border-radius:var(--radius-md);background:linear-gradient(#ffffff07,#ffffff03);border:1px solid #ffffff21;margin-bottom:8px;padding:11px 12px;box-shadow:inset 0 1px #ffffff08}.account-sheet .account-row.is-compact{flex-direction:column;justify-content:center;align-items:flex-start;gap:5px;min-height:66px;margin:0;display:flex}.account-sheet .profile-overview-wide{grid-column:1/-1}.account-sheet .account-label{letter-spacing:.02em;color:#9cabbe;font-size:11px;font-weight:550}.account-sheet .account-value{color:#e7edf5;text-align:left;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:13px;font-weight:560;line-height:1.3;overflow:hidden}.account-sheet .share-toggle{border:.5px solid var(--glass-border);background:var(--glass-bg);box-shadow:var(--glass-shadow);margin:0 0 8px;padding:11px 12px}.account-sheet .share-toggle input[type=checkbox]{transition:background .16s cubic-bezier(.22,.61,.36,1),border-color .16s cubic-bezier(.22,.61,.36,1),transform .14s cubic-bezier(.22,.61,.36,1)}.account-sheet .share-toggle input[type=checkbox]:after{transition:transform .16s cubic-bezier(.22,.61,.36,1),background .16s cubic-bezier(.22,.61,.36,1)}.account-sheet .share-toggle:hover{border-color:rgba(var(--accent-rgb),.34);background:linear-gradient(180deg,rgba(var(--accent-rgb),.13),rgba(var(--accent-rgb),.08))}.account-sheet .share-toggle span{color:#dde6f1;letter-spacing:-.04px;font-size:12.5px;font-weight:520}.account-sheet .profile-stats{border-radius:var(--radius-md);background:linear-gradient(#ffffff07,#ffffff03);border:1px solid #ffffff1f;margin-top:8px;padding:12px;box-shadow:inset 0 1px #ffffff08}.account-sheet .profile-stats-head{margin-bottom:12px}.account-sheet .profile-stats-title{letter-spacing:.01em;color:#d5deea;font-size:12px;font-weight:620}.account-sheet .profile-stats-info{color:var(--accent-text);background:rgba(var(--accent-rgb),.12);border:1px solid rgba(var(--accent-rgb),.28);border-radius:var(--radius-pill);letter-spacing:.02em;padding:6px 10px;font-size:11px}.account-sheet .profile-stats-info:hover{background:rgba(var(--accent-rgb),.17);border-color:rgba(var(--accent-rgb),.4)}.account-sheet .profile-stats-grid{gap:8px}.account-sheet .stat-card{border-radius:var(--radius-md);background:linear-gradient(#ffffff07,#ffffff03);border:1px solid #ffffff21;min-height:74px;box-shadow:inset 0 1px #ffffff08}.account-sheet .stat-label{letter-spacing:.01em;color:#9aa8ba;font-size:11px;font-weight:520}.account-sheet .stat-value{color:var(--accent-text-dim);letter-spacing:-.2px;font-size:20px}.account-sheet .profile-stats-lines{border-top:1px solid #ffffff14;margin-top:10px}.account-sheet .profile-stats-line{color:#a9b8c9;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;font-size:12px;display:flex}.account-sheet .profile-stats-line span:last-child{text-align:right;color:#d9e4f2}.account-sheet .profile-stats-line+.profile-stats-line{border-top:1px solid #ffffff0f}.account-sheet .profile-stats-foot{color:#91a1b5;border-top:1px solid #ffffff17;margin-top:8px;padding-top:8px;font-size:11px;line-height:1.45}.account-sheet .profile-section{border:.5px solid var(--glass-border);border-radius:var(--radius-md);background:var(--glass-bg);box-shadow:var(--glass-shadow);margin-top:8px;padding:12px}.account-sheet .profile-section-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.account-sheet .profile-section-title{letter-spacing:.01em;color:#d5deea;font-size:12px;font-weight:620}.account-sheet .profile-section-meta{color:#96a7bc;letter-spacing:.01em;font-size:11px}.account-sheet .profile-section-body{flex-direction:column;gap:8px;display:flex}.account-sheet .profile-kv-row{border:.5px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg);justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;display:flex}.account-sheet .profile-kv-row .account-value{text-align:right;color:#dce6f3}.account-sheet .profile-version-value{letter-spacing:.02em;word-break:break-all;font-family:Geist Mono,ui-monospace,monospace;font-size:11px}.account-sheet .sync-badge{border-radius:var(--radius-pill);letter-spacing:.4px;text-transform:none;border:1px solid #ffffff29;justify-content:center;align-items:center;min-height:24px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.account-sheet .sync-badge.is-on{color:var(--accent-text-on);background:rgba(var(--accent-rgb),.95);border-color:rgba(var(--accent-rgb),.85)}.account-sheet .sync-badge.is-off{color:#f4f7fb;background:#8090a53d;border-color:#99a8bc66}.account-sheet .profile-action-link{border:1px solid rgba(var(--accent-rgb),.3);background:rgba(var(--accent-rgb),.12);color:var(--accent-text-soft);border-radius:var(--radius-pill);letter-spacing:.02em;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);padding:7px 10px;font-size:11px;font-weight:600}.account-sheet .profile-action-link:hover:not(:disabled){background:rgba(var(--accent-rgb),.17);border-color:rgba(var(--accent-rgb),.45)}.account-sheet .profile-action-link:disabled{opacity:.65;cursor:default}.account-sheet .profile-inline-note{border-radius:var(--radius-sm);border:1px solid #ffffff24;padding:9px 10px;font-size:12px;line-height:1.35}.account-sheet .profile-inline-note.is-ok{border-color:rgba(var(--accent-rgb),.38);color:var(--accent-text-soft);background:rgba(var(--accent-rgb),.1)}.account-sheet .profile-inline-note.is-error{color:#ffcbcb;background:#ef44441a;border-color:#ef444459}.account-sheet .profile-history-list{flex-direction:column;gap:8px;max-height:250px;padding-right:4px;list-style:none;display:flex;overflow-y:auto}.account-sheet .profile-history-item{border-radius:var(--radius-md);background:linear-gradient(#ffffff06,#ffffff03);border:1px solid #ffffff1f;padding:10px 11px}.account-sheet .profile-history-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.account-sheet .profile-history-time{color:#d9e2ef;font-size:12px;font-weight:600}.account-sheet .history-status{border-radius:var(--radius-pill);letter-spacing:.38px;text-transform:none;border:1px solid #ffffff29;padding:3px 9px;font-size:10px;font-weight:700}.account-sheet .history-status.is-success{color:var(--accent-text-on);background:rgba(var(--accent-rgb),.95);border-color:rgba(var(--accent-rgb),.82)}.account-sheet .history-status.is-error{color:#ffd4d4;background:#ef444433;border-color:#ef444473}.account-sheet .profile-history-message{color:#e5ecf6;margin-top:7px;font-size:12.5px;font-weight:550;line-height:1.36}.account-sheet .profile-history-meta{color:#95a4b7;margin-top:5px;font-size:11px}.account-sheet .profile-settings .share-toggle{margin:0 0 6px}.account-sheet .profile-settings .share-toggle:last-child{margin-bottom:0}.account-sheet .profile-diagnostic-btn{width:100%;min-height:42px}.account-sheet .profile-error,.account-sheet .profile-notice,.account-sheet .profile-loading{max-width:none;margin:0 0 12px}.account-sheet .profile-menu{margin-top:10px;margin-bottom:4px}.profile-donate-btn{border-radius:var(--radius-md);border:1px solid rgba(var(--accent-rgb),.25);background:rgba(var(--accent-rgb),.08);width:100%;min-height:44px;color:var(--accent-text);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast);justify-content:center;align-items:center;gap:8px;margin:12px 0;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.profile-donate-btn:active{transform:scale(var(--scale-press))}.profile-donate-btn:hover{background:rgba(var(--accent-rgb),.14);border-color:rgba(var(--accent-rgb),.4)}.profile-donate-btn svg{color:var(--accent);flex-shrink:0}.account-sheet .profile-actions-grid{grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;display:grid}.account-sheet .account-friends-btn,.account-sheet .account-channel-btn,.account-sheet .account-logout,.account-sheet .delete-account-btn{border-radius:var(--radius-md);min-height:44px;margin-top:8px}.account-sheet .account-friends-btn,.account-sheet .account-channel-btn{justify-content:center;align-items:center;gap:8px;min-width:0;margin-top:0;display:inline-flex}.account-sheet .account-channel-btn,.account-sheet .account-logout{background:#ffffff08;border:1px solid #ffffff24}.account-sheet .account-channel-btn:hover,.account-sheet .account-logout:hover{border-color:rgba(var(--accent-rgb),.34);background:rgba(var(--accent-rgb),.12);color:var(--accent-text-soft)}.account-sheet .delete-account-btn{color:#ffb3b3;background:#ef444417;border:1px solid #ef44445c}.account-sheet .delete-account-btn:hover{color:#ffd1d1;background:#ef444429;border-color:#ef444485}.account-sheet .delete-account-hint{color:#8d9aac;opacity:1}.account-sheet .profile-section.profile-settings{margin-bottom:2px}@media (max-width:420px){.account-sheet .profile-overview-grid{grid-template-columns:1fr}.account-sheet .profile-overview-wide{grid-column:auto}.account-sheet .profile-actions-grid{grid-template-columns:1fr}.account-sheet .profile-stats-line{flex-direction:column;align-items:flex-start;gap:4px}.account-sheet .profile-stats-line span:last-child{text-align:left}}.sheet-modal.info-sheet{background:linear-gradient(#12151afe,#0c0f14fe);border:1px solid #ffffff1f;box-shadow:inset 0 1px #ffffff0a,0 18px 44px #00000075}.sheet-modal.info-sheet .info-text{border-radius:var(--radius-md);background:linear-gradient(#ffffff07,#ffffff03);border:1px solid #ffffff1f;padding:12px}@supports (padding-bottom:env(safe-area-inset-bottom)){.account-sheet{padding-bottom:calc(28px + env(safe-area-inset-bottom))}.bottom-spacer{height:calc(20px + env(safe-area-inset-bottom))}}.friends-checkbox{border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast);background:linear-gradient(#ffffff08,#ffffff04);border:1px solid #ffffff21;align-items:center;gap:10px;width:100%;max-width:320px;margin-top:16px;padding:12px 14px;display:flex;box-shadow:inset 0 1px #ffffff08}.friends-checkbox:hover{border-color:rgba(var(--accent-rgb),.34);background:linear-gradient(180deg,rgba(var(--accent-rgb),.12),rgba(var(--accent-rgb),.07))}.friends-checkbox input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--radius-pill);border:1px solid var(--border);cursor:pointer;background:#ffffff0f;outline:none;flex-shrink:0;width:44px;height:26px;transition:background .22s cubic-bezier(.22,.61,.36,1),border-color .22s cubic-bezier(.22,.61,.36,1),transform .15s cubic-bezier(.22,.61,.36,1);position:relative}.friends-checkbox input[type=checkbox]:after{content:"";border-radius:var(--radius-pill);background:#ffffffeb;width:20px;height:20px;transition:transform .22s cubic-bezier(.22,.61,.36,1),background .22s cubic-bezier(.22,.61,.36,1);position:absolute;top:50%;left:3px;transform:translateY(-50%);box-shadow:0 8px 16px #00000059}.friends-checkbox input[type=checkbox]:checked{background:rgba(var(--accent-rgb),.22);border-color:rgba(var(--accent-rgb),.55)}.friends-checkbox input[type=checkbox]:checked:after{background:#0a0a0a;transform:translate(18px,-50%)}.friends-checkbox input[type=checkbox]:focus-visible{box-shadow:0 0 0 3px rgba(var(--accent-rgb),.18)}.friends-checkbox span{color:#e4ebf5;letter-spacing:-.04px;font-size:13px;font-weight:550}.friends-card{margin-top:12px}.friends-card .group-members{-webkit-overflow-scrolling:touch;max-height:300px;padding-right:4px;overflow-y:auto}.friends-card .member-indicator.inactive{background:var(--text-muted)}.friend-noauth{color:#9ba6b5;font-size:11px}.account-friends-btn{justify-content:center;align-items:center;gap:8px;width:100%;margin-top:12px;margin-bottom:4px;display:flex}.account-friends-btn svg{flex-shrink:0}.account-channel-btn{justify-content:center;align-items:center;gap:8px;display:flex}.account-channel-btn svg{flex-shrink:0}.friends-sheet{max-height:80vh;overflow-y:auto}.friends-add{border-radius:var(--radius-md);border:1px solid var(--hero-border);background:var(--hero-bg);grid-template-columns:1fr auto;gap:10px;margin-bottom:14px;padding:12px;display:grid}.friends-input{width:100%;padding:var(--padding-input-y) var(--padding-input-x);border-radius:var(--radius-md);color:var(--text-primary);transition:border-color var(--transition-fast),background var(--transition-fast);background:#070c119e;border:1px solid #ffffff24;outline:none;font-family:Geist,system-ui,-apple-system,sans-serif;font-size:14px}.friends-input:focus{border-color:rgba(var(--accent-rgb),.42);background:#0a1016b8}.friends-input::placeholder{color:#8c99ab}.friends-add .btn{border-radius:var(--radius-pill);width:auto;min-height:44px;margin-top:0;padding:11px 18px;font-size:13px;font-weight:600}.friend-error{border-radius:var(--radius-sm);color:var(--error);background:#ef44441f;border:1px solid #ef444457;margin-bottom:12px;padding:10px 12px;font-size:12px}.friends-section{margin-top:16px}.friends-section-title{color:#95a3b6;text-transform:uppercase;letter-spacing:.85px;margin-bottom:10px;font-size:11px;font-weight:600}.friend-item{border-radius:var(--radius-md);animation:fadeIn var(--transition-fast);background:linear-gradient(#ffffff07,#ffffff03);border:1px solid #ffffff1f;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;padding:12px;display:flex;box-shadow:inset 0 1px #ffffff08}.friend-clickable{cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast),transform var(--transition-fast)}.friend-clickable:hover{border-color:rgba(var(--accent-rgb),.36);background:linear-gradient(180deg,rgba(var(--accent-rgb),.13),rgba(var(--accent-rgb),.07));transform:translateY(-1px)}.friend-item.pending{border-color:rgba(var(--accent-rgb),.45);background:linear-gradient(180deg,rgba(var(--accent-rgb),.13),rgba(var(--accent-rgb),.08));border-style:dashed}.friend-info{flex-direction:column;gap:2px;display:flex;overflow:hidden}.friend-name{color:var(--text-primary);letter-spacing:-.08px;font-size:14px;font-weight:600}.friend-username{color:#9ba8ba;font-size:12px}.friend-noauth-badge{color:#ffb4b4;border-radius:var(--radius-pill);background:#ef444433;border:1px solid #ef44444d;margin-top:4px;padding:2px 7px;font-size:10px;display:inline-block}.friend-actions{gap:7px;display:flex}.btn-small{border-radius:var(--radius-sm);width:33px;height:33px;transition:transform var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast);justify-content:center;align-items:center;padding:0;font-size:15px;display:flex}.btn-small:active{transform:scale(var(--scale-press))}.btn-accept{background:linear-gradient(180deg,rgba(var(--accent-rgb),.98),rgba(var(--accent-hover-rgb),.98));color:var(--accent-text-on);border:1px solid rgba(var(--accent-rgb),.45)}.btn-accept:hover{background:linear-gradient(180deg,rgba(var(--accent-rgb),1),rgba(var(--accent-hover-rgb),1))}.btn-reject,.btn-remove{color:#a8b3c2;background:#ffffff06;border:1px solid #ffffff24}.btn-reject:hover,.btn-remove:hover{color:#ffc0c0;background:#ef444424;border-color:#ef44448f}.btn-favorite{color:#9daabd;background:#ffffff06;border:1px solid #ffffff29;transition:transform 90ms ease-out,border-color 90ms ease-out,background 90ms ease-out,color 90ms ease-out,box-shadow 90ms ease-out;box-shadow:inset 0 1px #ffffff08}.btn-favorite:hover{color:#d4deeb;background:#ffffff12;border-color:#bacbe06b}.btn-favorite.is-active{color:var(--accent-text-soft);border-color:rgba(var(--accent-rgb),.55);background:linear-gradient(180deg,rgba(var(--accent-hover-rgb),.28),rgba(var(--accent-hover-rgb),.2));box-shadow:inset 0 1px #ffffff0d,0 0 0 1px rgba(var(--accent-rgb),.14)}.friend-favorite-icon{opacity:.92;filter:drop-shadow(0 0 #0000);transition:transform 90ms ease-out,opacity 90ms ease-out,filter 90ms ease-out;display:block}.btn-favorite:hover .friend-favorite-icon{opacity:1;transform:scale(1.04)}.btn-favorite.is-active .friend-favorite-icon{opacity:1;filter:drop-shadow(0 0 8px rgba(var(--accent-rgb),.22));transform:scale(1.03)}.friend-selectable{background:0 0;border:none;margin-bottom:8px;padding:0}.friend-selectable:last-child{margin-bottom:0}.friend-select-label{border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast),transform var(--transition-fast);background:linear-gradient(#ffffff07,#ffffff03);border:1px solid #ffffff21;align-items:center;gap:10px;padding:10px 12px;display:flex}.friend-select-label:hover{background:linear-gradient(180deg,rgba(var(--accent-rgb),.14),rgba(var(--accent-rgb),.08));border-color:rgba(var(--accent-rgb),.34);transform:translateY(-1px)}.friend-checkbox{cursor:pointer;width:20px;height:20px;accent-color:var(--accent);flex-shrink:0}.friend-select-name{color:var(--text-primary);flex:1;font-size:14px;font-weight:500}.friends-loading,.friends-empty{text-align:center;color:#9ba8ba;border-radius:var(--radius-md);background:#ffffff05;border:1px dashed #ffffff2e;padding:16px 14px;font-size:13px}.friends-hint{color:#9ba8ba;text-align:center;margin-top:16px;font-size:11px;line-height:1.45}.friend-profile-hint{color:#9ba8ba;margin:-4px 2px 10px;font-size:11px}.profile-status-dot{vertical-align:middle;border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block;position:relative;top:-.5px}.profile-status-dot.is-on{background:var(--accent);box-shadow:0 0 6px rgba(var(--accent-rgb),.5)}.profile-status-dot.is-off{background:#6b7a8d}.profile-menu{border-radius:var(--radius-md);border:.5px solid var(--glass-border);background:var(--glass-bg);box-shadow:var(--glass-shadow);margin-top:8px;overflow:hidden}.profile-menu-item{border:none;border-bottom:.5px solid var(--glass-border);width:100%;color:var(--text-primary);cursor:pointer;transition:background var(--transition-fast);text-align:left;background:0 0;align-items:center;gap:12px;padding:14px;font-size:13px;font-weight:500;display:flex}.profile-menu-item:last-child{border-bottom:none}.profile-menu-item:hover{background:#ffffff08}.profile-menu-item:active{background:#ffffff0f}.profile-menu-icon{color:var(--text-secondary);flex-shrink:0}.profile-menu-chevron{color:var(--text-muted);opacity:.5;flex-shrink:0;margin-left:auto}.profile-menu-badge{border-radius:var(--radius-pill);letter-spacing:.3px;padding:2px 7px;font-size:10px;font-weight:700}.profile-menu-badge.is-on{color:var(--accent-text-on);background:rgba(var(--accent-rgb),.85)}.profile-menu-badge.is-off{color:#fff;background:#ef4444b3}.privacy-policy{padding:0 2px}.privacy-updated{color:#6b7a8d;margin-bottom:16px;font-size:12px}.privacy-section{margin-bottom:18px}.privacy-section h3{color:#e2e8f0;margin:0 0 8px;font-size:14px;font-weight:600}.privacy-section h4{color:#c8d3e0;margin:10px 0 4px;font-size:13px;font-weight:500}.privacy-section p{color:#9ba8ba;margin:0 0 6px;font-size:13px;line-height:1.5}.privacy-section ul{margin:4px 0 6px;padding-left:18px}.privacy-section li{color:#9ba8ba;margin-bottom:2px;font-size:13px;line-height:1.5}.privacy-section strong{color:#c8d3e0;font-weight:500}@media (prefers-reduced-motion:reduce){.tab-indicator,.account-overlay,.account-sheet{transition:none}.sheet-modal-overlay,.sheet-modal{transition:none!important}.sheet-screen,.scanner-section,.passes-section,.grades-section,.schedule-section,.azan-section,.esports-section{animation:none!important}}.grades-section{flex-direction:column;flex:1;gap:14px;width:100%;animation:.35s cubic-bezier(.16,1,.3,1) forwards tabFadeIn;display:flex}.grades-shell{border-radius:var(--radius-lg);padding:var(--card-padding);background:linear-gradient(#ffffff05,#ffffff03);border:1px solid #ffffff1a;flex-direction:column;gap:16px;display:flex;box-shadow:inset 0 1px #ffffff08,0 10px 26px #0003}.grades-header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.grades-title{color:var(--text-primary);letter-spacing:-.02em;font-size:16px;font-weight:600}.grades-subtitle{color:#9aa6b6;margin-top:5px;font-size:12px;line-height:1.45}.grades-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;display:flex}.grades-refresh{border-radius:var(--radius-pill);color:#d9e2ec;background:#ffffff08;border:1px solid #ffffff24;width:auto;min-height:42px;margin-top:0;padding:11px 16px;font-size:13px}.grades-refresh:hover:not(:disabled){background:rgba(var(--accent-rgb),.1);border-color:rgba(var(--accent-rgb),.3);color:var(--accent-text-soft)}.grades-mode-toggle{border-radius:var(--radius-pill);white-space:nowrap;color:#d2dce8;background:#ffffff08;border:1px solid #ffffff24;width:auto;min-height:42px;margin-top:0;padding:11px 14px;font-size:12px}.grades-mode-toggle:hover:not(:disabled){color:#e8eef7;background:#ffffff0f}.grades-mode-toggle.is-active{background:rgba(var(--accent-rgb),.2);border-color:rgba(var(--accent-rgb),.42);color:var(--accent-text);box-shadow:inset 0 1px #ffffff14}.grades-hero{border:1px solid var(--border);background:var(--bg-card);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:var(--radius-md);padding:13px}.grades-hero-label{letter-spacing:.05em;text-transform:uppercase;color:var(--hero-label-color);font-family:Geist Mono,monospace;font-size:11px;font-weight:500}.grades-hero-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:11px;display:grid}.grades-hero-item{border-radius:var(--radius-sm);background:#ffffff0b;border:1px solid #ffffff1a;padding:11px}.grades-hero-value{letter-spacing:-.4px;color:var(--accent-text);font-variant-numeric:tabular-nums;font-size:21px;font-weight:700}.grades-hero-caption{color:#9eabbd;margin-top:4px;font-size:11px}.grades-projection-hint{border:1px dashed rgba(var(--accent-rgb),.36);border-radius:var(--radius-sm);color:#a4b2c4;background:rgba(var(--accent-rgb),.1);margin-top:11px;padding:10px 11px;font-size:11px;line-height:1.45}.grades-list{flex-direction:column;gap:11px;display:flex}.grade-card{background:var(--glass-bg);border:.5px solid var(--glass-border);border-radius:var(--radius-sm);transition:opacity var(--transition-fast),transform var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast);padding:13px;position:relative}.grade-card:hover{border-color:rgba(var(--accent-rgb),.3);background:rgba(var(--accent-rgb),.09);transform:translateY(-1px)}.grade-subject{color:var(--text-primary);letter-spacing:-.1px;margin-bottom:12px;padding-right:96px;font-size:16px;font-weight:600;line-height:1.38}.grade-rows{flex-direction:column;gap:7px;display:flex}.grade-row{justify-content:space-between;align-items:center;gap:9px;font-size:13px;display:flex}.grade-label{color:#a6b2c2;line-height:1.35}.grade-value{color:#dbe4ee;font-variant-numeric:tabular-nums;font-family:Geist,system-ui,-apple-system,sans-serif;font-size:13px;font-weight:600}.grade-total{border-top:1px solid #ffffff17;margin-top:11px;padding-top:11px}.grade-total .grade-label{color:#bdc8d7;font-weight:600}.grade-total .grade-value{color:var(--accent-text);letter-spacing:-.25px;font-size:16px;font-weight:700}.grade-total.grade-fail .grade-value{color:#ff9b9b}.grade-note{color:#8f9cb0;margin-top:8px;font-size:11px;line-height:1.4}.grade-badge{border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.35px;border:1px solid #0000;padding:5px 10px;font-size:10px;font-weight:700;position:absolute;top:13px;right:13px}.grade-badge.grade-a,.grade-badge.grade-отлично{background:rgba(var(--accent-rgb),.2);color:var(--accent-text)}.grade-badge.grade-b,.grade-badge.grade-хорошо{color:#3b82f6;background:#3b82f633}.grade-badge.grade-c,.grade-badge.grade-удовлетворительно{color:#f59e0b;background:#f59e0b33}.grade-badge.grade-d,.grade-badge.grade-неудовлетворительно,.grade-badge.grade-f{color:#ef4444;background:#ef444433}.grade-badge.grade-зачтено{background:rgba(var(--accent-rgb),.2);color:var(--accent-text);border-color:rgba(var(--accent-rgb),.36)}.grade-badge.grade-незачтено{color:#ff9b9b;background:#ef444433;border-color:#ef44445c}.grades-summary{border-radius:var(--radius-sm);text-align:center;background:#ffffff05;border:1px solid #ffffff1a;justify-content:space-around;margin-top:16px;padding:12px;display:flex}@media (max-width:520px){.grades-header{flex-direction:column;align-items:stretch}.grades-header-actions{justify-content:stretch}.grades-mode-toggle,.grades-refresh{width:100%}.grade-subject{margin-bottom:14px;padding-right:0}.grade-badge{margin-bottom:8px;display:inline-flex;position:static}}.summary-item{flex-direction:column;gap:4px;display:flex}.summary-value{color:var(--accent);font-size:18px;font-weight:700}.summary-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:10px}.grade-card.tappable{cursor:pointer}.grade-card.expanded{border-color:rgba(var(--accent-rgb),.35)}.grade-expand-icon{vertical-align:middle;opacity:.4;margin-left:6px;transition:transform .2s,opacity .2s;display:inline-block}.grade-expand-icon.is-open{opacity:.7;transform:rotate(180deg)}.attendance-detail{border-top:1px solid #ffffff14;margin-top:12px;padding-top:12px}.attendance-detail-loading{text-align:center;color:var(--text-muted);padding:12px 0 4px;font-size:12px}.attendance-detail-error{color:#ef4444;padding:8px 0;font-size:12px}.attendance-summary{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.attendance-summary-item{font-variant-numeric:tabular-nums;border-radius:100px;padding:3px 8px;font-size:11px;font-weight:600}.attendance-summary-item.present{color:#34d399;background:#34d39926}.attendance-summary-item.excused{color:#fbbf24;background:#fbbf2426}.attendance-summary-item.absent{color:#ef4444;background:#ef444426}.attendance-summary-item.total{color:#94a3b8;background:#94a3b81f}.attendance-entries{-webkit-overflow-scrolling:touch;flex-direction:column;gap:3px;max-height:300px;display:flex;overflow-y:auto}.attendance-entry{border-radius:6px;justify-content:space-between;align-items:center;padding:5px 8px;font-size:12px;display:flex}.attendance-entry.present{background:#34d3990f}.attendance-entry.excused{background:#fbbf240f}.attendance-entry.absent{background:#ef44440f}.attendance-entry.unknown{background:#94a3b80f}.attendance-entry-date{color:var(--text-muted);font-variant-numeric:tabular-nums}.attendance-entry-badge{font-size:11px;font-weight:600}.attendance-entry-badge.present{color:#34d399}.attendance-entry-badge.excused{color:#fbbf24}.attendance-entry-badge.absent{color:#ef4444}.attendance-entry-badge.unknown{color:#94a3b8}.tab-pane{animation:tabEnter .32s var(--ease-out) both;will-change:transform,opacity}.tab-pane.tab-forward{animation-name:tabEnterRight}.tab-pane.tab-back{animation-name:tabEnterLeft}@keyframes tabEnter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes tabEnterRight{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}@keyframes tabEnterLeft{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}:root[data-theme=light] .dashboard-subtitle,:root[data-theme=light] .dashboard-card-meta,:root[data-theme=light] .dashboard-muted,:root[data-theme=light] .today-location,:root[data-theme=light] .today-more,:root[data-theme=light] .maps-subtitle,:root[data-theme=light] .maps-hero-sub,:root[data-theme=light] .passes-subtitle,:root[data-theme=light] .passes-hero-sub,:root[data-theme=light] .azan-location,:root[data-theme=light] .azan-date,:root[data-theme=light] .azan-hero-sub,:root[data-theme=light] .grades-subtitle,:root[data-theme=light] .grades-hero-caption,:root[data-theme=light] .grades-projection-hint,:root[data-theme=light] .grade-label,:root[data-theme=light] .grade-note,:root[data-theme=light] .esports-subtitle,:root[data-theme=light] .esports-hero-caption,:root[data-theme=light] .esports-booking-meta,:root[data-theme=light] .esports-booking-status,:root[data-theme=light] .friend-username,:root[data-theme=light] .friend-noauth,:root[data-theme=light] .friends-hint,:root[data-theme=light] .friend-profile-hint,:root[data-theme=light] .friends-section-title{color:#737373}:root[data-theme=light] .privacy-section h3{color:#171717}:root[data-theme=light] .privacy-section h4{color:#404040}:root[data-theme=light] .privacy-section p,:root[data-theme=light] .privacy-section li{color:#737373}:root[data-theme=light] .privacy-section strong{color:#404040}:root[data-theme=light] .privacy-updated{color:#a3a3a3}:root[data-theme=light] .profile-menu-item:hover{background:#00000008}:root[data-theme=light] .profile-menu-item:active{background:#0000000f}:root[data-theme=light] .profile-status-dot.is-off{background:#a3a3a3}:root[data-theme=light] .dashboard-profile-btn,:root[data-theme=light] .quick-action,:root[data-theme=light] .scanner-section .btn-secondary,:root[data-theme=light] .result-item,:root[data-theme=light] .dashboard-friends .friends-checkbox,:root[data-theme=light] .dashboard-friends .group-card,:root[data-theme=light] .dashboard-friends .friend-select-label,:root[data-theme=light] .maps-search-field,:root[data-theme=light] .maps-controls,:root[data-theme=light] .maps-chip,:root[data-theme=light] .maps-zoom-btn,:root[data-theme=light] .maps-reset-btn,:root[data-theme=light] .maps-viewer,:root[data-theme=light] .passes-item,:root[data-theme=light] .passes-header .btn-compact,:root[data-theme=light] .azan-header-actions .btn-compact,:root[data-theme=light] .passes-duration-badge,:root[data-theme=light] .azan-row,:root[data-theme=light] .azan-header .btn-compact,:root[data-theme=light] .azan-next-badge,:root[data-theme=light] .grades-refresh,:root[data-theme=light] .grades-mode-toggle,:root[data-theme=light] .grades-hero-item,:root[data-theme=light] .grade-card,:root[data-theme=light] .esports-device-card,:root[data-theme=light] .esports-booking-card,:root[data-theme=light] .esports-hero-item,:root[data-theme=light] .esports-booking-badge,:root[data-theme=light] .esports-subscreen-top .btn-compact,:root[data-theme=light] .friends-checkbox,:root[data-theme=light] .friend-item,:root[data-theme=light] .friend-select-label,:root[data-theme=light] .btn-reject,:root[data-theme=light] .btn-remove,:root[data-theme=light] .btn-favorite,:root[data-theme=light] .friends-loading,:root[data-theme=light] .friends-empty,:root[data-theme=light] .friends-input,:root[data-theme=light] .schedule-modes-wrap,:root[data-theme=light] .schedule-panel .schedule-input,:root[data-theme=light] .schedule-panel .schedule-input-clear,:root[data-theme=light] .schedule-suggestions,:root[data-theme=light] .schedule-suggestion-meta,:root[data-theme=light] .schedule-mode-badge,:root[data-theme=light] .schedule-controls .btn,:root[data-theme=light] .schedule-empty-day,:root[data-theme=light] .schedule-raw,:root[data-theme=light] .schedule-pill,:root[data-theme=light] .schedule-icon-btn{background:var(--glass-bg);border-color:var(--glass-border);color:#404040}:root[data-theme=light] .dashboard-profile-btn:hover,:root[data-theme=light] .quick-action:hover,:root[data-theme=light] .scanner-section .btn-secondary:hover,:root[data-theme=light] .result-item:hover,:root[data-theme=light] .dashboard-friends .friends-checkbox:hover,:root[data-theme=light] .dashboard-friends .friend-select-label:hover,:root[data-theme=light] .maps-chip:hover,:root[data-theme=light] .maps-zoom-btn:hover,:root[data-theme=light] .maps-reset-btn:hover,:root[data-theme=light] .passes-header .btn-compact:hover:not(:disabled),:root[data-theme=light] .azan-header-actions .btn-compact:hover:not(:disabled),:root[data-theme=light] .passes-item:hover,:root[data-theme=light] .azan-header .btn-compact:hover:not(:disabled),:root[data-theme=light] .grades-refresh:hover:not(:disabled),:root[data-theme=light] .grades-mode-toggle:hover:not(:disabled),:root[data-theme=light] .grade-card:hover,:root[data-theme=light] .esports-device-card:hover,:root[data-theme=light] .esports-booking-card:hover,:root[data-theme=light] .esports-subscreen-top .btn-compact:hover:not(:disabled),:root[data-theme=light] .friend-clickable:hover,:root[data-theme=light] .friend-select-label:hover,:root[data-theme=light] .schedule-mode:hover,:root[data-theme=light] .schedule-suggestion:hover{background:rgba(var(--accent-rgb),.12);border-color:rgba(var(--accent-rgb),.34);color:#171717}:root[data-theme=light] .status-pill,:root[data-theme=light] .today-time,:root[data-theme=light] .maps-meta-chip,:root[data-theme=light] .passes-hero-time,:root[data-theme=light] .passes-time,:root[data-theme=light] .azan-hero-time,:root[data-theme=light] .azan-time,:root[data-theme=light] .grades-hero-value,:root[data-theme=light] .grade-total .grade-value,:root[data-theme=light] .esports-hero-value,:root[data-theme=light] .schedule-hero-count,:root[data-theme=light] .summary-value{color:var(--accent)}:root[data-theme=light] .status-pill,:root[data-theme=light] .today-time,:root[data-theme=light] .maps-meta-chip,:root[data-theme=light] .schedule-mode-badge,:root[data-theme=light] .grades-mode-toggle.is-active{background:rgba(var(--accent-rgb),.16);border-color:rgba(var(--accent-rgb),.34)}:root[data-theme=light] .status-pill.is-off,:root[data-theme=light] .schedule-range,:root[data-theme=light] .schedule-date,:root[data-theme=light] .schedule-hint,:root[data-theme=light] .schedule-advanced-label,:root[data-theme=light] .schedule-advanced-hint,:root[data-theme=light] .maps-control-label,:root[data-theme=light] .passes-duration-badge,:root[data-theme=light] .passes-arrow,:root[data-theme=light] .azan-next-badge,:root[data-theme=light] .dashboard-friends .group-title,:root[data-theme=light] .dashboard-friends .group-count,:root[data-theme=light] .account-subtitle,:root[data-theme=light] .profile-id,:root[data-theme=light] .account-label,:root[data-theme=light] .stat-label,:root[data-theme=light] .profile-stats-foot{color:#63758d}:root[data-theme=light] .dashboard-friends .friend-select-name,:root[data-theme=light] .dashboard-friends .friends-checkbox span,:root[data-theme=light] .friend-name,:root[data-theme=light] .friend-select-name,:root[data-theme=light] .grade-value,:root[data-theme=light] .passes-zone,:root[data-theme=light] .azan-label,:root[data-theme=light] .esports-booking-device,:root[data-theme=light] .esports-device-name{color:#162437}:root[data-theme=light] .dashboard-friends .friend-checkbox,:root[data-theme=light] .friends-checkbox input[type=checkbox],:root[data-theme=light] .share-toggle input[type=checkbox]{background:#dbe5f2;border-color:#64748b73}:root[data-theme=light] .dashboard-friends .friend-checkbox:after,:root[data-theme=light] .friends-checkbox input[type=checkbox]:after,:root[data-theme=light] .share-toggle input[type=checkbox]:after{background:#fff;box-shadow:0 3px 8px #0f172a38}:root[data-theme=light] .friends-checkbox input[type=checkbox]:checked,:root[data-theme=light] .share-toggle input[type=checkbox]:checked{background:rgba(var(--accent-rgb),.28);border-color:rgba(var(--accent-rgb),.52)}:root[data-theme=light] .friends-checkbox input[type=checkbox]:checked:after,:root[data-theme=light] .share-toggle input[type=checkbox]:checked:after{background:#fff}:root[data-theme=light] .maps-control-row+.maps-control-row,:root[data-theme=light] .schedule-advanced,:root[data-theme=light] .schedule-suggestion+.schedule-suggestion,:root[data-theme=light] .grade-total{border-top-color:#64748b38}:root[data-theme=light] .maps-search-results{background:#fff;border-color:#0000001a;box-shadow:0 8px 24px #0000001a}:root[data-theme=light] .maps-search-result:active{background:#0000000a}:root[data-theme=light] .maps-search-result{border-bottom-color:#0000000f}:root[data-theme=light] .maps-placeholder,:root[data-theme=light] .maps-gesture-hint,:root[data-theme=light] .schedule-empty-day,:root[data-theme=light] .schedule-raw,:root[data-theme=light] .schedule-raw pre,:root[data-theme=light] .friends-loading,:root[data-theme=light] .friends-empty{color:#61748d}:root[data-theme=light] .schedule-panel,:root[data-theme=light] .grades-shell,:root[data-theme=light] .passes-card,:root[data-theme=light] .azan-card,:root[data-theme=light] .maps-shell,:root[data-theme=light] .esports-shell{-webkit-backdrop-filter:blur(20px)saturate(180%);backdrop-filter:blur(20px)saturate(180%);background:#ffffffb3;border-color:#ffffff80;box-shadow:0 2px 12px #0000000d,inset 0 .5px #fffc}:root[data-theme=light] .profile-top{background:linear-gradient(#fffffff5,#f6fafff0);border-color:#788da847}:root[data-theme=light] .friends-input{color:#171717;background:#fff;border-color:#0000001a}:root[data-theme=light] .friends-input::placeholder{color:#a3a3a3}:root[data-theme=light] .sheet-modal.friends-modal{background:#fafafafa;border-top-color:#0000000f;box-shadow:0 -8px 32px #00000014}:root[data-theme=light] .friends-loading-overlay{background:#f5f5f5b8}:root[data-theme=light] .friends-loading-pill{border-color:rgba(var(--accent-rgb),.34);color:#171717;background:#fffffff2}:root[data-theme=light] .info-sheet .info-text li code{color:#171717;background:#0000000a;border-color:#00000014}:root[data-theme=light] .btn-reject:hover,:root[data-theme=light] .btn-remove:hover{color:#9f1d1d;background:#ef444421;border-color:#ef444473}:root[data-theme=light] .friend-noauth-badge{color:#991b1b;background:#ef44441f;border-color:#ef444452}:root[data-theme=light] .grade-total.grade-fail .grade-value,:root[data-theme=light] .maps-placeholder-error,:root[data-theme=light] .scanner-section .status-message.error{color:#b42323}:root[data-theme=light] .account-sheet,:root[data-theme=light] .sheet-modal.info-sheet,:root[data-theme=light] .sheet-modal.confirm-sheet,:root[data-theme=light] .sheet-modal.friends-modal{border-color:#788da84d}:root[data-theme=light] .sheet-modal.info-sheet{background:linear-gradient(#fcfefffe,#f4f8fdfe)}:root[data-theme=light] .sheet-modal.info-sheet .info-text,:root[data-theme=light] .account-sheet .profile-section,:root[data-theme=light] .account-sheet .profile-stats,:root[data-theme=light] .account-sheet .profile-history-item,:root[data-theme=light] .account-sheet .account-row,:root[data-theme=light] .account-sheet .profile-kv-row,:root[data-theme=light] .account-sheet .share-toggle,:root[data-theme=light] .account-sheet .stat-card,:root[data-theme=light] .account-sheet .profile-inline-note{background:var(--glass-bg);border-color:var(--glass-border);box-shadow:none}:root[data-theme=light] .account-sheet .account-title,:root[data-theme=light] .account-sheet .profile-name,:root[data-theme=light] .account-sheet .account-value,:root[data-theme=light] .account-sheet .profile-section-title,:root[data-theme=light] .account-sheet .profile-stats-title,:root[data-theme=light] .account-sheet .profile-history-time,:root[data-theme=light] .account-sheet .profile-history-message,:root[data-theme=light] .account-sheet .profile-stats-line span:last-child{color:#162437}:root[data-theme=light] .account-sheet .account-subtitle,:root[data-theme=light] .account-sheet .profile-id,:root[data-theme=light] .account-sheet .account-label,:root[data-theme=light] .account-sheet .stat-label,:root[data-theme=light] .account-sheet .profile-section-meta,:root[data-theme=light] .account-sheet .profile-history-meta,:root[data-theme=light] .account-sheet .profile-stats-line,:root[data-theme=light] .account-sheet .profile-stats-foot,:root[data-theme=light] .account-sheet .delete-account-hint{color:#5c6f86}:root[data-theme=light] .account-sheet .profile-stats-lines,:root[data-theme=light] .account-sheet .profile-stats-line+.profile-stats-line,:root[data-theme=light] .account-sheet .profile-stats-foot,:root[data-theme=light] .account-sheet .account-header{border-color:#64748b38}:root[data-theme=light] .account-sheet .account-close,:root[data-theme=light] .account-sheet .profile-stats-info,:root[data-theme=light] .account-sheet .profile-action-link,:root[data-theme=light] .account-sheet .account-channel-btn,:root[data-theme=light] .account-sheet .account-logout{color:#1f2d40;background:#0f172a08;border-color:#64748b4d}:root[data-theme=light] .account-sheet .account-close:hover,:root[data-theme=light] .account-sheet .profile-stats-info:hover,:root[data-theme=light] .account-sheet .profile-action-link:hover:not(:disabled),:root[data-theme=light] .account-sheet .account-channel-btn:hover,:root[data-theme=light] .account-sheet .account-logout:hover{background:rgba(var(--accent-rgb),.12);border-color:rgba(var(--accent-rgb),.34);color:#171717}:root[data-theme=light] .account-sheet .sync-badge{background:#0f172a08;border-color:#64748b47}:root[data-theme=light] .account-sheet .sync-badge.is-on{color:#14532d;background:rgba(var(--accent-rgb),.18);border-color:rgba(var(--accent-rgb),.38)}:root[data-theme=light] .account-sheet .sync-badge.is-off{color:#475a72;background:#64748b21;border-color:#64748b4d}:root[data-theme=light] .account-sheet .profile-inline-note.is-ok,:root[data-theme=light] .account-sheet .history-status.is-success{color:#14532d;background:rgba(var(--accent-rgb),.15);border-color:rgba(var(--accent-rgb),.34)}:root[data-theme=light] .account-sheet .profile-inline-note.is-error,:root[data-theme=light] .account-sheet .history-status.is-error{color:#9f1d1d;background:#ef44441f;border-color:#ef444452}:root[data-theme=light] .account-sheet .delete-account-btn{color:#9f1d1d;background:#ef44441a;border-color:#ef444459}:root[data-theme=light] .account-sheet .delete-account-btn:hover{color:#7f1d1d;background:#ef444426;border-color:#ef44446b}:root[data-theme=light] .friends-card .member-indicator.inactive,:root[data-theme=light] .dashboard-friends .member-indicator.inactive{background:#8ea0b8}:root[data-theme=light] .btn-favorite{color:#5c6f86;background:#0f172a08;border-color:#64748b4d}:root[data-theme=light] .btn-favorite:hover{color:#1f2d40;background:#0f172a0f;border-color:#64748b66}:root[data-theme=light] .btn-favorite.is-active{color:#171717;border-color:rgba(var(--accent-rgb),.38);background:rgba(var(--accent-rgb),.14);box-shadow:none}:root[data-theme=light] .passes-dot,:root[data-theme=light] .azan-dot{background:#8ea0b8}:root[data-theme=light] .passes-item:hover .passes-dot,:root[data-theme=light] .azan-row.is-next .azan-dot{background:var(--accent)}:root[data-theme=light] .grade-total .grade-label{color:#4f627b}:root[data-theme=light] .grades-summary{background:#0f172a08;border-color:#64748b47}:root[data-theme=light] .summary-label{color:#5f7188}:root[data-theme=light] .maps-retry-btn{color:#9f1d1d;background:#ef44441a;border-color:#ef444457}:root[data-theme=light] .scanner-section .status-message.scanning{color:#4f627b;background:#0f172a08;border-color:#64748b47}:root[data-theme=light] .scanner-section .status-message.success,:root[data-theme=light] .scanner-section .status-message.processing{color:#14532d;background:rgba(var(--accent-rgb),.12);border-color:rgba(var(--accent-rgb),.34)}:root[data-theme=light] .btn-danger,:root[data-theme=light] .delete-account-btn,:root[data-theme=light] .btn-reject,:root[data-theme=light] .btn-remove,:root[data-theme=light] .maps-retry-btn{color:#991b1b;background:#ef44441f;border-color:#ef444461}:root[data-theme=light] .btn-danger:hover,:root[data-theme=light] .delete-account-btn:hover,:root[data-theme=light] .btn-reject:hover,:root[data-theme=light] .btn-remove:hover,:root[data-theme=light] .maps-retry-btn:hover{color:#7f1d1d;background:#ef44442e;border-color:#ef444475}:root[data-theme=light] .btn-danger:disabled,:root[data-theme=light] .delete-account-btn:disabled{color:#a35a5a;background:#ef444414;border-color:#ef44443d}:root[data-theme=light] .score-value,:root[data-theme=light] .summary-value,:root[data-theme=light] .grades-hero-value,:root[data-theme=light] .grade-value,:root[data-theme=light] .grade-total .grade-value,:root[data-theme=light] .passes-hero-time,:root[data-theme=light] .passes-time,:root[data-theme=light] .azan-hero-time,:root[data-theme=light] .azan-time,:root[data-theme=light] .schedule-hero-count,:root[data-theme=light] .stat-value,:root[data-theme=light] .today-time,:root[data-theme=light] .acs-time{color:#0f6b37}:root[data-theme=light] .grade-total.grade-fail .grade-value{color:#b42323}:root[data-theme=light] .grade-badge.grade-a,:root[data-theme=light] .grade-badge.grade-отлично,:root[data-theme=light] .grade-badge.grade-зачтено{color:var(--accent-hover);background:rgba(var(--accent-rgb),.14);border-color:rgba(var(--accent-rgb),.32)}:root[data-theme=light] .grade-badge.grade-b,:root[data-theme=light] .grade-badge.grade-хорошо{color:#1d4ed8;background:#3b82f624;border-color:#3b82f652}:root[data-theme=light] .grade-badge.grade-c,:root[data-theme=light] .grade-badge.grade-удовлетворительно{color:#92400e;background:#f59e0b29;border-color:#f59e0b57}:root[data-theme=light] .grade-badge.grade-d,:root[data-theme=light] .grade-badge.grade-f,:root[data-theme=light] .grade-badge.grade-неудовлетворительно,:root[data-theme=light] .grade-badge.grade-незачтено{color:#9f1d1d;background:#ef44441f;border-color:#ef444452}:root[data-theme=ocean] .esports-input:focus{border-color:#22d3ee80;box-shadow:0 0 0 3px #22d3ee1a,inset 0 .5px #ffffff0f}:root[data-theme=ocean] .esports-chip.active{color:#bae6fd;background:#22d3ee2e;border-color:#22d3ee80}:root[data-theme=ocean] .share-toggle input[type=checkbox]:checked,:root[data-theme=ocean] .friends-checkbox input[type=checkbox]:checked{background:#22d3ee47;border-color:#22d3ee85}:root[data-theme=ocean] .scanner-section .status-message.success,:root[data-theme=ocean] .scanner-section .status-message.processing{color:#7dd3fc;background:#22d3ee1f;border-color:#22d3ee57}:root[data-theme=ocean] .scanner-section .status-message.scanning{color:#8899b4;background:#22d3ee0f;border-color:#22d3ee2e}:root[data-theme=ocean] .account-sheet .sync-badge.is-on{color:#7dd3fc;background:#22d3ee2e;border-color:#22d3ee61}:root[data-theme=ocean] .account-sheet .profile-inline-note.is-ok,:root[data-theme=ocean] .account-sheet .history-status.is-success{color:#7dd3fc;background:#22d3ee26;border-color:#22d3ee57}:root[data-theme=ocean] .friends-loading-pill{color:#7dd3fc;background:#0f1d35f2;border-color:#22d3ee57}:root[data-theme=ocean] .btn-favorite.is-active{color:#7dd3fc;background:#22d3ee24;border-color:#22d3ee61}:root[data-theme=ocean] .passes-item:hover .passes-dot,:root[data-theme=ocean] .azan-row.is-next .azan-dot{background:#38bdf8}:root[data-theme=ocean] .grades-mode-toggle.is-active{background:#22d3ee29;border-color:#22d3ee57}:root[data-theme=ocean] .account-sheet .account-close:hover,:root[data-theme=ocean] .account-sheet .profile-stats-info:hover,:root[data-theme=ocean] .account-sheet .profile-action-link:hover:not(:disabled),:root[data-theme=ocean] .account-sheet .account-channel-btn:hover,:root[data-theme=ocean] .account-sheet .account-logout:hover{color:#bae6fd;background:#22d3ee1f;border-color:#22d3ee57}:root[data-theme=ocean] .profile-menu-item:hover{background:#22d3ee14}:root[data-theme=ocean] .profile-menu-item:active{background:#22d3ee24}.theme-picker{gap:8px;padding:8px 0 4px;display:flex}.theme-option{border-radius:var(--radius-md);border:1.5px solid var(--glass-border);background:var(--glass-bg);cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast),transform var(--transition-fast);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;flex-direction:column;flex:1;align-items:center;gap:6px;padding:10px 6px 8px;display:flex}.theme-option:active{transform:scale(var(--scale-press))}.theme-option.is-active{border-color:var(--accent);background:rgba(var(--accent-rgb,56, 189, 248),.08)}.theme-swatch{border:2px solid #ffffff1f;border-radius:50%;flex-shrink:0;width:28px;height:28px;box-shadow:inset 0 -4px 8px #00000026,0 2px 6px #0000001f}.theme-swatch.swatch-dark{background:linear-gradient(135deg,#1a1a1a,#0a0a0a)}.theme-swatch.swatch-light{background:linear-gradient(135deg,#f0f4f9,#dde5ef);border-color:#00000014}.theme-swatch.swatch-ocean{background:linear-gradient(135deg,#1e3a6e,#0b1628);border-color:#22d3ee40}.theme-option-label{color:var(--text-secondary);letter-spacing:.2px;font-size:11px;font-weight:600}.theme-option.is-active .theme-option-label{color:var(--accent)}.theme-option.is-active .theme-swatch{border-color:var(--accent);box-shadow:inset 0 -4px 8px #00000026,0 0 0 3px rgba(var(--accent-rgb,56, 189, 248),.18),0 2px 6px #0000001f}:root[data-theme=light] .theme-swatch{border-color:#00000014}:root[data-theme=light] .theme-swatch.swatch-dark{border-color:#0000001f}:root[data-theme=light] .theme-option.is-active{border-color:var(--accent);background:rgba(var(--accent-rgb),.08)}:root[data-theme=light] .theme-option.is-active .theme-swatch{border-color:var(--accent);box-shadow:inset 0 -4px 8px #0000001a,0 0 0 3px rgba(var(--accent-rgb),.15),0 2px 6px #00000014}:root[data-theme=ocean] .theme-option.is-active{border-color:var(--accent);background:#22d3ee14}:root[data-theme=ocean] .theme-option.is-active .theme-swatch{border-color:var(--accent);box-shadow:inset 0 -4px 8px #00000026,0 0 0 3px #22d3ee2e,0 2px 6px #0000001f}.feed-section{flex-direction:column;gap:0;width:100%;max-width:600px;margin:0 auto;padding-bottom:20px;animation:.35s cubic-bezier(.16,1,.3,1) forwards tabFadeIn;display:flex}.post-composer{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);align-items:flex-start;gap:12px;margin-bottom:16px;padding:16px;display:flex}.post-composer-avatar{flex-shrink:0}.post-composer-body{flex:1;min-width:0}.post-composer-input{width:100%;color:var(--text-primary);resize:none;background:0 0;border:none;outline:none;padding:0;font-family:inherit;font-size:16px;line-height:1.5}.post-composer-input::placeholder{color:var(--text-muted);font-size:16px}.post-composer-previews{flex-wrap:wrap;gap:8px;margin:10px 0;display:flex}.post-composer-preview{border-radius:var(--radius-sm);width:72px;height:72px;position:relative;overflow:hidden}.post-composer-preview img{object-fit:cover;width:100%;height:100%}.post-composer-preview-remove{color:#fff;cursor:pointer;background:#000000b3;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:14px;line-height:1;display:flex;position:absolute;top:2px;right:2px}.post-composer-toolbar{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;margin-top:12px;padding-top:12px;display:flex}.post-composer-actions{align-items:center;gap:4px;display:flex}.post-composer-attach{color:var(--accent);cursor:pointer;background:0 0;border:none;border-radius:50%;align-items:center;padding:8px;transition:all .15s;display:flex}.post-composer-attach:hover{background:rgba(var(--accent-rgb),.1)}.post-composer-attach:disabled{opacity:.3;cursor:default}.post-composer-poll-toggle{color:var(--accent);border-radius:50%;padding:8px}.post-composer-poll-toggle:hover{background:rgba(var(--accent-rgb),.1)}.post-composer-poll-toggle.active{color:var(--accent);background:rgba(var(--accent-rgb),.12)}.post-composer-visibility{border:1px solid var(--border);color:var(--text-secondary);border-radius:var(--radius-xs);cursor:pointer;background:0 0;padding:4px 8px;font-size:13px}.post-composer-submit{border-radius:var(--radius-sm);padding:8px 18px;font-size:14px}.post-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:12px;padding:16px;transition:background .15s}.post-card-header{align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.post-card-avatar{background:rgba(var(--accent-rgb),.15);width:40px;height:40px;color:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}.post-card-author-info{flex:1;min-width:0}.post-card-author{color:var(--text-primary);align-items:baseline;gap:6px;font-size:15px;font-weight:600;line-height:1.3;display:flex}.post-card-username{color:var(--text-secondary);font-size:14px;font-weight:400}.post-card-time{color:var(--text-muted);align-items:center;gap:4px;margin-top:1px;font-size:13px;display:flex}.post-card-visibility{opacity:.6;display:inline-flex}.post-card-menu{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-xs);opacity:0;transition:opacity var(--transition-fast);background:0 0;border:none;padding:4px}.post-card:hover .post-card-menu{opacity:1}.post-card-menu:hover{color:var(--error)}.post-card-report:hover{color:var(--text-secondary)}.post-card-text{color:var(--text-primary);white-space:pre-wrap;word-break:break-word;font-size:15px;line-height:1.55}.post-card-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;margin-top:12px;padding-top:10px;display:flex}.post-card-comments-count{color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;flex-shrink:0;padding:0;font-family:inherit;font-size:13px}.post-card-comments-count:hover{color:var(--text-secondary);text-decoration:underline}.post-card-stats{align-items:center;gap:12px;display:flex}.post-card-views{color:var(--text-muted);white-space:nowrap;font-variant-numeric:tabular-nums;align-items:center;gap:4px;font-size:13px;display:flex}.post-card-actions{border-top:1px solid var(--border);align-items:center;gap:4px;margin-top:8px;padding-top:8px;display:flex}.post-card-action{color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;flex:1;justify-content:center;align-items:center;gap:6px;padding:8px 4px;font-family:inherit;font-size:13px;transition:background .12s,color .12s;display:flex}.post-card-action:hover{color:var(--text-primary);background:#80808014}.post-card-action.active{color:var(--accent)}.post-card-action svg{flex-shrink:0}.post-images{border-radius:var(--radius-sm);gap:4px;margin-top:10px;display:grid;overflow:hidden}.post-images-1{grid-template-columns:1fr}.post-images-2{grid-template-columns:1fr 1fr}.post-images-3{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr}.post-images-3 .post-image-item:first-child{grid-row:1/3}.post-images-4{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr}.post-image-item{cursor:pointer;background:0 0;border:none;padding:0;overflow:hidden}.post-images-1 .post-image-item{max-height:500px}.post-images-2 .post-image-item,.post-images-3 .post-image-item,.post-images-4 .post-image-item{aspect-ratio:4/3}.post-image-item img{object-fit:contain;width:100%;height:100%;display:block}.post-images-2 .post-image-item img,.post-images-3 .post-image-item img,.post-images-4 .post-image-item img{object-fit:cover}.post-lightbox{z-index:9999;background:#000000eb;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.post-lightbox>img{object-fit:contain;border-radius:var(--radius-sm);max-width:100%;max-height:90vh}.post-lightbox-close{color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;display:flex;position:absolute;top:16px;right:16px}.post-lightbox-nav{color:#fff;align-items:center;gap:16px;font-size:14px;display:flex;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.post-lightbox-nav button{color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.post-lightbox-nav button:disabled{opacity:.3;cursor:default}.reaction-bar{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.reaction-pill{border:1px solid var(--border);border-radius:var(--radius-pill);cursor:pointer;color:var(--text-secondary);background:#ffffff0a;align-items:center;gap:5px;padding:5px 12px;font-size:14px;transition:all .15s;display:flex}.reaction-pill:hover{border-color:var(--text-muted);background:#ffffff12}.reaction-mine{background:rgba(var(--accent-rgb),.12);border-color:rgba(var(--accent-rgb),.3);color:var(--accent)}.reaction-mine:hover{background:rgba(var(--accent-rgb),.18)}.reaction-emoji{font-size:16px}.reaction-count{font-size:13px;font-weight:600}.reaction-add-wrap{position:relative}.reaction-add-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-pill);transition:all var(--transition-fast);background:0 0;border:1px solid #0000;align-items:center;padding:4px 6px;display:flex}.reaction-add-btn:hover{color:var(--text-primary);border-color:var(--border);background:var(--bg-secondary)}.reaction-picker{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);z-index:100;grid-template-columns:repeat(7,1fr);gap:2px;min-width:240px;margin-bottom:6px;padding:8px;display:grid;position:absolute;bottom:100%;left:0;box-shadow:0 8px 24px #0000004d}.reaction-picker-item{cursor:pointer;border-radius:var(--radius-xs);transition:background var(--transition-fast);text-align:center;background:0 0;border:none;padding:6px;font-size:20px}.reaction-picker-item:hover{background:var(--bg-secondary)}.comments-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:flex-end;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.comments-sheet{background:var(--bg-card);border-radius:var(--radius-lg) var(--radius-lg) 0 0;flex-direction:column;width:100%;max-width:600px;max-height:70vh;animation:.25s ease-out slideUp;display:flex}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.comments-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.comments-title{color:var(--text-primary);font-size:16px;font-weight:600}.comments-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:4px}.comments-list{flex-direction:column;flex:1;gap:12px;padding:12px 16px;display:flex;overflow-y:auto}.comments-empty{text-align:center;color:var(--text-muted);padding:30px 0;font-size:14px}.comment-item{gap:10px;display:flex}.comment-avatar{background:rgba(var(--accent-rgb),.12);width:30px;height:30px;color:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex}.comment-body{flex:1;min-width:0}.comment-meta{align-items:center;gap:8px;margin-bottom:2px;display:flex}.comment-author{color:var(--text-primary);font-size:13px;font-weight:600}.comment-time{color:var(--text-muted);font-size:11px}.comment-delete{color:var(--text-muted);cursor:pointer;opacity:0;transition:opacity var(--transition-fast);background:0 0;border:none;padding:2px}.comment-item:hover .comment-delete{opacity:1}.comment-delete:hover{color:var(--error)}.comment-text{color:var(--text-primary);font-size:14px;line-height:1.4}.comments-input-row{border-top:1px solid var(--border);gap:8px;padding:10px 16px;display:flex}.comments-input{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);outline:none;flex:1;padding:10px 14px;font-family:inherit;font-size:14px}.comments-input::placeholder{color:var(--text-muted)}.comments-send{background:var(--accent);color:var(--bg-primary);border-radius:var(--radius-sm);cursor:pointer;width:38px;height:38px;transition:opacity var(--transition-fast);border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.comments-send:disabled{opacity:.4;cursor:default}.feed-error{text-align:center;color:var(--error);flex-direction:column;align-items:center;gap:8px;padding:16px;font-size:14px;display:flex}.feed-error button{background:var(--bg-card);border:1px solid var(--border);color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;padding:6px 16px;font-size:13px}.feed-empty{text-align:center;color:var(--text-muted);padding:40px 20px}.feed-empty p{margin:4px 0;font-size:15px}.feed-empty-hint{font-size:13px!important}.feed-loading{justify-content:center;padding:20px;display:flex}.feed-spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:24px;height:24px;animation:.6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.feed-sentinel{height:1px}.poll-builder{border:1px solid var(--color-border);background:var(--color-bg-secondary);border-radius:12px;margin-top:8px;padding:12px}.poll-builder-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.poll-builder-title{color:var(--color-text);font-size:13px;font-weight:600}.poll-builder-remove{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;padding:4px;display:flex}.poll-builder-remove:hover{background:var(--color-bg-hover);color:var(--color-text)}.poll-builder-question{border:1px solid var(--color-border);background:var(--color-bg);width:100%;color:var(--color-text);box-sizing:border-box;border-radius:8px;outline:none;margin-bottom:8px;padding:8px 10px;font-size:14px}.poll-builder-question:focus{border-color:var(--color-primary)}.poll-builder-options{flex-direction:column;gap:6px;display:flex}.poll-builder-option{align-items:center;gap:6px;display:flex}.poll-builder-option input{border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);box-sizing:border-box;border-radius:8px;outline:none;flex:1;padding:7px 10px;font-size:13px}.poll-builder-option input:focus{border-color:var(--color-primary)}.poll-builder-option-remove{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;align-items:center;padding:4px;display:flex}.poll-builder-option-remove:hover{color:var(--color-danger)}.poll-builder-add{color:var(--color-primary);cursor:pointer;text-align:left;background:0 0;border:none;margin-top:4px;padding:6px 0;font-size:13px}.poll-builder-add:hover{text-decoration:underline}.poll-builder-multiple{color:var(--color-text-secondary);cursor:pointer;align-items:center;gap:6px;margin-top:8px;font-size:13px;display:flex}.poll-builder-multiple input[type=checkbox]{accent-color:var(--color-primary)}.poll-view{margin:10px 0}.poll-view-question{color:var(--color-text);margin-bottom:10px;font-size:15px;font-weight:600}.poll-view-options{flex-direction:column;gap:6px;display:flex}.poll-view-option{border:1px solid var(--color-border);background:var(--color-bg-secondary);width:100%;color:var(--color-text);cursor:pointer;text-align:left;border-radius:10px;align-items:center;gap:8px;padding:10px 14px;font-size:14px;transition:border-color .15s,background .15s;display:flex}.poll-view-option:hover{border-color:var(--color-primary);background:var(--color-bg-hover)}.poll-view-option--selected{border-color:var(--color-primary);background:rgba(var(--color-primary-rgb,99,102,241),.08)}.poll-view-checkbox{accent-color:var(--color-primary);flex-shrink:0}.poll-view-result{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:10px;padding:10px 14px;position:relative;overflow:hidden}.poll-view-result--voted{border-color:var(--color-primary)}.poll-view-result-bar{background:rgba(var(--color-primary-rgb,99,102,241),.12);border-radius:10px;height:100%;transition:width .4s;position:absolute;top:0;left:0}.poll-view-result-content{z-index:1;justify-content:space-between;align-items:center;display:flex;position:relative}.poll-view-result-text{color:var(--color-text);font-size:14px}.poll-view-check{color:var(--color-primary);font-weight:600}.poll-view-result-pct{color:var(--color-text-secondary);text-align:right;min-width:36px;font-size:13px;font-weight:600}.poll-view-submit{border-radius:10px;width:100%;margin-top:8px;padding:10px;font-size:14px}.poll-view-footer{justify-content:space-between;align-items:center;margin-top:8px;display:flex}.poll-view-total{color:var(--color-text-secondary);font-size:13px}.poll-view-unvote{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:2px 0;font-size:13px}.poll-view-unvote:hover{text-decoration:underline}.post-composer-poll-toggle{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;padding:6px;transition:color .15s,background .15s;display:flex}.post-composer-poll-toggle:hover{background:var(--color-bg-hover);color:var(--color-text)}.post-composer-poll-toggle.active{color:var(--color-primary)}.notification-bell{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:6px;transition:color .15s;display:flex;position:relative}.notification-bell:hover{color:var(--text-primary)}.notification-bell-badge{color:#fff;text-align:center;pointer-events:none;background:#ef4444;border-radius:8px;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;line-height:16px;position:absolute;top:0;right:-2px}.header-actions .notification-bell{width:44px;height:44px}.header-actions .notification-bell svg{width:22px;height:22px}.sidebar-footer .notification-bell{border-radius:8px;width:36px;height:36px}.sidebar-footer .notification-bell:hover{background:#ffffff0f}.notif-sheet-overlay{z-index:10000;background:#00000080;justify-content:center;align-items:flex-start;padding-top:60px;animation:.15s fadeIn;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.notif-sheet{background:var(--bg-card);border-radius:16px;flex-direction:column;width:min(420px,100vw - 32px);max-height:calc(100vh - 120px);animation:.2s notifSlideIn;display:flex;overflow:hidden;box-shadow:0 16px 48px #0006}@keyframes notifSlideIn{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.notif-sheet-header{border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.notif-sheet-header h3{color:var(--text-primary);margin:0;font-size:16px;font-weight:600}.notif-sheet-actions{align-items:center;gap:8px;display:flex}.notif-mark-all{color:var(--accent);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 8px;font-size:13px;transition:background .15s}.notif-mark-all:hover{background:rgba(var(--accent-rgb),.1)}.notif-sheet-close{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px;transition:background .15s;display:flex}.notif-sheet-close:hover{background:#ffffff0f}.notif-sheet-body{flex:1;padding:8px 0;overflow-y:auto}.notif-empty{text-align:center;color:var(--text-muted);padding:32px 20px;font-size:14px}.notif-item{align-items:flex-start;gap:12px;padding:12px 20px;transition:background .15s;display:flex;position:relative}.notif-item:hover{background:#ffffff08}.notif-clickable{cursor:pointer}.notif-unread{background:rgba(var(--accent-rgb),.04)}.notif-icon{text-align:center;flex-shrink:0;width:28px;padding-top:2px;font-size:20px}.notif-content{flex:1;min-width:0}.notif-text{color:var(--text-primary);font-size:14px;line-height:1.4}.notif-preview{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:13px;overflow:hidden}.notif-time{color:var(--text-muted);margin-top:4px;font-size:12px}.notif-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:6px}[data-theme=light] .notif-sheet{box-shadow:0 16px 48px #00000026}[data-theme=light] .notif-sheet-header{border-bottom-color:#00000014}[data-theme=light] .notif-item:hover{background:#00000008}[data-theme=light] .notif-unread{background:rgba(var(--accent-rgb),.06)}[data-theme=light] .sidebar-footer .notification-bell:hover,[data-theme=light] .notif-sheet-close:hover{background:#0000000f}.messenger-btn{color:var(--text-primary);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:6px;transition:background .15s;display:flex;position:relative}.messenger-btn:hover{background:#ffffff14}.messenger-btn-badge{background:var(--accent);color:#fff;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;line-height:1;display:flex;position:absolute;top:0;right:-2px}.msg-sheet-overlay{z-index:1100;background:#00000080;justify-content:center;align-items:flex-start;padding-top:60px;animation:.2s fade-in;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.msg-sheet{background:var(--bg-card);border-radius:16px;flex-direction:column;width:420px;max-width:95vw;max-height:80vh;animation:.2s slide-up;display:flex;overflow:hidden;box-shadow:0 16px 48px #0000004d}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.msg-sheet-header{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:12px;padding:16px 20px;display:flex}.msg-sheet-header h3{color:var(--text-primary);flex:1;margin:0;font-size:16px;font-weight:600}.msg-sheet-close,.msg-back-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;transition:background .15s;display:flex}.msg-sheet-close:hover,.msg-back-btn:hover{background:#ffffff14}.msg-sheet-body{flex:1;min-height:0;overflow-y:auto}.msg-empty{text-align:center;color:var(--text-secondary);padding:40px 20px;font-size:14px}.msg-conv-item{cursor:pointer;align-items:center;gap:12px;padding:12px 20px;transition:background .15s;display:flex}.msg-conv-item:hover{background:#ffffff0a}.msg-conv-unread{background:rgba(var(--accent-rgb),.04)}.msg-conv-avatar{background:var(--accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:14px;font-weight:600;display:flex}.msg-conv-info{flex:1;min-width:0}.msg-conv-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.msg-conv-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.msg-conv-time{color:var(--text-secondary);flex-shrink:0;font-size:12px}.msg-conv-bottom{justify-content:space-between;align-items:center;gap:8px;margin-top:2px;display:flex}.msg-conv-preview{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.msg-conv-badge{background:var(--accent);color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:700;display:flex}.msg-chat-body{flex-direction:column;flex:1;gap:4px;min-height:0;padding:12px 16px;display:flex;overflow-y:auto}.msg-load-more{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:16px;align-self:center;margin-bottom:8px;padding:6px 16px;font-size:12px;transition:background .15s}.msg-load-more:hover{background:#ffffff0f}.msg-bubble{word-wrap:break-word;border-radius:16px;max-width:80%;padding:8px 12px;font-size:14px;line-height:1.4}.msg-mine{background:var(--accent);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}.msg-theirs{background:var(--bg-secondary);color:var(--text-primary);border-bottom-left-radius:4px;align-self:flex-start}.msg-bubble-text{white-space:pre-wrap}.msg-bubble-meta{justify-content:flex-end;align-items:center;gap:4px;margin-top:2px;display:flex}.msg-bubble-time{opacity:.65;font-size:11px}.msg-bubble-status{opacity:.5;font-size:11px}.msg-bubble-status.msg-read{opacity:.85}.msg-bubble{position:relative}.msg-bubble-delete{width:20px;height:20px;color:var(--text-secondary);cursor:pointer;opacity:0;background:#00000026;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:13px;line-height:1;transition:opacity .15s;display:flex;position:absolute;top:2px;right:2px}.msg-bubble:hover .msg-bubble-delete{opacity:1}.msg-bubble-delete:hover{color:#d33;background:#dc323240}.msg-typing{color:var(--text-secondary);padding:4px 0;font-size:12px;font-style:italic}.msg-date-separator{text-align:center;color:var(--text-secondary);letter-spacing:.3px;padding:12px 0 4px;font-size:11px}.msg-input-area{border-top:1px solid var(--border);flex-shrink:0;align-items:flex-end;gap:8px;padding:12px 16px;display:flex}.msg-input{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);resize:none;border-radius:20px;outline:none;flex:1;max-height:120px;padding:10px 16px;font-family:inherit;font-size:14px;line-height:1.4;transition:border-color .15s}.msg-input:focus{border-color:var(--accent)}.msg-input::placeholder{color:var(--text-secondary)}.msg-send-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;transition:opacity .15s;display:flex}.msg-send-btn:disabled{opacity:.4;cursor:default}.msg-send-btn:not(:disabled):hover{opacity:.85}[data-theme=light] .messenger-btn:hover,[data-theme=light] .msg-sheet-close:hover,[data-theme=light] .msg-back-btn:hover{background:#0000000f}[data-theme=light] .msg-conv-item:hover{background:#00000008}[data-theme=light] .msg-conv-unread{background:rgba(var(--accent-rgb),.06)}[data-theme=light] .msg-load-more:hover{background:#0000000a}@media (max-width:768px){.msg-sheet{border-radius:0;width:100%;max-width:100%;height:100vh;max-height:100vh}.msg-sheet-overlay{align-items:stretch;padding-top:0}}.avatar-img{object-fit:cover;border-radius:50%;flex-shrink:0}.avatar-initials{background:rgba(var(--accent-rgb),.15);color:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;line-height:1;display:flex}.profile-avatar-upload{cursor:pointer;position:relative}.profile-avatar-edit{opacity:0;cursor:pointer;color:#fff;background:#00000080;border-radius:14px;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:absolute;top:0;right:0;bottom:0;left:0}.profile-avatar-upload:hover .profile-avatar-edit{opacity:1}.profile-avatar-remove{background:var(--error);color:#fff;border:2px solid var(--bg-card);cursor:pointer;opacity:0;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;padding:0;transition:opacity .2s;display:flex;position:absolute;top:-4px;right:-4px}.profile-avatar-upload:hover .profile-avatar-remove{opacity:1}.profile-bio{color:var(--text-secondary);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:4px;font-size:12px;line-height:1.4;display:-webkit-box;overflow:hidden}.search-sheet{max-width:520px}.search-input-wrap{padding:0 16px 12px}.search-input{border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);background:#ffffff0f;outline:none;padding:10px 14px;font-size:14px;transition:border-color .2s}.search-input:focus{border-color:rgba(var(--accent-rgb),.5)}.search-input::placeholder{color:var(--text-muted)}.search-section{margin-bottom:16px}.search-section-title{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);padding:0 0 8px;font-size:11px;font-weight:600}.search-user-item{border-bottom:1px solid #ffffff0a;align-items:center;gap:10px;padding:8px 0;display:flex}.search-user-item:last-child{border-bottom:none}.search-user-info{flex:1;min-width:0}.search-user-name{color:var(--text-primary);font-size:14px;font-weight:500}.search-user-username{color:var(--text-muted);font-size:12px}.search-user-bio{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12px;overflow:hidden}.search-post-item{border-bottom:1px solid #ffffff0a;padding:8px 0}.search-post-item:last-child{border-bottom:none}.search-post-meta{align-items:center;gap:6px;margin-bottom:4px;display:flex}.search-post-author{color:var(--text-primary);font-size:12px;font-weight:500}.search-post-time{color:var(--text-muted);font-size:11px}.search-post-text{color:var(--text-secondary);text-overflow:ellipsis;-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:13px;line-height:1.4;display:-webkit-box;overflow:hidden}.ap-overlay{z-index:1100;background:#0000008c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.ap-root{background:var(--bg-primary);border:1px solid var(--border);border-radius:8px;width:880px;max-width:96vw;height:620px;max-height:92vh;display:flex;overflow:hidden;box-shadow:0 16px 48px #0006}.ap-side{border-right:1px solid var(--border);flex-direction:column;width:190px;min-width:190px;padding:16px 0;display:flex}.ap-side-head{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);padding:0 16px 14px;font-size:11px;font-weight:600}.ap-side-nav{flex-direction:column;gap:1px;padding:0 6px;display:flex}.ap-side-btn{color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:4px;align-items:center;gap:8px;padding:8px 10px;font-family:inherit;font-size:13px;font-weight:500;transition:background 80ms,color 80ms;display:flex}.ap-side-btn:hover{background:var(--dk-hover,#ffffff08);color:var(--text-primary)}.ap-side-btn.active{background:rgba(var(--accent-rgb),.1);color:var(--accent)}.ap-side-btn svg{flex-shrink:0}.ap-badge{background:var(--accent);color:#000;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:auto;padding:0 5px;font-size:10px;font-weight:700;display:inline-flex}.ap-main{flex-direction:column;flex:1;min-width:0;display:flex}.ap-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.ap-head h2{color:var(--text-primary);letter-spacing:-.2px;margin:0;font-size:16px;font-weight:700}.ap-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px;transition:background 80ms}.ap-close:hover{background:var(--dk-hover,#ffffff08);color:var(--text-primary)}.ap-body{flex:1;padding:20px;overflow-y:auto}.ap-empty{text-align:center;color:var(--text-muted);padding:40px 0;font-size:13px}.ap-section-label{text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);border-bottom:1px solid var(--border);margin-bottom:8px;padding-bottom:8px;font-size:11px;font-weight:600}.ap-kpi-grid+.ap-section-label{margin-top:20px}.ap-kpi-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.ap-kpi{text-align:center;border:1px solid var(--border);background:0 0;border-radius:6px;padding:14px;transition:border-color 80ms}.ap-kpi:hover{border-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.ap-kpi:hover{border-color:color-mix(in srgb,var(--border) 50%,var(--text-muted))}}.ap-kpi-val{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:24px;font-weight:700;line-height:1}.ap-kpi-lbl{color:var(--text-muted);margin-top:4px;font-size:11px}.ap-kpi.accent{border-color:rgba(var(--accent-rgb),.25)}.ap-kpi.accent .ap-kpi-val{color:var(--accent)}.ap-kpi.warn{border-color:#f851494d}.ap-kpi.warn .ap-kpi-val{color:#f85149}.ap-tabs-bar{gap:4px;margin-bottom:14px;display:flex}.ap-pill{color:var(--text-secondary);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:4px;padding:5px 14px;font-family:inherit;font-size:12px;font-weight:600;transition:background 80ms,color 80ms,border-color 80ms}.ap-pill:hover{background:var(--dk-hover,#ffffff08);color:var(--text-primary)}.ap-pill.active{background:rgba(var(--accent-rgb),.1);color:var(--accent);border-color:var(--accent)}.ap-report-list{flex-direction:column;gap:8px;display:flex}.ap-report{border:1px solid var(--border);background:0 0;border-radius:6px;padding:14px;transition:border-color 80ms}.ap-report:hover{border-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.ap-report:hover{border-color:color-mix(in srgb,var(--border) 50%,var(--text-muted))}}.ap-report.resolved{opacity:.65}.ap-report-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.ap-report-tag{text-transform:uppercase;letter-spacing:.3px;color:var(--text-primary);background:var(--dk-card-bg,#ffffff05);border:1px solid var(--border);border-radius:3px;padding:2px 8px;font-size:10px;font-weight:600}.ap-report-date{color:var(--text-muted);font-size:11px}.ap-report-quote{border-left:2px solid var(--border);background:var(--dk-card-bg,#ffffff05);border-radius:0 4px 4px 0;margin-bottom:8px;padding:8px 10px}.ap-report-quote strong{color:var(--text-primary);margin-bottom:2px;font-size:12px;display:block}.ap-report-quote p{color:var(--text-secondary);max-height:42px;margin:0;font-size:12px;line-height:1.4;overflow:hidden}.ap-report-meta{color:var(--text-secondary);margin-bottom:4px;font-size:12px}.ap-report-meta strong{color:var(--text-primary);font-weight:500}.ap-report-reason{color:var(--text-primary);background:var(--dk-card-bg,#ffffff05);border:1px solid var(--border);border-radius:4px;margin-top:4px;padding:6px 8px;font-size:12px}.ap-report-result{border-top:1px solid var(--border);color:var(--text-muted);margin-top:8px;padding-top:8px;font-size:11px}.ap-report-actions{border-top:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:8px;margin-top:10px;padding-top:10px;display:flex}.ap-report-btns{gap:6px;display:flex}.ap-textarea{width:100%;color:var(--text-primary);border:1px solid var(--border);resize:vertical;background:0 0;border-radius:4px;padding:7px 10px;font-family:inherit;font-size:12px;transition:border-color 80ms}.ap-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px rgba(var(--accent-rgb),.08);outline:none}.ap-act-btn{border:1px solid var(--border);color:var(--text-primary);cursor:pointer;background:0 0;border-radius:4px;padding:4px 10px;font-family:inherit;font-size:12px;font-weight:600;transition:background 80ms,border-color 80ms}.ap-act-btn:hover{background:var(--dk-hover,#ffffff08);border-color:var(--text-muted)}.ap-act-btn.accent{background:var(--accent);color:#000;border-color:var(--accent)}.ap-act-btn.accent:hover{background:var(--accent-hover)}.ap-act-btn.danger{color:#f85149;background:#f851491f;border-color:#f8514940}.ap-act-btn.danger:hover{background:#f8514933}.ap-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;display:flex}.ap-search-box{border:1px solid var(--border);background:0 0;border-radius:4px;flex:1;align-items:center;gap:8px;min-width:180px;height:32px;padding:0 10px;transition:border-color 80ms;display:flex}.ap-search-box:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px rgba(var(--accent-rgb),.08)}.ap-search-box svg{color:var(--text-muted);flex-shrink:0}.ap-search-box input{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;padding:0;font-family:inherit;font-size:13px}.ap-search-box input::placeholder{color:var(--text-muted)}.ap-chips{gap:4px;display:flex}.ap-chip{color:var(--text-secondary);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:4px;padding:4px 10px;font-family:inherit;font-size:12px;font-weight:600;transition:background 80ms,color 80ms,border-color 80ms}.ap-chip:hover{background:var(--dk-hover,#ffffff08);color:var(--text-primary)}.ap-chip.active{background:rgba(var(--accent-rgb),.1);color:var(--accent);border-color:var(--accent)}.ap-user-table{border:1px solid var(--border);border-radius:6px;overflow:hidden}.ap-user-thead{background:var(--bg-secondary,var(--bg-primary));border-bottom:2px solid var(--border);align-items:center;padding:6px 12px;display:flex}.ap-th{text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);font-size:10px;font-weight:600}.ap-user-tr{border-bottom:1px solid var(--border);align-items:center;padding:8px 12px;display:flex}@supports (color:color-mix(in lab,red,red)){.ap-user-tr{border-bottom:1px solid color-mix(in srgb,var(--border) 50%,transparent)}}.ap-user-tr{transition:background 60ms}.ap-user-tr:last-child{border-bottom:none}.ap-user-tr:hover{background:var(--dk-hover,#ffffff08)}.ap-user-tr.stripe{background:var(--dk-stripe,#ffffff04)}.ap-user-tr.stripe:hover{background:var(--dk-hover,#ffffff08)}.ap-user-tr.banned{opacity:.5}.ap-user-cell-main{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.ap-user-cell-name{color:var(--text-primary);align-items:center;gap:6px;font-size:13px;font-weight:500;display:flex}.ap-user-cell-uname{color:var(--accent);font-size:11px;font-weight:500}.ap-user-cell{color:var(--text-secondary);flex-shrink:0;font-size:12px}.ap-tag{text-transform:uppercase;letter-spacing:.3px;border-radius:3px;padding:2px 8px;font-size:10px;font-weight:600}.ap-tag.accent{background:rgba(var(--accent-rgb),.12);color:var(--accent)}.ap-tag.danger{color:#f85149;background:#f851491f}:root[data-theme=light] .avatar-initials{background:rgba(var(--accent-rgb),.12)}:root[data-theme=light] .search-input{background:#0000000a;border-color:#788da833}:root[data-theme=light] .search-user-item,:root[data-theme=light] .search-post-item{border-color:#0000000f}:root[data-theme=light] .profile-avatar-edit{background:#0006}:root{--bg-primary:#09090b;--bg-secondary:#111113;--bg-card:#18181b;--bg-elevated:#1e1e22;--text-primary:#f4f4f5;--text-secondary:#a1a1aa;--text-muted:#52525b;--accent:#34d399;--accent-hover:#10b981;--accent-rgb:52, 211, 153;--accent-hover-rgb:16, 185, 129;--accent-text:#6ee7b7;--accent-text-on:#000;--error:#f87171;--error-rgb:248, 113, 113;--border:#27272a;--border-subtle:#1e1e22;--surface-hover:#ffffff0a;--surface-active:#ffffff0f;--ring:#34d39940;--overlay:#0009;--glass-bg:#ffffff05;--glass-border:#ffffff0f;--glass-blur:blur(16px) saturate(1.2);--glass-shadow:0 1px 0 #ffffff0a, 0 2px 8px #00000014;--hero-border:rgba(var(--accent-rgb), .1);--hero-label-color:var(--accent);--hero-bg:var(--bg-card);--radius-xs:8px;--radius-sm:12px;--radius-md:16px;--radius-lg:20px;--radius-pill:999px;--transition-fast:.15s cubic-bezier(.23, 1, .32, 1);--transition-normal:.25s cubic-bezier(.23, 1, .32, 1);--transition-slow:.35s cubic-bezier(.23, 1, .32, 1);--ease-out:cubic-bezier(.23, 1, .32, 1);--scale-press:.98;--padding-input-y:12px;--padding-input-x:14px;--icon-btn-size:36px;--card-padding:16px}:root[data-theme=light]{--bg-primary:#f4f4f5;--bg-secondary:#fff;--bg-card:#fff;--bg-elevated:#fafafa;--text-primary:#18181b;--text-secondary:#71717a;--text-muted:#a1a1aa;--accent:#059669;--accent-hover:#047857;--accent-rgb:5, 150, 105;--accent-hover-rgb:4, 120, 87;--accent-text:#047857;--accent-text-on:#fff;--error:#dc2626;--error-rgb:220, 38, 38;--border:#e4e4e7;--border-subtle:#f4f4f5;--surface-hover:#00000008;--surface-active:#0000000d;--ring:#05966940;--overlay:#0006;--glass-bg:#fff9;--glass-border:#0000000f;--glass-blur:blur(16px) saturate(1.2);--glass-shadow:0 1px 2px #0000000a;--hero-border:rgba(var(--accent-rgb), .15);--hero-label-color:var(--accent);--hero-bg:var(--bg-card)}:root[data-theme=ocean]{--bg-primary:#0c1222;--bg-secondary:#111827;--bg-card:#1e293b;--bg-elevated:#253349;--text-primary:#e2e8f0;--text-secondary:#94a3b8;--text-muted:#475569;--accent:#22d3ee;--accent-hover:#06b6d4;--accent-rgb:34, 211, 238;--accent-hover-rgb:6, 182, 212;--accent-text:#67e8f9;--accent-text-on:#000;--error:#fb7185;--error-rgb:251, 113, 133;--border:#1e293b;--border-subtle:#162032;--surface-hover:#ffffff0a;--surface-active:#ffffff0f;--ring:#22d3ee40;--overlay:#0009;--glass-bg:#1e293b80;--glass-border:#94a3b814;--glass-blur:blur(16px) saturate(1.2);--glass-shadow:0 1px 0 #94a3b80a, 0 2px 8px #0000001f;--hero-border:rgba(var(--accent-rgb), .12);--hero-label-color:var(--accent);--hero-bg:var(--bg-card)}*,:before,:after{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}body{background:var(--bg-primary);color:var(--text-primary);margin:0;font-family:Geist,system-ui,-apple-system,sans-serif;line-height:1.5}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}::selection{background:rgba(var(--accent-rgb),.2);color:var(--text-primary)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in{animation:.3s ease-out fadeIn}.animate-fade-in-scale{animation:.2s ease-out fadeInScale}.animate-slide-up{animation:.3s ease-out slideUp}.animate-slide-down{animation:.2s ease-out slideDown}.animate-slide-in-right{animation:.25s ease-out slideInRight}.animate-slide-in-left{animation:.25s ease-out slideInLeft}.sheet-overlay{transition:opacity .3s}.sheet-panel{transition:transform .34s cubic-bezier(.32,.72,0,1),opacity .34s}.modal-panel{transition:transform .26s cubic-bezier(.32,.72,0,1),opacity .26s}.skeleton{background:linear-gradient(90deg,var(--border-subtle) 25%,var(--surface-hover) 50%,var(--border-subtle) 75%);background-size:200% 100%;border-radius:6px;animation:1.5s ease-in-out infinite shimmer}.sidebar{display:none}@media (min-width:768px){:root{--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:10px;--radius-pill:4px;--glass-bg:transparent;--glass-border:transparent;--glass-blur:none;--glass-shadow:none;--transition-fast:.1s ease;--transition-normal:.15s ease;--transition-slow:.2s ease;--dk-card-bg:#ffffff05;--dk-card-border:var(--border);--dk-hover:#ffffff08;--dk-stripe:#ffffff04}:root[data-theme=light]{--glass-bg:transparent;--glass-border:transparent;--dk-card-bg:#00000004;--dk-hover:#00000006;--dk-stripe:#00000005}.app{height:100vh;padding:0;overflow:hidden}.app:has(>.sidebar){grid-template-columns:280px 1fr;display:grid}.header.mobile-only,.bottom-spacer{display:none}.sidebar{background:var(--bg-secondary);border-right:1px solid var(--border);flex-direction:column;height:100vh;display:flex;overflow:hidden}.sidebar-brand{border-bottom:1px solid var(--border);padding:14px 14px 10px}.sidebar-brand .logo{letter-spacing:-.3px;color:var(--text-primary);text-shadow:none;font-size:14px;font-weight:700}.sidebar .tabs{-webkit-backdrop-filter:none;box-shadow:none;touch-action:auto;background:0 0;border:none;border-radius:0;flex-direction:column;flex:1;gap:1px;margin-bottom:0;padding:6px;overflow-y:auto}.sidebar .tab-indicator{display:none}.sidebar .tab{color:var(--text-secondary);white-space:nowrap;border-radius:4px;flex-direction:row;flex:none;justify-content:flex-start;align-items:center;gap:8px;padding:5px 10px;font-size:13px;font-weight:500;transition:background 80ms,color 80ms;position:relative}.sidebar .tab.active{color:var(--text-primary);background:#ffffff0a;font-weight:600}.sidebar .tab.active:before{content:"";background:var(--accent);border-radius:0 2px 2px 0;width:3px;position:absolute;top:5px;bottom:5px;left:0}.sidebar .tab:not(.active):hover{color:var(--text-primary);background:#ffffff08}.sidebar .tab span{font-size:13px;display:inline!important}.sidebar .tab svg{opacity:.5;flex-shrink:0;width:16px;height:16px}.sidebar .tab.active svg{opacity:.85}.sidebar-footer{border-top:1px solid var(--border);align-items:center;gap:2px;padding:6px;display:flex}.sidebar-user{cursor:pointer;color:var(--text-primary);text-align:left;background:0 0;border:none;border-radius:4px;flex:1;align-items:center;gap:8px;min-width:0;padding:5px 8px;font-family:inherit;transition:background 80ms;display:flex}.sidebar-user:hover{background:#ffffff08}.sidebar-user-avatar{background:rgba(var(--accent-rgb),.1);width:26px;height:26px;color:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:10px;font-weight:700;display:flex}.sidebar-user-info{flex:1;min-width:0}.sidebar-user-name{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.sidebar-user-meta{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.sidebar-icon-btn{cursor:pointer;width:30px;height:30px;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;transition:background 80ms;display:flex;position:relative}.sidebar-icon-btn:hover{color:var(--text-primary);background:#ffffff0a}.sidebar-icon-btn svg{width:15px;height:15px}.sidebar-friends-badge{border-radius:7px;justify-content:center;align-items:center;min-width:14px;height:14px;padding:0 3px;font-size:9px;font-weight:700;line-height:1;display:flex;position:absolute;top:2px;right:2px}.sidebar-friends-badge.has-pending{background:var(--error);color:#fff}.sidebar-friends-badge:not(.has-pending){background:rgba(var(--accent-rgb),.15);color:var(--accent)}.sidebar-brand{justify-content:space-between;align-items:center;display:flex}.sidebar-notif-btn{cursor:pointer;width:32px;height:32px;color:var(--text-secondary);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:background 80ms,color 80ms;display:flex;position:relative}.sidebar-notif-btn:hover{color:var(--text-primary);background:#ffffff0a}.sidebar-notif-btn svg{width:18px;height:18px}.sidebar-notif-badge{background:var(--error);color:#fff;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 3px;font-size:9px;font-weight:700;line-height:1;display:flex;position:absolute;top:2px;right:2px}.sidebar-profile{border-bottom:1px solid var(--border);cursor:pointer;width:100%;color:inherit;background:0 0;border-top:none;border-left:none;border-right:none;flex-direction:row;align-items:center;gap:10px;padding:12px 14px;font-family:inherit;transition:background 80ms;display:flex}.sidebar-profile:hover{background:#ffffff08}.sidebar-profile-info{flex:1;min-width:0}.sidebar-profile-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:700;overflow:hidden}.sidebar-profile-username{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.sidebar .tab{border-radius:6px;gap:10px;padding:8px 12px;font-size:14px}.sidebar .tab span{font-size:14px!important}.sidebar .tab svg{width:18px;height:18px}.tab-badge{background:var(--accent);color:#000;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:auto;padding:0 5px;font-size:10px;font-weight:700;display:inline-flex}.main-panel{background:var(--bg-primary);flex-direction:column;min-width:0;height:100vh;display:flex;overflow:hidden}.main-panel>.main-content{flex:1;padding:24px 32px;overflow-y:auto}.main-content>.tabs{display:none}.main-content>div,.main-content>section{box-sizing:border-box;width:100%;max-width:none}.dashboard-hero,.dashboard-card,.schedule-panel,.schedule-results-card,.grades-shell,.maps-shell,.passes-card,.azan-card,.esports-shell,.esports-login,.group-card{box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border:none;border-radius:0;padding-left:0;padding-right:0}.btn{-webkit-backdrop-filter:none;border-radius:4px;padding:5px 12px;font-size:13px;font-weight:600}.btn:active{transform:none}.btn-large{padding:7px 16px;font-size:13px}.btn-primary{background:var(--accent);border:1px solid var(--accent-hover);color:#000;box-shadow:none}.btn-primary:hover{background:var(--accent-hover)}.btn-secondary{border:1px solid var(--border);box-shadow:none;background:0 0}.btn-secondary:hover{background:var(--dk-hover);border-color:var(--text-muted)}.btn-compact{padding:3px 8px;font-size:11px}.passes-title,.maps-title,.azan-title,.esports-title{letter-spacing:-.2px;font-size:16px;font-weight:700}.passes-subtitle,.maps-subtitle,.azan-location,.esports-subtitle{color:var(--text-secondary);font-size:12px}.passes-hero,.azan-hero,.maps-hero,.esports-hero{margin-bottom:14px;background:var(--dk-card-bg)!important;border:1px solid var(--dk-card-border)!important;border-radius:6px!important;padding:12px 16px!important}.passes-hero-label,.azan-hero-label,.maps-hero-label,.esports-hero-label{letter-spacing:.5px;text-transform:uppercase;color:var(--text-muted);font-size:10px;font-weight:600}.passes-hero-time,.azan-hero-time{font-size:22px;font-weight:700}.passes-hero-count{font-size:13px}.passes-card{max-width:none}.passes-header{border-bottom:1px solid var(--border);margin-bottom:12px;padding-bottom:12px}.passes-list{border:1px solid var(--dk-card-border);border-radius:6px;overflow:hidden}.passes-item{border:none;border-bottom:1px solid var(--border);border-radius:0;padding:8px 14px}@supports (color:color-mix(in lab,red,red)){.passes-item{border-bottom:1px solid color-mix(in srgb,var(--border) 60%,transparent)}}.passes-item{background:0 0}.passes-item:nth-child(2n){background:var(--dk-stripe)}.passes-item:last-child{border-bottom:none}.passes-item:hover{background:var(--dk-hover);transform:none}.passes-dot{box-shadow:none;width:6px;height:6px}.passes-time{font-size:13px;font-weight:500}.passes-duration-badge{-webkit-backdrop-filter:none;border-radius:3px;font-size:10px}.passes-route{font-size:12px}.passes-refresh{padding:4px 10px;font-size:12px}.azan-card{max-width:600px}.azan-header{border-bottom:1px solid var(--border);margin-bottom:12px;padding-bottom:12px}.azan-times-wrap{border:1px solid var(--dk-card-border);border-radius:6px;overflow:hidden}.azan-row{border:none;border-bottom:1px solid var(--border);border-radius:0;padding:10px 14px}@supports (color:color-mix(in lab,red,red)){.azan-row{border-bottom:1px solid color-mix(in srgb,var(--border) 60%,transparent)}}.azan-row{background:0 0}.azan-row:nth-child(2n){background:var(--dk-stripe)}.azan-row:last-child{border-bottom:none}.azan-row.is-next{border-left:3px solid var(--accent);border-radius:0;margin:0;padding:10px 14px;transform:none;background:rgba(var(--accent-rgb),.04)!important}.azan-row:hover:not(.is-passed){background:var(--dk-hover)}.azan-dot{width:6px;height:6px}.azan-row.is-next .azan-dot{box-shadow:none}.azan-label{font-size:13px}.azan-time{font-variant-numeric:tabular-nums;font-size:14px;font-weight:600}.azan-next-badge{border-radius:3px;font-size:10px}.maps-shell{max-width:none}.maps-header{border-bottom:1px solid var(--border);margin-bottom:12px;padding-bottom:12px}.maps-chip{border:1px solid var(--border);background:0 0;border-radius:4px;padding:4px 10px;font-size:11px}.maps-chip.active{background:rgba(var(--accent-rgb),.1);border-color:rgba(var(--accent-rgb),.3);color:var(--accent)}.maps-chip:hover:not(.active){background:var(--dk-hover)}.maps-viewer{border:1px solid var(--dk-card-border);border-radius:6px;min-height:550px}.maps-controls{border:1px solid var(--dk-card-border);background:var(--bg-secondary);box-shadow:none;border-radius:6px;padding:10px}.maps-meta-chip{border-radius:3px;font-size:10px}.maps-search-input{border:1px solid var(--border);background:0 0;border-radius:4px;padding:6px 10px;font-size:13px}.maps-search-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px rgba(var(--accent-rgb),.08)}.maps-search-results{border:1px solid var(--border);background:var(--bg-secondary);border-radius:6px;box-shadow:0 4px 16px #00000040}.maps-search-result{border-bottom:1px solid var(--border);padding:6px 12px;font-size:12px}@supports (color:color-mix(in lab,red,red)){.maps-search-result{border-bottom:1px solid color-mix(in srgb,var(--border) 40%,transparent)}}.maps-search-result:last-child{border-bottom:none}.maps-search-result:hover{background:var(--dk-hover)}.maps-gesture-hint{font-size:11px}.esports-section{flex:none!important}.esports-shell{width:100%;max-width:none}.esports-header{border-bottom:1px solid var(--border);margin-bottom:16px;padding-bottom:14px}.esports-title{font-size:18px;font-weight:700}.esports-subtitle{color:var(--text-secondary);margin-top:2px;font-size:12px}.esports-login{text-align:center;background:var(--dk-card-bg)!important;border:1px solid var(--dk-card-border)!important;border-radius:10px!important;flex-direction:column!important;align-items:center!important;gap:12px!important;width:100%!important;max-width:420px!important;margin:0 auto!important;padding:40px 36px!important;display:flex!important}.esports-login-icon{background:rgba(var(--accent-rgb),.08);border-radius:14px;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:4px;display:flex}.esports-login-icon svg{width:28px;height:28px;color:var(--accent)}.esports-login-title{color:var(--text-primary);font-size:18px;font-weight:700}.esports-login-subtitle{color:var(--text-secondary);max-width:280px;font-size:13px;line-height:1.4}.esports-login-form{flex-direction:column;gap:10px;width:100%;margin-top:8px;display:flex}.esports-login-error{text-align:left;border-radius:6px;padding:8px 12px;font-size:12px}.esports-login-btn{margin-top:4px;border-radius:6px!important;padding:9px 20px!important;font-size:14px!important}.esports-input{-webkit-backdrop-filter:none;box-shadow:none;border:1px solid var(--border);box-sizing:border-box;background:0 0;border-radius:6px;width:100%;padding:9px 14px;font-size:14px}.esports-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px rgba(var(--accent-rgb),.08)}.esports-input::placeholder{color:var(--text-muted)}.esports-flow{flex-direction:column;gap:16px;display:flex}.esports-field{flex-direction:column;gap:6px;display:flex}.esports-field-label{text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);font-size:11px;font-weight:600}.esports-chips{flex-wrap:wrap;gap:5px;display:flex}.esports-chip{border:1px solid var(--border);cursor:pointer;color:var(--text-primary);background:0 0;border-radius:5px;padding:5px 12px;font-family:inherit;font-size:12px;transition:all 80ms}.esports-chip.active{background:rgba(var(--accent-rgb),.1);border-color:rgba(var(--accent-rgb),.3);color:var(--accent)}.esports-chip:hover:not(.active){background:var(--dk-hover)}.esports-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.esports-search-btn{margin-top:4px;border-radius:6px!important;padding:9px 20px!important;font-size:14px!important}.esports-actions{border-top:1px solid var(--border);gap:8px;padding-top:12px;display:flex}.esports-action-btn{padding:5px 14px;font-size:12px}.esports-logout-btn{margin-left:auto}.esports-subscreen{flex-direction:column;gap:14px;display:flex}.esports-subscreen-top{justify-content:space-between;align-items:center;display:flex}.esports-back-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:4px 0;font-family:inherit;font-size:13px;font-weight:500;display:inline-flex}.esports-back-btn:hover{text-decoration:underline}.esports-hero{background:var(--dk-card-bg)!important;border:1px solid var(--dk-card-border)!important;border-radius:8px!important;padding:14px 18px!important}.esports-hero-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:6px;font-size:10px;font-weight:600}.esports-hero-main{gap:24px;display:flex}.esports-hero-value{font-size:18px;font-weight:700}.esports-hero-caption{color:var(--text-muted);font-size:11px}.esports-results{flex-direction:column;gap:16px;display:flex}.esports-cat-label{text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);border-bottom:1px solid var(--border);margin-bottom:8px;padding-bottom:6px;font-size:11px;font-weight:600}.esports-device-list{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;display:grid}.esports-device-card{border:1px solid var(--dk-card-border);background:var(--dk-card-bg);box-shadow:none;border-radius:8px;padding:12px 14px;transition:background 80ms,border-color 80ms}.esports-device-card:hover{background:var(--dk-hover);border-color:var(--text-muted);transform:none}.esports-device-card.is-clickable{cursor:pointer}.esports-device-name{margin-bottom:6px;font-size:13px;font-weight:600}.esports-timeslots{flex-wrap:wrap;gap:4px;display:flex}.esports-time-btn{border:1px solid var(--border);color:var(--text-primary);cursor:pointer;background:0 0;border-radius:4px;padding:4px 10px;font-family:inherit;font-size:11px;font-weight:500;transition:all 80ms}.esports-time-btn:hover:not(:disabled){background:rgba(var(--accent-rgb),.08);border-color:rgba(var(--accent-rgb),.3);color:var(--accent)}.esports-booking-list{border:1px solid var(--dk-card-border);border-radius:8px;flex-direction:column;gap:0;display:flex;overflow:hidden}.esports-booking-card{border:none;border-bottom:1px solid var(--border);border-radius:0;justify-content:space-between;align-items:center;display:flex}@supports (color:color-mix(in lab,red,red)){.esports-booking-card{border-bottom:1px solid color-mix(in srgb,var(--border) 60%,transparent)}}.esports-booking-card{padding:10px 14px;transition:background 60ms}.esports-booking-card:last-child{border-bottom:none}.esports-booking-card:nth-child(2n){background:var(--dk-stripe)}.esports-booking-card:hover{background:var(--dk-hover)}.esports-booking-card.is-past{opacity:.5}.esports-booking-device{font-size:13px;font-weight:600}.esports-booking-meta{color:var(--text-secondary);margin-top:2px;font-size:12px}.esports-booking-badge{background:rgba(var(--accent-rgb),.08);color:var(--accent);border-radius:3px;margin-right:6px;padding:1px 6px;font-size:10px}.esports-booking-status{color:var(--text-muted);margin-top:2px;font-size:11px}.esports-cancel-btn{flex-shrink:0}.account-overlay{align-items:center}.account-sheet{border:1px solid var(--border);background:var(--bg-primary);-webkit-backdrop-filter:none;border-radius:8px;max-width:600px;height:auto;max-height:90vh;transform:translateY(6px)scale(.98);box-shadow:0 16px 48px #0006}.account-overlay.is-open .account-sheet{transform:translate(0)scale(1)}.account-sheet .profile-top{border:none;border-bottom:1px solid var(--border);background:0 0;border-radius:0}.account-sheet .profile-hero{border:none;border-bottom:1px solid var(--border);background:0 0;border-radius:0;padding:20px 16px}.account-sheet .profile-hero-name{font-size:20px}.account-sheet .profile-hero-stats{border:none;border-top:1px solid var(--border);border-radius:0}.account-sheet .account-row{border:none;border-bottom:1px solid var(--border);box-shadow:none;background:0 0;border-radius:0;padding:6px 0}.account-sheet .account-row:last-child{border-bottom:none}.account-sheet .profile-stats{box-shadow:none;background:0 0;border:none;border-radius:0}.account-sheet .stat-card{border:1px solid var(--border);box-shadow:none;background:0 0;border-radius:4px;padding:8px}.account-sheet .profile-section{border:none;border-top:1px solid var(--border);box-shadow:none;background:0 0;border-radius:0;padding-top:10px}.account-sheet .share-toggle{border:none;border-bottom:1px solid var(--border);box-shadow:none;background:0 0;border-radius:0;padding:5px 0}.account-sheet .profile-menu-item{border-radius:4px;padding:6px 8px;font-size:13px}.account-sheet .profile-menu-item:hover{background:var(--dk-hover)}.sheet-modal-overlay{align-items:center;padding:24px}.sheet-modal{border:1px solid var(--border);background:var(--bg-primary);-webkit-backdrop-filter:none;border-radius:8px;max-width:480px;height:auto;max-height:70vh;box-shadow:0 16px 48px #0006}.sheet-modal.confirm-sheet{max-width:380px}.confirm-actions .btn{padding:5px 12px}.sheet-modal.info-sheet .info-text{border:none;border-top:1px solid var(--border);background:0 0;border-radius:0;padding-top:10px}.friend-item{border:none;border-bottom:1px solid var(--border);box-shadow:none;background:0 0;border-radius:0;margin-bottom:0;padding:6px 0}.friend-item:last-child{border-bottom:none}.friend-clickable:hover{background:var(--dk-hover);transform:none}.friend-item.pending{background:0 0;border-style:dashed}.friends-add{border:none;border-top:1px solid var(--border);background:0 0;border-radius:0;padding:8px 0 0}.friends-input{border:1px solid var(--border);background:0 0;border-radius:4px;padding:5px 10px;font-size:12px}.friends-add .btn{border-radius:4px;min-height:26px;padding:3px 10px;font-size:11px}.app:not(:has(>.sidebar))>.main-panel{flex-direction:column;justify-content:center;align-items:center;height:100vh;display:flex;overflow-y:auto}.app:not(:has(>.sidebar))>.main-panel>.main-content{justify-content:center;align-items:center;width:100%;min-height:100%;padding:40px;display:flex}.app:not(:has(>.sidebar)) .scanner-section{width:100%;max-width:360px}.login-form{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:0;width:100%;max-width:360px;margin:0 auto;padding:32px;display:flex}.login-form .login-header{text-align:center;margin-bottom:20px}.login-form .login-header h2{margin-bottom:4px;font-size:18px;font-weight:700}.login-form .login-header p{color:var(--text-secondary);font-size:13px;line-height:1.4}.login-form .input-group{margin-bottom:10px}.login-form .input-group input{border:1px solid var(--border);box-sizing:border-box;background:0 0;border-radius:4px;width:100%;padding:8px 12px;font-size:13px}.login-form .input-group input:focus{border-color:var(--accent);box-shadow:0 0 0 2px rgba(var(--accent-rgb),.08)}.scanner-section .login-form .btn{box-sizing:border-box;border-radius:4px;width:100%;max-width:none;margin-top:6px;padding:8px 16px;font-size:13px}.scanner-section .login-form .btn-primary{-webkit-backdrop-filter:none}.scanner-section .login-form .btn-secondary{-webkit-backdrop-filter:none;border:1px solid var(--border);background:0 0}.login-form .login-error{border-radius:4px;margin-bottom:8px;padding:6px 10px;font-size:12px}.mirea-connect-section .btn{border-radius:4px;padding:5px 12px;font-size:12px}.mirea-connect-section .input-group input{border:1px solid var(--border);background:0 0;border-radius:4px;padding:7px 10px;font-size:13px}.mirea-connect-section .input-group input:focus{border-color:var(--accent);box-shadow:0 0 0 2px rgba(var(--accent-rgb),.08)}.dk-dashboard{flex-direction:column;gap:24px;display:flex}.dk-header{background:var(--dk-card-bg);border:1px solid var(--dk-card-border);border-radius:8px;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.dk-header-info{min-width:0}.dk-header-name{letter-spacing:-.3px;color:var(--text-primary);font-size:18px;font-weight:700}.dk-header-meta{color:var(--text-secondary);align-items:center;gap:10px;margin-top:3px;font-size:12px;display:flex}.dk-status{text-transform:uppercase;letter-spacing:.3px;border-radius:3px;padding:2px 8px;font-size:10px;font-weight:600}.dk-status-on{color:#2ea043;background:#2ea0431f}.dk-status-off{background:rgba(var(--accent-rgb),.08);color:var(--text-muted)}.dk-grid{grid-template-columns:1fr 1fr 1fr;gap:16px;display:grid}.dk-col{background:var(--dk-card-bg);border:1px solid var(--dk-card-border);border-radius:8px;flex-direction:column;gap:10px;min-width:0;padding:14px 16px;display:flex}.dk-col-title{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);border-bottom:1px solid var(--border);margin-bottom:2px;padding-bottom:8px;font-size:11px;font-weight:600}.dk-muted{color:var(--text-muted);font-size:13px}.dk-error-text{color:var(--error)}.dk-link{cursor:pointer;color:var(--accent);text-align:left;background:0 0;border:none;margin-top:auto;padding:0;font-family:inherit;font-size:12px;font-weight:500}.dk-link:hover{text-decoration:underline}.dk-today-list{flex-direction:column;gap:0;display:flex}.dk-today-item{border-bottom:1px solid var(--border);grid-template-columns:auto 1fr auto;align-items:baseline;gap:8px;padding:6px 0;display:grid}@supports (color:color-mix(in lab,red,red)){.dk-today-item{border-bottom:1px solid color-mix(in srgb,var(--border) 40%,transparent)}}.dk-today-item{font-size:13px}.dk-today-item:last-child{border-bottom:none}.dk-today-item.dk-today-next{background:rgba(var(--accent-rgb),.04);border-radius:4px;margin:0 -8px;padding:6px 8px}.dk-today-time{color:var(--accent);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:11px;font-weight:600}.dk-today-title{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.dk-today-loc{color:var(--text-muted);white-space:nowrap;font-size:11px}.dk-checkbox{color:var(--text-primary);cursor:pointer;align-items:center;gap:6px;font-size:13px;display:flex}.dk-checkbox input[type=checkbox]{width:14px;height:14px;accent-color:var(--accent)}.dk-friend-list{flex-direction:column;gap:1px;padding-left:2px;display:flex}.dk-friend-row{color:var(--text-primary);cursor:pointer;border-radius:3px;align-items:center;gap:6px;padding:3px 4px;font-size:12px;transition:background 60ms;display:flex}.dk-friend-row:hover{background:var(--dk-hover)}.dk-friend-row input[type=checkbox]{width:13px;height:13px;accent-color:var(--accent)}.dk-quick-links{grid-template-columns:1fr 1fr;gap:6px;display:grid}.dk-quick-btn{border:1px solid var(--dk-card-border);color:var(--text-primary);cursor:pointer;text-align:center;background:0 0;border-radius:6px;padding:8px 10px;font-family:inherit;font-size:12px;font-weight:500;transition:background 80ms,border-color 80ms}.dk-quick-btn:hover{background:var(--dk-hover);border-color:var(--text-muted)}.dk-scanner-active{flex-direction:column;align-items:center;gap:16px;max-width:500px;margin:0 auto;padding:20px 0;display:flex}.dk-scanner-active #qr-reader{border:1px solid var(--dk-card-border);border-radius:8px;width:100%;max-width:400px;overflow:hidden}.dk-results{border:1px solid var(--dk-card-border);border-radius:6px;flex-direction:column;gap:0;width:100%;display:flex;overflow:hidden}.dk-result-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:8px 14px;display:flex}@supports (color:color-mix(in lab,red,red)){.dk-result-row{border-bottom:1px solid color-mix(in srgb,var(--border) 60%,transparent)}}.dk-result-row{font-size:13px}.dk-result-row:last-child{border-bottom:none}.dk-result-row:nth-child(2n){background:var(--dk-stripe)}.dk-hint{color:var(--text-muted);margin-top:6px;font-size:11px}.dk-btn-row{gap:8px;display:flex}.dk-btn{cursor:pointer;border:none;border-radius:5px;padding:6px 14px;font-family:inherit;font-size:13px;font-weight:600;transition:background 80ms}.dk-btn:disabled{opacity:.5;cursor:not-allowed}.dk-btn-primary{background:var(--accent);color:#000}.dk-btn-primary:hover:not(:disabled){background:var(--accent-hover)}.dk-btn-secondary{border:1px solid var(--border);color:var(--text-primary);background:0 0}.dk-btn-secondary:hover:not(:disabled){background:var(--dk-hover)}.dk-btn-ghost{color:var(--text-secondary);background:0 0;border-radius:4px;padding:4px 10px;font-size:12px}.dk-btn-ghost:hover:not(:disabled){background:var(--dk-hover);color:var(--text-primary)}.dk-btn-ghost.dk-active{background:rgba(var(--accent-rgb),.1);color:var(--accent)}.dk-btn-full{width:100%}.dk-badge{border-radius:3px;padding:2px 8px;font-size:10px;font-weight:600;display:inline-block}.dk-badge-ok{color:#2ea043;background:#2ea0431f}.dk-badge-err{color:#f85149;background:#f851491f}.dk-empty{min-height:200px;color:var(--text-muted);justify-content:center;align-items:center;font-size:14px;display:flex}.dk-grades{flex-direction:column;gap:14px;display:flex}.dk-toolbar{background:var(--dk-card-bg);border:1px solid var(--dk-card-border);border-radius:8px;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.dk-page-title{letter-spacing:-.2px;color:var(--text-primary);font-size:16px;font-weight:700}.dk-page-meta{color:var(--text-secondary);margin-left:10px;font-size:12px}.dk-toolbar-actions{gap:6px;display:flex}.dk-table{border-collapse:collapse;border:1px solid var(--dk-card-border);border-radius:8px;width:100%;font-size:13px;overflow:hidden}.dk-table thead{z-index:1;position:sticky;top:0}.dk-table th{text-align:left;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);background:var(--bg-secondary);border-bottom:2px solid var(--border);white-space:nowrap;padding:8px 12px;font-size:10px;font-weight:600}.dk-table td{border-bottom:1px solid var(--border);padding:8px 12px}@supports (color:color-mix(in lab,red,red)){.dk-table td{border-bottom:1px solid color-mix(in srgb,var(--border) 50%,transparent)}}.dk-table td{color:var(--text-primary);white-space:nowrap;font-variant-numeric:tabular-nums}.dk-th-subject{width:35%;min-width:180px}.dk-row{transition:background 60ms}.dk-row:nth-child(2n){background:var(--dk-stripe)}.dk-row:hover{background:var(--dk-hover)}.dk-row.dk-expanded{background:rgba(var(--accent-rgb),.03)!important}.dk-clickable{cursor:pointer}.dk-cell-subject{white-space:normal;align-items:center;gap:6px;min-width:0;font-weight:500;display:flex}.dk-chevron{color:var(--text-muted);text-align:center;flex-shrink:0;width:14px;font-size:11px;transition:transform .12s;display:inline-block}.dk-chevron-open{color:var(--accent);transform:rotate(90deg)}.dk-fail{color:var(--error);font-weight:700}.dk-detail-row td{border-bottom:2px solid var(--border);background:var(--bg-secondary);padding:0}.dk-att{padding:12px 18px 14px}.dk-att-loading{color:var(--text-muted);padding:12px 18px;font-size:12px}.dk-att-error{color:var(--error);padding:12px 18px;font-size:12px}.dk-att-summary{gap:16px;margin-bottom:10px;font-size:12px;font-weight:500;display:flex}.dk-att-present{color:#2ea043}.dk-att-excused{color:var(--accent)}.dk-att-absent{color:var(--error)}.dk-att-total{color:var(--text-muted)}.dk-att-entries{flex-wrap:wrap;gap:4px;display:flex}.dk-att-entry{white-space:nowrap;font-variant-numeric:tabular-nums;border-radius:4px;align-items:center;padding:3px 8px;font-size:11px;display:inline-flex}.dk-att-entry.present{color:#2ea043;background:#2ea04314}.dk-att-entry.excused{background:rgba(var(--accent-rgb),.08);color:var(--accent)}.dk-att-entry.absent{color:#f85149;background:#f8514914}.dk-att-entry.unknown{color:var(--text-muted);background:#ffffff0a}.dk-schedule{grid-template-columns:260px 1fr;gap:0;min-height:calc(100vh - 80px);display:grid}.dk-schedule-sidebar{border-right:1px solid var(--border);flex-direction:column;gap:10px;padding:14px 16px 14px 0;display:flex}.dk-mode-tabs{border:1px solid var(--dk-card-border);background:var(--dk-card-bg);border-radius:6px;gap:1px;padding:3px;display:flex}.dk-mode-tab{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;flex:1;padding:5px 6px;font-family:inherit;font-size:11px;font-weight:600;transition:background 80ms,color 80ms}.dk-mode-tab:hover{background:var(--dk-hover)}.dk-mode-active{box-shadow:0 1px 3px #00000026;background:var(--accent)!important;color:#000!important}.dk-search-wrap{position:relative}.dk-input{box-sizing:border-box;border:1px solid var(--border);width:100%;color:var(--text-primary);background:0 0;border-radius:5px;outline:none;padding:7px 30px 7px 10px;font-family:inherit;font-size:13px;transition:border-color 80ms}.dk-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px rgba(var(--accent-rgb),.08)}.dk-input::placeholder{color:var(--text-muted)}.dk-input-clear{width:22px;height:22px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;font-family:inherit;font-size:16px;display:flex;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.dk-input-clear:hover{color:var(--text-primary);background:#ffffff0f}.dk-suggestions{border:1px solid var(--dk-card-border);background:var(--bg-secondary);border-radius:6px;flex-direction:column;gap:0;display:flex;overflow:hidden;box-shadow:0 4px 16px #00000040}.dk-suggestion{color:var(--text-primary);cursor:pointer;text-align:left;border:none;border-bottom:1px solid var(--border);background:0 0;justify-content:space-between;align-items:center;padding:7px 12px;font-family:inherit;font-size:12px;display:flex}@supports (color:color-mix(in lab,red,red)){.dk-suggestion{border-bottom:1px solid color-mix(in srgb,var(--border) 40%,transparent)}}.dk-suggestion{transition:background 60ms}.dk-suggestion:last-child{border-bottom:none}.dk-suggestion:hover{background:var(--dk-hover)}.dk-suggestion-meta{color:var(--text-muted);margin-left:8px;font-size:10px}.dk-resolved{border-top:1px solid var(--border);flex-direction:column;gap:3px;padding:10px 0;display:flex}.dk-resolved-label{text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);font-size:10px;font-weight:600}.dk-resolved-name{color:var(--text-primary);font-size:14px;font-weight:600}.dk-resolved-count{color:var(--text-secondary);font-size:11px}.dk-schedule-main{flex-direction:column;gap:14px;min-width:0;padding-left:24px;display:flex}.dk-schedule-toolbar{background:var(--dk-card-bg);border:1px solid var(--dk-card-border);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:10px 16px;display:flex}.dk-view-toggle{border:1px solid var(--dk-card-border);background:var(--dk-card-bg);border-radius:5px;gap:1px;padding:2px;display:flex}.dk-pill{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:4px;padding:4px 12px;font-family:inherit;font-size:11px;font-weight:600;transition:background 80ms}.dk-pill:hover{background:var(--dk-hover)}.dk-pill-active{background:rgba(var(--accent-rgb),.12)!important;color:var(--accent)!important}.dk-nav{align-items:center;gap:4px;display:flex}.dk-nav-btn{border:1px solid var(--dk-card-border);width:30px;height:30px;color:var(--text-primary);cursor:pointer;background:0 0;border-radius:5px;justify-content:center;align-items:center;font-family:inherit;font-size:18px;transition:background 80ms;display:flex}.dk-nav-btn:hover{background:var(--dk-hover)}.dk-nav-range{color:var(--text-primary);white-space:nowrap;padding:0 8px;font-size:13px;font-weight:500}.dk-days{flex-direction:column;gap:0;display:flex}.dk-day{border:1px solid var(--dk-card-border);border-radius:8px;flex-direction:column;gap:0;margin-bottom:12px;display:flex;overflow:hidden}.dk-day-head{background:var(--bg-secondary);border-bottom:1px solid var(--border);align-items:baseline;gap:10px;padding:8px 14px;display:flex}.dk-day-date{color:var(--text-primary);text-transform:capitalize;font-size:13px;font-weight:600}.dk-day-count{color:var(--text-muted);font-size:10px;font-weight:500}.dk-event{border-bottom:1px solid var(--border);grid-template-columns:100px 1fr auto;align-items:baseline;gap:10px;padding:8px 14px;display:grid}@supports (color:color-mix(in lab,red,red)){.dk-event{border-bottom:1px solid color-mix(in srgb,var(--border) 40%,transparent)}}.dk-event{font-size:13px}.dk-event:nth-child(2n){background:var(--dk-stripe)}.dk-event:last-child{border-bottom:none}.dk-event:hover{background:var(--dk-hover)}.dk-event-time{color:var(--accent);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}.dk-event-title{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.dk-event-loc{color:var(--text-muted);white-space:nowrap;text-align:right;font-size:11px}.menu-btn:active,.btn:active,.quick-action:active,.dashboard-profile-btn:active,.schedule-mode:active,.schedule-pill:active,.schedule-icon-btn:active,.maps-chip:active,.esports-chip:active,.passes-item:hover,.grade-card:hover,.schedule-card:hover,.result-item:hover,.friend-clickable:hover{transform:none}.status-pill,.schedule-mode-badge,.esports-booking-badge,.grade-badge,.azan-next-badge,.passes-duration-badge,.maps-meta-chip{-webkit-backdrop-filter:none;border-radius:3px}:root[data-theme=light] .sidebar .tab.active{background:rgba(var(--accent-rgb),.05)}:root[data-theme=light] .sidebar .tab:not(.active):hover,:root[data-theme=light] .sidebar-user:hover{background:#00000005}:root[data-theme=light] .sidebar-icon-btn:hover{background:#00000008}:root[data-theme=light] .account-sheet,:root[data-theme=light] .sheet-modal{box-shadow:0 16px 48px #0000001f}:root[data-theme=light] .grade-card:hover{background:#00000003}:root[data-theme=light] .schedule-suggestions{box-shadow:0 4px 16px #00000014}:root[data-theme=light] .btn-secondary:hover{background:#00000005;border-color:#0000001f}:root[data-theme=light] .dk-row:hover,:root[data-theme=light] .dk-quick-btn:hover,:root[data-theme=light] .dk-suggestion:hover{background:var(--dk-hover)}:root[data-theme=light] .dk-suggestions{box-shadow:0 4px 16px #0000001a}:root[data-theme=light] .dk-mode-tab:hover,:root[data-theme=light] .dk-pill:hover,:root[data-theme=light] .dk-nav-btn:hover,:root[data-theme=light] .dk-event:hover,:root[data-theme=light] .dk-btn-ghost:hover:not(:disabled),:root[data-theme=light] .dk-btn-secondary:hover:not(:disabled){background:var(--dk-hover)}:root[data-theme=light] .dk-input-clear:hover{background:#0000000d}:root[data-theme=light] .dk-mode-active{box-shadow:0 1px 3px #00000014}:root[data-theme=light] .sidebar-profile:hover{background:#00000005}:root[data-theme=light] .sidebar-notif-btn:hover{background:#0000000a}:root[data-theme=light] .feed-sidebar-friend:hover{background:#00000005}:root[data-theme=light] .feed-sidebar-request-accept:hover{background:#2ea0430f}:root[data-theme=light] .feed-sidebar-request-reject:hover{background:#f851490f}:root[data-theme=light] .messenger-tab-conv:hover{background:#00000005}:root[data-theme=light] .messenger-tab-conv.active{background:rgba(var(--accent-rgb),.04)}:root[data-theme=light] .inline-comment:hover .inline-comment-delete{opacity:1}:root[data-theme=light] .post-card-action:hover{background:#0000000a}:root[data-theme=light] .desktop-feed-main .post-card:hover{background:#00000003}.desktop-feed-wrap{align-items:flex-start;gap:28px;display:flex}.desktop-feed-main{flex:1;min-width:0}.feed-section{padding:0}.desktop-feed-main .post-card:hover{background:#ffffff05}.post-composer{border-radius:var(--radius-sm)}.feed-top-bar{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--dk-card-bg);align-items:center;gap:12px;margin-bottom:16px;padding:12px 16px;display:flex}.feed-search{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);background:0 0;outline:none;flex:1;padding:8px 12px;font-family:inherit;font-size:14px}.feed-search:focus{border-color:var(--accent)}.feed-search::placeholder{color:var(--text-muted)}.feed-new-post-btn{background:var(--accent);color:#000;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:none;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:600;transition:background 80ms}.feed-new-post-btn:hover{background:var(--accent-hover)}.feed-sidebar{flex-direction:column;flex-shrink:0;gap:16px;width:300px;display:flex;position:sticky;top:24px}.feed-sidebar-card{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--dk-card-bg);padding:16px}.feed-sidebar-card-title{color:var(--text-primary);align-items:center;margin-bottom:10px;font-size:15px;font-weight:600;display:flex}.feed-sidebar-badge{background:var(--accent);color:#000;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:6px;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex}.feed-sidebar-empty{color:var(--text-muted);padding:4px 0;font-size:13px}.feed-sidebar-request{align-items:center;gap:10px;padding:8px 0;display:flex}.feed-sidebar-request+.feed-sidebar-request{border-top:1px solid var(--border)}@supports (color:color-mix(in lab,red,red)){.feed-sidebar-request+.feed-sidebar-request{border-top:1px solid color-mix(in srgb,var(--border) 50%,transparent)}}.feed-sidebar-request-info{flex:1;min-width:0}.feed-sidebar-request-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.feed-sidebar-request-username{color:var(--text-muted);font-size:11px}.feed-sidebar-request-actions{flex-shrink:0;gap:6px;display:flex}.feed-sidebar-request-accept,.feed-sidebar-request-reject{border:1px solid var(--border);cursor:pointer;width:28px;height:28px;color:var(--text-secondary);background:0 0;border-radius:50%;justify-content:center;align-items:center;font-family:inherit;transition:all 80ms;display:flex}.feed-sidebar-request-accept:hover{color:#2ea043;background:#2ea0431a;border-color:#2ea043}.feed-sidebar-request-reject:hover{color:#f85149;background:#f851491a;border-color:#f85149}.feed-sidebar-friend{cursor:pointer;border-radius:4px;align-items:center;gap:10px;padding:6px 4px;transition:background 60ms;display:flex}.feed-sidebar-friend:hover{background:var(--dk-hover)}.feed-sidebar-friend-info{flex:1;min-width:0}.feed-sidebar-friend-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.feed-sidebar-friend-username{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.feed-sidebar-show-all{color:var(--accent);cursor:pointer;background:0 0;border:none;margin-top:4px;padding:6px 0;font-family:inherit;font-size:12px}.feed-sidebar-show-all:hover{text-decoration:underline}.feed-sidebar-footer{color:var(--text-muted);align-items:center;gap:6px;padding:0 4px;font-size:12px;display:flex}.feed-sidebar-footer a{color:var(--text-muted);text-decoration:none}.feed-sidebar-footer a:hover{color:var(--text-secondary)}.post-card-action span{font-size:13px}.comments-sheet{border-radius:var(--radius-md);max-height:60vh;margin-bottom:40px}.comments-overlay{align-items:center}.reaction-picker{grid-template-columns:repeat(10,1fr);min-width:340px}.post-card-menu{opacity:.5}.inline-comments{border-top:1px solid var(--border);padding:12px 16px}.inline-comments-list{flex-direction:column;gap:0;display:flex}.inline-comment{border-bottom:1px solid var(--border);gap:10px;padding:8px 0;display:flex}@supports (color:color-mix(in lab,red,red)){.inline-comment{border-bottom:1px solid color-mix(in srgb,var(--border) 40%,transparent)}}.inline-comment:last-child{border-bottom:none}.inline-comment-avatar{cursor:pointer;flex-shrink:0}.inline-comment-body{flex:1;min-width:0}.inline-comment-top{align-items:baseline;gap:6px;margin-bottom:2px;display:flex}.inline-comment-author{color:var(--text-primary);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:13px;font-weight:600}.inline-comment-author:hover{text-decoration:underline}.inline-comment-time{color:var(--text-muted);font-size:11px}.inline-comment-delete{cursor:pointer;color:var(--text-muted);opacity:0;background:0 0;border:none;margin-left:auto;padding:0 4px;font-size:14px;transition:opacity .1s,color .1s}.inline-comment:hover .inline-comment-delete{opacity:1}.inline-comment-delete:hover{color:var(--error)}.inline-comment-text{color:var(--text-primary);font-size:13px;line-height:1.4}.inline-comments-input-row{align-items:center;gap:8px;margin-top:10px;display:flex}.inline-comments-input{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);background:0 0;outline:none;flex:1;padding:8px 12px;font-family:inherit;font-size:13px}.inline-comments-input:focus{border-color:var(--accent)}.inline-comments-input::placeholder{color:var(--text-muted)}.inline-comments-send{background:var(--accent);cursor:pointer;color:#000;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;transition:opacity 80ms;display:flex}.inline-comments-send:disabled{opacity:.3;cursor:not-allowed}.inline-comments-send:not(:disabled):hover{opacity:.85}.inline-comments-send svg{stroke:#000}.inline-comments-empty,.inline-comments-loading{color:var(--text-muted);padding:8px 0;font-size:13px}.post-card-avatar-btn{cursor:pointer;background:0 0;border:none;padding:0}.post-card-author-btn{cursor:pointer;color:inherit;text-align:left;background:0 0;border:none;align-items:baseline;gap:6px;padding:0;font-family:inherit;display:flex}.post-card-author-btn:hover .post-card-author-name{text-decoration:underline}.fb-profile{margin:-24px -32px 0;padding-bottom:40px}.fb-cover{background:linear-gradient(135deg,rgba(var(--accent-rgb),.18),rgba(var(--accent-rgb),.06),rgba(var(--accent-rgb),.12));border-radius:0 0 8px 8px;height:220px;position:relative;overflow:hidden}.fb-cover-gradient{background:linear-gradient(#0000 40%,#00000026);position:absolute;top:0;right:0;bottom:0;left:0}.fb-profile-header{z-index:1;align-items:flex-end;gap:20px;margin-top:-48px;padding:0 32px;display:flex;position:relative}.fb-avatar-wrap{flex-shrink:0}.fb-avatar{border:4px solid var(--bg-primary);border-radius:50%;box-shadow:0 2px 12px #0003}.fb-avatar-placeholder{background:var(--bg-secondary);border:4px solid var(--bg-primary);border-radius:50%;width:128px;height:128px}.fb-header-info{flex:1;justify-content:space-between;align-items:flex-end;gap:16px;min-width:0;padding-bottom:12px;display:flex}.fb-header-left{flex-direction:column;gap:2px;display:flex}.fb-name{color:var(--text-primary);letter-spacing:-.5px;margin:0;font-size:28px;font-weight:800;line-height:1.2}.fb-name-loading{background:var(--dk-hover);border-radius:6px;width:200px;height:28px;animation:1.5s infinite fb-pulse}@keyframes fb-pulse{0%,to{opacity:.4}50%{opacity:.8}}.fb-username{color:var(--text-muted);font-size:15px;font-weight:500}.fb-friends-count{color:var(--text-secondary);margin-top:2px;font-size:14px}.fb-friends-mini{margin-top:6px;display:flex}.fb-friends-mini-avatar{cursor:pointer;background:0 0;border:none;border-radius:50%;margin-right:-6px;padding:0;transition:transform .1s;position:relative}.fb-friends-mini-avatar:hover{z-index:1;transform:scale(1.15)}.fb-friends-mini-avatar .avatar{border:2px solid var(--bg-primary);border-radius:50%}.fb-header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.fb-btn{cursor:pointer;white-space:nowrap;border:none;border-radius:8px;align-items:center;gap:6px;padding:8px 18px;font-family:inherit;font-size:14px;font-weight:600;transition:all .1s;display:inline-flex}.fb-btn-primary{background:var(--accent);color:#000}.fb-btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px)}.fb-btn-secondary{color:var(--text-primary);border:1px solid var(--border);background:#ffffff0f}.fb-btn-secondary:hover{background:#ffffff1a}.fb-friend-badge{color:#2ea043;background:#2ea0431a;border-radius:8px;align-items:center;gap:4px;padding:6px 14px;font-size:13px;font-weight:600;display:inline-flex}.fb-pending-badge{color:var(--text-muted);background:#ffffff0a;border-radius:8px;align-items:center;gap:4px;padding:6px 14px;font-size:13px;font-weight:500;display:inline-flex}.fb-tabs{border-bottom:1px solid var(--border);gap:0;margin-top:16px;padding:0 32px;display:flex}.fb-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:14px 20px;font-family:inherit;font-size:14px;font-weight:600;transition:color .1s,border-color .1s;display:flex}.fb-tab:hover{color:var(--text-primary);background:#ffffff05}.fb-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.fb-tab-count{color:var(--text-muted);background:#ffffff0f;border-radius:10px;padding:1px 7px;font-size:12px;font-weight:700}.fb-tab.active .fb-tab-count{background:rgba(var(--accent-rgb),.12);color:var(--accent)}.fb-content-columns{grid-template-columns:340px 1fr;gap:20px;padding:20px 32px 0;display:grid}.fb-sidebar{flex-direction:column;align-self:start;gap:16px;display:flex;position:sticky;top:20px}.fb-main{min-width:0}.fb-card{background:var(--dk-card-bg);border:1px solid var(--border);border-radius:8px;padding:16px}.fb-card-title{color:var(--text-primary);margin:0 0 10px;font-size:17px;font-weight:700}.fb-card-title-row{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.fb-card-title-row .fb-card-title{margin-bottom:0}.fb-card-link{color:var(--accent);cursor:pointer;background:0 0;border:none;font-family:inherit;font-size:13px;font-weight:500}.fb-card-link:hover{text-decoration:underline}.fb-card-bio{color:var(--text-secondary);white-space:pre-wrap;margin:0;font-size:14px;line-height:1.5}.fb-card-muted{color:var(--text-muted);font-style:italic}.fb-card-stats{border-top:1px solid var(--border);flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;display:flex}.fb-card-stat-row{color:var(--text-secondary);align-items:center;gap:10px;font-size:14px;display:flex}.fb-card-stat-row svg{color:var(--text-muted);flex-shrink:0}.fb-friends-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.fb-friend-cell{cursor:pointer;color:inherit;background:0 0;border:none;border-radius:8px;flex-direction:column;align-items:center;gap:4px;padding:6px;font-family:inherit;transition:background 80ms;display:flex}.fb-friend-cell:hover{background:var(--dk-hover)}.fb-friend-cell-avatar{aspect-ratio:1;object-fit:cover;border-radius:8px;width:100%}.fb-friend-cell-avatar.avatar{aspect-ratio:1;font-size:20px;border-radius:8px!important;width:100%!important;height:auto!important}.fb-friend-cell-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:12px;font-weight:500;overflow:hidden}.fb-posts-list{border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:0;display:flex;overflow:hidden}.fb-posts-list .post-card{border:none;border-bottom:1px solid var(--border);border-radius:0}.fb-posts-list .post-card:last-child{border-bottom:none}.fb-posts-empty{color:var(--text-muted);border:1px solid var(--border);background:var(--dk-card-bg);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:60px 0;font-size:14px;display:flex}.fb-posts-empty p{margin:0}.fb-posts-loading{text-align:center;color:var(--text-muted);padding:40px 0;font-size:14px}.fb-about{max-width:680px;padding:20px 32px 0}.fb-about-card{flex-direction:column;gap:16px;display:flex}.fb-about-text{color:var(--text-secondary);white-space:pre-wrap;margin:0;font-size:15px;line-height:1.6}.fb-about-row{border-top:1px solid var(--border);align-items:flex-start;gap:12px;padding:10px 0;display:flex}@supports (color:color-mix(in lab,red,red)){.fb-about-row{border-top:1px solid color-mix(in srgb,var(--border) 50%,transparent)}}.fb-about-row svg{color:var(--text-muted);flex-shrink:0;margin-top:2px}.fb-about-row div{flex-direction:column;gap:1px;display:flex}.fb-about-label{color:var(--text-muted);font-size:12px}.fb-about-value{color:var(--text-primary);font-size:14px;font-weight:500}.fb-friends-tab{padding:20px 32px 0}.fb-friends-full-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.fb-friend-card{border:1px solid var(--border);cursor:pointer;color:inherit;text-align:left;background:0 0;border-radius:8px;align-items:center;gap:12px;padding:12px;font-family:inherit;transition:background 80ms,border-color 80ms;display:flex}.fb-friend-card:hover{background:var(--dk-hover);border-color:var(--text-muted)}.fb-friend-card-info{flex:1;min-width:0}.fb-friend-card-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;display:block;overflow:hidden}.fb-friend-card-username{color:var(--text-muted);font-size:12px;display:block}:root[data-theme=light] .fb-cover{background:linear-gradient(135deg,rgba(var(--accent-rgb),.12),rgba(var(--accent-rgb),.04),rgba(var(--accent-rgb),.08))}:root[data-theme=light] .fb-cover-gradient{background:linear-gradient(#0000 40%,#0000000a)}:root[data-theme=light] .fb-btn-secondary{border-color:var(--border);background:#00000008}:root[data-theme=light] .fb-btn-secondary:hover{background:#0000000f}:root[data-theme=light] .fb-tab:hover{background:#00000005}:root[data-theme=light] .fb-friend-cell:hover{background:#00000008}:root[data-theme=light] .fb-friend-card:hover{background:#00000005}:root[data-theme=light] .fb-tab-count{background:#0000000d}@media (max-width:1100px){.fb-content-columns{grid-template-columns:1fr}.fb-sidebar{grid-template-columns:1fr 1fr;gap:16px;display:grid;position:static}}.messenger-tab{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--dk-card-bg);height:calc(100vh - 48px);margin:-24px -32px;display:flex;overflow:hidden}.messenger-tab-sidebar{border-right:1px solid var(--border);background:var(--bg-secondary);flex-direction:column;flex-shrink:0;width:320px;display:flex}.messenger-tab-sidebar-header{border-bottom:1px solid var(--border);padding:16px}.messenger-tab-sidebar-header h2{color:var(--text-primary);margin:0;font-size:16px;font-weight:700}.messenger-tab-conversations{flex:1;overflow-y:auto}.messenger-tab-conv{cursor:pointer;width:100%;color:inherit;text-align:left;background:0 0;border:none;align-items:center;gap:12px;padding:10px 16px;font-family:inherit;transition:background 60ms;display:flex}.messenger-tab-conv:hover{background:var(--dk-hover)}.messenger-tab-conv.active{background:rgba(var(--accent-rgb),.06)}.messenger-tab-conv.unread .messenger-tab-conv-name{font-weight:700}.messenger-tab-conv-info{flex:1;min-width:0}.messenger-tab-conv-top{justify-content:space-between;align-items:baseline;display:flex}.messenger-tab-conv-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.messenger-tab-conv-time{color:var(--text-muted);flex-shrink:0;margin-left:8px;font-size:11px}.messenger-tab-conv-bottom{justify-content:space-between;align-items:center;margin-top:2px;display:flex}.messenger-tab-conv-preview{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:12px;overflow:hidden}.messenger-tab-conv-badge{background:var(--accent);color:#000;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:8px;padding:0 5px;font-size:10px;font-weight:700;display:inline-flex}.messenger-tab-chat{flex-direction:column;flex:1;min-width:0;display:flex}.messenger-tab-no-chat{color:var(--text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;font-size:14px;display:flex}.messenger-tab-no-chat p{margin:0}.messenger-tab-chat-header{border-bottom:1px solid var(--border);background:var(--bg-secondary);align-items:center;gap:12px;padding:12px 16px;display:flex}.messenger-tab-chat-header-info{flex:1;min-width:0}.messenger-tab-chat-header-name{color:var(--text-primary);font-size:14px;font-weight:600}.messenger-tab-typing{color:var(--accent);font-size:12px;font-style:italic}.messenger-tab-messages{flex-direction:column;flex:1;gap:2px;padding:16px;display:flex;overflow-y:auto}.messenger-tab-empty{text-align:center;color:var(--text-muted);padding:20px;font-size:13px}.messenger-tab-load-more{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;background:0 0;margin:0 auto 12px;padding:6px 12px;font-family:inherit;font-size:12px;transition:background 80ms}.messenger-tab-load-more:hover{background:var(--dk-hover)}.messenger-tab-date-sep{text-align:center;color:var(--text-muted);padding:8px 0;font-size:11px;font-weight:500}.messenger-tab-bubble{word-wrap:break-word;border-radius:12px;max-width:70%;margin-bottom:2px;padding:8px 12px;font-size:14px;line-height:1.4;position:relative}.messenger-tab-bubble.mine{background:rgba(var(--accent-rgb),.12);color:var(--text-primary);border-bottom-right-radius:4px;margin-left:auto;margin-right:0}.messenger-tab-bubble.theirs{background:var(--bg-secondary);color:var(--text-primary);border-bottom-left-radius:4px;margin-left:0;margin-right:auto}.messenger-tab-bubble-text{white-space:pre-wrap}.messenger-tab-bubble-meta{color:var(--text-muted);justify-content:flex-end;align-items:center;gap:4px;margin-top:4px;font-size:10px;display:flex}.msg-context-menu{z-index:1000;background:var(--dk-card-bg);border:1px solid var(--border);border-radius:8px;min-width:180px;padding:4px 0;position:fixed;box-shadow:0 4px 16px #00000040}.msg-context-item{color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;width:100%;padding:8px 14px;font-family:inherit;font-size:13px;display:flex}.msg-context-item:hover{background:var(--dk-hover)}.msg-context-item.danger{color:var(--error)}.msg-edit-bar{background:rgba(var(--accent-rgb),.06);border-left:3px solid var(--accent);color:var(--accent);align-items:center;gap:8px;padding:8px 16px;font-size:13px;display:flex}.msg-edit-bar-label{flex-shrink:0;font-weight:600}.msg-edit-bar-preview{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.msg-edit-bar-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;margin-left:auto;padding:4px;font-size:18px}.msg-forward-overlay{background:var(--dk-card-bg);z-index:10;flex-direction:column;display:flex;position:absolute;top:0;right:0;bottom:0;left:0}.msg-forward-header{border-bottom:1px solid var(--border);color:var(--text-primary);justify-content:space-between;align-items:center;padding:16px;font-size:15px;font-weight:600;display:flex}.msg-forward-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;font-size:22px}.msg-forward-list{flex:1;overflow-y:auto}.msg-forward-item{cursor:pointer;width:100%;color:var(--text-primary);text-align:left;background:0 0;border:none;align-items:center;gap:12px;padding:10px 16px;font-family:inherit;font-size:14px;display:flex}.msg-forward-item:hover{background:var(--dk-hover)}.msg-attach-preview{border-top:1px solid var(--border);background:var(--bg-secondary);align-items:center;gap:8px;padding:8px 16px;display:flex}.msg-attach-preview img,.msg-attach-preview video{border-radius:6px;max-height:60px}.msg-attach-preview-name{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:12px;overflow:hidden}.msg-attach-preview-remove{cursor:pointer;color:var(--text-muted);background:0 0;border:none;padding:4px;font-size:18px}.msg-attach-btn{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;flex-shrink:0;align-items:center;padding:8px;display:flex}.msg-attach-btn:hover{color:var(--accent)}.msg-bubble-forward{border-left:2px solid var(--accent);border-radius:2px;margin-bottom:4px;padding:6px 8px;font-size:12px}.msg-bubble-forward-name{color:var(--accent);margin-bottom:2px;font-weight:600}.msg-bubble-forward-text{color:var(--text-secondary)}.msg-bubble-image{cursor:pointer;border-radius:8px;max-width:280px;margin-bottom:4px;display:block}.msg-bubble-video{border-radius:8px;max-width:280px;margin-bottom:4px;display:block}.msg-bubble-edited{color:var(--text-muted);font-size:10px;font-style:italic}.msg-bubble-check{width:16px;height:12px;color:var(--text-muted);flex-shrink:0}.msg-bubble-check.read{color:var(--accent)}.msg-lightbox{z-index:2000;cursor:pointer;background:#000000d9;justify-content:center;align-items:center;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.msg-lightbox img{border-radius:8px;max-width:90vw;max-height:90vh}.messenger-tab-input-area{border-top:1px solid var(--border);background:var(--bg-secondary);align-items:flex-end;gap:8px;padding:12px 16px;display:flex}.messenger-tab-input{border:1px solid var(--border);color:var(--text-primary);resize:none;background:0 0;border-radius:8px;outline:none;flex:1;max-height:120px;padding:8px 12px;font-family:inherit;font-size:14px;line-height:1.4}.messenger-tab-input:focus{border-color:var(--accent)}.messenger-tab-input::placeholder{color:var(--text-muted)}.messenger-tab-send{background:var(--accent);cursor:pointer;color:#000;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:opacity 80ms;display:flex}.messenger-tab-send:disabled{opacity:.3;cursor:not-allowed}.messenger-tab-send:not(:disabled):hover{opacity:.85}.messenger-tab-send svg{stroke:#000}}@media (min-width:768px) and (max-width:1024px){.feed-sidebar{display:none}}@media (min-width:1280px){.app:has(>.sidebar),.dk-schedule{grid-template-columns:300px 1fr}.dk-grid{gap:20px}}}@layer utilities{.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.inset-y-0{inset-block:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.top-0\.5{top:calc(var(--spacing) * .5)}.top-1\/2{top:50%}.top-4{top:calc(var(--spacing) * 4)}.top-20{top:calc(var(--spacing) * 20)}.top-\[57px\]{top:57px}.top-full{top:100%}.right-0{right:calc(var(--spacing) * 0)}.right-0\.5{right:calc(var(--spacing) * .5)}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.right-4{right:calc(var(--spacing) * 4)}.bottom-0{bottom:calc(var(--spacing) * 0)}.bottom-6{bottom:calc(var(--spacing) * 6)}.bottom-full{bottom:100%}.-left-7{left:calc(var(--spacing) * -7)}.left-0{left:calc(var(--spacing) * 0)}.left-1\/2{left:50%}.left-3{left:calc(var(--spacing) * 3)}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-\[5\]{z-index:5}.z-\[60\]{z-index:60}.z-\[100\]{z-index:100}.col-span-2{grid-column:span 2/span 2}.row-span-2{grid-row:span 2/span 2}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.-mx-2{margin-inline:calc(var(--spacing) * -2)}.mx-4{margin-inline:calc(var(--spacing) * 4)}.mx-auto{margin-inline:auto}.my-4{margin-block:calc(var(--spacing) * 4)}.-mt-4{margin-top:calc(var(--spacing) * -4)}.-mt-12{margin-top:calc(var(--spacing) * -12)}.-mt-16{margin-top:calc(var(--spacing) * -16)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-auto{margin-top:auto}.mr-1{margin-right:calc(var(--spacing) * 1)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.-ml-4{margin-left:calc(var(--spacing) * -4)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-3{margin-left:calc(var(--spacing) * 3)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.aspect-square{aspect-ratio:1}.aspect-video{aspect-ratio:var(--aspect-video)}.h-1{height:calc(var(--spacing) * 1)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-3{height:calc(var(--spacing) * 3)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-20{height:calc(var(--spacing) * 20)}.h-24{height:calc(var(--spacing) * 24)}.h-40{height:calc(var(--spacing) * 40)}.h-48{height:calc(var(--spacing) * 48)}.h-52{height:calc(var(--spacing) * 52)}.h-\[18px\]{height:18px}.h-\[60px\]{height:60px}.h-full{height:100%}.max-h-48{max-height:calc(var(--spacing) * 48)}.max-h-64{max-height:calc(var(--spacing) * 64)}.max-h-\[80vh\]{max-height:80vh}.max-h-\[85vh\]{max-height:85vh}.max-h-\[90vh\]{max-height:90vh}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-\[500px\]{min-height:500px}.min-h-screen{min-height:100vh}.w-2{width:calc(var(--spacing) * 2)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-16{width:calc(var(--spacing) * 16)}.w-20{width:calc(var(--spacing) * 20)}.w-24{width:calc(var(--spacing) * 24)}.w-48{width:calc(var(--spacing) * 48)}.w-52{width:calc(var(--spacing) * 52)}.w-64{width:calc(var(--spacing) * 64)}.w-80{width:calc(var(--spacing) * 80)}.w-\[18px\]{width:18px}.w-\[70px\]{width:70px}.w-\[80px\]{width:80px}.w-\[100px\]{width:100px}.w-\[200px\]{width:200px}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[70\%\]{max-width:70%}.max-w-\[90vw\]{max-width:90vw}.max-w-\[100px\]{max-width:100px}.max-w-\[280px\]{max-width:280px}.max-w-\[300px\]{max-width:300px}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-none{max-width:none}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-4{min-width:calc(var(--spacing) * 4)}.min-w-5{min-width:calc(var(--spacing) * 5)}.min-w-\[16px\]{min-width:16px}.min-w-\[18px\]{min-width:18px}.min-w-\[20px\]{min-width:20px}.min-w-\[140px\]{min-width:140px}.min-w-\[160px\]{min-width:160px}.min-w-\[180px\]{min-width:180px}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.origin-top-left{transform-origin:0 0}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-0{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-full{--tw-translate-x:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-95{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-\[fadeIn_150ms_ease-out\]{animation:.15s ease-out fadeIn}.animate-\[scaleIn_150ms_ease-out\]{animation:.15s ease-out scaleIn}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-grabbing{cursor:grabbing}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize-none{resize:none}.list-disc{list-style-type:disc}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}:where(.space-y-0>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 0) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 0) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}:where(.-space-x-1\.5>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * -1.5) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * -1.5) * calc(1 - var(--tw-space-x-reverse)))}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-border>:not(:last-child)){border-color:var(--color-border)}.self-center{align-self:center}.self-start{align-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t-2xl{border-top-left-radius:var(--radius-2xl);border-top-right-radius:var(--radius-2xl)}.rounded-r-md{border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}.rounded-b-xl{border-bottom-right-radius:var(--radius-xl);border-bottom-left-radius:var(--radius-xl)}.rounded-br-sm{border-bottom-right-radius:var(--radius-sm)}.rounded-bl-sm{border-bottom-left-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-\[3px\]{border-style:var(--tw-border-style);border-width:3px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-l-\[3px\]{border-left-style:var(--tw-border-style);border-left-width:3px}.border-none{--tw-border-style:none;border-style:none}.border-accent,.border-accent\/20{border-color:var(--color-accent)}@supports (color:color-mix(in lab,red,red)){.border-accent\/20{border-color:color-mix(in oklab,var(--color-accent) 20%,transparent)}}.border-accent\/30{border-color:var(--color-accent)}@supports (color:color-mix(in lab,red,red)){.border-accent\/30{border-color:color-mix(in oklab,var(--color-accent) 30%,transparent)}}.border-border{border-color:var(--color-border)}.border-card{border-color:var(--color-card)}.border-error\/20{border-color:var(--color-error)}@supports (color:color-mix(in lab,red,red)){.border-error\/20{border-color:color-mix(in oklab,var(--color-error) 20%,transparent)}}.border-error\/30{border-color:var(--color-error)}@supports (color:color-mix(in lab,red,red)){.border-error\/30{border-color:color-mix(in oklab,var(--color-error) 30%,transparent)}}.border-error\/40{border-color:var(--color-error)}@supports (color:color-mix(in lab,red,red)){.border-error\/40{border-color:color-mix(in oklab,var(--color-error) 40%,transparent)}}.border-green-500\/20{border-color:#00c75833}@supports (color:color-mix(in lab,red,red)){.border-green-500\/20{border-color:color-mix(in oklab,var(--color-green-500) 20%,transparent)}}.border-red-500\/20{border-color:#fb2c3633}@supports (color:color-mix(in lab,red,red)){.border-red-500\/20{border-color:color-mix(in oklab,var(--color-red-500) 20%,transparent)}}.border-transparent{border-color:#0000}.border-t-accent{border-top-color:var(--color-accent)}.border-l-accent{border-left-color:var(--color-accent)}.bg-accent,.bg-accent\/5{background-color:var(--color-accent)}@supports (color:color-mix(in lab,red,red)){.bg-accent\/5{background-color:color-mix(in oklab,var(--color-accent) 5%,transparent)}}.bg-accent\/10{background-color:var(--color-accent)}@supports (color:color-mix(in lab,red,red)){.bg-accent\/10{background-color:color-mix(in oklab,var(--color-accent) 10%,transparent)}}.bg-accent\/15{background-color:var(--color-accent)}@supports (color:color-mix(in lab,red,red)){.bg-accent\/15{background-color:color-mix(in oklab,var(--color-accent) 15%,transparent)}}.bg-accent\/20{background-color:var(--color-accent)}@supports (color:color-mix(in lab,red,red)){.bg-accent\/20{background-color:color-mix(in oklab,var(--color-accent) 20%,transparent)}}.bg-accent\/40{background-color:var(--color-accent)}@supports (color:color-mix(in lab,red,red)){.bg-accent\/40{background-color:color-mix(in oklab,var(--color-accent) 40%,transparent)}}.bg-amber-500{background-color:var(--color-amber-500)}.bg-amber-500\/10{background-color:#f99c001a}@supports (color:color-mix(in lab,red,red)){.bg-amber-500\/10{background-color:color-mix(in oklab,var(--color-amber-500) 10%,transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black) 50%,transparent)}}.bg-black\/60{background-color:#0009}@supports (color:color-mix(in lab,red,red)){.bg-black\/60{background-color:color-mix(in oklab,var(--color-black) 60%,transparent)}}.bg-black\/80{background-color:#000c}@supports (color:color-mix(in lab,red,red)){.bg-black\/80{background-color:color-mix(in oklab,var(--color-black) 80%,transparent)}}.bg-black\/90{background-color:#000000e6}@supports (color:color-mix(in lab,red,red)){.bg-black\/90{background-color:color-mix(in oklab,var(--color-black) 90%,transparent)}}.bg-blue-900{background-color:var(--color-blue-900)}.bg-border{background-color:var(--color-border)}.bg-card,.bg-card\/60{background-color:var(--color-card)}@supports (color:color-mix(in lab,red,red)){.bg-card\/60{background-color:color-mix(in oklab,var(--color-card) 60%,transparent)}}.bg-card\/95{background-color:var(--color-card)}@supports (color:color-mix(in lab,red,red)){.bg-card\/95{background-color:color-mix(in oklab,var(--color-card) 95%,transparent)}}.bg-elevated{background-color:var(--color-elevated)}.bg-emerald-500{background-color:var(--color-emerald-500)}.bg-emerald-500\/10{background-color:#00bb7f1a}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/10{background-color:color-mix(in oklab,var(--color-emerald-500) 10%,transparent)}}.bg-error,.bg-error\/10{background-color:var(--color-error)}@supports (color:color-mix(in lab,red,red)){.bg-error\/10{background-color:color-mix(in oklab,var(--color-error) 10%,transparent)}}.bg-error\/15{background-color:var(--color-error)}@supports (color:color-mix(in lab,red,red)){.bg-error\/15{background-color:color-mix(in oklab,var(--color-error) 15%,transparent)}}.bg-fg-muted{background-color:var(--color-fg-muted)}.bg-fg-secondary{background-color:var(--color-fg-secondary)}.bg-fg\/5{background-color:var(--color-fg)}@supports (color:color-mix(in lab,red,red)){.bg-fg\/5{background-color:color-mix(in oklab,var(--color-fg) 5%,transparent)}}.bg-green-500{background-color:var(--color-green-500)}.bg-green-500\/10{background-color:#00c7581a}@supports (color:color-mix(in lab,red,red)){.bg-green-500\/10{background-color:color-mix(in oklab,var(--color-green-500) 10%,transparent)}}.bg-hover{background-color:var(--color-hover)}.bg-overlay{background-color:var(--color-overlay)}.bg-primary{background-color:var(--color-primary)}.bg-red-500{background-color:var(--color-red-500)}.bg-red-500\/10{background-color:#fb2c361a}@supports (color:color-mix(in lab,red,red)){.bg-red-500\/10{background-color:color-mix(in oklab,var(--color-red-500) 10%,transparent)}}.bg-secondary,.bg-secondary\/50{background-color:var(--color-secondary)}@supports (color:color-mix(in lab,red,red)){.bg-secondary\/50{background-color:color-mix(in oklab,var(--color-secondary) 50%,transparent)}}.bg-secondary\/60{background-color:var(--color-secondary)}@supports (color:color-mix(in lab,red,red)){.bg-secondary\/60{background-color:color-mix(in oklab,var(--color-secondary) 60%,transparent)}}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-white\/10{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.bg-white\/10{background-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.bg-zinc-900{background-color:var(--color-zinc-900)}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-t{--tw-gradient-position:to top in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-accent\/30{--tw-gradient-from:var(--color-accent)}@supports (color:color-mix(in lab,red,red)){.from-accent\/30{--tw-gradient-from:color-mix(in oklab, var(--color-accent) 30%, transparent)}}.from-accent\/30{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-card\/60{--tw-gradient-from:var(--color-card)}@supports (color:color-mix(in lab,red,red)){.from-card\/60{--tw-gradient-from:color-mix(in oklab, var(--color-card) 60%, transparent)}}.from-card\/60{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-accent\/10{--tw-gradient-via:var(--color-accent)}@supports (color:color-mix(in lab,red,red)){.via-accent\/10{--tw-gradient-via:color-mix(in oklab, var(--color-accent) 10%, transparent)}}.via-accent\/10{--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-primary{--tw-gradient-to:var(--color-primary);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:calc(var(--spacing) * 0)}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:calc(var(--spacing) * 1)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px-0{padding-inline:calc(var(--spacing) * 0)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-16{padding-block:calc(var(--spacing) * 16)}.pt-0\.5{padding-top:calc(var(--spacing) * .5)}.pt-1{padding-top:calc(var(--spacing) * 1)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-14{padding-top:calc(var(--spacing) * 14)}.pr-4{padding-right:calc(var(--spacing) * 4)}.pr-9{padding-right:calc(var(--spacing) * 9)}.pb-1{padding-bottom:calc(var(--spacing) * 1)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-8{padding-bottom:calc(var(--spacing) * 8)}.pl-2\.5{padding-left:calc(var(--spacing) * 2.5)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-5{padding-left:calc(var(--spacing) * 5)}.pl-9{padding-left:calc(var(--spacing) * 9)}.pl-10{padding-left:calc(var(--spacing) * 10)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-\[inherit\]{font-family:inherit}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[15px\]{font-size:15px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-words{overflow-wrap:break-word}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-accent{color:var(--color-accent)}.text-accent-on{color:var(--color-accent-on)}.text-accent-text{color:var(--color-accent-text)}.text-amber-400{color:var(--color-amber-400)}.text-amber-500{color:var(--color-amber-500)}.text-emerald-400{color:var(--color-emerald-400)}.text-error{color:var(--color-error)}.text-fg{color:var(--color-fg)}.text-fg-muted{color:var(--color-fg-muted)}.text-fg-secondary{color:var(--color-fg-secondary)}.text-green-500{color:var(--color-green-500)}.text-inherit{color:inherit}.text-red-500{color:var(--color-red-500)}.text-white{color:var(--color-white)}.text-white\/80{color:#fffc}@supports (color:color-mix(in lab,red,red)){.text-white\/80{color:color-mix(in oklab,var(--color-white) 80%,transparent)}}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.accent-\[var\(--accent\)\]{accent-color:var(--accent)}.accent-accent{accent-color:var(--color-accent)}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-85{opacity:.85}.opacity-100{opacity:1}.shadow-lg{--tw-shadow:0 8px 24px var(--tw-shadow-color,#00000024), 0 2px 6px var(--tw-shadow-color,#0000000f);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 12px var(--tw-shadow-color,#0000001a), 0 1px 3px var(--tw-shadow-color,#0000000f);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-modal{--tw-shadow:0 24px 64px var(--tw-shadow-color,#0000003d), 0 8px 20px var(--tw-shadow-color,#00000014);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px var(--tw-shadow-color,#00000014), 0 1px 2px var(--tw-shadow-color,#0000000f);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 16px 48px var(--tw-shadow-color,#0000002e), 0 4px 12px var(--tw-shadow-color,#0000000f);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-4{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-accent{--tw-ring-color:var(--color-accent)}.ring-card{--tw-ring-color:var(--color-card)}.ring-offset-2{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.ring-offset-card{--tw-ring-offset-color:var(--color-card)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.will-change-transform{will-change:transform}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}.placeholder\:text-fg-muted::placeholder{color:var(--color-fg-muted)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:top-1:after{content:var(--tw-content);top:calc(var(--spacing) * 1)}.after\:left-1:after{content:var(--tw-content);left:calc(var(--spacing) * 1)}.after\:h-4:after{content:var(--tw-content);height:calc(var(--spacing) * 4)}.after\:w-4:after{content:var(--tw-content);width:calc(var(--spacing) * 4)}.after\:rounded-full:after{content:var(--tw-content);border-radius:3.40282e38px}.after\:bg-white:after{content:var(--tw-content);background-color:var(--color-white)}.after\:transition-transform:after{content:var(--tw-content);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.after\:content-\[\'\'\]:after{--tw-content:"";content:var(--tw-content)}.first\:pt-0:first-child{padding-top:calc(var(--spacing) * 0)}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.last\:pb-0:last-child{padding-bottom:calc(var(--spacing) * 0)}.checked\:bg-accent:checked{background-color:var(--color-accent)}.checked\:after\:translate-x-4:checked:after{content:var(--tw-content);--tw-translate-x:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}@media (hover:hover){.hover\:z-10:hover{z-index:10}.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:scale-110:hover{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:border-fg-muted:hover{border-color:var(--color-fg-muted)}.hover\:bg-accent-hover:hover{background-color:var(--color-accent-hover)}.hover\:bg-accent\/10:hover{background-color:var(--color-accent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-accent\/10:hover{background-color:color-mix(in oklab,var(--color-accent) 10%,transparent)}}.hover\:bg-accent\/20:hover{background-color:var(--color-accent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-accent\/20:hover{background-color:color-mix(in oklab,var(--color-accent) 20%,transparent)}}.hover\:bg-accent\/25:hover{background-color:var(--color-accent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-accent\/25:hover{background-color:color-mix(in oklab,var(--color-accent) 25%,transparent)}}.hover\:bg-accent\/90:hover{background-color:var(--color-accent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-accent\/90:hover{background-color:color-mix(in oklab,var(--color-accent) 90%,transparent)}}.hover\:bg-black\/80:hover{background-color:#000c}@supports (color:color-mix(in lab,red,red)){.hover\:bg-black\/80:hover{background-color:color-mix(in oklab,var(--color-black) 80%,transparent)}}.hover\:bg-error\/10:hover{background-color:var(--color-error)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-error\/10:hover{background-color:color-mix(in oklab,var(--color-error) 10%,transparent)}}.hover\:bg-error\/80:hover{background-color:var(--color-error)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-error\/80:hover{background-color:color-mix(in oklab,var(--color-error) 80%,transparent)}}.hover\:bg-hover:hover{background-color:var(--color-hover)}.hover\:bg-red-500\/5:hover{background-color:#fb2c360d}@supports (color:color-mix(in lab,red,red)){.hover\:bg-red-500\/5:hover{background-color:color-mix(in oklab,var(--color-red-500) 5%,transparent)}}.hover\:bg-white\/20:hover{background-color:#fff3}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/20:hover{background-color:color-mix(in oklab,var(--color-white) 20%,transparent)}}.hover\:text-accent:hover{color:var(--color-accent)}.hover\:text-accent-hover:hover{color:var(--color-accent-hover)}.hover\:text-accent\/80:hover{color:var(--color-accent)}@supports (color:color-mix(in lab,red,red)){.hover\:text-accent\/80:hover{color:color-mix(in oklab,var(--color-accent) 80%,transparent)}}.hover\:text-error:hover{color:var(--color-error)}.hover\:text-fg:hover{color:var(--color-fg)}.hover\:text-white:hover{color:var(--color-white)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}}.focus\:border-accent:focus,.focus\:border-accent\/50:focus{border-color:var(--color-accent)}@supports (color:color-mix(in lab,red,red)){.focus\:border-accent\/50:focus{border-color:color-mix(in oklab,var(--color-accent) 50%,transparent)}}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-accent\/40:focus{--tw-ring-color:var(--color-accent)}@supports (color:color-mix(in lab,red,red)){.focus\:ring-accent\/40:focus{--tw-ring-color:color-mix(in oklab, var(--color-accent) 40%, transparent)}}.focus\:ring-ring:focus{--tw-ring-color:var(--color-ring)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}@media (hover:hover){.enabled\:hover\:opacity-85:enabled:hover{opacity:.85}}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width:40rem){.sm\:w-\[480px\]{width:480px}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:items-start{align-items:flex-start}.sm\:justify-between{justify-content:space-between}.sm\:rounded-2xl{border-radius:var(--radius-2xl)}.sm\:px-0{padding-inline:calc(var(--spacing) * 0)}}@media (min-width:48rem){.md\:\!hidden{display:none!important}.md\:flex{display:flex}.md\:grid{display:grid}.md\:hidden{display:none}.md\:h-screen{height:100vh}.md\:min-w-0{min-width:calc(var(--spacing) * 0)}.md\:flex-1{flex:1}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-\[260px_1fr\]{grid-template-columns:260px 1fr}.md\:flex-col{flex-direction:column}.md\:gap-0\.5{gap:calc(var(--spacing) * .5)}.md\:overflow-hidden{overflow:hidden}.md\:overflow-y-auto{overflow-y:auto}.md\:border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.md\:border-border{border-color:var(--color-border)}.md\:bg-primary{background-color:var(--color-primary)}.md\:bg-secondary{background-color:var(--color-secondary)}.md\:p-2{padding:calc(var(--spacing) * 2)}.md\:p-6{padding:calc(var(--spacing) * 6)}}@media (min-width:64rem){.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:p-8{padding:calc(var(--spacing) * 8)}}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}
