:root{--color-background:#f6f7fb;--color-surface:#fff;--color-surface-variant:#eef1f8;--color-surface-raised:#fbfcfe;--color-input-fill:#f0f3f9;--color-text-primary:#161a3a;--color-text-secondary:#555b78;--color-text-tertiary:#959ab2;--color-divider:#dfe4f0;--color-primary:#4f46e5;--color-on-primary:#fff;--color-primary-soft:#e8e6fc;--color-primary-strong:#3730a3;--color-secondary:#0f9f8f;--color-on-secondary:#fff;--color-tertiary:#e8890c;--color-on-tertiary:#fff;--color-coral:#ff6a3d;--color-coral-soft:#ffe6dc;--color-lime:#c8f169;--color-lime-soft:#eefbd0;--color-error:#e11d48;--color-on-error:#fff;--color-input-border-focused:var(--color-primary);--color-ink:#13132a;--color-ink-raised:#1d1d3a;--color-on-ink:#f4f2ff;--color-on-ink-muted:#a3a1c4;--color-success:var(--color-secondary);--color-on-success:var(--color-on-secondary);--color-warning:var(--color-tertiary);--color-on-warning:var(--color-on-tertiary);--color-accent:var(--color-primary);--color-on-accent:var(--color-on-primary);--shadow-color:32 28 60;--shadow-sm:0 1px 2px rgb(var(--shadow-color) / .06), 0 1px 1px rgb(var(--shadow-color) / .04);--shadow-md:0 2px 4px rgb(var(--shadow-color) / .04), 0 8px 24px -6px rgb(var(--shadow-color) / .12);--shadow-lg:0 4px 8px rgb(var(--shadow-color) / .05), 0 24px 56px -12px rgb(var(--shadow-color) / .22);--color-shadow:#4f46e52e;--space-xxs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-xxl:48px;--space-3xl:72px;--card-gap:16px;--section-gap:28px;--radius-xs:8px;--radius-sm:12px;--radius-md:16px;--radius-lg:22px;--radius-xl:30px;--radius-pill:999px;--font-display:"Fraunces", "Iowan Old Style", Georgia, serif;--font-body:"DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-title:var(--font-body);--font-mono:"DM Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--ease-out:cubic-bezier(.22, 1, .36, 1);--sidebar-width:260px;--header-height:64px;--sidebar-collapsed:84px;--bottom-nav-height:76px;--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-primary-hover:var(--color-primary-strong);--color-primary-light:var(--color-primary-soft);--color-bg:var(--color-surface);--color-bg-secondary:var(--color-background);--color-bg-tertiary:var(--color-surface-variant);--color-border:var(--color-divider);--color-text:var(--color-text-primary);--color-info:#3b82f6;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--color-success-soft:color-mix(in srgb, var(--color-success) 14%, transparent);--color-warning-soft:color-mix(in srgb, var(--color-warning) 16%, transparent);--color-error-soft:color-mix(in srgb, var(--color-error) 12%, transparent);--color-info-soft:color-mix(in srgb, var(--color-info) 14%, transparent);--color-neutral-soft:color-mix(in srgb, var(--color-text-primary) 7%, transparent)}:root[data-theme=dark]{--color-background:#0c0c14;--color-surface:#15151f;--color-surface-variant:#1d1d29;--color-surface-raised:#191924;--color-input-fill:#1d1d29;--color-text-primary:#f3f1ea;--color-text-secondary:#aeacbf;--color-text-tertiary:#75738a;--color-divider:#272735;--color-primary:#8f8cff;--color-on-primary:#0d0c24;--color-primary-soft:#232247;--color-primary-strong:#b9b7ff;--color-secondary:#2fd5c0;--color-on-secondary:#04201c;--color-tertiary:#f6a531;--color-on-tertiary:#1f1200;--color-coral:#ff8a63;--color-coral-soft:#3a1d14;--color-lime:#c8f169;--color-lime-soft:#26300f;--color-error:#fb7185;--color-on-error:#1a0606;--color-ink:#07070e;--color-ink-raised:#14142a;--shadow-color:0 0 0;--shadow-sm:0 1px 2px #0006;--shadow-md:0 8px 24px -6px #0000008c;--shadow-lg:0 24px 56px -12px #000000b3;--color-shadow:#0006;--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-info:#60a5fa}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{background-color:var(--color-background);background-image:radial-gradient(color-mix(in srgb, var(--color-text-primary) 7%, transparent) 1px, transparent 1px);color:var(--color-text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background-size:22px 22px;margin:0;font-size:15px;line-height:1.5;overflow-x:hidden}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}::selection{background:var(--color-lime);color:#121224}:focus-visible{outline:2.5px solid var(--color-primary);outline-offset:2px;border-radius:6px}.display-large,.display-medium,.display-small,.headline-large,.headline-medium,.headline-small{font-family:var(--font-display);font-variation-settings:"SOFT" 50, "opsz" 96;color:var(--color-text-primary);letter-spacing:-.02em;margin:0}.display-large{font-size:clamp(44px,6vw,72px);font-weight:600;line-height:1.02}.display-medium{font-size:clamp(38px,4.6vw,56px);font-weight:600;line-height:1.05}.display-small{font-size:clamp(32px,3.6vw,44px);font-weight:600;line-height:1.08}.headline-large{font-size:clamp(28px,3vw,36px);font-weight:600;line-height:1.12}.headline-medium{font-size:28px;font-weight:600;line-height:1.18}.headline-small{font-size:23px;font-weight:600;line-height:1.22}.display-large em,.display-medium em,.display-small em,.headline-large em,.headline-medium em,.headline-small em{color:var(--color-primary);font-style:italic;font-weight:500}.title-large,.title-medium,.title-small{font-family:var(--font-body);color:var(--color-text-primary);margin:0;font-weight:700}.title-large{letter-spacing:-.01em;font-size:20px;line-height:1.3}.title-medium{letter-spacing:-.005em;font-size:16px;line-height:1.4}.title-small{font-size:14px;line-height:1.4}.body-large,.body-medium,.body-small,.label-large,.label-medium,.label-small{font-family:var(--font-body);margin:0}.body-large{color:var(--color-text-primary);font-size:16px;line-height:1.55}.body-medium{color:var(--color-text-primary);font-size:14px;line-height:1.5}.body-small{color:var(--color-text-secondary);font-size:12.5px;font-weight:500;line-height:1.45}.label-large{color:var(--color-text-primary);font-size:14px;font-weight:600;line-height:1.4}.label-medium{color:var(--color-text-secondary);font-size:12px;font-weight:600;line-height:1.35}.label-small{color:var(--color-text-secondary);font-size:11px;font-weight:600;line-height:1.35}.eyebrow{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);font-size:11.5px;font-weight:500;line-height:1.3}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:500}.highlight{background:linear-gradient(transparent 58%, var(--color-lime) 58%, var(--color-lime) 92%, transparent 92%);color:inherit;padding:0 .08em}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}.text-primary-color{color:var(--color-primary)}.text-error{color:var(--color-error)}.text-center{text-align:center}.stack{flex-direction:column;display:flex}.row{align-items:center;display:flex}.row-between{justify-content:space-between;align-items:center;display:flex}.wrap{flex-wrap:wrap}.grow{flex:auto;min-width:0}.gap-xxs{gap:var(--space-xxs)}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}.gap-section{gap:var(--section-gap)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.page-padding{padding:var(--space-xl) var(--space-xl) var(--space-3xl)}@media (width<=839px){.page-padding{padding:var(--space-lg) var(--space-lg) var(--space-xxl)}}@media (width<=599px){.page-padding{padding:var(--space-md) var(--space-md) var(--space-xxl)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.stagger>*{animation:rise .52s var(--ease-out) both}.stagger>:nth-child(2){animation-delay:50ms}.stagger>:nth-child(3){animation-delay:.1s}.stagger>:nth-child(4){animation-delay:.15s}.stagger>:nth-child(5){animation-delay:.2s}.stagger>:nth-child(6){animation-delay:.25s}.stagger>:nth-child(n+7){animation-delay:.3s}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes pulse-dot{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--color-success) 60%, transparent)}70%{box-shadow:0 0 0 7px #0000}to{box-shadow:0 0 #0000}}@keyframes skeleton{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--color-surface-variant) 0, var(--color-surface-raised) 50%, var(--color-surface-variant) 100%);background-size:200px 100%;animation:1.2s ease-in-out infinite skeleton}.muted-box{padding:var(--space-md);border-radius:var(--radius-md);background:var(--color-surface-variant)}.divider{background:var(--color-divider);border:0;height:1px;margin:0}.btn{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-pill);font-family:var(--font-body);letter-spacing:-.005em;white-space:nowrap;cursor:pointer;border:1px solid #0000;font-weight:600;transition:background-color .15s,box-shadow .15s,transform .15s,opacity .15s,border-color .15s;display:inline-flex;position:relative}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{cursor:not-allowed;opacity:.5}.btn.is-loading{cursor:progress}.btn .btn-content{align-items:center;gap:var(--space-2);display:inline-flex}.btn.is-loading .btn-content{visibility:hidden}.btn .btn-spinner{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.btn.is-full{width:100%}.btn-sm{height:34px;padding:0 14px;font-size:13px}.btn-md{height:42px;padding:0 18px;font-size:14px}.btn-lg{height:52px;padding:0 24px;font-size:15.5px}.btn-primary{background:var(--color-primary);color:var(--color-on-primary);box-shadow:0 8px 20px -8px var(--color-shadow), inset 0 1px 0 #ffffff29}.btn-primary:hover:not(:disabled){background:var(--color-primary-strong)}:root[data-theme=dark] .btn-primary:hover:not(:disabled){background:color-mix(in srgb, var(--color-primary) 85%, white)}.btn-secondary{background:var(--color-surface);color:var(--color-text-primary);border-color:var(--color-divider)}.btn-secondary:hover:not(:disabled){border-color:var(--color-text-tertiary);background:var(--color-surface-raised)}.btn-ghost{color:var(--color-text-primary);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--color-neutral-soft)}.btn-danger{background:var(--color-error);color:var(--color-on-error)}.btn-danger:hover:not(:disabled){filter:brightness(1.08)}.btn-danger-soft{background:var(--color-error-soft);color:var(--color-error)}.btn-danger-soft:hover:not(:disabled){background:color-mix(in srgb, var(--color-error) 18%, transparent)}.icon-btn{border-radius:var(--radius-pill);width:40px;height:40px;color:var(--color-text-primary);background:0 0;border:none;flex:none;justify-content:center;align-items:center;transition:background-color .15s,transform .15s;display:inline-flex;position:relative}.icon-btn:hover:not(:disabled){background:var(--color-neutral-soft)}.icon-btn:active:not(:disabled){transform:scale(.94)}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.icon-btn.is-sm{width:32px;height:32px}.icon-btn.is-outlined{border:1px solid var(--color-divider);background:var(--color-surface)}.icon-btn.is-danger:hover:not(:disabled){background:var(--color-error-soft);color:var(--color-error)}.spinner{border:2.4px solid;border-right-color:#0000;border-radius:50%;flex:none;animation:.8s linear infinite spin;display:inline-block}.spinner-sm{border-width:2px;width:16px;height:16px}.spinner-md{width:24px;height:24px}.spinner-lg{border-width:3px;width:40px;height:40px}.page-loader{min-height:240px;color:var(--color-primary);justify-content:center;align-items:center;display:flex}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field-label{color:var(--color-text-primary);font-size:13px;font-weight:600}.field-label .optional{color:var(--color-text-tertiary);font-weight:500}.field-hint{color:var(--color-text-secondary);font-size:12.5px}.field-error{color:var(--color-error);font-size:12.5px;font-weight:600}.input-box{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xs);align-items:center;gap:10px;min-height:44px;padding:0 14px;transition:border-color .15s,box-shadow .15s;display:flex}.input-box:hover{border-color:color-mix(in srgb, var(--color-text-primary) 25%, var(--color-divider))}.input-box:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 16%, transparent)}.input-box.has-error{border-color:var(--color-error)}.input-box.has-error:focus-within{box-shadow:0 0 0 3px var(--color-error-soft)}.input-box.is-disabled{background:var(--color-surface-variant);opacity:.8}.input-box input,.input-box select,.input-box textarea{width:100%;min-width:0;color:var(--color-text-primary);background:0 0;border:none;outline:none;flex:1;padding:10px 0;font-size:14.5px}.input-box input::placeholder,.input-box textarea::placeholder{color:var(--color-text-tertiary)}.input-box select{appearance:none;cursor:pointer;padding-right:22px}.input-box .input-icon{color:var(--color-text-tertiary);flex:none;display:inline-flex}.input-box.is-select{position:relative}.input-box.is-select:after{content:"";border-right:1.8px solid var(--color-text-secondary);border-bottom:1.8px solid var(--color-text-secondary);pointer-events:none;width:7px;height:7px;position:absolute;top:50%;right:15px;transform:translateY(-70%)rotate(45deg)}.input-box.is-textarea{align-items:stretch}.input-box textarea{resize:vertical;min-height:96px;line-height:1.5}.input-box select option{background:var(--color-surface);color:var(--color-text-primary)}.input-box input[type=number]::-webkit-inner-spin-button{opacity:.4}.input-box input[type=date],.input-box input[type=time],.input-box input[type=datetime-local]{color-scheme:inherit}.char-count{color:var(--color-text-tertiary);font-variant-numeric:tabular-nums;align-self:flex-end;font-size:12px}.char-count.is-over{color:var(--color-error);font-weight:600}.form-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.form-grid .span-2{grid-column:1/-1}@media (width<=599px){.form-grid{grid-template-columns:1fr}}.checkbox{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;font-size:14px;display:inline-flex}.checkbox input{opacity:0;pointer-events:none;position:absolute}.checkbox-box{border:1.8px solid var(--color-text-tertiary);width:20px;height:20px;color:var(--color-on-primary);border-radius:6px;flex:none;justify-content:center;align-items:center;transition:background-color .15s,border-color .15s;display:inline-flex}.checkbox input:checked+.checkbox-box{background:var(--color-primary);border-color:var(--color-primary)}.checkbox input:focus-visible+.checkbox-box{outline:2.5px solid var(--color-primary);outline-offset:2px}.switch{border-radius:var(--radius-pill);background:var(--color-divider);border:none;flex:none;width:44px;height:26px;transition:background-color .2s;position:relative}.switch:after{content:"";width:20px;height:20px;transition:transform .25s var(--ease-out);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.switch[aria-checked=true]{background:var(--color-primary)}.switch[aria-checked=true]:after{transform:translate(18px)}.chip-group{gap:var(--space-2);flex-wrap:wrap;display:flex}.chip{border-radius:var(--radius-pill);border:1px solid var(--color-divider);background:var(--color-surface);height:34px;color:var(--color-text-primary);align-items:center;gap:6px;padding:0 14px;font-size:13.5px;font-weight:600;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.chip:hover{border-color:var(--color-text-tertiary)}.chip[aria-pressed=true]{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-strong)}:root[data-theme=dark] .chip[aria-pressed=true]{color:var(--color-primary)}.card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:0;position:relative}.card.pad-sm{padding:var(--space-4)}.card.pad-md{padding:var(--space-6)}.card.pad-lg{padding:var(--space-8)}.card.pad-none{padding:0}.card.has-shadow{box-shadow:var(--shadow-sm)}.card-header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.card-title{letter-spacing:-.01em;margin:0;font-size:16px;font-weight:700}.badge{border-radius:var(--radius-xl);white-space:nowrap;align-items:center;gap:5px;height:24px;padding:0 10px;font-size:12px;font-weight:600;line-height:1;display:inline-flex}.badge-success{background:var(--color-success-soft);color:color-mix(in srgb, var(--color-success) 80%, var(--color-text-primary))}.badge-warning{background:var(--color-warning-soft);color:color-mix(in srgb, var(--color-warning) 75%, var(--color-text-primary))}.badge-error{background:var(--color-error-soft);color:var(--color-error)}.badge-info{background:var(--color-info-soft);color:color-mix(in srgb, var(--color-info) 80%, var(--color-text-primary))}.badge-neutral{background:var(--color-neutral-soft);color:var(--color-text-secondary)}.badge-dot{background:currentColor;border-radius:50%;width:7px;height:7px}.badge.is-pulse .badge-dot{background:var(--color-success);animation:1.6s ease-out infinite pulse-dot}.count-badge{border-radius:var(--radius-pill);background:var(--color-coral);color:#fff;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.overlay{z-index:100;padding:var(--space-4);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0a0a1973;justify-content:center;align-items:center;animation:.18s both overlay-in;display:flex;position:fixed;inset:0}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}.modal{background:var(--color-surface);border-radius:var(--radius-lg);width:100%;max-height:calc(100vh - 32px);box-shadow:var(--shadow-lg);animation:modal-in .2s var(--ease-out) both;outline:none;flex-direction:column;display:flex}.modal-sm{max-width:420px}.modal-md{max-width:560px}.modal-lg{max-width:760px}@keyframes modal-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:none}}.modal-header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-6) var(--space-3);display:flex}.modal-title{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:22px;font-weight:600}.modal-body{padding:var(--space-3) var(--space-6) var(--space-5);overflow-y:auto}.modal-footer{justify-content:flex-end;gap:var(--space-2);padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-divider);flex-wrap:wrap;display:flex}.overlay.is-drawer{justify-content:flex-end;align-items:stretch;padding:0}.drawer{background:var(--color-surface);width:min(440px,100%);height:100%;box-shadow:var(--shadow-lg);animation:drawer-in .24s var(--ease-out) both;outline:none;flex-direction:column;display:flex}@keyframes drawer-in{0%{transform:translate(100%)}to{transform:none}}.drawer .modal-body{flex:1}@media (width<=599px){.overlay:not(.is-drawer){align-items:flex-end;padding:0}.modal{border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:92vh}}.toast-stack{right:var(--space-5);bottom:var(--space-5);z-index:200;gap:var(--space-2);pointer-events:none;flex-direction:column;width:min(380px,100vw - 32px);display:flex;position:fixed}.toast{align-items:flex-start;gap:var(--space-3);border-radius:var(--radius-sm);background:var(--color-surface);border:1px solid var(--color-divider);border-left:4px solid var(--toast-color);box-shadow:var(--shadow-md);pointer-events:auto;animation:toast-in .25s var(--ease-out) both;padding:14px 14px 14px 16px;display:flex}@keyframes toast-in{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:none}}.toast-icon{color:var(--toast-color);flex:none;margin-top:1px}.toast-title{font-size:14px;font-weight:700}.toast-message{color:var(--color-text-secondary);margin-top:2px;font-size:13px}.toast-success{--toast-color:var(--color-success)}.toast-error{--toast-color:var(--color-error)}.toast-warning{--toast-color:var(--color-warning)}.toast-info{--toast-color:var(--color-info)}@media (width<=599px){.toast-stack{bottom:16px;right:16px}}.avatar{color:#fff;letter-spacing:.01em;-webkit-user-select:none;user-select:none;border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:700;display:inline-flex;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.avatar-xs{width:24px;height:24px;font-size:10px}.avatar-sm{width:32px;height:32px;font-size:12px}.avatar-md{width:40px;height:40px;font-size:14px}.avatar-lg{width:56px;height:56px;font-size:19px}.avatar-xl{width:96px;height:96px;font-size:32px}.empty-state{text-align:center;align-items:center;gap:var(--space-2);padding:var(--space-10) var(--space-6);color:var(--color-text-secondary);flex-direction:column;display:flex}.empty-state-icon{width:64px;height:64px;margin-bottom:var(--space-2);background:var(--color-surface-variant);color:var(--color-text-tertiary);border-radius:20px;justify-content:center;align-items:center;display:inline-flex;transform:rotate(-4deg)}.empty-state-title{color:var(--color-text-primary);margin:0;font-size:16px;font-weight:700}.empty-state-description{max-width:380px;margin:0;font-size:14px}.empty-state-action{margin-top:var(--space-3)}.empty-state.is-compact{padding:var(--space-6) var(--space-4)}.empty-state.is-compact .empty-state-icon{border-radius:14px;width:48px;height:48px}.pagination{padding-top:var(--space-4);flex-wrap:wrap;justify-content:center;align-items:center;gap:4px;display:flex}.pagination-btn{border-radius:var(--radius-xs);min-width:36px;height:36px;color:var(--color-text-primary);font-variant-numeric:tabular-nums;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:4px;padding:0 10px;font-size:13.5px;font-weight:600;display:inline-flex}.pagination-btn:hover:not(:disabled){background:var(--color-neutral-soft)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-btn[aria-current=page]{background:var(--color-text-primary);color:var(--color-background)}.pagination-ellipsis{text-align:center;min-width:24px;color:var(--color-text-tertiary)}.tabs{gap:var(--space-1);border-bottom:1px solid var(--color-divider);margin-bottom:var(--space-6);scrollbar-width:none;display:flex;overflow-x:auto}.tab{align-items:center;gap:var(--space-2);height:44px;padding:0 var(--space-4);color:var(--color-text-secondary);white-space:nowrap;background:0 0;border:none;font-size:14px;font-weight:600;display:inline-flex;position:relative}.tab:hover,.tab[aria-selected=true]{color:var(--color-text-primary)}.tab[aria-selected=true]:after{content:"";background:var(--color-primary);border-radius:3px 3px 0 0;height:3px;position:absolute;bottom:-1px;left:10px;right:10px}.segmented{border-radius:var(--radius-pill);background:var(--color-surface-variant);border:1px solid var(--color-divider);padding:3px;display:inline-flex}.segmented button{border-radius:var(--radius-pill);height:34px;color:var(--color-text-secondary);background:0 0;border:none;align-items:center;gap:6px;padding:0 14px;font-size:13.5px;font-weight:600;display:inline-flex}.segmented button[aria-pressed=true]{background:var(--color-surface);color:var(--color-text-primary);box-shadow:var(--shadow-sm)}.table-wrap{width:100%;overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:14px}.table th{text-align:left;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);border-bottom:1px solid var(--color-divider);white-space:nowrap;padding:10px 14px;font-size:11px;font-weight:500}.table td{border-bottom:1px solid var(--color-divider);vertical-align:middle;padding:12px 14px}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover td{background:color-mix(in srgb, var(--color-surface-variant) 50%, transparent)}.table .num{text-align:right;font-variant-numeric:tabular-nums}.table .actions{text-align:right;white-space:nowrap}.cell-person{align-items:center;gap:10px;min-width:160px;display:flex}.dropdown{position:relative}.dropdown-menu{z-index:60;border-radius:var(--radius-sm);background:var(--color-surface);border:1px solid var(--color-divider);min-width:220px;box-shadow:var(--shadow-lg);padding:6px;animation:.15s both fade-in;position:absolute;top:calc(100% + 8px);right:0}.dropdown-item{text-align:left;width:100%;color:var(--color-text-primary);background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:9px 10px;font-size:14px;font-weight:500;display:flex}.dropdown-item:hover{background:var(--color-neutral-soft)}.dropdown-item.is-danger{color:var(--color-error)}.dropdown-header{padding:10px 10px 8px}.alert{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-sm);border:1px solid;align-items:flex-start;font-size:14px;display:flex}.alert-icon{flex:none;margin-top:1px}.alert-title{font-weight:700}.alert-info{background:var(--color-info-soft);border-color:color-mix(in srgb, var(--color-info) 30%, transparent)}.alert-info .alert-icon{color:var(--color-info)}.alert-warning{background:var(--color-warning-soft);border-color:color-mix(in srgb, var(--color-warning) 35%, transparent)}.alert-warning .alert-icon{color:var(--color-warning)}.alert-error{background:var(--color-error-soft);border-color:color-mix(in srgb, var(--color-error) 30%, transparent)}.alert-error .alert-icon{color:var(--color-error)}.alert-success{background:var(--color-success-soft);border-color:color-mix(in srgb, var(--color-success) 30%, transparent)}.alert-success .alert-icon{color:var(--color-success)}.progress{border-radius:var(--radius-pill);background:var(--color-neutral-soft);width:100%;height:6px;overflow:hidden}.progress>span{background:var(--color-primary);border-radius:inherit;height:100%;transition:width .2s;display:block}.dl{gap:10px var(--space-6);grid-template-columns:minmax(120px,max-content) 1fr;margin:0;font-size:14px;display:grid}.dl dt{color:var(--color-text-secondary)}.dl dd{min-width:0;margin:0;font-weight:600}@media (width<=599px){.dl{grid-template-columns:1fr;gap:2px}.dl dd{margin-bottom:10px}}.recap{padding:var(--space-4);border-radius:var(--radius-sm);background:var(--color-surface-variant);flex-direction:column;gap:10px;display:flex}.recap-row{justify-content:space-between;gap:var(--space-4);font-size:14px;display:flex}.recap-row>span:first-child{color:var(--color-text-secondary)}.recap-row>span:last-child{text-align:right;font-weight:600}.steps{align-items:center;gap:var(--space-2);margin-bottom:var(--space-5);display:flex}.step{align-items:center;gap:var(--space-2);color:var(--color-text-tertiary);font-size:13px;font-weight:600;display:flex}.step-num{border:1.5px solid;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;display:inline-flex}.step.is-active{color:var(--color-primary)}.step.is-done{color:var(--color-success)}.step-sep{background:var(--color-divider);flex:1;height:1.5px}.app-layout{height:100vh;display:flex;overflow:hidden}.app-main{min-width:0;margin-left:var(--sidebar-width);flex-direction:column;flex:1;display:flex;overflow:hidden}.app-content{padding:var(--space-6);flex:1;overflow-y:auto}.sidebar{z-index:50;width:var(--sidebar-width);background:var(--color-ink);height:100vh;color:var(--color-on-ink);border-right:1px solid var(--color-border);flex-direction:column;padding:20px 14px 14px;transition:transform .2s;display:flex;position:fixed;top:0;left:0;overflow:hidden}.sidebar:before{content:"";background:radial-gradient(circle, color-mix(in srgb, var(--color-primary) 55%, transparent), transparent 70%);opacity:.5;pointer-events:none;border-radius:50%;width:260px;height:260px;position:absolute;bottom:-110px;left:-90px}.sidebar-brand{align-items:center;gap:12px;padding:0 8px 22px;display:flex}.brand-mark{flex:none;justify-content:center;align-items:center;display:inline-flex;overflow:hidden;box-shadow:0 0 0 1px #ffffff24,0 6px 16px -6px #13132a73}.brand-name{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-on-ink);font-size:23px;font-weight:600;line-height:1.1}.brand-name em{color:var(--color-lime);font-style:italic;font-weight:500}.sidebar-tag{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--color-on-ink-muted);font-size:10.5px}.sidebar-nav{flex-direction:column;gap:2px;display:flex;position:relative;overflow-y:auto}.sidebar-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:#ffffff59;padding:16px 12px 6px;font-size:10.5px}.nav-link{width:100%;height:44px;color:var(--color-on-ink-muted);text-align:left;background:0 0;border:none;border-radius:12px;align-items:center;gap:12px;padding:0 14px;font-size:14.5px;font-weight:600;transition:background-color .15s,color .15s;display:flex;position:relative}.nav-link:hover{color:var(--color-on-ink);background:#ffffff0f}.nav-link[aria-current=page]{color:var(--color-on-ink);background:#ffffff1a}.nav-link[aria-current=page]:before{content:"";background:var(--color-lime);border-radius:0 3px 3px 0;width:3px;position:absolute;top:11px;bottom:11px;left:0}.nav-link[aria-current=page] svg{color:var(--color-lime)}.nav-link.is-logout:hover{color:#ff8a9b;background:#ff50641a}.sidebar-footer{flex-direction:column;gap:6px;margin-top:auto;padding-top:12px;display:flex;position:relative}.user-chip{width:100%;color:var(--color-on-ink);text-align:left;background:#ffffff0d;border:none;border-radius:14px;align-items:center;gap:10px;padding:8px;transition:background-color .15s;display:flex}.user-chip:hover{background:#ffffff1a}.sidebar-backdrop{display:none}.app-header{align-items:center;gap:var(--space-2);height:var(--header-height);padding:0 var(--space-6);background:color-mix(in srgb, var(--color-background) 88%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);z-index:20;flex:none;display:flex;position:relative}.header-burger{display:none}.header-title{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary);font-size:12px}.header-badge{position:absolute;top:3px;right:2px}.header-user{height:42px;margin-left:var(--space-1);border-radius:var(--radius-pill);border:1px solid var(--color-divider);background:var(--color-surface);align-items:center;gap:10px;padding:4px 14px 4px 4px;font-size:14px;font-weight:600;display:inline-flex}.header-user:hover{border-color:var(--color-text-tertiary)}.notif-menu{width:360px;max-width:calc(100vw - 32px)}.notif-list{max-height:420px;overflow-y:auto}.notif-mark-all{background:0 0;border:none;padding:0;font-size:12.5px}.notif-dot{background:0 0;border-radius:50%;flex:none;width:8px;height:8px;margin-top:6px}.notif-item.is-unread{background:color-mix(in srgb, var(--color-primary) 6%, transparent)}.notif-item.is-unread .notif-dot{background:var(--color-primary)}.notif-item:not(.is-unread){cursor:default}.notif-body{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.notif-item{align-items:flex-start}.notif-empty{padding:12px 10px 16px}.page-layout{max-width:1240px;animation:fade-in .3s var(--ease-out) both;margin:0 auto}.page-header{justify-content:space-between;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.page-title{font-family:var(--font-display);font-variation-settings:"SOFT" 50, "opsz" 96;letter-spacing:-.02em;margin:0;font-size:clamp(28px,3vw,36px);font-weight:600;line-height:1.1}.page-title em{color:var(--color-primary);font-style:italic;font-weight:500}.page-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.page-body{gap:var(--space-6);flex-direction:column;display:flex}.section-title{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.section-title h2{letter-spacing:-.01em;margin:0;font-size:17px;font-weight:700}.toolbar{align-items:flex-end;gap:var(--space-3);flex-wrap:wrap;display:flex}.toolbar>.field{min-width:180px}.toolbar .grow-field{flex:240px}@media (width<=767px){.app-main{margin-left:0}.sidebar{box-shadow:var(--shadow-lg);transform:translate(-100%)}.sidebar.is-open{transform:none}.sidebar-backdrop{z-index:45;background:#0a0a1973;animation:.2s both overlay-in;display:block;position:fixed;inset:0}.header-burger{display:inline-flex}.app-header{padding:0 var(--space-3)}.header-user{padding-right:4px}.header-user-name{display:none}.app-content{padding:var(--space-4)}}.verification-slot:not(:empty){max-width:1240px;margin:0 auto var(--space-6)}.link{color:var(--color-primary);font-size:14px;font-weight:600}.link:hover{text-underline-offset:3px;text-decoration:underline}.back-link{margin-bottom:var(--space-4);display:inline-flex}.auth-page{min-height:100vh;padding:var(--space-6) var(--space-4);background:radial-gradient(600px 400px at 85% 10%, color-mix(in srgb, var(--color-primary) 16%, transparent), transparent 70%), radial-gradient(500px 360px at 10% 95%, color-mix(in srgb, var(--color-lime) 30%, transparent), transparent 70%);justify-content:center;align-items:center;display:flex}.auth-card{gap:var(--space-6);width:100%;max-width:420px;padding:var(--space-8);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:rise .5s var(--ease-out) both;flex-direction:column;display:flex}.auth-brand{align-items:center;gap:var(--space-2);flex-direction:column;display:flex}.auth-brand-name .brand-name{color:var(--color-text-primary);font-size:30px}.auth-brand-name .brand-name em{color:var(--color-primary)}@media (width<=479px){.auth-card{padding:var(--space-6) var(--space-5)}}.stat-grid{gap:var(--space-6);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}@media (width<=1100px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.stat-card{--tone:var(--color-primary);padding:var(--space-5);border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);flex-direction:column;gap:2px;display:flex;position:relative;overflow:hidden}.stat-card.tone-secondary{--tone:var(--color-secondary)}.stat-card.tone-tertiary{--tone:var(--color-tertiary)}.stat-card.tone-coral{--tone:var(--color-coral)}.stat-icon{width:40px;height:40px;margin-bottom:var(--space-3);background:color-mix(in srgb, var(--tone) 14%, transparent);color:var(--tone);border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.stat-value{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:34px;font-weight:600;line-height:1.1}.stat-label{color:var(--color-text-secondary);font-size:13.5px;font-weight:600}.stat-delta{color:var(--color-text-tertiary);align-items:center;gap:4px;margin-top:6px;font-size:12.5px;display:inline-flex}.stat-delta.is-up{color:var(--color-success)}.stat-delta.is-down{color:var(--color-error)}@media (width<=599px){.stat-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card{padding:var(--space-4)}.stat-icon{margin-bottom:var(--space-2)}.stat-value{font-size:26px}}.dashboard-grid{gap:var(--space-6);grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);display:grid}@media (width<=1023px){.dashboard-grid{grid-template-columns:1fr}}.mini-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.mini-live{align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm);background:var(--color-surface-raised);border:1px solid var(--color-divider);display:flex}.mini-live-date{background:var(--color-primary-soft);width:64px;color:var(--color-primary-strong);border-radius:10px;flex-direction:column;flex:none;justify-content:center;align-items:center;padding:6px 0;display:flex}:root[data-theme=dark] .mini-live-date{color:var(--color-primary)}.mini-live-date .mono{font-size:15px;font-weight:600}.quick-actions{gap:var(--space-2);flex-direction:column;display:flex}.quick-action{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3);border-radius:var(--radius-sm);border:1px dashed var(--color-divider);text-align:left;background:0 0;font-size:14.5px;font-weight:600;transition:background-color .15s,border-color .15s,transform .15s;display:flex}.quick-action:hover{background:var(--color-surface-raised);border-style:solid;border-color:var(--color-text-tertiary);transform:translate(2px)}.quick-action-icon{border-radius:11px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.quick-action-icon.tone-primary{background:var(--color-primary-soft);color:var(--color-primary)}.quick-action-icon.tone-coral{background:var(--color-coral-soft);color:var(--color-coral)}.quick-action-icon.tone-secondary{background:var(--color-success-soft);color:var(--color-secondary)}.course-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(270px,1fr));display:grid}.course-card{border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);transition:transform .25s var(--ease-out), box-shadow .25s var(--ease-out);flex-direction:column;display:flex;overflow:hidden}.course-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.course-card-media{aspect-ratio:16/9;background:0 0;border:none;padding:0;display:block;position:relative;overflow:hidden}.course-card-media .course-thumb{position:absolute;inset:0}.course-card-status{position:absolute;top:10px;left:10px}.course-card-status .badge{background:var(--color-surface);box-shadow:var(--shadow-sm)}.course-card-body{padding:var(--space-4) var(--space-4) var(--space-3);flex-direction:column;flex:1;gap:4px;display:flex}.course-card-title{letter-spacing:-.01em;margin:2px 0 0;font-size:16.5px;font-weight:700;line-height:1.3}.course-card-prices{gap:var(--space-5);margin-top:var(--space-2);display:flex}.course-card-prices>span{flex-direction:column;display:flex}.course-card-prices strong{font-variant-numeric:tabular-nums;font-size:15px}.course-card-meta{gap:var(--space-4);margin-top:var(--space-2);color:var(--color-text-secondary);font-size:12.5px;display:flex}.course-card-actions{gap:var(--space-2);padding:0 var(--space-4) var(--space-4);display:flex}.course-card-actions .btn{flex:1}.course-thumb{object-fit:cover;width:100%;height:100%;display:block}.course-thumb.is-placeholder{color:var(--thumb-color);background:radial-gradient(circle at 20% 20%, color-mix(in srgb, var(--thumb-color) 22%, transparent), transparent 55%), repeating-linear-gradient(-45deg, color-mix(in srgb, var(--thumb-color) 7%, transparent) 0 10px, transparent 10px 20px), color-mix(in srgb, var(--thumb-color) 10%, var(--color-surface));justify-content:center;align-items:center;display:flex}.course-hero{grid-template-columns:minmax(240px,360px) 1fr;display:grid;overflow:hidden}.course-hero-media{background:0 0;border:none;min-height:220px;padding:0;display:block;position:relative}.course-hero-media .course-thumb{position:absolute;inset:0}.course-hero-media-overlay{color:#fff;opacity:0;background:#0a0a1980;flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:13px;font-weight:600;transition:opacity .2s;display:flex;position:absolute;inset:0}.course-hero-media:hover .course-hero-media-overlay,.course-hero-media:focus-visible .course-hero-media-overlay{opacity:1}.course-hero-body{gap:var(--space-2);padding:var(--space-6);flex-direction:column;min-width:0;display:flex}.course-hero-prices{gap:var(--space-6);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.course-hero-prices>span{flex-direction:column;display:flex}.course-hero-prices strong{font-variant-numeric:tabular-nums;font-size:17px}.course-hero-actions{margin-top:var(--space-3)}@media (width<=767px){.course-hero{grid-template-columns:1fr}.course-hero-media{aspect-ratio:16/9;min-height:0}}.checklist{gap:var(--space-2) var(--space-4);margin:var(--space-2) 0 0;color:var(--color-text-tertiary);flex-wrap:wrap;padding:0;font-size:13px;list-style:none;display:flex}.checklist li{align-items:center;gap:6px;display:inline-flex}.checklist li.is-ok{color:var(--color-success)}.chapter{border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);transition:box-shadow .15s,border-color .15s,opacity .15s}.chapter[data-drop-target=true]{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 18%, transparent)}.chapter[data-dragging=true]{opacity:.5}.chapter-header{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-divider);background:var(--color-surface-raised);border-radius:var(--radius-md) var(--radius-md) 0 0;flex-wrap:wrap;display:flex}.chapter-num,.chapter-meta{flex:none}.chapter-empty{padding:var(--space-4) var(--space-5);margin:0}.chapter-footer{padding:var(--space-2) var(--space-3) var(--space-3)}.drag-handle{color:var(--color-text-tertiary);cursor:grab;border-radius:6px;padding:4px 2px;display:inline-flex}.drag-handle:hover{color:var(--color-text-primary);background:var(--color-neutral-soft)}.drag-handle:active{cursor:grabbing}.inline-edit{text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:6px;min-width:0;max-width:100%;margin-left:-8px;padding:4px 8px;font-weight:600;display:inline-flex}.inline-edit:hover{border-color:var(--color-divider);background:var(--color-surface)}.inline-edit-icon{opacity:0;color:var(--color-text-tertiary);flex:none;transition:opacity .15s}.inline-edit:hover .inline-edit-icon,.inline-edit:focus-visible .inline-edit-icon{opacity:1}.inline-edit-input{border:1px solid var(--color-primary);background:var(--color-surface);min-width:0;box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 16%, transparent);border-radius:8px;outline:none;margin-left:-8px;padding:4px 8px;font-weight:600}.chapter-title{flex:200px;font-size:16px}.lesson-title{font-size:14.5px}.lesson-list{padding:var(--space-2);flex-direction:column;gap:2px;margin:0;list-style:none;display:flex}.lesson-row{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-xs);border:1px solid #0000;grid-template-columns:auto auto minmax(0,1fr) auto auto;transition:background-color .15s,border-color .15s;display:grid}.lesson-row:hover{background:var(--color-surface-raised)}.lesson-row[data-drop-target=true]{border-color:var(--color-primary);background:var(--color-primary-soft)}.lesson-row[data-dragging=true]{opacity:.5}.lesson-index{text-align:center;width:22px;color:var(--color-text-tertiary);font-size:13px}.lesson-main{flex-direction:column;min-width:0;display:flex}.lesson-video{align-items:center;gap:var(--space-2);justify-content:flex-end;min-width:190px;display:flex}.lesson-actions{gap:2px;display:flex}.video-status{white-space:nowrap;align-items:center;gap:6px;font-size:12.5px;font-weight:600;display:inline-flex}.video-status.is-ready{color:var(--color-success)}.video-status.is-missing{color:var(--color-text-tertiary)}.video-status.is-processing{color:var(--color-primary)}.video-progress{flex-direction:column;gap:4px;width:140px;display:flex}@media (width<=767px){.lesson-row{grid-template-columns:auto auto minmax(0,1fr)}.lesson-video{grid-column:3;justify-content:flex-start;min-width:0}.lesson-actions{grid-column:3}}.add-chapter{gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);border:1.5px dashed var(--color-divider);display:flex}.add-chapter-input{min-width:0;padding:0 var(--space-2);background:0 0;border:none;outline:none;flex:1;font-size:15px}.live-card{gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);display:flex}.live-card.is-live{border-color:color-mix(in srgb, var(--color-success) 45%, var(--color-border));box-shadow:0 0 0 3px var(--color-success-soft)}.live-card.is-cancelled,.live-card.is-ended{background:var(--color-surface-raised)}.live-card-date{background:var(--color-ink);width:64px;height:70px;color:var(--color-on-ink);border-radius:14px;flex-direction:column;flex:none;justify-content:center;align-items:center;display:flex}.live-card.is-cancelled .live-card-date,.live-card.is-ended .live-card-date{background:var(--color-surface-variant);color:var(--color-text-secondary)}.live-card-day{font-family:var(--font-display);font-size:26px;font-weight:600;line-height:1}.live-card-month{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;font-size:11px}.live-card-body{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.live-card-meta{gap:4px var(--space-4);color:var(--color-text-secondary);flex-wrap:wrap;font-size:13px;display:flex}.live-actions{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}@media (width<=599px){.live-card-date{width:52px;height:58px}.live-card-day{font-size:21px}}.platform{color:var(--color-text-secondary);align-items:center;gap:5px;font-size:12.5px;font-weight:600;display:inline-flex}.platform-zoom{color:#2d8cff}.platform-google_meet{color:#0f9d58}.platform-youtube{color:#ff3b30}.people-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.people-list li{align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-divider);display:flex}.people-list li:last-child{border-bottom:none}.calendar{gap:var(--space-4);flex-direction:column;display:flex}.calendar-toolbar{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.calendar-title{font-family:var(--font-display);text-transform:capitalize;letter-spacing:-.01em;margin:0;font-size:22px;font-weight:600}.month-grid{border-top:1px solid var(--color-divider);border-left:1px solid var(--color-divider);border-radius:var(--radius-sm);grid-template-columns:repeat(7,minmax(0,1fr));display:grid;overflow:hidden}.month-weekday{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);border-right:1px solid var(--color-divider);border-bottom:1px solid var(--color-divider);background:var(--color-surface-raised);padding:8px;font-size:11px}.month-cell{border-right:1px solid var(--color-divider);border-bottom:1px solid var(--color-divider);min-width:0;min-height:112px;padding:6px}.month-cell.is-outside{background:color-mix(in srgb, var(--color-surface-variant) 45%, transparent)}.month-cell.is-outside .month-day{color:var(--color-text-tertiary)}.month-day{border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;font-weight:600;display:inline-flex}.month-cell.is-today .month-day{background:var(--color-primary);color:var(--color-on-primary)}.month-events{flex-direction:column;gap:3px;margin-top:4px;display:flex}.cal-event{--ev:var(--color-info);border:none;border-left:3px solid var(--ev);background:color-mix(in srgb, var(--ev) 13%, transparent);text-align:left;border-radius:5px;align-items:center;gap:5px;width:100%;min-width:0;padding:3px 6px;font-size:12px;font-weight:600;display:flex}.cal-event:hover{background:color-mix(in srgb, var(--ev) 22%, transparent)}.cal-event .mono{color:var(--color-text-secondary);flex:none;font-size:11px}.cal-event.is-live{--ev:var(--color-success)}.cal-event.is-ended{--ev:var(--color-text-tertiary)}.cal-event.is-cancelled{--ev:var(--color-error);text-decoration:line-through}.cal-more{color:var(--color-primary);text-align:left;background:0 0;border:none;padding:2px 6px;font-size:12px;font-weight:600}.calendar-legend{gap:var(--space-4);color:var(--color-text-secondary);flex-wrap:wrap;font-size:12.5px;display:flex}.legend-item{align-items:center;gap:6px;display:inline-flex}.legend-dot{background:var(--dot,var(--color-info));border-radius:3px;width:10px;height:10px}.legend-item.is-live,.legend-item.is-free{--dot:var(--color-success)}.legend-item.is-ended{--dot:var(--color-text-tertiary)}.legend-item.is-cancelled{--dot:var(--color-error)}.legend-item.is-booked,.legend-item.is-scheduled{--dot:var(--color-info)}@media (width<=767px){.month-cell{min-height:72px;padding:3px}.cal-event{gap:0;padding:2px 3px;font-size:0}.cal-event .mono{font-size:10px}}.week-scroll{overflow-x:auto}.week-grid{grid-template-columns:56px repeat(7,minmax(110px,1fr));grid-template-rows:auto calc(var(--hours) * var(--hour-px));min-width:820px;display:grid}.week-corner{border-bottom:1px solid var(--color-divider)}.week-day-head{border-bottom:1px solid var(--color-divider);text-transform:capitalize;flex-direction:column;align-items:center;padding:6px 0 10px;display:flex}.week-day-num{font-family:var(--font-display);font-size:22px;font-weight:600;line-height:1.1}.week-day-head.is-today .week-day-num{color:var(--color-primary)}.week-hours{flex-direction:column;display:flex}.week-hour-label{height:var(--hour-px);color:var(--color-text-tertiary);text-align:right;padding-right:8px;font-size:11px;transform:translateY(-7px)}.week-hours .week-hour-label:first-child{transform:none}.week-col{border-left:1px solid var(--color-divider);position:relative}.week-col.is-today{background:color-mix(in srgb, var(--color-primary) 4%, transparent)}.week-cell{height:var(--hour-px);border-bottom:1px solid color-mix(in srgb, var(--color-divider) 70%, transparent)}.slot-block{--sl:var(--color-success);border:none;border-left:3px solid var(--sl);background:color-mix(in srgb, var(--sl) 16%, var(--color-surface));text-align:left;border-radius:7px;flex-direction:column;gap:1px;min-width:0;padding:3px 7px;font-size:11.5px;font-weight:600;transition:transform .15s,box-shadow .15s;display:flex;position:absolute;left:4px;right:4px;overflow:hidden}.slot-block:hover{box-shadow:var(--shadow-md);z-index:2;transform:translateY(-1px)}.slot-block .mono{color:var(--color-text-secondary);font-size:10.5px}.slot-block.is-booked{--sl:var(--color-info)}.slot-block.is-cancelled{--sl:var(--color-text-tertiary);opacity:.75}.app-content:has(.messages-page){padding:0;overflow:hidden}.messages-page{grid-template-columns:320px minmax(0,1fr);height:100%;min-height:0;display:grid}.conv-list{border-right:1px solid var(--color-border);background:var(--color-surface);flex-direction:column;min-height:0;display:flex}.conv-list-head{gap:var(--space-3);padding:var(--space-5) var(--space-4) var(--space-3);flex-direction:column;display:flex}.conv-list-body{padding:0 var(--space-2) var(--space-3);flex:1;overflow-y:auto}.conv-item{align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm);transition:background-color .15s;display:flex}.conv-item:hover{background:var(--color-surface-raised)}.conv-item.is-active{background:var(--color-primary-soft)}.conv-name{font-size:14.5px;font-weight:600}.conv-item.is-unread .conv-name{font-weight:800}.conv-date{color:var(--color-text-tertiary);flex:none;font-size:11.5px}.conv-preview{color:var(--color-text-secondary);font-size:13px}.conv-item.is-unread .conv-preview{color:var(--color-text-primary);font-weight:600}.chat-pane{flex-direction:column;justify-content:center;min-width:0;min-height:0;display:flex}.chat{flex-direction:column;height:100%;min-height:0;display:flex}.chat-head{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--color-border);background:var(--color-surface);display:flex}.chat-back{display:none}.chat-scroll{padding:var(--space-4) var(--space-5);flex-direction:column;flex:1;gap:4px;display:flex;overflow-y:auto}.chat-day{margin:var(--space-3) 0 var(--space-2);justify-content:center;display:flex}.chat-day span{border-radius:var(--radius-pill);background:var(--color-surface-variant);color:var(--color-text-secondary);text-transform:capitalize;padding:3px 12px;font-size:12px;font-weight:600}.bubble-row{display:flex}.bubble-row.is-mine{justify-content:flex-end}.bubble{background:var(--color-surface);border:1px solid var(--color-border);max-width:min(72%,560px);box-shadow:var(--shadow-sm);border-radius:16px 16px 16px 5px;padding:8px 12px 6px;position:relative}.bubble-row.is-mine .bubble{background:var(--color-primary);color:var(--color-on-primary);border-color:#0000;border-radius:16px 16px 5px}.bubble-text{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:14.5px;line-height:1.45}.bubble-time{text-align:right;opacity:.6;margin-top:2px;font-size:10.5px;display:block}.bubble.is-media{padding:5px}.bubble.is-media .bubble-text{padding:4px 7px 0}.bubble.is-media .bubble-time{padding:0 7px 2px}.bubble-image img{border-radius:12px;max-height:280px}.bubble-file{background:color-mix(in srgb, currentColor 8%, transparent);border-radius:12px;align-items:center;gap:10px;max-width:280px;padding:10px 12px;font-size:14px;font-weight:600;display:flex}.typing-bubble{gap:4px;padding:12px 14px;display:inline-flex}.typing-bubble span{background:var(--color-text-tertiary);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite typing}.typing-bubble span:nth-child(2){animation-delay:.15s}.typing-bubble span:nth-child(3){animation-delay:.3s}@keyframes typing{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.message-input{align-items:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-border);background:var(--color-surface);display:flex}.message-input textarea{resize:none;border:1px solid var(--color-border);background:var(--color-surface-raised);border-radius:20px;outline:none;flex:1;min-width:0;padding:9px 14px;font-size:14.5px;line-height:1.45}.message-input textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 14%, transparent)}.send-btn:not(:disabled){background:var(--color-primary);color:var(--color-on-primary)}.send-btn:not(:disabled):hover{background:var(--color-primary-strong)}@media (width<=767px){.messages-page{grid-template-columns:1fr}.messages-page.has-active .conv-list,.messages-page:not(.has-active) .chat-pane{display:none}.chat-back{display:inline-flex}.chat-head{padding:var(--space-2) var(--space-3)}.chat-scroll{padding:var(--space-3)}.bubble{max-width:85%}}.contract-card{gap:var(--space-5);flex-direction:column;display:flex}.contract-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.contract-rate{align-items:baseline;gap:var(--space-2);padding:var(--space-4) var(--space-5);border-radius:var(--radius-sm);background:var(--color-ink);color:var(--color-on-ink);flex-wrap:wrap;display:flex}.contract-rate .text-secondary{color:var(--color-on-ink-muted)}.contract-rate-amount{font-family:var(--font-display);letter-spacing:-.02em;font-size:36px;font-weight:600}.contract-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:0;display:grid}.contract-grid dt{color:var(--color-text-secondary);align-items:center;gap:6px;margin-bottom:4px;font-size:12.5px;font-weight:600;display:flex}.contract-grid dd{flex-direction:column;gap:2px;margin:0;font-weight:600;display:flex}.rib{color:var(--color-text-secondary);letter-spacing:.04em;font-size:13px}.identity-card{align-items:center;gap:var(--space-6);flex-wrap:wrap;display:flex}.identity-meta{gap:var(--space-2) var(--space-5);color:var(--color-text-secondary);flex-wrap:wrap;font-size:14px;display:flex}.identity-meta .rating{color:var(--color-tertiary);font-weight:700}.avatar-upload{background:0 0;border:none;border-radius:50%;flex:none;padding:0;position:relative}.avatar-upload-overlay{color:#fff;opacity:0;background:#0a0a1973;border-radius:50%;justify-content:center;align-items:center;transition:opacity .15s;display:flex;position:absolute;inset:0}.avatar-upload:hover .avatar-upload-overlay,.avatar-upload:focus-visible .avatar-upload-overlay{opacity:1}.profile-grid{gap:var(--space-6);grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;display:grid}@media (width<=1023px){.profile-grid{grid-template-columns:1fr}}.verification{gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-sm);align-items:flex-start;display:flex}.verification-icon{border-radius:13px;flex:none;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.verification.is-pending{background:var(--color-warning-soft)}.verification.is-pending .verification-icon{background:var(--color-warning);color:var(--color-on-warning)}.verification.is-under_review{background:var(--color-info-soft)}.verification.is-under_review .verification-icon{background:var(--color-info);color:#fff}.verification.is-approved{background:var(--color-success-soft)}.verification.is-approved .verification-icon{background:var(--color-success);color:var(--color-on-success)}.verification.is-rejected{background:var(--color-error-soft)}.verification.is-rejected .verification-icon{background:var(--color-error);color:var(--color-on-error)}.doc-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.doc-list li{align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-divider);display:flex}.doc-list li:last-child{border-bottom:none}.doc-icon{background:var(--color-surface-variant);width:36px;height:36px;color:var(--color-text-secondary);border-radius:10px;flex:none;justify-content:center;align-items:center;display:inline-flex}.setting-row{align-items:center;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--color-divider);flex-wrap:wrap;display:flex}.setting-row:last-of-type{border-bottom:none}.setting-icon{background:var(--color-surface-variant);width:38px;height:38px;color:var(--color-text-secondary);border-radius:11px;flex:none;justify-content:center;align-items:center;display:inline-flex}.call-page{z-index:300;color:#fff;background:#000;flex-direction:column;display:flex;position:fixed;inset:0}.call-page.is-centered{background:var(--color-background);color:var(--color-text-primary);justify-content:center;align-items:center}.call-bar{align-items:center;gap:var(--space-3);min-height:56px;padding:8px 12px;display:flex}.call-bar .icon-btn{color:#fff;background:#ffffff1f}.call-bar .icon-btn:hover{background:#ffffff38}.call-bar .title-medium{color:#fff}.call-bar .body-small{color:#ffffffa6}.call-frame{flex:1;position:relative}.call-frame iframe{border:none;width:100%;height:100%;position:absolute;inset:0}.call-loading{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-6);text-align:center;background:#000;flex-direction:column;display:flex;position:absolute;inset:0}.call-loading .body-large{color:#fff}.call-loading .body-small{color:#ffffffb3;max-width:360px}.route-error-details{padding:var(--space-3);border-radius:var(--radius-xs);background:var(--color-surface-variant);font-family:var(--font-mono);white-space:pre-wrap;overflow-wrap:anywhere;color:var(--color-text-secondary);margin:0;font-size:12px}.quick-action:disabled{opacity:.5;cursor:not-allowed;border-style:dashed;border-color:var(--color-divider);background:0 0;transform:none}.file-drop{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);border:1.5px dashed var(--color-divider);background:var(--color-surface-raised);transition:border-color .15s,background-color .15s;display:flex}.file-drop:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-primary-soft)}.file-drop.has-error{border-color:var(--color-error)}:root{--font-code:"DM Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--font-mono:var(--font-body)}body{background-image:none}.eyebrow,.sidebar-label,.sidebar-tag,.palette-group,.header-title,.live-card-month,.month-weekday,.table th{font-family:var(--font-body);text-transform:none;letter-spacing:0}.eyebrow{font-size:13px;font-weight:600;display:inline-block}.eyebrow:first-letter,.header-title:first-letter,.sidebar-label:first-letter,.palette-group:first-letter{text-transform:uppercase}.sidebar-label,.sidebar-tag,.palette-group{font-size:12px;font-weight:600}.header-title{font-size:14px;font-weight:600}.table th{font-size:12.5px;font-weight:600}.mono,.eyebrow{font-variant-numeric:tabular-nums}.md-code,.kbd,.route-error-details{font-family:var(--font-code)}:is(h1,h2,h3,.display-large,.display-medium,.display-small,.headline-large,.headline-medium,.headline-small,.page-title) em,.inbox-header h1 em{font-style:normal;font-weight:inherit;color:inherit}
