.auth-page{display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;padding:max(var(--sp-4),var(--safe-top)) max(var(--sp-4),var(--safe-right)) max(var(--sp-4),var(--safe-bottom)) max(var(--sp-4),var(--safe-left))}.auth-stack{display:flex;flex-direction:column;align-items:center;gap:var(--sp-5);width:100%;max-width:420px}.auth-card{display:flex;flex-direction:column;gap:var(--sp-4);width:100%;padding:var(--sp-8) var(--sp-6);border-radius:var(--r-xl);animation:enter var(--dur-slow) var(--ease) both}.auth-card h1{margin:0;font-size:1.6rem}.auth-eyebrow{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--primary-text)}.auth-sub{margin:0;color:var(--text-dim)}.auth-footer{margin:0;max-width:340px;text-align:center;font-size:.85rem;color:var(--text-dim)}.field{display:flex;flex-direction:column}.field-affix{position:relative}.field-affix>input{padding-right:52px!important}.field-affix-btn{position:absolute;top:50%;right:4px;transform:translateY(-50%);min-height:40px;min-width:40px;padding:0;border:0;background:transparent;color:var(--text-dim)}.field-affix-btn:active:not(:disabled){transform:translateY(-50%) scale(.92)}.auth-note{display:flex;align-items:flex-start;gap:var(--sp-3);margin:0;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);font-size:.875rem;color:var(--text-dim);background:var(--neutral-soft)}.auth-card>div:first-child{display:flex;flex-direction:column;gap:6px}a.btn-link.auth-link{width:100%;min-height:var(--touch-lg);border-radius:var(--r-md);font-size:1.05rem}a.btn-link.auth-link-quiet{width:100%;min-height:var(--touch);background:transparent;border-color:transparent;color:var(--text-dim)}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light dark;--font-sans: "Inter Variable", "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--r-xs: 8px;--r-sm: 12px;--r-md: 16px;--r-lg: 22px;--r-xl: 30px;--r-pill: 999px;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--sp-10: 40px;--touch: 48px;--touch-lg: 60px;--ease: cubic-bezier(.22, 1, .36, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--dur-fast: .14s;--dur: .26s;--dur-slow: .52s;--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--bg: #eef1f9;--bg-aurora-1: rgba(76, 110, 245, .28);--bg-aurora-2: rgba(168, 85, 247, .18);--bg-aurora-3: rgba(244, 114, 130, .16);--text: #0e1633;--text-dim: #48547a;--text-faint: #6b7699;--primary: #2447d6;--primary-strong: #1a35ad;--primary-soft: rgba(36, 71, 214, .12);--primary-contrast: #ffffff;--primary-glow: rgba(36, 71, 214, .35);--primary-2: #3a5cf0;--primary-text: #2447d6;--danger-contrast: #ffffff;--accent: #d6323a;--success: #147a48;--success-soft: rgba(20, 122, 72, .14);--success-glow: rgba(20, 160, 90, .4);--warning: #98640a;--warning-soft: rgba(217, 140, 10, .16);--danger: #c0262d;--danger-strong: #9f1c22;--danger-soft: rgba(192, 38, 45, .12);--info: #1f5fbf;--info-soft: rgba(31, 95, 191, .13);--neutral-soft: rgba(72, 84, 122, .12);--glass-bg: rgba(255, 255, 255, .68);--glass-bg-strong: rgba(255, 255, 255, .86);--glass-border: rgba(255, 255, 255, .75);--glass-highlight: rgba(255, 255, 255, .9);--glass-blur: 22px;--solid-surface: #ffffff;--field-bg: rgba(255, 255, 255, .85);--field-border: rgba(14, 22, 51, .16);--border: rgba(14, 22, 51, .1);--hairline: rgba(14, 22, 51, .07);--shadow-sm: 0 1px 2px rgba(14, 22, 51, .06), 0 2px 8px rgba(14, 22, 51, .05);--shadow-md: 0 4px 12px rgba(14, 22, 51, .06), 0 12px 32px rgba(14, 22, 51, .09);--shadow-lg: 0 8px 24px rgba(14, 22, 51, .1), 0 24px 64px rgba(14, 22, 51, .14);--focus-ring: 0 0 0 3px rgba(36, 71, 214, .35);--color-bg: var(--bg);--color-surface: var(--glass-bg);--color-text: var(--text);--color-text-dim: var(--text-dim);--color-primary: var(--primary);--color-primary-hover: var(--primary-strong);--color-primary-contrast: var(--primary-contrast);--color-brand-red: var(--accent);--color-danger: var(--danger);--color-success: var(--success);--color-border: var(--border);--touch-target: var(--touch);--spacing: var(--sp-3)}@media (prefers-color-scheme: dark){:root{--bg: #090e1f;--bg-aurora-1: rgba(76, 110, 245, .32);--bg-aurora-2: rgba(139, 92, 246, .22);--bg-aurora-3: rgba(236, 72, 153, .13);--text: #eaeefc;--text-dim: #a3aed0;--text-faint: #7f8bb0;--primary: #4a6cf3;--primary-strong: #6482ff;--primary-soft: rgba(100, 130, 255, .18);--primary-contrast: #ffffff;--primary-glow: rgba(74, 108, 243, .5);--primary-2: #3b57d9;--primary-text: #9db1ff;--danger-contrast: #2b0508;--accent: #ff6b73;--success: #4ade9a;--success-soft: rgba(74, 222, 154, .15);--success-glow: rgba(74, 222, 154, .45);--warning: #f5c04a;--warning-soft: rgba(245, 192, 74, .16);--danger: #ff7a80;--danger-strong: #ff9599;--danger-soft: rgba(255, 122, 128, .16);--info: #7db2ff;--info-soft: rgba(125, 178, 255, .16);--neutral-soft: rgba(163, 174, 208, .14);--glass-bg: rgba(22, 30, 58, .62);--glass-bg-strong: rgba(24, 33, 64, .88);--glass-border: rgba(255, 255, 255, .1);--glass-highlight: rgba(255, 255, 255, .08);--solid-surface: #131a33;--field-bg: rgba(255, 255, 255, .06);--field-border: rgba(255, 255, 255, .16);--border: rgba(255, 255, 255, .1);--hairline: rgba(255, 255, 255, .07);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4), 0 2px 8px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .35), 0 12px 32px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .45), 0 24px 64px rgba(0, 0, 0, .5);--focus-ring: 0 0 0 3px rgba(122, 150, 255, .5)}}@media (max-width: 640px){:root{--glass-blur: 14px}}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){:root{--glass-bg: var(--solid-surface);--glass-bg-strong: var(--solid-surface)}}@media (prefers-reduced-transparency: reduce){:root{--glass-bg: var(--solid-surface);--glass-bg-strong: var(--solid-surface);--glass-blur: 0px}}@media (prefers-contrast: more){:root{--glass-bg: var(--solid-surface);--glass-bg-strong: var(--solid-surface);--field-border: var(--text-dim);--border: var(--text-faint)}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;min-height:100vh;min-height:100dvh;font-family:var(--font-sans);font-size:16px;line-height:1.5;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;overscroll-behavior-y:none}body:before{content:"";position:fixed;inset:-25%;z-index:-1;pointer-events:none;background:radial-gradient(38% 34% at 14% 12%,var(--bg-aurora-1),transparent 70%),radial-gradient(34% 38% at 86% 18%,var(--bg-aurora-2),transparent 70%),radial-gradient(44% 40% at 62% 96%,var(--bg-aurora-3),transparent 70%);animation:aurora-drift 48s ease-in-out infinite alternate;will-change:transform}@keyframes aurora-drift{0%{transform:translate3d(-2%,-1%,0) scale(1)}to{transform:translate3d(2%,2%,0) scale(1.08)}}::selection{background:var(--primary-soft)}h1,h2,h3{margin:0 0 var(--sp-3);line-height:1.2;letter-spacing:-.02em;font-weight:700}h1{font-size:clamp(1.6rem,1.2rem + 1.6vw,2.1rem)}h2{font-size:1.25rem}h3{font-size:1.05rem}p{margin:0 0 var(--sp-3)}a{color:var(--primary-text);text-decoration:none;font-weight:500}a:hover{text-decoration:underline;text-underline-offset:3px}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--r-xs)}hr{border:0;border-top:1px solid var(--hairline);margin:var(--sp-6) 0}code,kbd{font-family:var(--font-mono);font-size:.9em;padding:2px 6px;border-radius:6px;background:var(--neutral-soft)}button{font:inherit;font-weight:600;min-height:var(--touch);min-width:var(--touch);padding:0 var(--sp-5);display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);border-radius:var(--r-sm);border:1px solid var(--field-border);background:var(--glass-bg-strong);color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;user-select:none;transition:transform var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),background-color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),opacity var(--dur-fast) var(--ease)}button:active:not(:disabled){transform:scale(.97)}@media (hover: hover){button:hover:not(:disabled){border-color:var(--primary);box-shadow:var(--shadow-sm)}}button:focus-visible{outline:none;box-shadow:var(--focus-ring)}button:disabled{opacity:.5;cursor:not-allowed}button svg{flex:none}.primary-action,.btn-primary{color:var(--primary-contrast);border-color:transparent;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-2) 100%);box-shadow:0 6px 18px var(--primary-glow),inset 0 1px #ffffff40}@media (hover: hover){.primary-action:hover:not(:disabled),.btn-primary:hover:not(:disabled){border-color:transparent;box-shadow:0 10px 26px var(--primary-glow),inset 0 1px #ffffff4d;transform:translateY(-1px)}}.btn-danger{color:var(--danger-contrast);border-color:transparent;background:var(--danger)}@media (hover: hover){.btn-danger:hover:not(:disabled){border-color:transparent;background:var(--danger-strong)}}.btn-ghost{background:transparent;border-color:transparent}@media (hover: hover){.btn-ghost:hover:not(:disabled){background:var(--neutral-soft);border-color:transparent;box-shadow:none}}.btn-sm{min-height:38px;padding:0 var(--sp-3);font-size:14px;border-radius:var(--r-xs)}.btn-lg{min-height:var(--touch-lg);padding:0 var(--sp-8);font-size:1.125rem;border-radius:var(--r-md)}.btn-block{width:100%}label{display:block;margin:0 0 6px;font-size:.875rem;font-weight:600;color:var(--text)}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select,textarea{display:block;width:100%;min-height:var(--touch);padding:0 14px;font:inherit;color:var(--text);background:var(--field-bg);border:1px solid var(--field-border);border-radius:var(--r-sm);transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),background-color var(--dur-fast) var(--ease)}textarea{padding:12px 14px;min-height:96px;resize:vertical;line-height:1.5}input::placeholder,textarea::placeholder{color:var(--text-faint)}input:not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:var(--focus-ring)}input:disabled,select:disabled,textarea:disabled{opacity:.55;cursor:not-allowed}input[type=checkbox],input[type=radio]{width:20px;height:20px;margin:0;accent-color:var(--primary);flex:none}label:has(>input[type=checkbox]),label:has(>input[type=radio]){display:flex;align-items:center;gap:var(--sp-3);min-height:var(--touch);font-weight:500;cursor:pointer}input[type=file]{font:inherit;max-width:100%}fieldset{display:flex;flex-direction:column;gap:var(--sp-3);margin:0 0 var(--sp-6);padding:var(--sp-5);min-width:0;background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(150%);backdrop-filter:blur(var(--glass-blur)) saturate(150%);border:1px solid var(--glass-border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm),inset 0 1px 0 var(--glass-highlight)}legend{padding:0 var(--sp-2);font-weight:700;font-size:.95rem}table{width:100%;min-width:520px;border-collapse:separate;border-spacing:0;font-size:.9rem;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--r-md);overflow:hidden;box-shadow:var(--shadow-sm)}th{padding:12px 14px;text-align:left;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);background:var(--neutral-soft);white-space:nowrap}td{padding:12px 14px;vertical-align:middle;border-top:1px solid var(--hairline)}tbody tr{transition:background-color var(--dur-fast) var(--ease)}@media (hover: hover){tbody tr:hover{background:var(--primary-soft)}}td button,td select{min-height:38px;font-size:.875rem}td button{padding:0 var(--sp-3)}td select{padding:0 10px}ul,ol{padding-left:1.25rem}li{margin:4px 0}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.glass{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(150%);backdrop-filter:blur(var(--glass-blur)) saturate(150%);border:1px solid var(--glass-border);box-shadow:var(--shadow-md),inset 0 1px 0 var(--glass-highlight)}.card{padding:var(--sp-5);border-radius:var(--r-lg)}.card+.card{margin-top:var(--sp-4)}.card-title{margin:0 0 var(--sp-2);font-size:1.05rem}.enter{animation:enter var(--dur-slow) var(--ease) both}.enter-delay-1{animation-delay:60ms}.enter-delay-2{animation-delay:.12s}.enter-delay-3{animation-delay:.18s}@keyframes enter{0%{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}.stack{display:flex;flex-direction:column;gap:var(--sp-3)}.row{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap}.row-between{justify-content:space-between}.grow{flex:1;min-width:0}.muted{color:var(--text-dim)}.small{font-size:.85rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--sp-4);flex-wrap:wrap;margin-bottom:var(--sp-6)}.page-header h1{margin:0}.page-header p{margin:4px 0 0;color:var(--text-dim)}.badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 8px;border-radius:var(--r-pill);font-size:.75rem;font-weight:700;letter-spacing:.02em;line-height:1.4;white-space:nowrap;color:var(--text-dim);background:var(--neutral-soft)}.badge:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.badge-success{color:var(--success);background:var(--success-soft)}.badge-warning{color:var(--warning);background:var(--warning-soft)}.badge-danger{color:var(--danger);background:var(--danger-soft)}.badge-info{color:var(--info);background:var(--info-soft)}.badge-primary{color:var(--primary-text);background:var(--primary-soft)}.badge-live:before{animation:dot-pulse 1.8s ease-in-out infinite}@keyframes dot-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.7)}}.banner{display:flex;align-items:flex-start;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);font-size:.925rem;color:var(--text);background:var(--info-soft);border:1px solid var(--border)}.banner svg{flex:none;margin-top:2px}.banner-danger{background:var(--danger-soft);color:var(--text)}.banner-danger svg{color:var(--danger)}.banner-success{background:var(--success-soft)}.banner-success svg{color:var(--success)}.banner-warning{background:var(--warning-soft)}.banner-warning svg{color:var(--warning)}.login-error{color:var(--danger);font-size:.9rem;font-weight:500}.spinner{width:1.1em;height:1.1em;border-radius:50%;border:2.5px solid currentColor;border-right-color:transparent;animation:spin .7s linear infinite;flex:none}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{position:relative;overflow:hidden;border-radius:var(--r-sm);background:var(--neutral-soft)}.skeleton:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,var(--glass-highlight),transparent);animation:shimmer 1.6s ease-in-out infinite}@keyframes shimmer{to{transform:translate(100%)}}.empty-state{display:flex;flex-direction:column;align-items:center;gap:var(--sp-3);padding:var(--sp-10) var(--sp-5);text-align:center;border-radius:var(--r-lg)}.empty-state .empty-icon{display:grid;place-items:center;width:64px;height:64px;border-radius:20px;color:var(--primary-text);background:var(--primary-soft)}.empty-state h2,.empty-state p{margin:0}.logo{display:inline-flex;align-items:center;gap:10px;font-weight:800;letter-spacing:-.02em;color:var(--text)}.logo-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;overflow:hidden;font-size:.8rem;font-weight:800;color:#fff;background:linear-gradient(135deg,var(--primary),#7c4dff);box-shadow:0 6px 16px var(--primary-glow)}.logo-mark img{width:100%;height:100%;object-fit:contain;display:block}.logo-mark--image{background:transparent;box-shadow:none;border-radius:0}.logo-text{font-size:1.05rem}.logo-lg .logo-mark{width:52px;height:52px;border-radius:16px;font-size:1.05rem}.logo-lg .logo-text{font-size:1.4rem}.logo-full{display:block;width:auto;max-width:min(100%,320px);height:72px;animation:enter var(--dur-slow) var(--ease) both}@media (max-width: 380px){.logo-full{height:56px}}.splash{display:grid;place-items:center;min-height:100vh;min-height:100dvh}.splash .logo-mark{animation:splash-breathe 1.6s ease-in-out infinite}@keyframes splash-breathe{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.92);opacity:.7}}.dialog-overlay{position:fixed;inset:0;z-index:100;background:#070b1c73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:overlay-in var(--dur) var(--ease) both}.dialog-overlay[data-state=closed]{animation:overlay-out var(--dur-fast) ease both}.dialog-content{position:fixed;z-index:101;left:50%;top:50%;width:min(92vw,440px);max-height:88dvh;overflow:auto;padding:var(--sp-6);border-radius:var(--r-xl);background:var(--glass-bg-strong);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(160%);backdrop-filter:blur(var(--glass-blur)) saturate(160%);border:1px solid var(--glass-border);box-shadow:var(--shadow-lg),inset 0 1px 0 var(--glass-highlight);transform:translate(-50%,-50%);animation:dialog-in var(--dur) var(--ease-spring) both}.dialog-content[data-state=closed]{animation:dialog-out var(--dur-fast) ease both}.dialog-content:focus{outline:none}.dialog-title{margin:0 0 var(--sp-2);font-size:1.2rem}.dialog-description{margin:0 0 var(--sp-5);color:var(--text-dim)}.dialog-actions{display:flex;gap:var(--sp-3);justify-content:flex-end;flex-wrap:wrap}.dialog-handle{display:none;width:40px;height:5px;margin:0 auto var(--sp-4);border-radius:var(--r-pill);background:var(--border)}@media (max-width: 640px){.dialog-content{inset:auto 0 0;width:100%;max-height:90dvh;padding-bottom:calc(var(--sp-6) + var(--safe-bottom));border-radius:var(--r-xl) var(--r-xl) 0 0;transform:none;animation:sheet-in var(--dur-slow) var(--ease) both}.dialog-content[data-state=closed]{animation:sheet-out var(--dur) ease both}.dialog-handle{display:block}.dialog-actions{flex-direction:column-reverse}.dialog-actions button{width:100%}}@keyframes overlay-in{0%{opacity:0}}@keyframes overlay-out{to{opacity:0}}@keyframes dialog-in{0%{opacity:0;transform:translate(-50%,-46%) scale(.94)}}@keyframes dialog-out{to{opacity:0;transform:translate(-50%,-48%) scale(.97)}}@keyframes sheet-in{0%{transform:translateY(100%)}}@keyframes sheet-out{to{transform:translateY(100%)}}[data-sonner-toaster]{--normal-bg: var(--glass-bg-strong);--normal-text: var(--text);--normal-border: var(--glass-border);--border-radius: var(--r-md);font-family:var(--font-sans)}[data-sonner-toast]{-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(160%);backdrop-filter:blur(var(--glass-blur)) saturate(160%);box-shadow:var(--shadow-lg),inset 0 1px 0 var(--glass-highlight)!important;font-weight:500}.caller{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.caller-top{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:var(--sp-3);padding:calc(var(--safe-top) + 10px) max(var(--sp-4),var(--safe-right)) 10px max(var(--sp-4),var(--safe-left));background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(150%);backdrop-filter:blur(var(--glass-blur)) saturate(150%);border-bottom:1px solid var(--hairline)}.caller-top .grow{min-width:0}.caller-who{font-size:.8rem;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chip{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 12px;border-radius:var(--r-pill);font-size:.8rem;font-weight:600;color:var(--text-dim);background:var(--neutral-soft);white-space:nowrap}.chip-success{color:var(--success);background:var(--success-soft)}.chip-warning{color:var(--warning);background:var(--warning-soft)}.chip-danger{color:var(--danger);background:var(--danger-soft)}.status-dot{width:8px;height:8px;border-radius:50%;background:currentColor}.chip-success .status-dot{box-shadow:0 0 0 0 var(--success-glow);animation:dot-ping 2.4s ease-out infinite}@keyframes dot-ping{0%{box-shadow:0 0 0 0 var(--success-glow)}70%,to{box-shadow:0 0 0 7px transparent}}.caller-body{flex:1;width:100%;max-width:1080px;margin:0 auto;padding:var(--sp-4) max(var(--sp-4),var(--safe-right)) calc(120px + var(--safe-bottom)) max(var(--sp-4),var(--safe-left));display:flex;flex-direction:column;gap:var(--sp-4)}.caller-grid{display:grid;gap:var(--sp-4);align-items:start}@media (min-width: 960px){.caller-grid{grid-template-columns:minmax(340px,420px) 1fr}.caller-grid>.caller-col-sticky{position:sticky;top:84px}}.caller-dock{position:fixed;left:0;right:0;bottom:0;z-index:30;padding:var(--sp-3) max(var(--sp-4),var(--safe-right)) calc(var(--sp-3) + var(--safe-bottom)) max(var(--sp-4),var(--safe-left));background:var(--glass-bg-strong);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(160%);backdrop-filter:blur(var(--glass-blur)) saturate(160%);border-top:1px solid var(--glass-border);box-shadow:0 -8px 32px #0e163314;animation:dock-in var(--dur-slow) var(--ease) both}.caller-dock-inner{display:flex;gap:var(--sp-3);width:100%;max-width:1080px;margin:0 auto}.caller-dock-inner>button{flex:1}.caller-dock-inner>.btn-secondary-slim{flex:0 0 auto}@keyframes dock-in{0%{transform:translateY(100%)}}.hero{display:flex;flex-direction:column;align-items:center;gap:var(--sp-3);padding:var(--sp-8) var(--sp-5);text-align:center;border-radius:var(--r-xl)}.hero h1{margin:0}.hero p{margin:0;color:var(--text-dim)}.hero-stats{display:flex;gap:var(--sp-2);flex-wrap:wrap;justify-content:center;margin-top:var(--sp-2)}.orb{position:relative;display:grid;place-items:center;width:132px;height:132px;margin:var(--sp-2) auto;color:var(--primary-text)}.orb-core{position:relative;z-index:1;display:grid;place-items:center;width:84px;height:84px;border-radius:50%;color:#fff;background:linear-gradient(145deg,var(--primary),var(--primary-2));box-shadow:0 10px 30px var(--primary-glow),inset 0 1px #ffffff59;transition:background var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.orb-ring{position:absolute;inset:24px;border-radius:50%;border:2px solid currentColor;opacity:0}.orb--pending .orb-ring{animation:ring-pulse 2.2s cubic-bezier(.2,.6,.3,1) infinite}.orb--pending .orb-ring:nth-child(2){animation-delay:.73s}.orb--pending .orb-ring:nth-child(3){animation-delay:1.46s}@keyframes ring-pulse{0%{transform:scale(.85);opacity:.55}to{transform:scale(2.1);opacity:0}}.orb--live{color:var(--success)}.orb--live .orb-core{background:linear-gradient(145deg,#1fa866,#138a52);box-shadow:0 10px 34px var(--success-glow),inset 0 1px #ffffff59;animation:orb-breathe 3.2s ease-in-out infinite}.orb--live .orb-ring{animation:ring-soft 3.2s ease-in-out infinite}@keyframes orb-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes ring-soft{0%,to{transform:scale(1);opacity:.35}50%{transform:scale(1.35);opacity:.08}}.orb--done{color:var(--text-faint)}.orb--done .orb-core{background:linear-gradient(145deg,#6f7ba3,#566089);box-shadow:none}.orb--fail{color:var(--danger)}.orb--fail .orb-core{background:linear-gradient(145deg,#d9434a,#b32127);box-shadow:0 10px 30px #c0262d59}.contact-card{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);padding:var(--sp-6) var(--sp-5);text-align:center;border-radius:var(--r-xl)}.contact-name{margin:0;font-size:clamp(1.6rem,1.2rem + 2vw,2.1rem);font-weight:800;letter-spacing:-.02em;line-height:1.15}.contact-meta{display:inline-flex;align-items:center;gap:6px;color:var(--text-dim);font-size:.95rem}.call-state-label{font-weight:700;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim)}.call-state-label.is-live{color:var(--success)}.call-timer{font-variant-numeric:tabular-nums;font-size:2.25rem;font-weight:700;letter-spacing:-.02em;line-height:1}.contact-card--call .call-info{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);min-width:0}@media (max-width: 959px){.contact-card--call{position:sticky;top:calc(var(--safe-top) + 62px);z-index:10;flex-direction:row;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);text-align:left;border-radius:var(--r-lg)}.contact-card--call .orb{flex:none;width:56px;height:56px;margin:0}.contact-card--call .orb-core{width:44px;height:44px}.contact-card--call .orb-core svg{width:22px;height:22px}.contact-card--call .orb-ring{inset:8px}.contact-card--call .call-info{flex:1;align-items:flex-start;gap:2px}.contact-card--call .contact-name{font-size:1.2rem;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-card--call .contact-meta{font-size:.85rem}.contact-card--call .call-timer{flex:none;font-size:1.5rem}}.contact-card--compact{flex-direction:row;text-align:left;padding:var(--sp-4);border-radius:var(--r-lg)}.contact-card--compact .contact-name{font-size:1.15rem}.script-panel{--script-scale: 1.2;padding:var(--sp-5);border-radius:var(--r-lg);line-height:1.6;font-size:1.1rem;background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(150%);backdrop-filter:blur(var(--glass-blur)) saturate(150%);border:1px solid var(--glass-border);box-shadow:var(--shadow-md),inset 0 1px 0 var(--glass-highlight)}.script-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-2);margin:0 0 var(--sp-3)}.script-heading{display:flex;align-items:center;gap:var(--sp-2);margin:0;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim)}.script-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px;margin-left:auto}.script-tool{min-height:40px;min-width:40px;padding:0 12px;gap:6px;font-size:.85rem;color:var(--text-dim);background:var(--field-bg);border-radius:var(--r-pill)}.script-tool--icon{padding:0}.script-tool[aria-pressed=true]{color:var(--primary-text);background:var(--primary-soft);border-color:transparent}.script-section-text{margin:0 0 var(--sp-4);font-size:calc(1.2rem * var(--script-scale));font-weight:500;line-height:1.5;white-space:pre-wrap;animation:enter var(--dur) var(--ease) both}.script-plain{font-weight:400}.script-wait{display:flex;align-items:center;gap:var(--sp-2);margin:0 0 var(--sp-3);padding:8px 12px;border-radius:var(--r-pill);font-size:.85rem;font-weight:600;color:var(--primary-text);background:var(--primary-soft)}.script-wait-dot{flex:none;width:8px;height:8px;border-radius:50%;background:currentColor;animation:script-wait-pulse 1.4s ease-in-out infinite}@keyframes script-wait-pulse{0%,to{opacity:1}50%{opacity:.3}}.script-end{margin:0;font-size:.9rem;color:var(--text-dim)}.script-response-buttons{display:flex;flex-direction:column;gap:var(--sp-2)}.script-response-button{justify-content:space-between;min-height:60px;padding:0 var(--sp-4);text-align:left;font-size:1.05rem;color:var(--primary-text);background:var(--primary-soft);border-color:transparent;animation:enter var(--dur) var(--ease) both}.script-response-buttons[data-locked=true] .script-response-button{filter:saturate(.3) opacity(.6);cursor:default}.script-response-button:nth-child(2){animation-delay:50ms}.script-response-button:nth-child(3){animation-delay:.1s}.script-response-button:nth-child(4){animation-delay:.15s}.script-response-button:nth-child(n+5){animation-delay:.2s}@media (hover: hover){.script-response-button:hover:not(:disabled){background:var(--primary);color:var(--primary-contrast);border-color:transparent}}.script-overview{display:flex;flex-direction:column;gap:var(--sp-2);margin:0;padding:0;list-style:none}.script-overview li{margin:0}.script-overview-item{width:100%;justify-content:space-between;min-height:56px;padding:0 var(--sp-4);text-align:left;font-size:1rem;background:var(--field-bg)}.script-overview-item[data-current=true]{color:var(--primary-text);background:var(--primary-soft);border-color:transparent}.script-overview-here{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.outcome-title{margin:0 0 var(--sp-3);font-size:1.15rem}.outcome-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-2)}@media (min-width: 720px){.outcome-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.outcome-btn{--tone: var(--text-dim);--tone-soft: var(--neutral-soft);position:relative;flex-direction:row;align-items:center;justify-content:flex-start;gap:8px;min-height:64px;padding:10px;text-align:left;font-size:.9rem;line-height:1.25;border-width:1.5px;background:var(--field-bg);animation:enter var(--dur) var(--ease) both}.outcome-btn[data-tone=success]{--tone: var(--success);--tone-soft: var(--success-soft)}.outcome-btn[data-tone=danger]{--tone: var(--danger);--tone-soft: var(--danger-soft)}.outcome-btn[data-tone=warning]{--tone: var(--warning);--tone-soft: var(--warning-soft)}.outcome-btn[data-tone=info]{--tone: var(--info);--tone-soft: var(--info-soft)}.outcome-icon{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:9px;color:var(--tone);background:var(--tone-soft)}.outcome-check{position:absolute;top:6px;right:6px;width:15px;height:15px;display:none;color:var(--tone)}.outcome-btn[aria-pressed=true]{border-color:var(--tone);background:var(--tone-soft);box-shadow:0 0 0 1px var(--tone)}.outcome-btn[aria-pressed=true] .outcome-check{display:block;animation:pop var(--dur) var(--ease-spring) both}@keyframes pop{0%{transform:scale(0)}}@media (hover: hover){.outcome-btn:hover:not(:disabled){border-color:var(--tone)}}.notes-field{margin-top:var(--sp-4)}.outcome-followup{margin-top:var(--sp-3)}.after-call{display:flex;flex-direction:column;align-items:center;gap:var(--sp-3);padding:var(--sp-8) var(--sp-5);text-align:center;border-radius:var(--r-xl)}.after-call h1{margin:0}.check-badge{display:grid;place-items:center;width:84px;height:84px;border-radius:50%;color:var(--success);background:var(--success-soft);animation:pop var(--dur-slow) var(--ease-spring) both}.check-badge svg path{stroke-dasharray:30;stroke-dashoffset:30;animation:draw .52s .18s var(--ease) forwards}@keyframes draw{to{stroke-dashoffset:0}}.after-call-actions{display:flex;flex-direction:column;gap:var(--sp-2)}.session-summary{display:flex;flex-direction:column;align-items:center;gap:var(--sp-5);padding:var(--sp-8) var(--sp-5);text-align:center;border-radius:var(--r-xl)}.session-summary h1{margin:0}.session-summary-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-3);width:100%;margin:0}.session-summary-stats>div{display:flex;flex-direction:column-reverse;align-items:center;justify-content:flex-end;gap:4px;padding:var(--sp-4) var(--sp-1);border-radius:var(--r-md);background:var(--primary-soft)}.session-summary-stats dt{font-size:.75rem;font-weight:600;color:var(--text-dim)}.session-summary .session-summary-stats dt{font-size:.6875rem;white-space:nowrap}.session-summary-stats dd{margin:0;font-size:2rem;font-weight:800;font-variant-numeric:tabular-nums;color:var(--primary-text)}.waiting-headline{margin:0;font-size:1.25rem;font-weight:700}.waiting-subtext{margin:0;color:var(--text-dim);font-size:.9rem}.operation-pick{display:flex;flex-direction:column;gap:var(--sp-2);width:100%}.spinner-icon{animation:spin 1s linear infinite}.caller-body>.hero{margin-block:auto;width:100%;max-width:560px;margin-inline:auto}.admin-shell{display:grid;grid-template-columns:296px minmax(0,1fr);min-height:100vh;min-height:100dvh}.admin-side{position:sticky;top:0;height:100vh;height:100dvh;display:flex;flex-direction:column;gap:var(--sp-4);padding:var(--sp-5) var(--sp-4);margin:var(--sp-3);height:calc(100dvh - var(--sp-6));border-radius:var(--r-xl);overflow-y:auto}.admin-side .logo{padding:var(--sp-2) var(--sp-3)}.admin-nav{display:flex;flex-direction:column;gap:2px;flex:1}.admin-nav a,.admin-nav-link{display:flex;align-items:center;gap:var(--sp-3);min-height:46px;padding:0 var(--sp-4);border-radius:var(--r-sm);color:var(--text-dim);font-weight:600;font-size:.95rem;text-decoration:none;transition:background-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease)}.admin-nav a svg{flex:none;transition:transform var(--dur) var(--ease-spring)}@media (hover: hover){.admin-nav a:hover{background:var(--neutral-soft);color:var(--text);text-decoration:none}.admin-nav a:hover svg{transform:scale(1.12)}}.admin-nav a.active{color:var(--primary-text);background:var(--primary-soft)}.admin-nav a:active{transform:scale(.98)}.admin-side-footer{display:flex;flex-direction:column;gap:var(--sp-2);padding-top:var(--sp-3);border-top:1px solid var(--hairline)}.admin-user{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3);min-width:0}.admin-user-name{font-size:.85rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:50%;font-size:.85rem;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--primary),#7c4dff)}.avatar-lg{width:68px;height:68px;font-size:1.5rem;box-shadow:0 8px 24px var(--primary-glow)}.admin-content{min-width:0;padding:var(--sp-8) var(--sp-8) var(--sp-10);overflow-x:auto;animation:enter var(--dur-slow) var(--ease) both}.admin-content>*{max-width:1040px}.admin-content section{margin-top:var(--sp-6)}.admin-content section>h2{margin-bottom:var(--sp-2)}.admin-content fieldset>input:not([type=checkbox]):not([type=radio]),.admin-content fieldset>select,.admin-content section>input:not([type=checkbox]):not([type=radio]),.admin-content section>select,.admin-content section>textarea{max-width:520px}.admin-topbar,.admin-tabbar{display:none}@media (max-width: 899px){.admin-shell{display:block}.admin-side{display:none}.admin-topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:calc(var(--safe-top) + 10px) max(var(--sp-4),var(--safe-right)) 10px max(var(--sp-4),var(--safe-left));background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(150%);backdrop-filter:blur(var(--glass-blur)) saturate(150%);border-bottom:1px solid var(--hairline)}.admin-content{padding:var(--sp-5) max(var(--sp-4),var(--safe-right)) calc(96px + var(--safe-bottom)) max(var(--sp-4),var(--safe-left))}.admin-tabbar{position:fixed;left:var(--sp-3);right:var(--sp-3);bottom:calc(var(--sp-3) + var(--safe-bottom));z-index:30;display:grid;grid-template-columns:repeat(5,1fr);gap:2px;padding:6px;border-radius:26px;animation:dock-in var(--dur-slow) var(--ease) both}.admin-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:54px;min-width:0;padding:0 2px;border:0;border-radius:20px;background:transparent;color:var(--text-dim);font-size:.68rem;font-weight:700;text-decoration:none;transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease)}.admin-tab:hover{text-decoration:none;box-shadow:none}.admin-tab.active{color:var(--primary-text);background:var(--primary-soft)}.admin-tab svg{transition:transform var(--dur) var(--ease-spring)}.admin-tab.active svg{transform:translateY(-1px) scale(1.1)}}.drawer-content{position:fixed;z-index:101;top:0;bottom:0;left:0;width:min(86vw,320px);display:flex;flex-direction:column;gap:var(--sp-4);padding:calc(var(--sp-5) + var(--safe-top)) var(--sp-4) calc(var(--sp-5) + var(--safe-bottom));overflow-y:auto;border-radius:0 var(--r-xl) var(--r-xl) 0;background:var(--glass-bg-strong);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(160%);backdrop-filter:blur(var(--glass-blur)) saturate(160%);border:1px solid var(--glass-border);box-shadow:var(--shadow-lg);animation:drawer-in var(--dur-slow) var(--ease) both}.drawer-content[data-state=closed]{animation:drawer-out var(--dur) ease both}.drawer-content:focus{outline:none}@keyframes drawer-in{0%{transform:translate(-100%)}}@keyframes drawer-out{to{transform:translate(-100%)}}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:var(--sp-4)}.op-card{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-5);border-radius:var(--r-lg);transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease);animation:enter var(--dur-slow) var(--ease) both}@media (hover: hover){.op-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg),inset 0 1px 0 var(--glass-highlight)}}.op-card h3{margin:0;font-size:1.1rem}.op-card-meta{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap;color:var(--text-dim);font-size:.85rem}.op-card-actions{display:flex;gap:var(--sp-2);flex-wrap:wrap;margin-top:auto}a.btn-link{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);min-height:38px;padding:0 var(--sp-3);border-radius:var(--r-xs);font-size:.875rem;font-weight:600;color:var(--text);background:var(--glass-bg-strong);border:1px solid var(--field-border);text-decoration:none}a.btn-link:hover{text-decoration:none}a.btn-link.is-primary{color:var(--primary-contrast);border-color:transparent;background:linear-gradient(135deg,var(--primary),var(--primary-2))}.quick-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:var(--sp-3)}.quick-link{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-4);border-radius:var(--r-md);color:var(--text);font-weight:600;text-decoration:none;transition:transform var(--dur) var(--ease)}.quick-link:hover{text-decoration:none}@media (hover: hover){.quick-link:hover{transform:translateY(-2px)}}.quick-link-icon{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:12px;color:var(--primary-text);background:var(--primary-soft)}.inline-create{display:flex;gap:var(--sp-3);align-items:stretch;flex-wrap:wrap;padding:var(--sp-4);border-radius:var(--r-lg);margin-bottom:var(--sp-5)}.inline-create input{flex:1 1 220px}.script-editor-hint{color:var(--text-dim);font-size:.9rem}.script-sections{display:flex;flex-direction:column;gap:var(--sp-3)}.script-section-card{display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-4);border-radius:var(--r-md);background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--shadow-sm)}.script-section-header{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2)}.script-responses-label{margin:var(--sp-2) 0 0;font-size:.8rem;color:var(--text-dim)}.script-response-row{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.script-response-row>input,.script-response-row>select{flex:1 1 180px}.admin-content>.page{max-width:1120px}.back-link{display:inline-flex;align-items:center;gap:6px;margin-bottom:var(--sp-3);font-size:.9rem;font-weight:600;color:var(--text-dim)}.back-link:hover{color:var(--text)}.page-header-main{min-width:0}.page-title-row{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap}.page-title-row h1{overflow-wrap:anywhere}.page-actions{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.page-section{margin-top:var(--sp-8)}.page-section>h2,.section-head h2{margin:0;font-size:1.15rem}.section-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap;margin-bottom:var(--sp-3)}.section-head p{margin:0;color:var(--text-dim);font-size:.9rem}.panel{padding:var(--sp-5);border-radius:var(--r-lg)}.panel+.panel{margin-top:var(--sp-4)}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap;margin-bottom:var(--sp-4)}.panel-head h2,.panel-head h3{margin:0;font-size:1.05rem}.panel-note{margin:0 0 var(--sp-4);color:var(--text-dim);font-size:.9rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:var(--sp-4)}.form-stack{display:flex;flex-direction:column;gap:var(--sp-4)}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field>label{margin:0}.field-hint{font-size:.8rem;color:var(--text-dim)}.field-row{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3)}.form-actions{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap;margin-top:var(--sp-5)}.admin-content .panel input:not([type=checkbox]):not([type=radio]):not([type=file]),.admin-content .panel select,.admin-content .panel textarea{max-width:none}.char-count{font-size:.8rem;font-variant-numeric:tabular-nums;color:var(--text-dim)}.char-count.is-near{color:var(--warning)}.inline-error{display:flex;align-items:flex-start;gap:var(--sp-2);margin:0 0 var(--sp-4);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);color:var(--text);background:var(--danger-soft);font-size:.9rem}.inline-error svg{flex:none;margin-top:2px;color:var(--danger)}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);background:var(--field-bg);border:1px solid var(--field-border)}.admin-content label.switch-row{margin:0;min-height:56px;cursor:pointer}.switch-row-text{min-width:0}.switch-row-title{font-weight:600}.switch-row-desc{font-size:.82rem;color:var(--text-dim)}.switch-row input[type=checkbox]{appearance:none;-webkit-appearance:none;position:relative;flex:none;width:46px;height:28px;border-radius:var(--r-pill);background:var(--neutral-soft);border:1px solid var(--field-border);cursor:pointer;transition:background-color var(--dur) var(--ease)}.switch-row input[type=checkbox]:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:var(--text-dim);transition:transform var(--dur) var(--ease-spring),background-color var(--dur) var(--ease)}.switch-row input[type=checkbox]:checked{background:var(--primary);border-color:transparent}.switch-row input[type=checkbox]:checked:after{transform:translate(18px);background:#fff}.switch-row input[type=checkbox]:focus-visible{outline:none;box-shadow:var(--focus-ring)}.toolbar{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap;padding:var(--sp-3);border-radius:var(--r-lg);margin-bottom:var(--sp-4)}.toolbar .search-field{flex:1 1 240px}.toolbar select{width:auto;flex:0 0 auto;max-width:100%}.toolbar-end{margin-left:auto}.search-field{position:relative;min-width:0}.search-field input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]){padding-left:42px;padding-right:42px}.search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-faint);pointer-events:none}.search-clear{position:absolute;right:6px;top:50%;transform:translateY(-50%);min-height:36px;min-width:36px;padding:0;border:0;border-radius:var(--r-xs);background:transparent;color:var(--text-dim)}.search-clear:active:not(:disabled){transform:translateY(-50%) scale(.94)}.search-spinner{position:absolute;right:14px;top:50%;margin-top:-.55em;color:var(--text-dim)}.segmented{display:inline-flex;gap:2px;padding:3px;border-radius:var(--r-sm);background:var(--neutral-soft)}.segmented button{min-height:38px;min-width:0;padding:0 var(--sp-3);border:0;border-radius:calc(var(--r-sm) - 3px);background:transparent;color:var(--text-dim);font-size:.875rem;box-shadow:none}.segmented button[aria-pressed=true]{color:var(--text);background:var(--solid-surface);box-shadow:var(--shadow-sm)}@media (hover: hover){.segmented button:hover:not(:disabled){border-color:transparent;box-shadow:none;color:var(--text)}.segmented button[aria-pressed=true]:hover:not(:disabled){box-shadow:var(--shadow-sm)}}.result-note{margin:0 0 var(--sp-3);color:var(--text-dim);font-size:.875rem}.chip{display:inline-flex;align-items:center;max-width:100%;padding:2px 10px;border-radius:var(--r-pill);font-size:.78rem;font-weight:600;line-height:1.5;color:var(--text-dim);background:var(--neutral-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chip-row{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.toggle-group{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.toggle-group button{min-height:40px;padding:0 var(--sp-4);border-radius:var(--r-pill);font-size:.875rem}.toggle-group button[aria-pressed=true]{color:var(--primary-text);border-color:var(--primary);background:var(--primary-soft)}.table-card{border-radius:var(--r-lg);overflow:hidden}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.data-table{min-width:0;border:0;border-radius:0;background:transparent;box-shadow:none}.data-table td.num,.data-table th.num{text-align:right;font-variant-numeric:tabular-nums}.data-table td.nowrap{white-space:nowrap}.data-table tr.row-link{cursor:pointer}.data-table .cell-actions{display:flex;justify-content:flex-end;gap:var(--sp-2)}.person{display:flex;align-items:center;gap:var(--sp-3);min-width:0}.person-text{min-width:0}.person-name{font-weight:700;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}a.person-name:hover{color:var(--primary-text)}.person-sub{font-size:.82rem;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar-soft{color:var(--primary-text);background:var(--primary-soft);box-shadow:none}.avatar-sm{width:34px;height:34px;font-size:.78rem}.avatar-lg{width:68px;height:68px;font-size:1.5rem}.tabular{font-variant-numeric:tabular-nums}.skeleton-rows{display:flex;flex-direction:column;gap:1px;padding:var(--sp-3)}.skeleton-rows .skeleton{height:52px}@media (max-width: 719px){.rtable{min-width:0}.rtable thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.rtable,.rtable tbody,.rtable tr,.rtable td{display:block;width:100%}.rtable tr{padding:var(--sp-3) var(--sp-4);border-top:1px solid var(--hairline)}.rtable tr:first-child{border-top:0}.rtable td{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:6px 0;border:0;text-align:right}.rtable td:before{content:attr(data-label);flex:none;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);text-align:left}.rtable td:not([data-label]):before,.rtable td[data-label=""]:before{content:none}.rtable td.cell-main{display:block;text-align:left;padding-bottom:var(--sp-2)}.rtable td.cell-main:before{content:none}.rtable td select{max-width:60%}.rtable .cell-actions{width:100%;justify-content:flex-start}.data-table td.nowrap{white-space:normal}}.contact-cards{display:none}@media (max-width: 719px){.contacts-table{display:none}.contact-cards{display:flex;flex-direction:column}}.contact-row-card{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-4);color:var(--text);border-top:1px solid var(--hairline);text-decoration:none}.contact-row-card:first-child{border-top:0}.contact-row-card:hover{text-decoration:none}.contact-row-card:active{background:var(--primary-soft)}.contact-row-body{flex:1;min-width:0}.contact-row-top{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2)}.contact-row-chips{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap;margin-top:6px}.contact-row-card>svg{flex:none;color:var(--text-faint)}.pager{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap;padding:var(--sp-3) var(--sp-4);border-top:1px solid var(--hairline)}.pager-info{font-size:.875rem;color:var(--text-dim);font-variant-numeric:tabular-nums}.pager-controls{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:nowrap}.pager-size select{width:auto;min-height:38px;padding:0 10px;font-size:.875rem}.pager-page{min-width:90px;text-align:center;font-size:.85rem;color:var(--text-dim);font-variant-numeric:tabular-nums}@media (max-width: 520px){.pager{justify-content:center}.pager-info{width:100%;text-align:center}.pager-label{display:none}.pager-page{min-width:0}}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:var(--sp-3)}.stat-tile{padding:var(--sp-4) var(--sp-5);border-radius:var(--r-lg)}.stat-label{display:flex;align-items:center;gap:6px;font-size:.8rem;font-weight:600;color:var(--text-dim)}.stat-value{margin-top:4px;font-size:2rem;font-weight:800;letter-spacing:-.02em;line-height:1.15;font-variant-numeric:tabular-nums}.stat-hint{margin-top:2px;font-size:.8rem;color:var(--text-dim)}.detail-hero{display:flex;align-items:center;gap:var(--sp-5);padding:var(--sp-5);border-radius:var(--r-xl);margin-bottom:var(--sp-5)}.detail-hero-main{flex:1;min-width:0}.detail-hero h1{margin:0 0 4px;overflow-wrap:anywhere}.detail-hero-sub{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap;color:var(--text-dim)}.detail-hero-actions{display:flex;gap:var(--sp-2);flex-wrap:wrap}@media (max-width: 640px){.detail-hero{flex-direction:column;align-items:flex-start}}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:var(--sp-5);align-items:start}@media (max-width: 899px){.detail-grid{grid-template-columns:minmax(0,1fr)}.detail-side{order:-1}}.kv{display:grid;grid-template-columns:112px minmax(0,1fr);gap:var(--sp-3) var(--sp-4);margin:0}.kv dt{font-size:.82rem;font-weight:600;color:var(--text-dim)}.kv dd{margin:0;min-width:0;overflow-wrap:anywhere}.timeline{display:flex;flex-direction:column;gap:var(--sp-3);margin:0;padding:0;list-style:none}.timeline li{margin:0}.timeline-item{padding:var(--sp-4);border-radius:var(--r-lg)}.timeline-top{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap}.timeline-meta{margin-top:6px;font-size:.85rem;color:var(--text-dim)}.timeline-note{margin:var(--sp-3) 0 0;padding:var(--sp-3) var(--sp-4);border-left:3px solid var(--primary);border-radius:0 var(--r-sm) var(--r-sm) 0;background:var(--primary-soft);font-size:.92rem;white-space:pre-wrap}.item-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:var(--sp-4)}.item-card{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-5);border-radius:var(--r-lg);min-width:0}.item-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-3)}.item-card h3{margin:0;overflow-wrap:anywhere}.item-card-meta{font-size:.85rem;color:var(--text-dim)}.item-card-actions{display:flex;gap:var(--sp-2);flex-wrap:wrap;margin-top:auto}.sms-bubble{align-self:flex-start;max-width:100%;padding:var(--sp-3) var(--sp-4);border-radius:18px 18px 18px 6px;background:var(--primary-soft);color:var(--text);font-size:.95rem;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.person-list{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}.person-list li{display:flex;align-items:center;gap:var(--sp-3);margin:0;padding:var(--sp-3) 0;border-top:1px solid var(--hairline)}.person-list li:first-child{border-top:0}.person-list .person{flex:1}.steps{display:flex;align-items:center;gap:var(--sp-2);margin:0 0 var(--sp-5);padding:0;list-style:none;overflow-x:auto}.steps li{display:flex;align-items:center;gap:var(--sp-2);margin:0;flex:none;font-size:.875rem;font-weight:600;color:var(--text-faint)}.steps li+li:before{content:"";width:28px;height:2px;margin-right:var(--sp-2);border-radius:2px;background:var(--border)}.step-dot{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;font-size:.8rem;background:var(--neutral-soft)}.steps li.is-current{color:var(--text)}.steps li.is-current .step-dot{color:var(--primary-contrast);background:var(--primary)}.steps li.is-done{color:var(--text-dim)}.steps li.is-done .step-dot{color:var(--success);background:var(--success-soft)}.dropzone{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);padding:var(--sp-10) var(--sp-5);text-align:center;border:2px dashed var(--field-border);border-radius:var(--r-lg);background:var(--field-bg);cursor:pointer;transition:border-color var(--dur-fast) var(--ease),background-color var(--dur-fast) var(--ease)}.admin-content label.dropzone{margin:0;min-height:0;display:flex;font-weight:500}.dropzone:hover,.dropzone.is-over{border-color:var(--primary);background:var(--primary-soft)}.dropzone:has(input:focus-visible){box-shadow:var(--focus-ring);border-color:var(--primary)}.dropzone.is-busy{cursor:progress;opacity:.8}.dropzone input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.dropzone-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:18px;color:var(--primary-text);background:var(--primary-soft)}.dropzone-title{font-weight:700}.progress{height:10px;overflow:hidden;border-radius:var(--r-pill);background:var(--neutral-soft)}.progress-bar{height:100%;border-radius:var(--r-pill);background:linear-gradient(90deg,var(--primary),var(--primary-2));transition:width var(--dur) var(--ease)}.progress-bar.is-indeterminate{width:40%;animation:progress-slide 1.4s ease-in-out infinite}@keyframes progress-slide{0%{transform:translate(-100%)}to{transform:translate(250%)}}.map-table th{vertical-align:top;min-width:170px;text-transform:none;letter-spacing:0;font-size:.82rem}.map-table th select{margin-top:6px;font-weight:500}.map-table td{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.error-list{margin:var(--sp-3) 0 0;padding-left:1.2rem;font-size:.875rem;color:var(--text-dim)}.script-flow{display:flex;flex-direction:column;gap:var(--sp-4)}.script-card{padding:var(--sp-5);border-radius:var(--r-lg)}.script-card.is-start{border-color:var(--primary)}.script-card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap;margin-bottom:var(--sp-4)}.script-card-head-left{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap}.script-number{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;font-size:.85rem;font-weight:700;color:var(--primary-text);background:var(--primary-soft)}.script-responses{margin-top:var(--sp-5);padding-top:var(--sp-4);border-top:1px solid var(--hairline)}.script-responses-title{margin:0 0 var(--sp-3);font-size:.85rem;font-weight:700;color:var(--text-dim)}.response-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:var(--sp-2);align-items:center;margin-bottom:var(--sp-2)}@media (max-width: 640px){.response-row{grid-template-columns:minmax(0,1fr) auto}.response-row .response-goes{grid-column:1 / -1;grid-row:2}}.sticky-bar{position:sticky;bottom:var(--sp-4);z-index:10;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap;margin-top:var(--sp-5);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg)}@media (max-width: 899px){.sticky-bar{bottom:calc(92px + var(--safe-bottom))}}.sticky-bar-text{font-size:.9rem;color:var(--text-dim)}.version-list{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}.version-list li{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);margin:0;padding:var(--sp-3) 0;border-top:1px solid var(--hairline)}.version-list li:first-child{border-top:0}.bar-list{display:flex;flex-direction:column;gap:var(--sp-3);margin:0;padding:0;list-style:none}.bar-list li{display:grid;grid-template-columns:minmax(120px,220px) minmax(0,1fr) 96px;align-items:center;gap:var(--sp-3);margin:0}.bar-label{font-size:.9rem;font-weight:600}.bar-track{height:12px;border-radius:var(--r-pill);background:var(--neutral-soft);overflow:hidden}.bar-fill{display:block;height:100%;min-width:4px;border-radius:0 var(--r-pill) var(--r-pill) 0;background:var(--primary)}.bar-value{text-align:right;font-size:.9rem;font-variant-numeric:tabular-nums}.bar-value small{color:var(--text-dim);font-size:.8rem}@media (max-width: 640px){.bar-list li{grid-template-columns:minmax(0,1fr) auto;row-gap:6px}.bar-list .bar-track{grid-column:1 / -1;grid-row:2}}.detail-chips{display:flex;flex-wrap:wrap;gap:6px}.detail-chips .chip{font-weight:500;white-space:normal}@media (min-width: 720px){.contacts-table .chip-row{flex-wrap:nowrap}.contacts-table .chip-row .chip:first-child{max-width:120px}.contacts-table td:last-child{max-width:190px;overflow:hidden}.contacts-table td{white-space:nowrap}.contacts-table td:first-child{white-space:normal}}.kv .chip-row .chip{white-space:normal;overflow:visible;text-overflow:clip}.note-clip{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:320px;white-space:normal}@media (max-width: 719px){.rtable .note-clip{max-width:none;text-align:right}}.form-grid-4{grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr))}.export-section{margin-bottom:var(--sp-5)}
