@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=Space+Grotesk:wght@500;600;700&display=swap";:root{--font-display: "Space Grotesk", system-ui, sans-serif;--font-body: "DM Sans", system-ui, sans-serif;--bg: #000000;--bg-soft: #050505;--surface: #111111;--surface-raised: #161616;--surface-hover: #1c1c1c;--surface-glass: rgba(17, 17, 17, .72);--border: rgba(255, 255, 255, .07);--border-hover: rgba(255, 255, 255, .14);--hairline: rgba(255, 255, 255, .04);--text: #fafafa;--text-secondary: #a3a3a3;--text-tertiary: #737373;--accent: #ffffff;--accent-muted: #d4d4d4;--accent-soft: rgba(255, 255, 255, .08);--success: #4ade80;--success-soft: rgba(74, 222, 128, .12);--warning: #fbbf24;--warning-soft: rgba(251, 191, 36, .12);--shadow-xs: 0 1px 0 rgba(255, 255, 255, .04) inset;--shadow-sm: 0 1px 0 rgba(255, 255, 255, .05) inset, 0 12px 32px rgba(0, 0, 0, .4);--shadow-md: 0 1px 0 rgba(255, 255, 255, .06) inset, 0 24px 64px rgba(0, 0, 0, .55);--shadow-lg: 0 40px 80px rgba(0, 0, 0, .65);--radius: 12px;--radius-md: 14px;--radius-lg: 16px;--radius-xl: 20px;--sidebar-w: 272px;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--dur-fast: .18s;--dur-med: .35s;--dur-slow: .7s}*,*:before,*:after{box-sizing:border-box}html{height:100%;scroll-behavior:smooth}body{min-height:100%;margin:0;font-family:var(--font-body);font-size:14px;line-height:1.5;letter-spacing:-.01em;font-feature-settings:"ss01","cv11";color:var(--text);background:#030303;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}.canvas{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden}.canvas-base{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(165deg,#0c0c0c,#030303 38%,#000 72%,#080808),linear-gradient(25deg,rgba(255,255,255,.02) 0%,transparent 42%)}.canvas-depth{position:absolute;top:-30%;right:-30%;bottom:-30%;left:-30%;background:radial-gradient(ellipse 42% 38% at 8% 12%,rgba(255,252,248,.055),transparent 58%),radial-gradient(ellipse 48% 42% at 92% 78%,rgba(180,185,195,.04),transparent 55%),radial-gradient(ellipse 55% 50% at 55% 55%,rgba(255,255,255,.018),transparent 62%),radial-gradient(ellipse 35% 30% at 70% 15%,rgba(220,218,215,.025),transparent 50%);animation:depthDrift 55s ease-in-out infinite alternate}.canvas-mesh{position:absolute;top:-40%;right:-40%;bottom:-40%;left:-40%;opacity:.9;background:radial-gradient(ellipse 60% 50% at 20% -5%,rgba(255,255,255,.04),transparent 52%),radial-gradient(ellipse 45% 40% at 100% 60%,rgba(255,255,255,.025),transparent 48%);animation:meshDrift 45s ease-in-out infinite alternate}.canvas-grid{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.45;background-image:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);background-size:72px 72px;mask-image:radial-gradient(ellipse 85% 75% at 50% 42%,black 15%,transparent 72%);-webkit-mask-image:radial-gradient(ellipse 85% 75% at 50% 42%,black 15%,transparent 72%)}.canvas-light{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,rgba(255,255,255,.045) 0%,transparent 22%),linear-gradient(0deg,rgba(0,0,0,.35) 0%,transparent 28%);animation:lightBreath 12s ease-in-out infinite}.canvas-vignette{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 95% 85% at 50% 48%,transparent 35%,rgba(0,0,0,.5) 100%),radial-gradient(ellipse 40% 35% at 0% 50%,rgba(0,0,0,.25),transparent 70%),radial-gradient(ellipse 40% 35% at 100% 50%,rgba(0,0,0,.25),transparent 70%)}.canvas-grain{position:absolute;top:-50%;right:-50%;bottom:-50%;left:-50%;width:200%;height:200%;opacity:.04;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grainShift 8s steps(6) infinite}@keyframes depthDrift{0%{transform:translate(0) scale(1) rotate(0)}to{transform:translate(3%,2%) scale(1.04) rotate(1deg)}}@keyframes meshDrift{0%{transform:translate(0) scale(1)}to{transform:translate(2%,1.5%) scale(1.03)}}@keyframes lightBreath{0%,to{opacity:1}50%{opacity:.72}}@keyframes grainShift{0%,to{transform:translate(0)}25%{transform:translate(-2%,-1%)}50%{transform:translate(1%,2%)}75%{transform:translate(-1%,1%)}}.app{position:relative;z-index:1;display:flex;min-height:100vh}aside.nav{width:var(--sidebar-w);flex-shrink:0;display:flex;flex-direction:column;padding:22px 16px;background:var(--surface-glass);backdrop-filter:blur(40px) saturate(1.2);-webkit-backdrop-filter:blur(40px) saturate(1.2);border-right:1px solid var(--border);box-shadow:1px 0 0 var(--hairline)}.brand{padding:2px 8px 22px}.brand-logo{display:flex;align-items:center;gap:11px;min-width:0}.brand-mark{flex-shrink:0;width:40px;height:40px;border-radius:10px;overflow:hidden;display:grid;place-items:center;background:#fff;border:1px solid var(--border);box-shadow:var(--shadow-xs)}.brand-mark-img{width:100%;height:100%;object-fit:contain;object-position:center;display:block}.brand-wordmark{display:flex;align-items:baseline;gap:5px;flex-wrap:wrap;min-width:0;line-height:1.15}.brand-name{font-family:var(--font-display);font-size:15px;font-weight:600;letter-spacing:-.035em;color:var(--text)}.brand-tag{font-family:var(--font-body);font-size:12px;font-weight:500;color:var(--text-tertiary)}.brand-tag:before{content:"·";margin-right:5px;opacity:.45}.brand-logo--lg .brand-mark{width:48px;height:48px;border-radius:12px}.brand-logo--lg .brand-name{font-size:22px;font-weight:600}.brand-logo--lg .brand-tag{font-size:14px}.nav-body{flex:1;min-height:0;display:flex;flex-direction:column;gap:0;overflow-y:auto;margin:0 -4px;padding:0 4px}.nav-section{padding-bottom:4px}.nav-section--menu,.nav-section--admin{margin-top:20px;padding-top:20px;border-top:1px solid var(--border)}.nav-section--news{padding-bottom:0}.nav-section-label{font-family:var(--font-body);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary);padding:0 10px 10px;margin:0}.nav-section:first-child .nav-section-label{padding-top:4px}.nav-list{list-style:none;margin:0;padding:0 4px;display:flex;flex-direction:column;gap:4px}.nav-list li{margin:0}.nav-list a{position:relative;display:flex;align-items:center;gap:10px;padding:11px 12px;margin:0;border-radius:10px;color:var(--text-secondary);text-decoration:none;font-size:14px;font-weight:500;transition:color var(--dur-fast) ease,background var(--dur-fast) ease,transform var(--dur-fast) var(--ease-out)}.nav-list a svg,.nav-list a .nav-icon-svg{width:18px;height:18px;opacity:.55;flex-shrink:0;transition:opacity var(--dur-fast) ease,color var(--dur-fast) ease}.nav-list a:hover{color:var(--text);background:var(--accent-soft);transform:translate(2px)}.nav-list a:hover svg,.nav-list a:hover .nav-icon-svg{opacity:.9;color:var(--text)}.nav-list a.active{color:var(--text);background:#ffffff17;box-shadow:var(--shadow-xs)}.nav-list a.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:2px;height:18px;border-radius:2px;background:var(--accent)}.nav-list a.active svg,.nav-list a.active .nav-icon-svg{opacity:1;color:var(--text)}.nav-link-label{flex:1;min-width:0}.nav-badge{flex-shrink:0;margin-left:auto;padding:2px 7px;border-radius:999px;font-size:10px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--bg, #0a0a0a);background:var(--accent);line-height:1.3}.nav-list a.active .nav-badge{background:var(--text);color:var(--bg, #0a0a0a)}.nav-footer{flex-shrink:0;margin-top:auto;padding-top:20px;border-top:1px solid var(--border)}.user-chip{display:flex;align-items:center;gap:10px;padding:10px;border-radius:12px;transition:background var(--dur-fast) ease;cursor:default}.user-chip:hover{background:var(--accent-soft)}.avatar{width:36px;height:36px;border-radius:50%;flex-shrink:0;background:linear-gradient(145deg,#404040,#262626);border:1px solid var(--border-hover);box-shadow:var(--shadow-xs)}.user-meta .name{font-size:13px;font-weight:600;letter-spacing:-.02em}.user-meta .role{font-size:11px;color:var(--text-tertiary)}main{flex:1;min-width:0;padding:32px 40px 48px}.topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:32px}.topbar h1{margin:0 0 6px;font-family:var(--font-display);font-size:clamp(26px,3.5vw,34px);font-weight:600;letter-spacing:-.04em;line-height:1.1;color:var(--text)}.topbar p{margin:0;color:var(--text-secondary);font-size:14px}.topbar-actions{display:flex;align-items:center;gap:10px}.search{display:flex;align-items:center;gap:10px;min-width:240px;padding:10px 14px;border-radius:12px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-xs);transition:border-color var(--dur-fast) ease,box-shadow var(--dur-med) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.search:focus-within{border-color:var(--border-hover);box-shadow:var(--shadow-xs),0 0 0 1px #ffffff0f;transform:translateY(-1px)}.search svg{width:16px;height:16px;color:var(--text-tertiary);flex-shrink:0}.search input{width:100%;border:none;background:transparent;font:inherit;color:var(--text);outline:none;color-scheme:dark}.search input::placeholder{color:var(--text-tertiary)}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 18px;border:none;border-radius:980px;font:inherit;font-size:13px;font-weight:600;letter-spacing:-.01em;cursor:pointer;overflow:hidden;isolation:isolate;transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-med) var(--ease-out),opacity var(--dur-fast) ease}.btn-primary{color:#000;background:var(--accent);box-shadow:var(--shadow-sm)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-primary:active{transform:scale(.97)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:32px}.stat-card{position:relative;padding:22px 22px 20px;border-radius:var(--radius-xl);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-xs);overflow:hidden;transition:transform var(--dur-med) var(--ease-out),border-color var(--dur-med) ease,box-shadow var(--dur-med) var(--ease-out)}.stat-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:1px;background:linear-gradient(165deg,rgba(255,255,255,.18) 0%,rgba(255,255,255,.04) 40%,transparent 60%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:.6;transition:opacity var(--dur-med) ease}.stat-card:after{content:"";position:absolute;top:0;left:0;right:0;height:48%;background:linear-gradient(180deg,rgba(255,255,255,.04),transparent);pointer-events:none}.stat-card:hover{transform:translateY(-3px);border-color:var(--border-hover);box-shadow:var(--shadow-md)}.stat-card:hover:before{opacity:1}.stat-card .label{position:relative;z-index:1;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary);margin-bottom:10px}.stat-card .value{position:relative;z-index:1;font-size:32px;font-weight:600;letter-spacing:-.04em;line-height:1.1;font-variant-numeric:tabular-nums;margin-bottom:8px}.stat-card .delta{position:relative;z-index:1;font-size:12px;font-weight:500}.delta-up{color:var(--success)}.delta-mid{color:var(--text-secondary)}.delta-warn{color:var(--warning)}.panel{border-radius:var(--radius-xl);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);overflow:hidden;transition:box-shadow var(--dur-med) var(--ease-out)}.panel:hover{box-shadow:var(--shadow-md)}.panel-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:20px 24px;border-bottom:1px solid var(--border)}.panel-header h2{margin:0;font-size:17px;font-weight:600;letter-spacing:-.03em}.panel-tools{display:flex;gap:8px}.chip-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;font-size:13px;font-weight:500;color:var(--text-secondary);padding:8px 32px 8px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface-raised) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23737373' d='M3 4.5L6 7.5L9 4.5'/%3E%3C/svg%3E") no-repeat right 10px center;cursor:pointer;color-scheme:dark;transition:border-color var(--dur-fast) ease,background-color var(--dur-fast) ease,transform var(--dur-fast) var(--ease-out)}.chip-select:hover,.chip-select:focus{border-color:var(--border-hover);background-color:var(--surface-hover);outline:none;transform:translateY(-1px)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px}thead th{text-align:left;padding:14px 24px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-tertiary);background:#ffffff05;border-bottom:1px solid var(--border);white-space:nowrap}tbody td{padding:16px 24px;border-bottom:1px solid var(--hairline);vertical-align:middle;transition:background var(--dur-fast) ease}tbody tr:last-child td{border-bottom:none}tbody tr{transition:transform var(--dur-fast) var(--ease-out)}tbody tr:hover td{background:#ffffff08}tbody tr:hover{transform:translate(2px)}.mono{font-family:SF Mono,ui-monospace,Menlo,Consolas,monospace;font-size:12px;color:var(--text-secondary);font-variant-numeric:tabular-nums}.subtle{font-size:12px;color:var(--text-tertiary);margin-top:2px}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:8px;font-size:11px;font-weight:600;letter-spacing:.01em}.badge-live{background:var(--success-soft);color:var(--success)}.badge-live:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor;animation:statusPulse 2s ease-in-out infinite}.badge-queue{background:var(--warning-soft);color:var(--warning)}.badge-done{background:#ffffff0f;color:var(--text-secondary)}.badge-bot{background:var(--accent-soft);color:var(--accent-muted)}@keyframes statusPulse{0%,to{opacity:1}50%{opacity:.45}}.reveal{opacity:0;transform:translateY(16px);filter:blur(6px);transition:opacity var(--dur-slow) var(--ease-out),transform var(--dur-slow) var(--ease-out),filter var(--dur-slow) var(--ease-out)}.reveal.is-visible{opacity:1;transform:translateY(0);filter:blur(0)}.reveal-d1{transition-delay:.04s}.reveal-d2{transition-delay:.1s}.reveal-d3{transition-delay:.16s}.reveal-d4{transition-delay:.22s}.reveal-d5{transition-delay:.28s}.reveal-d6{transition-delay:.34s}.reveal-d7{transition-delay:.4s}aside.nav{animation:navIn .8s var(--ease-out) both}@keyframes navIn{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes shine{0%{transform:translate(-100%) skew(-8deg)}to{transform:translate(200%) skew(-8deg)}}.stat-card .shine{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;border-radius:inherit;pointer-events:none}.stat-card .shine:after{content:"";position:absolute;top:0;left:0;width:40%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.06),transparent);transform:translate(-100%)}.stat-card:hover .shine:after{animation:shine .85s var(--ease-out)}.btn .ripple{position:absolute;border-radius:50%;background:#00000026;transform:scale(0);animation:ripple .55s var(--ease-out) forwards;pointer-events:none}@keyframes ripple{to{transform:scale(2.8);opacity:0}}::selection{background:#fff3;color:#fff}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#fff3}@media(max-width:1100px){.stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.app{flex-direction:column}aside.nav{width:100%;border-right:none;border-bottom:1px solid var(--border)}main{padding:20px 18px 36px}.topbar{flex-direction:column;align-items:stretch}.topbar-actions{flex-direction:column}.search{min-width:0}.stats{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none;filter:none}.canvas-mesh,.canvas-depth,.canvas-light,.canvas-grain{animation:none}}.info-panel{padding:24px;margin-bottom:16px}.info-panel h2{margin:0 0 14px;font-size:16px;font-weight:600;letter-spacing:-.02em}.info-list{margin:0;padding-left:20px;color:var(--text-secondary);font-size:14px;line-height:1.65}.info-list li{margin-bottom:8px}.info-list li:last-child{margin-bottom:0}.info-list strong{color:var(--text);font-weight:500}.info-list--compact{list-style:disc}.wall-feed{display:flex;flex-direction:column;gap:20px;max-width:720px}.wall-feed--admin{margin-top:24px}.wall-empty{padding:48px 24px;text-align:center}.wall-post{border-radius:var(--radius-xl);border:1px solid var(--border);background:var(--surface);overflow:hidden;box-shadow:var(--shadow-sm)}.wall-post--pinned{border-color:var(--border-hover);box-shadow:var(--shadow-md)}.wall-post-media{aspect-ratio:16 / 9;max-height:420px;background:#0a0a0a;border-bottom:1px solid var(--border)}.wall-post-media img{width:100%;height:100%;object-fit:cover;display:block}.wall-post-body{padding:22px 24px 24px}.wall-post-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.wall-post-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:12px;color:var(--text-tertiary)}.wall-post-meta time{font-variant-numeric:tabular-nums}.wall-post-author:before{content:"·";margin-right:8px;opacity:.5}.wall-badge{display:inline-flex;padding:2px 8px;border-radius:6px;font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text);background:var(--accent-soft);border:1px solid var(--border)}.wall-post-actions{display:flex;gap:8px;flex-shrink:0}.wall-post-title{margin:0 0 14px;font-family:var(--font-display);font-size:clamp(20px,3vw,26px);font-weight:600;letter-spacing:-.03em;line-height:1.2;color:var(--text)}.wall-post-text{color:var(--text-secondary);font-size:15px;line-height:1.65}.wall-post-text p{margin:0 0 12px}.wall-post-text p:last-child{margin-bottom:0}.wall-composer{padding:24px;margin-bottom:8px;max-width:720px}.wall-composer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.wall-composer-head h2{margin:0;font-size:18px;font-weight:600}.wall-composer-text{width:100%;min-height:160px;padding:12px 14px;border-radius:10px;border:1px solid var(--border);background:var(--surface-raised);color:var(--text);font:inherit;line-height:1.55;resize:vertical}.wall-composer-text:focus{outline:none;border-color:var(--border-hover)}.wall-composer-media{margin-bottom:16px}.wall-composer-media-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px}.wall-file-btn{cursor:pointer;margin:0}.wall-pin{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary);cursor:pointer;margin-left:auto}.wall-pin input{width:auto}.wall-composer-preview{border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);max-height:280px}.wall-composer-preview img{width:100%;max-height:280px;object-fit:cover;display:block}.news-feed{display:flex;flex-direction:column;gap:12px}.news-card{padding:16px 18px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-raised)}.news-date{display:block;font-size:12px;color:var(--text-tertiary);margin-bottom:6px}.news-title{margin:0 0 8px;font-size:15px;font-weight:600;letter-spacing:-.02em;color:var(--text)}.news-text{margin:0;font-size:14px;line-height:1.55;color:var(--text-secondary)}.auth-page--loading{place-items:center}.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px;position:relative;z-index:1}.auth-card{width:100%;max-width:400px;padding:32px;border-radius:var(--radius-xl);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-md)}.auth-card h1{margin:0 0 8px;font-family:var(--font-display);font-size:24px;font-weight:600;letter-spacing:-.04em}.auth-brand{margin-bottom:26px;padding-bottom:22px;border-bottom:1px solid var(--border)}.auth-brand .brand-logo{justify-content:center}.auth-card .sub{color:var(--text-secondary);margin-bottom:24px}.auth-notice{padding:12px 14px;border-radius:10px;font-size:13px;line-height:1.45;margin-bottom:18px}.auth-notice--warning{background:var(--warning-soft);border:1px solid rgba(251,191,36,.35);color:var(--warning)}.auth-notice strong{display:block;margin-bottom:4px;color:var(--text)}.form-field{margin-bottom:16px}.form-field label{display:block;font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:6px}.form-field label.checkbox-row{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:500;color:var(--text);margin-bottom:0;cursor:pointer}.form-field label.checkbox-row input{width:auto;margin:0}.form-field input,.form-field textarea,.form-field select{width:100%;padding:10px 14px;border-radius:10px;border:1px solid var(--border);background:var(--surface-raised);color:var(--text);font:inherit}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{outline:none;border-color:var(--border-hover);box-shadow:0 0 0 3px var(--accent-soft)}.btn-secondary{color:var(--text);background:var(--surface-raised);border:1px solid var(--border)}.btn-danger{color:#fff;background:#7f1d1d;border:1px solid #991b1b}.btn-sm{padding:6px 12px;font-size:12px}.msg{padding:10px 14px;border-radius:10px;margin-bottom:16px;font-size:13px}.msg.ok{background:var(--success-soft);color:var(--success)}.msg.err{background:#ef44441f;color:#f87171}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.page-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:28px}.tokens-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-bottom:22px}.tokens-toolbar--wrap{margin-bottom:14px}.tokens-control-panel{background:var(--surface-raised);border:1px solid var(--border);border-radius:14px;padding:14px 16px;margin-bottom:20px}.tokens-control-main{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.tokens-control-left{display:flex;flex-direction:column;gap:8px;min-width:0}.tokens-period-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}.tokens-select-period{margin:0;padding:0;border:none;background:none;color:var(--text-muted);font-size:13px;line-height:1.3;cursor:pointer;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--text-muted) 45%,transparent);text-underline-offset:3px;transition:color .15s ease}.tokens-select-period:hover:not(:disabled){color:var(--text)}.tokens-select-period:disabled{opacity:.45;cursor:not-allowed}.tokens-control-stats{margin:0;font-size:13px;line-height:1.4}.tokens-control-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.tokens-selection-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.tokens-selection-count{font-size:13px;font-weight:600;color:var(--text);white-space:nowrap}.tokens-selection-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.tokens-validity-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px;padding-top:14px;border-top:1px solid var(--hairline)}.tokens-validity-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;flex-shrink:0}.btn-ghost{color:var(--text-secondary);background:transparent;border:1px solid transparent}.btn-ghost:hover:not(:disabled){color:var(--text);background:var(--surface-hover);border-color:var(--border)}.token-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border-radius:10px;border:1px solid var(--border);background:var(--surface-raised);color:var(--text-secondary);cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.token-icon-btn:hover:not(:disabled){border-color:var(--border-hover);color:var(--text);background:var(--surface-hover)}.token-icon-btn:disabled{opacity:.45;cursor:not-allowed}.token-icon-btn-dots{font-size:14px;line-height:1}.token-card-actions{flex-shrink:0;gap:6px}.tokens-check-progress{margin:12px 0 0;font-size:13px;color:var(--accent)}.tokens-validity-filters{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:0}.tokens-validity-pill{font:inherit;font-size:12px;padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface-raised);color:var(--text-secondary);cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.tokens-validity-pill:hover{border-color:var(--border-hover);color:var(--text)}.tokens-validity-pill.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.tokens-filter-summary{margin-bottom:16px}.token-validity--ok-text{color:var(--success)}.token-validity--bad-text{color:#f87171}.token-validity{font-size:11px;font-weight:600;letter-spacing:.02em}.token-validity--unknown{background:#94a3b81f;color:var(--text-secondary)}.token-validity--checking{background:var(--accent-soft);color:var(--accent)}.token-validity--ok{background:var(--success-soft);color:var(--success)}.token-validity--bad{background:#ef44441f;color:#f87171}.token-card--valid{border-color:#22c55e59;box-shadow:inset 3px 0 0 var(--success)}.token-card--invalid{border-color:#ef444440;box-shadow:inset 3px 0 #f87171;opacity:.92}.token-card-head{flex-wrap:wrap;gap:6px}.token-card-worker-name{display:inline-flex;align-items:baseline;gap:8px;font-size:15px;color:var(--accent)}.token-card-num{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:6px;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text-secondary);background:var(--surface-hover);border:1px solid var(--border)}.profile-field-label{display:block;margin-bottom:8px;font-size:10px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--text-tertiary)}.token-card-account-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 12px;margin:2px 0 4px}.token-card-phone{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.01em}.token-card-captured-at{font-size:12px}.token-card-handoff-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:4px 0 6px;font-size:12px;line-height:1.4}.token-card-handoff-meta--compact{margin:0 0 2px}.token-card-handoff-part{color:var(--text-secondary)}.token-card-handoff-part.mono{color:var(--text-tertiary);font-family:ui-monospace,Cascadia Code,Segoe UI Mono,monospace;font-size:11px}.tg-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:500;letter-spacing:.02em;color:#7dd3fc;background:#38bdf81a;border:1px solid rgba(125,211,252,.22);text-decoration:none;transition:color .15s ease,background .15s ease,border-color .15s ease}.tg-pill:before{content:"TG";display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;font-size:8px;font-weight:700;letter-spacing:-.04em;color:#0c4a6e;background:#7dd3fcf2;flex-shrink:0}.tg-pill:hover{color:#bae6fd;background:#38bdf829;border-color:#7dd3fc61;text-decoration:none}.tg-pill:visited,.tg-pill:link,.tg-pill:active{color:#7dd3fc;text-decoration:none}.token-check-btn{min-width:88px}.token-validity-error{margin:4px 0 0;font-size:12px;color:#f87171}.period-dropdown{position:relative}.period-dropdown-trigger{display:inline-flex;align-items:center;gap:8px;font:inherit;font-size:14px;padding:10px 14px;border-radius:12px;border:1px solid var(--border);background:var(--surface-raised);color:var(--text);cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.period-dropdown-trigger:hover,.period-dropdown-trigger[aria-expanded=true]{border-color:var(--border-hover);background:var(--surface-hover)}.period-dropdown-trigger[aria-expanded=true]{box-shadow:0 0 0 1px var(--border-hover)}.period-dropdown-prefix{color:var(--text-secondary);font-weight:500}.period-dropdown-value{font-weight:600;color:var(--success)}.period-dropdown-chevron{margin-left:2px;opacity:.55;transition:transform .15s ease}.period-dropdown-chevron--open{transform:rotate(180deg)}.period-dropdown-menu{position:absolute;z-index:50;top:calc(100% + 6px);left:0;min-width:100%;width:max-content;max-width:min(280px,calc(100vw - 32px));margin:0;padding:6px;list-style:none;border-radius:14px;border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-md);animation:session-fade-in .12s ease}.period-dropdown-option{display:block;width:100%;font:inherit;font-size:14px;font-weight:500;text-align:left;padding:10px 12px;border:none;border-radius:10px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background .12s ease,color .12s ease}.period-dropdown-option:hover{background:var(--surface-hover);color:var(--text)}.period-dropdown-option--active{background:var(--success-soft);color:var(--success)}.period-dropdown-option--active:hover{background:#4ade8029;color:var(--success)}.period-dropdown-option--rich{text-align:left}.period-dropdown-option-label{display:block;font-weight:500}.period-dropdown-option-desc{display:block;margin-top:3px;font-size:11px;font-weight:400;line-height:1.35;color:var(--text-tertiary)}.period-dropdown-option--active .period-dropdown-option-desc{color:#4ade80bf}.session-download-btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;padding:0;border:1px solid var(--border);border-radius:12px;background:var(--surface-raised);color:var(--text-secondary);cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.session-download-btn:hover{border-color:var(--border-hover);background:var(--surface-hover);color:var(--text)}.tokens-download-period{white-space:nowrap}.tokens-filter-summary{margin:0;font-size:13px;flex:1;min-width:120px}.tokens-filter-empty{padding:24px 16px;text-align:center;border-radius:var(--radius-lg);border:1px dashed var(--border);background:var(--surface-raised)}.tokens-download-selected{white-space:nowrap}.token-select{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:4px;margin:-4px 4px -4px -4px}.token-select-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.token-select-box{display:block;width:20px;height:20px;border-radius:6px;border:1.5px solid var(--border-hover);background:var(--surface);transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.token-select:hover .token-select-box{border-color:var(--text-tertiary)}.token-select-input:focus-visible+.token-select-box{box-shadow:0 0 0 2px var(--success-soft)}.token-select-input:checked+.token-select-box{border-color:#4ade808c;background:var(--success-soft);box-shadow:inset 0 0 0 4px var(--success)}.token-select-input:disabled+.token-select-box{opacity:.45;cursor:not-allowed}.link-item--selected{border-color:#4ade8059;background:#4ade800a;box-shadow:0 0 0 1px #4ade801f}.links-hub{max-width:1200px}.links-hub-topbar p{margin:6px 0 0}.links-topbar-end{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.links-hub-stats--inline{display:flex;flex-wrap:wrap;gap:8px;margin:0}.links-stat-pill{display:flex;align-items:baseline;gap:6px;padding:8px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface-raised)}.links-stat-value{font-size:17px;font-weight:700;letter-spacing:-.03em;color:var(--text)}.links-stat-label{font-size:11px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.links-stat-pill--active .links-stat-value{color:var(--accent-muted)}.links-stat-pill--ok .links-stat-value{color:var(--success)}.links-hub-panel{display:grid;grid-template-columns:320px 1fr;border-radius:var(--radius-xl);border:1px solid var(--border);background:var(--surface-raised);overflow:hidden;min-height:min(560px,calc(100vh - 200px))}@media(max-width:900px){.links-hub-panel{grid-template-columns:1fr;min-height:0}.links-topbar-end{width:100%;justify-content:space-between}}.links-hub-aside{padding:22px 20px;border-right:1px solid var(--hairline);background:var(--surface)}@media(max-width:900px){.links-hub-aside{border-right:none;border-bottom:1px solid var(--hairline)}}.links-hub-main{display:flex;flex-direction:column;min-width:0;min-height:0}.links-card-title{margin:0;font-size:15px;font-weight:600;letter-spacing:-.02em}.links-card-desc{margin:4px 0 16px;font-size:13px}.preset-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:16px}.preset-card{font:inherit;font-size:12px;font-weight:500;padding:11px 8px;border-radius:10px;border:1px solid var(--border);background:var(--surface-raised);color:var(--text-secondary);cursor:pointer;text-align:center;transition:border-color .15s ease,background .15s ease,color .15s ease}.preset-card--wide{grid-column:1 / -1}.preset-card:hover{border-color:var(--border-hover);color:var(--text)}.preset-card--active{border-color:#4ade8073;background:var(--success-soft);color:var(--success)}.links-custom-panel{margin-bottom:16px;padding:14px;border-radius:12px;border:1px solid var(--border);background:var(--surface-raised)}.links-custom-panel-title{margin:0 0 12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary)}.links-custom-empty{display:flex;flex-direction:column;align-items:stretch;gap:12px;padding:8px 4px 4px}.links-custom-empty-text{margin:0;font-size:13px;line-height:1.5;color:var(--text-secondary)}.links-custom-create-template{width:100%}.links-template-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.links-template-card{font:inherit;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;text-align:left;transition:border-color .15s ease,background .15s ease,color .15s ease}.links-template-card:hover{border-color:var(--border-hover);color:var(--text)}.links-template-card--active{border-color:#4ade8073;background:var(--success-soft);color:var(--success)}.links-template-card--new{border-style:dashed;justify-content:center;flex-direction:column;gap:2px;min-height:52px;color:var(--text-tertiary)}.links-template-card--new:hover{border-color:#4ade8059;color:var(--success);background:#4ade800f}.links-template-card-name{font-size:12px;font-weight:500;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.links-template-new-icon{font-size:18px;font-weight:600;line-height:1}.links-template-card-check{display:flex;flex-shrink:0;color:var(--success)}.links-custom-selected{margin:10px 0 0;font-size:12px}.links-custom-selected strong{color:var(--text);font-weight:600}.links-custom-hint{margin:8px 0 0;font-size:12px;text-align:center}.links-hub-aside .form-field{margin-bottom:12px}.link-slug-compose{display:block;width:100%;min-height:42px;padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-raised);transition:border-color .15s ease,box-shadow .15s ease;overflow-x:auto}.link-slug-compose:focus-within{border-color:#4ade8073;box-shadow:0 0 0 3px var(--success-soft)}.link-slug-line{display:inline-flex;align-items:center;gap:0;max-width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;font-weight:400;line-height:1.4;letter-spacing:0;font-variant-numeric:tabular-nums;white-space:nowrap}.link-slug-prefix{flex:none;color:var(--text-secondary);-webkit-user-select:none;user-select:none}.form-field .link-slug-compose .link-slug-input{display:inline-block;flex:none;width:auto;min-width:0;max-width:none;height:auto;margin:0;padding:0 1px;border:none;border-radius:0;background:transparent;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:var(--text);box-shadow:none;vertical-align:baseline}.form-field .link-slug-compose .link-slug-input:focus{outline:none;border:none;box-shadow:none}.form-field .link-slug-compose .link-slug-input::placeholder{color:var(--text-tertiary);font-weight:400}.link-slug-status{margin:8px 0 0;font-size:12px;line-height:1.35}.link-slug-status--ok{color:var(--success)}.link-slug-status--err{color:#f87171}.badge--slug{font-family:var(--font-mono, ui-monospace, monospace);font-size:11px}.links-create-btn{width:100%}.links-last-created{margin-top:14px;padding:12px;border-radius:10px;border:1px solid var(--hairline);background:var(--surface-raised)}.links-last-created-label{display:block;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary);margin-bottom:6px}.links-last-created-url{margin:0 0 8px;font-size:11px;line-height:1.4;word-break:break-all}.links-main-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:18px 22px;border-bottom:1px solid var(--hairline);background:var(--surface)}.links-main-head-left{display:flex;align-items:baseline;gap:10px}.links-list-count{font-size:13px;font-variant-numeric:tabular-nums}.links-list-body{flex:1;overflow-y:auto;padding:16px 22px 22px;min-height:200px}.links-list-empty{padding:40px 16px;text-align:center}.links-list-stack{display:flex;flex-direction:column;gap:10px}.link-card{display:grid;grid-template-columns:1fr auto;gap:12px 16px;align-items:center;padding:14px 16px;border-radius:12px;border:1px solid var(--border);background:var(--surface);transition:border-color .15s ease}@media(max-width:640px){.link-card{grid-template-columns:1fr;align-items:stretch}}.link-card:hover{border-color:var(--border-hover)}.link-card--highlight{border-color:#4ade8073;box-shadow:0 0 0 1px #4ade8026}.link-card-main{min-width:0}.link-card-badges{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:8px}.link-card-note{font-size:12px;color:var(--text-secondary);padding:2px 8px;border-radius:6px;background:var(--accent-soft)}.link-card-url{margin:0;font-size:12px;line-height:1.45;word-break:break-all;color:var(--text-secondary)}.link-card-meta{margin:6px 0 0;font-size:12px}.link-card-actions{display:flex;flex-direction:column;gap:6px;flex-shrink:0}@media(max-width:640px){.link-card-actions{flex-direction:row}}.items-stack{display:flex;flex-direction:column;gap:16px}.link-item{padding:20px 22px;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface-raised)}.link-item-row{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%}.link-item-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.link-item-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.link-item-main>p{margin:0}.link-item .link-item-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.link-item .row{margin-top:4px}.session-actions-trigger{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;padding:0;border:1px solid rgba(74,222,128,.22);border-radius:12px;background:linear-gradient(145deg,#4ade8024,#4ade800a);color:var(--success);cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .12s ease}.session-actions-trigger:hover{border-color:#4ade8073;background:linear-gradient(145deg,#4ade8038,#4ade8014);box-shadow:0 0 18px #4ade802e}.session-actions-trigger:active{transform:scale(.96)}.session-actions-trigger:focus-visible{outline:2px solid var(--success);outline-offset:2px}.session-actions-icon{display:block}.session-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#000000c7;display:flex;align-items:flex-end;justify-content:center;padding:16px;animation:session-fade-in .18s ease}.session-overlay--modal{align-items:center}@media(min-width:520px){.session-overlay--menu{align-items:center}}@keyframes session-fade-in{0%{opacity:0}to{opacity:1}}.session-menu-panel{width:100%;max-width:400px;max-height:min(90vh,680px);overflow:hidden;display:flex;flex-direction:column;border-radius:var(--radius-xl) var(--radius-xl) 0 0;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-md)}.session-menu-panel--bulk{max-width:420px}.session-menu-desc{margin:6px 0 0;font-size:13px;line-height:1.4}.session-menu-panel--bulk .session-menu-hint{margin:0 16px 10px;padding:8px 12px;border-top:none;color:var(--text-secondary);background:var(--accent-soft);border-radius:var(--radius-md)}.bulk-selected-chips{display:flex;flex-wrap:wrap;gap:8px;padding:0 16px 14px;max-height:132px;overflow-y:auto;border-bottom:1px solid var(--hairline)}.bulk-chip{display:flex;flex-direction:column;gap:2px;min-width:0;padding:8px 11px;border-radius:var(--radius-md);background:var(--surface-raised);border:1px solid var(--hairline)}.bulk-chip-title{font-size:12px;font-weight:600;color:var(--text)}.bulk-chip-phone{font-size:12px;color:var(--text-secondary);font-variant-numeric:tabular-nums}.bulk-chip-time{font-size:11px;color:var(--text-tertiary)}@media(min-width:520px){.session-menu-panel{border-radius:var(--radius-xl)}.session-menu-grabber{display:none}}.session-menu-grabber{flex-shrink:0;width:36px;height:4px;margin:10px auto 0;border-radius:999px;background:var(--border-hover)}.session-menu-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:14px 18px 16px;border-bottom:1px solid var(--hairline)}.session-menu-header-text{min-width:0;flex:1}.session-menu-header strong{display:block;font-size:17px;letter-spacing:-.02em}.session-menu-meta{display:flex;flex-direction:column;gap:3px;margin-top:8px}.session-menu-meta-name{font-size:14px;font-weight:500;color:var(--text)}.session-menu-meta-phone{font-size:13px;color:var(--text-secondary);font-variant-numeric:tabular-nums}.session-menu-meta time{font-size:12px;color:var(--text-tertiary)}.session-menu-close{flex-shrink:0;width:36px;height:36px;display:grid;place-items:center;border:none;border-radius:10px;background:var(--surface-hover);color:var(--text-secondary);cursor:pointer}.session-menu-close:hover{color:var(--text);background:var(--accent-soft)}.session-menu-body{overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:14px 16px 20px}.session-menu-section{padding:12px;border-radius:var(--radius-lg);border:1px solid var(--hairline);background:var(--surface-raised)}.session-menu-section-title{margin:0 0 10px;padding-left:2px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary)}.session-menu-grid{display:grid;gap:8px}.session-menu-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.session-menu-grid--2>.session-menu-tile:last-child:nth-child(odd){grid-column:1 / -1;flex-direction:row;gap:10px;min-height:56px}.session-menu-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.session-menu-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:68px;padding:10px 6px;border-radius:14px;border:1px solid transparent;background:var(--surface);color:var(--text);cursor:pointer;overflow:hidden;transition:background .15s ease,border-color .15s ease,transform .1s ease}.session-menu-tile:hover{background:var(--surface-hover);border-color:var(--border)}.session-menu-tile:active{transform:scale(.97)}.session-menu-tile-label{font-size:11px;font-weight:500;line-height:1.25;text-align:center;color:var(--text-secondary)}.session-menu-tile:hover .session-menu-tile-label{color:var(--text)}.session-menu-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:var(--accent-soft);color:var(--text-secondary)}.session-menu-icon--primary{background:#4ade801f;color:var(--success)}.session-menu-icon--danger{background:#f871711f;color:#f87171}.session-menu-tile--danger:hover{border-color:#f8717159}.session-menu-hint{margin:0;padding:10px 18px 0;font-size:13px;line-height:1.4;color:var(--warning);border-top:1px solid var(--hairline)}.session-menu-tile:disabled{opacity:.45;cursor:not-allowed}.session-menu-tile--loading{pointer-events:none}.session-spinner{width:18px;height:18px;border:2px solid var(--border);border-top-color:var(--text);border-radius:50%;animation:session-spin .7s linear infinite}@keyframes session-spin{to{transform:rotate(360deg)}}.session-modal{width:100%;max-width:440px;padding:24px;border-radius:var(--radius-xl);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-md);animation:session-slide-up .22s ease}.session-modal--wide{max-width:480px}.session-modal h3{margin:0 0 8px}.session-modal-desc{margin:0 0 16px;font-size:13px}.session-modal-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.session-devices-list{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:8px;max-height:280px;overflow-y:auto}.session-devices-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:14px;background:var(--surface-raised);border:1px solid var(--border);font-size:14px}.session-device-current{border-color:#4ade8059}.session-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%);z-index:300;max-width:min(92vw,480px);padding:12px 18px;border-radius:var(--radius-lg);font-size:14px;line-height:1.4;box-shadow:var(--shadow-md);animation:session-toast-in .22s ease}@keyframes session-toast-in{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.session-toast--ok{background:#4ade8026;border:1px solid rgba(74,222,128,.35);color:var(--success)}.session-toast--err{background:#f871711f;border:1px solid rgba(248,113,113,.35);color:#fca5a5}@keyframes session-slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.msg.show{display:block;margin-top:10px}.mono{font-family:ui-monospace,monospace;font-size:12px;line-height:1.5;word-break:break-all;margin:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#000000b3;display:grid;place-items:center;padding:24px}.modal{width:100%;max-width:440px;padding:24px;border-radius:var(--radius-xl);background:var(--surface);border:1px solid var(--border)}.capture-wrap{max-width:420px;margin:0 auto;padding:40px 20px;position:relative;z-index:1}.steps{display:flex;gap:8px;margin-bottom:24px}.step{flex:1;text-align:center;padding:8px;border-radius:8px;font-size:12px;color:var(--text-tertiary);border:1px solid var(--border)}.step.active{color:var(--text);border-color:var(--border-hover);background:var(--accent-soft)}.step.done{color:var(--success)}.badge-captured{background:var(--success-soft);color:var(--success)}.badge-error{background:#ef44441f;color:#f87171}.badge-expired{background:var(--warning-soft);color:var(--warning)}.badge-handoff-new{background:var(--accent-soft);color:var(--accent)}.badge-handoff-redeemed{background:#60a5fa24;color:#93c5fd}.badge-handoff-paid{background:var(--success-soft);color:var(--success)}.handoffs-stack{margin-top:8px}.handoff-item-code{font-size:13px;letter-spacing:.06em;word-break:break-all;margin:8px 0 4px}.handoff-item-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.handoff-item-num{font-size:14px;font-weight:600;color:var(--text);margin-right:2px}.handoff-item-date{font-size:12px}.handoff-item-link{margin:0;font-size:13px}.handoff-item-actions{flex-shrink:0}.handoff-code-modal-code{font-size:15px;letter-spacing:.08em;word-break:break-all;padding:14px 16px;margin:12px 0 4px;border-radius:var(--radius-lg);border:1px solid var(--border);background:#00000059;text-align:center}.handoff-code-modal-link{margin:0 0 4px}.admin-handoffs-stats{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.admin-handoffs-main{padding:28px 24px;margin-bottom:20px;display:flex;flex-direction:column;gap:14px}.admin-handoffs-big-input{width:100%;font-size:18px;letter-spacing:.12em;padding:18px 20px;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface-2, rgba(255, 255, 255, .04));color:var(--text);font-family:inherit}.admin-handoffs-big-input:focus{outline:none;border-color:var(--accent)}.admin-handoffs-check{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.admin-handoffs-check input{width:16px;height:16px}.admin-handoffs-big-btn{align-self:flex-start;min-width:140px;padding:12px 28px;font-size:15px}.admin-handoffs-flash{margin:0;padding:12px 14px;border-radius:var(--radius-md);background:var(--success-soft);font-size:14px}.admin-handoffs-hint{margin:0;font-size:13px}.admin-handoffs-pay-section{padding:20px 24px}.admin-handoffs-pay-section h2{margin:0 0 16px;font-size:16px}.admin-handoffs-pay-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.admin-handoffs-pay-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--radius-md);background:var(--surface-2, rgba(255, 255, 255, .03))}.admin-handoffs-pay-name{font-weight:600;flex:1;min-width:0}.admin-handoffs-redeem{padding:24px;margin-bottom:24px}.admin-handoffs-redeem-row{align-items:flex-end;flex-wrap:wrap;gap:12px}.admin-handoffs-redeem-field{flex:1;min-width:220px;margin-bottom:0}.admin-handoffs-error{color:var(--danger);margin:12px 0 0;font-size:14px}.admin-handoffs-success{margin-top:16px;padding:16px;border-radius:var(--radius-lg);background:var(--success-soft)}.admin-handoffs-success-links{margin:8px 0 0;display:flex;flex-wrap:wrap;gap:8px}.admin-handoffs-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.admin-handoffs-tab{font:inherit;font-size:13px;font-weight:600;padding:10px 16px;border-radius:12px;border:1px solid var(--border);background:var(--surface-raised);color:var(--text-secondary);cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:border-color .15s ease,background .15s ease,color .15s ease}.admin-handoffs-tab:hover{border-color:var(--border-hover);color:var(--text)}.admin-handoffs-tab.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.admin-handoffs-tab-count{font-size:11px;padding:2px 7px;border-radius:999px;background:#ffffff1a}.admin-handoffs-tab.active .admin-handoffs-tab-count{background:#fff3}.admin-handoffs-code-row .token-validity{flex-shrink:0}.admin-handoffs-tabs,.admin-browse-tabs{margin-bottom:16px}.admin-handoffs-toolbar{margin-bottom:20px}.admin-handoffs-search-field{flex:1;min-width:200px;margin-bottom:0}.admin-handoffs-summary{margin:0;align-self:flex-end;font-size:13px}.admin-handoffs-groups{display:flex;flex-direction:column;gap:10px}.admin-handoffs-empty{padding:24px;text-align:center}.admin-handoffs-group{padding:0;overflow:hidden}.admin-handoffs-group-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;width:100%;padding:14px 18px;border:none;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.admin-handoffs-group-head:hover{background:var(--surface-2, rgba(255, 255, 255, .03))}.admin-handoffs-chevron{font-size:11px;opacity:.6;width:14px}.admin-handoffs-worker-name{font-weight:600;font-size:15px}.admin-handoffs-counts{display:flex;flex-wrap:wrap;gap:6px}.admin-handoffs-tab-count{margin-left:auto;font-size:12px}.admin-handoffs-group-body{padding:14px 18px 16px;border-top:1px solid var(--border)}.admin-handoffs-group-actions{display:flex;flex-wrap:wrap;gap:8px;padding:12px 0}.admin-handoffs-code-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.admin-handoffs-selection-bar{margin-bottom:12px}.admin-handoffs-code-row{display:grid;grid-template-columns:32px 28px minmax(0,1fr) auto;align-items:center;gap:12px 16px;padding:12px 14px;border-radius:var(--radius-md);background:var(--surface-raised);border:1px solid var(--hairline)}.admin-handoffs-code-row.selected{border-color:#789bff73;background:#789bff0f}.admin-handoffs-code-check{display:flex;align-items:center;justify-content:center}.admin-handoffs-code-check input{width:16px;height:16px;cursor:pointer}.admin-handoffs-code-body{display:flex;flex-direction:column;justify-content:center;gap:6px;min-width:0}.admin-handoffs-code-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px}@media(max-width:900px){.admin-handoffs-code-row{grid-template-columns:32px 28px minmax(0,1fr);align-items:start}.admin-handoffs-code-actions{grid-column:1 / -1;justify-content:flex-start;flex-wrap:wrap}}.admin-handoffs-code-num{align-self:center;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text-tertiary)}.admin-handoffs-code-text{font-size:12px;line-height:1.35;letter-spacing:.04em;word-break:break-all}.admin-handoffs-code-date{font-size:12px;white-space:nowrap;color:var(--text-tertiary)}.admin-handoffs-code-actions{display:flex;align-items:center;flex-shrink:0;gap:8px}.admin-handoffs-code-actions .btn-sm{min-height:34px;padding:8px 14px;white-space:nowrap}.tabs{display:flex;gap:8px;margin-bottom:20px}.tab{flex:1;padding:10px;border:none;border-radius:8px;background:transparent;color:var(--text-secondary);cursor:pointer;font:inherit}.tab.active{background:var(--accent-soft);color:var(--text)}.hidden{display:none!important}.nav-list button.nav-btn{width:100%;text-align:left;background:none;border:none;cursor:pointer;font:inherit}.nav-list button.nav-btn.active{color:var(--text);background:#ffffff17}.landing-builder{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,380px);gap:24px;align-items:start;max-width:1280px}@media(max-width:1024px){.landing-builder{grid-template-columns:1fr}}.landing-builder-editor{display:flex;flex-direction:column;gap:16px;min-width:0}.landing-builder-toolbar{padding:20px 24px}.landing-builder-toolbar .form-field:last-of-type{margin-bottom:0}.landing-builder-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px;padding-top:16px;border-top:1px solid var(--border)}.landing-builder-templates{padding:16px 20px}.landing-builder-templates-label{display:block;font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:12px;text-transform:uppercase;letter-spacing:.04em}.landing-template-chips{display:flex;flex-wrap:wrap;gap:8px}.landing-template-chip{display:inline-flex;align-items:stretch;border-radius:10px;border:1px solid var(--border);background:var(--surface-raised);overflow:hidden;transition:border-color var(--dur-fast) ease}.landing-template-chip.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-soft)}.landing-template-chip-btn{border:none;background:none;color:var(--text);font:inherit;font-size:13px;font-weight:500;padding:8px 12px;cursor:pointer}.landing-template-chip-btn:hover{color:var(--accent)}.landing-template-chip-del{border:none;border-left:1px solid var(--border);background:transparent;color:var(--text-tertiary);width:32px;font-size:16px;line-height:1;cursor:pointer;transition:background var(--dur-fast) ease,color var(--dur-fast) ease}.landing-template-chip-del:hover{background:#7f1d1d59;color:#fca5a5}.landing-builder-groups{display:flex;flex-direction:column;gap:12px}.landing-builder-group{border-radius:var(--radius-xl);border:1px solid var(--border);background:var(--surface);overflow:hidden}.landing-builder-group-title{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;font-size:14px;font-weight:600;color:var(--text);cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none;transition:background var(--dur-fast) ease}.landing-builder-group-title::-webkit-details-marker{display:none}.landing-builder-group-title:after{content:"";width:8px;height:8px;border-right:2px solid var(--text-tertiary);border-bottom:2px solid var(--text-tertiary);transform:rotate(45deg);transition:transform var(--dur-fast) ease;flex-shrink:0;margin-left:12px}.landing-builder-group[open] .landing-builder-group-title:after{transform:rotate(-135deg);margin-top:4px}.landing-builder-group-title:hover{background:var(--accent-soft)}.landing-builder-group-body{padding:0 20px 20px;border-top:1px solid var(--border)}.landing-builder-group-body .form-field:last-child{margin-bottom:0}.landing-builder-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}@media(max-width:640px){.landing-builder-grid{grid-template-columns:1fr}}.landing-vote-row{display:flex;gap:10px;align-items:center;margin-bottom:10px}.landing-vote-row input{flex:1;padding:10px 14px;border-radius:10px;border:1px solid var(--border);background:var(--surface-raised);color:var(--text);font:inherit}.landing-vote-row input:focus{outline:none;border-color:var(--border-hover);box-shadow:0 0 0 3px var(--accent-soft)}.landing-builder-preview-wrap{min-width:0}@media(min-width:1025px){.landing-builder-preview-sticky{position:sticky;top:24px}}.landing-builder-preview-label{margin:0 0 12px;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.landing-preview-device{--phone-width: 304px;--screen-pad: 14px;--screen-inner: calc(var(--phone-width) - var(--screen-pad) * 2);--iframe-base: 390px;width:var(--phone-width);max-width:100%;margin:0 auto;padding:var(--screen-pad);border-radius:32px;background:#141416;border:2px solid #3a3a3e;box-shadow:0 0 0 1px #ffffff0f,0 24px 48px #00000080;box-sizing:border-box}.landing-preview-device-notch{width:64px;height:4px;margin:0 auto 10px;border-radius:999px;background:#0a0a0c}.landing-preview-device-screen{position:relative;width:100%;aspect-ratio:9 / 19.5;max-height:min(70vh,620px);border-radius:22px;overflow:hidden;background:#0b0d17}.landing-preview-frame-wrap{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;display:flex;justify-content:center;background:#0b0d17}.landing-preview-frame{position:absolute;top:0;left:50%;width:var(--iframe-base);height:calc(var(--iframe-base) * 19.5 / 9);margin:0;border:none;background:#0b0d17;transform:translate(-50%) scale(calc(var(--screen-inner) / var(--iframe-base)));transform-origin:top center}.landing-preview-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.dashboard-page{width:100%;max-width:1280px}.dashboard-loading{padding:32px 0;font-size:15px}.dashboard-top{margin-bottom:22px}.dashboard-top h1{margin:0 0 6px;font-family:var(--font-display);font-size:clamp(28px,3vw,34px);font-weight:700;letter-spacing:-.03em}.dashboard-top-desc{margin:0;font-size:14px}.dashboard-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}@media(max-width:700px){.dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}.dashboard-metric{padding:16px 18px;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface)}.dashboard-metric--rate{border-color:#4ade8033;background:#4ade800d}.dashboard-metric-label{display:block;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:8px}.dashboard-metric-value{display:block;font-family:var(--font-display);font-size:24px;font-weight:700;letter-spacing:-.02em;line-height:1.15}.dashboard-metric-value--sm{font-size:17px;line-height:1.3}.dashboard-metric-value--you{color:var(--success)}.dashboard-metric-sub{display:block;margin-top:6px;font-size:12px;color:var(--text-tertiary)}.dashboard-leaderboard{padding:14px 16px}.dashboard-leaderboard-head{margin-bottom:10px}.dashboard-leaderboard-head h2{margin:0;font-family:var(--font-display);font-size:15px;font-weight:600;letter-spacing:-.02em}.dashboard-empty{text-align:center;padding:16px 8px;font-size:13px}.dashboard-rank-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.dashboard-rank-row{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:14px;padding:12px 14px;border-radius:12px;border:1px solid transparent;background:#ffffff05}.dashboard-rank-row--top{border-color:var(--hairline)}.dashboard-rank-row--you{border-color:#4ade8040;background:#4ade800f}.dashboard-rank-num{font-size:18px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-tertiary);text-align:center;line-height:1}.dashboard-rank-row--top .dashboard-rank-num{font-size:22px}.dashboard-rank-main{display:flex;flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:8px 12px;min-width:0}.dashboard-rank-main strong{font-size:15px}.dashboard-rank-main .subtle{font-size:13px}.dashboard-rank-earnings{font-family:var(--font-display);font-size:16px;font-weight:600;color:var(--success);white-space:nowrap}.dashboard-pulse{display:flex;flex-wrap:wrap;gap:12px 28px;margin-bottom:20px;padding:14px 20px;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface);font-size:14px;color:var(--text-secondary)}.dashboard-pulse strong{color:var(--text);font-weight:600}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}@media(max-width:800px){.dashboard-grid{grid-template-columns:1fr}}.dashboard-board{padding:20px 22px;min-height:280px}.dashboard-board-head{margin-bottom:16px}.dashboard-board-head h2{margin:0 0 4px;font-family:var(--font-display);font-size:18px;font-weight:600}.dashboard-board-head .subtle{margin:0;font-size:13px}.dashboard-board-empty{padding:28px 12px;text-align:center;font-size:14px}.dashboard-board--feed{min-height:280px}.dashboard-feed{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.dashboard-feed-item{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:14px;padding:12px 10px;border-radius:10px}.dashboard-feed-item--you{background:#4ade800f}.dashboard-feed-dot{width:8px;height:8px;border-radius:50%;background:var(--success);box-shadow:0 0 10px #4ade8080}.dashboard-feed-main{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;min-width:0}.dashboard-feed-main strong{font-size:15px}.dashboard-feed-right{text-align:right}.dashboard-feed-sum{display:block;font-size:16px;font-weight:600;color:var(--success)}.dashboard-feed-time{font-size:12px}.lvl-badge{--lvl-accent: rgba(255, 255, 255, .2);position:relative;display:inline-flex;align-items:stretch;flex-shrink:0;min-width:2.5rem;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-raised);box-shadow:var(--shadow-xs);overflow:hidden;vertical-align:middle}.lvl-badge-accent{width:3px;flex-shrink:0;background:var(--lvl-accent)}.lvl-badge-content{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.35em .55em;min-width:0}.lvl-badge-label{font-size:.52em;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary);line-height:1.2;margin-bottom:.15em}.lvl-badge-num{font-family:var(--font-display);font-size:1em;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.04em;color:var(--text);line-height:1}.lvl-badge--xs{min-width:2rem;border-radius:8px}.lvl-badge--xs .lvl-badge-content{padding:.28em .42em}.lvl-badge--xs .lvl-badge-num{font-size:13px}.lvl-badge--sm{min-width:2.15rem}.lvl-badge--sm .lvl-badge-num{font-size:15px}.lvl-badge--md .lvl-badge-num{font-size:18px}.lvl-badge--lg .lvl-badge-num{font-size:22px}.lvl-badge--lg .lvl-badge-content{padding:.4em .65em}.lvl-badge--xl{min-width:3.25rem;border-radius:var(--radius-md)}.lvl-badge--xl .lvl-badge-accent{width:4px}.lvl-badge--xl .lvl-badge-num{font-size:28px}.lvl-badge--xl .lvl-badge-content{padding:.5em .75em .55em}.lvl-badge--tier-1{--lvl-accent: rgba(255, 255, 255, .14)}.lvl-badge--tier-2{--lvl-accent: rgba(255, 255, 255, .2)}.lvl-badge--tier-3{--lvl-accent: rgba(255, 255, 255, .26)}.lvl-badge--tier-4{--lvl-accent: rgba(255, 255, 255, .32)}.lvl-badge--tier-5{--lvl-accent: rgba(255, 255, 255, .38)}.lvl-badge--tier-6{--lvl-accent: rgba(255, 255, 255, .46)}.lvl-badge--tier-7{--lvl-accent: rgba(255, 255, 255, .54)}.lvl-badge--tier-8{--lvl-accent: rgba(255, 255, 255, .62)}.lvl-badge--tier-9{--lvl-accent: rgba(212, 212, 212, .85)}.lvl-badge--tier-10{--lvl-accent: var(--success)}.lvl-progress{--lvl-accent: rgba(255, 255, 255, .35);display:flex;align-items:center;gap:20px}.lvl-progress--tier-1{--lvl-accent: rgba(255, 255, 255, .14)}.lvl-progress--tier-2{--lvl-accent: rgba(255, 255, 255, .2)}.lvl-progress--tier-3{--lvl-accent: rgba(255, 255, 255, .26)}.lvl-progress--tier-4{--lvl-accent: rgba(255, 255, 255, .32)}.lvl-progress--tier-5{--lvl-accent: rgba(255, 255, 255, .38)}.lvl-progress--tier-6{--lvl-accent: rgba(255, 255, 255, .46)}.lvl-progress--tier-7{--lvl-accent: rgba(255, 255, 255, .54)}.lvl-progress--tier-8{--lvl-accent: rgba(255, 255, 255, .62)}.lvl-progress--tier-9{--lvl-accent: rgba(212, 212, 212, .85)}.lvl-progress--tier-10{--lvl-accent: var(--success)}.lvl-progress-body{flex:1;min-width:0}.lvl-progress-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:10px 16px;margin-bottom:12px}.lvl-progress-title{display:flex;flex-direction:column;gap:2px}.lvl-progress-tier{font-family:var(--font-display);font-size:17px;font-weight:600;letter-spacing:-.03em;color:var(--text)}.lvl-progress-level{font-size:12px;font-weight:500;color:var(--text-tertiary);letter-spacing:.02em}.lvl-progress-meta{font-size:13px;white-space:nowrap}.lvl-progress-track{height:4px;border-radius:999px;background:var(--hairline);overflow:hidden}.lvl-progress-fill{height:100%;border-radius:inherit;background:var(--lvl-accent);transition:width .4s var(--ease-out)}.lvl-progress-hint{margin:10px 0 0;font-size:12px}.dashboard-level-hero{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;padding:22px 24px;margin-bottom:18px}.dashboard-level-hero-side{text-align:right;padding-left:16px;border-left:1px solid var(--border)}.dashboard-level-hero-side-label{display:block;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:6px}.dashboard-level-hero-rank{display:block;font-family:var(--font-display);font-size:28px;font-weight:600;letter-spacing:-.04em;color:var(--text)}.dashboard-metric--level{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:10px}.dashboard-rank-row{grid-template-columns:52px 1fr auto}.dashboard-rank-lvl{display:flex;align-items:center;justify-content:center}.dashboard-rank-name-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}.dashboard-rank-medal{font-size:16px;line-height:1}.user-chip-level{flex-shrink:0;margin-left:auto}.user-chip{display:flex;align-items:center;gap:10px}.profile-level-block{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:20px;padding-top:20px;border-top:1px solid var(--border)}.toast-stack{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;gap:10px;z-index:1000;pointer-events:none}.toast{pointer-events:auto;min-width:240px;max-width:380px;padding:12px 16px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-raised);color:var(--text);font:inherit;text-align:left;cursor:pointer;box-shadow:var(--shadow-md);animation:toast-in .25s var(--ease-out)}.toast:hover{border-color:var(--border-hover)}.toast--ok{border-left:3px solid var(--success)}.toast--err{border-left:3px solid #f87171}.toast--info{border-left:3px solid var(--text-secondary)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
