@import "https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;600;700&family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@500;600;700&display=swap";:root{--paper:#faf9f7;--surface:#fff;--surface-muted:#f1eee9;--ink:#1c1917;--stone:#78716c;--line:#e7e2dc;--brand:#e8453c;--brand-deep:#b23931;--brand-tint:#fdecea;--ink-deep:#16130f;--live:#0f8a5f;--live-tint:#e4f4ec;--color-bg:var(--paper);--color-surface:var(--surface);--color-surface-muted:var(--surface-muted);--color-border:var(--line);--color-text:var(--ink);--color-text-muted:var(--stone);--color-primary:var(--brand);--color-primary-contrast:#fff;--color-danger:#b42318;--color-danger-bg:#fce9e7;--color-success:#166534;--color-success-bg:#e6f4ea;--color-warning:#92660b;--color-warning-bg:#fdf3e4;--radius-sm:6px;--radius:12px;--radius-lg:16px;--shadow-card:0 1px 2px #1c19170a, 0 6px 16px -4px #1c191714;--shadow-card-hover:0 2px 4px #1c19170d, 0 10px 24px -6px #1c19171f;--font-display:"Space Grotesk", system-ui, sans-serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "SFMono-Regular", Consolas, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font-body);background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.01em}button,input,select{font-family:inherit}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}.page-loading{height:100vh;color:var(--color-text-muted);justify-content:center;align-items:center;font-size:14px;display:flex}.login-page{background:radial-gradient(600px circle at 15% 20%, var(--brand-tint), transparent 60%), var(--color-bg);justify-content:center;align-items:center;min-height:100vh;padding:16px;display:flex}.login-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;max-width:380px;box-shadow:var(--shadow-card);flex-direction:column;gap:16px;padding:36px 32px;display:flex}.login-card h1{margin:0;font-size:22px;font-weight:700}.login-card__subtitle{color:var(--color-text-muted);margin:-8px 0 0;font-size:14px}.auth-link{color:var(--brand-deep);text-underline-offset:3px;font-size:13px;font-weight:600}.app-shell{min-height:100vh;display:flex}.app-nav{background:var(--color-bg);border-right:1px solid var(--color-border);flex-direction:column;flex-shrink:0;width:252px;padding:20px 0 16px;display:flex}.app-nav__brand{border-bottom:1px solid var(--color-border);align-items:center;gap:10px;margin-bottom:6px;padding:0 18px 18px;display:flex}.app-nav__brand-mark{background:var(--brand);color:#fff;width:30px;height:30px;font-family:var(--font-display);border-radius:9px;flex:none;justify-content:center;align-items:center;font-size:16px;font-weight:700;display:inline-flex}.app-nav__brand-text{font-family:var(--font-display);color:var(--ink);flex-direction:column;font-size:15px;font-weight:700;line-height:1.15;display:flex}.app-nav__brand-text small{font-family:var(--font-body);letter-spacing:.02em;color:var(--color-text-muted);font-size:11px;font-weight:500}.app-nav__sections{flex-direction:column;flex:1;gap:18px;padding-top:12px;display:flex;overflow-y:auto}.app-nav__section{flex-direction:column;gap:2px;display:flex}.app-nav__section-title{font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);margin:0 0 6px;padding:0 18px;font-size:10px;font-weight:700}.org-switcher{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);gap:5px;margin:12px 14px 2px;padding:10px 12px;display:grid}.org-switcher__label{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);font-size:10px;font-weight:700}.org-switcher__select{width:100%;color:var(--color-text);background:0 0;border:none;padding:0;font-size:14px;font-weight:600}.app-nav__link{color:var(--color-text-muted);align-items:center;gap:10px;padding:9px 18px;font-size:14px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:flex;position:relative}.nav-icon{opacity:.75;flex:none}.app-nav__link:hover{background:var(--color-surface-muted);color:var(--color-text)}.app-nav__link--active{background:var(--brand-tint);color:var(--brand-deep);font-weight:600}.app-nav__link--active .nav-icon{opacity:1}.app-nav__link--active:before{content:"";background:var(--brand);border-radius:0 3px 3px 0;width:3px;position:absolute;top:6px;bottom:6px;left:0}.app-nav__account{border-top:1px solid var(--color-border);flex-direction:column;gap:8px;margin:0 14px;padding-top:14px;display:flex}.app-nav__account-identity{align-items:center;gap:10px;min-width:0;display:flex}.app-nav__avatar{background:var(--color-surface-muted);border:1px solid var(--color-border);width:30px;height:30px;color:var(--color-text);border-radius:999px;flex:none;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.app-nav__account-text{flex-direction:column;min-width:0;display:flex}.app-nav__account-name{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.app-nav__account-email{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.app-nav__role{background:var(--color-surface-muted);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);border-radius:999px;align-self:flex-start;padding:2px 8px;font-size:10px;font-weight:700}.app-content{flex:1;min-width:0;max-width:1180px;padding:36px 44px}.page{flex-direction:column;display:flex}.page__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:8px;display:flex}.page__header h1{margin:0;font-size:24px;font-weight:700}.page__meta{color:var(--color-text-muted);margin:0 0 20px;font-size:14px}.section{margin-top:32px}.section h2{letter-spacing:.02em;margin:0 0 12px;font-size:15px;font-weight:700}.field{flex-direction:column;gap:5px;font-size:14px;display:flex}.field span{color:var(--color-text-muted);letter-spacing:.02em;font-size:12px;font-weight:600}.field input,.field select{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);padding:9px 11px;font-size:14px;transition:border-color .15s}.field input:hover,.field select:hover{border-color:var(--stone)}.field input:focus-visible,.field select:focus-visible{border-color:var(--brand)}.field input:disabled{background:var(--color-surface-muted);color:var(--color-text-muted)}.field-group{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);margin:0 0 12px;padding:12px 14px}.field-group[disabled]{opacity:.6}.field-group>summary{cursor:pointer;color:var(--color-text);font-size:13px;font-weight:600}fieldset.field-group{flex-direction:column;gap:10px;display:flex}fieldset.field-group>legend{padding:0 4px;font-size:13px;font-weight:600}.filter-bar{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:flex-end;gap:12px;margin:16px 0;padding:14px 16px;display:flex}.password-input{display:flex;position:relative}.password-input input{flex:1;padding-right:36px}.password-input__toggle{width:32px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;top:0;bottom:0;right:0}.password-input__toggle:hover{color:var(--color-text)}.checkbox-field{align-items:center;gap:8px;font-size:14px;display:flex}.inline-options{color:var(--color-text);gap:16px;font-size:14px;display:flex}.inline-options label{align-items:center;gap:6px;font-weight:400;display:flex}.inline-form,.stacked-form{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);width:100%;max-width:440px;box-shadow:var(--shadow-card);flex-direction:column;gap:12px;margin:16px 0;padding:18px;display:flex}.action-row{flex-wrap:wrap;gap:8px;display:flex}.action-row--spaced{justify-content:center;margin-top:12px}.form-error{color:var(--color-danger);margin:0;font-size:13px}.form-success{color:var(--color-success);background:var(--color-success-bg);border-radius:var(--radius-sm);margin:0;padding:8px 12px;font-size:13px}.form-hint{color:var(--color-text-muted);margin:0;font-size:13px}.data-warning{color:var(--color-warning);background:var(--color-warning-bg);border-radius:var(--radius-sm);border:1px solid #f0c976;padding:10px 12px}.button{border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;padding:9px 16px;font-size:14px;font-weight:600;transition:background .15s,border-color .15s,color .15s,transform 50ms}.button:active:not(:disabled){transform:translateY(1px)}.button--primary{background:var(--brand);color:var(--color-primary-contrast)}.button--primary:hover:not(:disabled){background:var(--brand-deep)}.button--secondary{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text)}.button--secondary:hover:not(:disabled){border-color:var(--stone)}.button--danger{background:var(--color-danger-bg);color:var(--color-danger)}.button--danger:hover:not(:disabled){background:#f7d9d4}.button--ghost{color:var(--color-text-muted);text-align:left;background:0 0;border:none;padding:6px 0;font-weight:500}.button--ghost:hover:not(:disabled){color:var(--color-text)}.button--block{text-align:center;width:100%;display:block}.button:disabled{opacity:.55;cursor:not-allowed}a.button{text-align:center;text-decoration:none;display:inline-block}.data-table{border-collapse:collapse;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);width:100%;box-shadow:var(--shadow-card);font-size:14px;overflow:hidden}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--color-border);padding:11px 14px}.data-table tbody tr:hover{background:var(--color-surface-muted)}.data-table tbody tr:last-child td{border-bottom:none}.data-table th{color:var(--color-text-muted);letter-spacing:.04em;text-transform:uppercase;background:var(--color-surface-muted);font-size:11px;font-weight:600}.data-table__empty{text-align:center;color:var(--color-text-muted)}.simple-list{margin:0;padding:0;list-style:none}.simple-list li{border-bottom:1px solid var(--color-border);padding:8px 0;font-size:14px}.simple-list__empty{color:var(--color-text-muted)}.brand-row{align-items:center;gap:12px;display:flex}.brand-row__logo{border-radius:var(--radius-sm);object-fit:contain;background:var(--color-surface-muted);border:1px solid var(--color-border);flex:none;width:32px;height:32px}.brand-row__logo--empty{display:inline-block}.brand-row__name{font-weight:600}.brand-row__hint{color:var(--color-text-muted);font-size:12px}.brand-row__upload{cursor:pointer;margin-left:auto}.entitlement-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.badge{background:var(--color-surface-muted);color:var(--color-text-muted);border-radius:999px;align-items:center;gap:5px;padding:3px 10px 3px 3px;font-size:12px;font-weight:600;display:inline-flex}.badge--active{background:var(--color-success-bg);color:var(--color-success);padding:3px 10px}.badge--disabled{background:var(--color-surface-muted);color:var(--color-text-muted);padding:3px 10px}.badge--status-draft:before,.badge--status-submitted:before,.badge--status-approved:before,.badge--status-scheduled:before,.badge--status-active:before,.badge--status-completed:before,.badge--status-rejected:before,.badge--status-cancelled:before{width:15px;height:15px;font-family:var(--font-mono);background:#ffffffbf;border-radius:999px;justify-content:center;align-items:center;font-size:9px;font-weight:700;display:inline-flex}.badge--status-draft{background:var(--color-surface-muted);color:#57534e}.badge--status-draft:before{content:"1"}.badge--status-submitted{background:var(--color-warning-bg);color:var(--color-warning)}.badge--status-submitted:before{content:"2"}.badge--status-approved,.badge--status-scheduled{color:#2454c7;background:#eaf1fd}.badge--status-approved:before{content:"3"}.badge--status-scheduled:before{content:"4"}.badge--status-active{background:var(--color-success-bg);color:var(--color-success)}.badge--status-active:before{content:"5"}.badge--status-completed{color:#5b3db8;background:#efeafb}.badge--status-completed:before{content:"6"}.badge--status-rejected,.badge--status-cancelled{background:var(--brand-tint);color:var(--brand-deep)}.badge--status-rejected:before,.badge--status-cancelled:before{content:"✕";font-size:8px}.kpi-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin:12px 0;display:grid}.kpi-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:16px 18px}.kpi-card__value{font-family:var(--font-mono);font-size:24px;font-weight:700}.kpi-card__value--muted{font-family:var(--font-body);color:var(--color-text-muted);font-size:13px;font-weight:600}.kpi-card__label{letter-spacing:.02em;color:var(--color-text-muted);margin-top:6px;font-size:12px;font-weight:500}.chart-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-card);margin:12px 0;padding:18px}.chart-card .data-table{box-shadow:none;margin-top:16px}.table-scroll{overflow-x:auto}.table-scroll .data-table{min-width:640px}.drop-band{border-radius:var(--radius-lg);background:radial-gradient(680px circle at 88% -20%, #e8453c47, transparent 62%), var(--ink-deep);color:#fff;box-shadow:var(--shadow-card);margin:4px 0 8px;padding:26px 28px;position:relative;overflow:hidden}.drop-band__head{flex-direction:column;gap:10px;display:flex}.drop-band__eyebrow{letter-spacing:.14em;text-transform:uppercase;color:#ffffffdb;background:#ffffff1a;border-radius:999px;align-self:flex-start;align-items:center;gap:7px;padding:4px 10px;font-size:10px;font-weight:700;display:inline-flex}.drop-band__eyebrow--live{color:#8ee6bd;background:#0f8a5f38}.drop-band__pulse{background:#34d399;border-radius:999px;width:7px;height:7px;animation:2s ease-out infinite drop-pulse;box-shadow:0 0 #34d399b3}@keyframes drop-pulse{70%{box-shadow:0 0 0 7px #34d39900}to{box-shadow:0 0 #34d39900}}.drop-band__identity{flex-direction:column;gap:2px;display:flex}.drop-band__brand{letter-spacing:.04em;color:#fff9;font-size:12px;font-weight:600}.drop-band__name{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-size:22px;font-weight:600}.drop-band__clock{font-family:var(--font-mono);font-variant-numeric:tabular-nums;align-items:flex-end;gap:18px;margin:22px 0 16px;display:flex}.clock-segment{flex-direction:column;gap:4px;display:flex}.clock-segment__value{letter-spacing:-.02em;font-size:46px;font-weight:700;line-height:1}.clock-segment__unit{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:#ffffff80;font-size:10px;font-weight:600}.drop-band__progress{background:#ffffff24;border-radius:2px;height:2px;overflow:hidden}.drop-band__progress-fill{background:var(--brand);block-size:100%;transition:inline-size 1s linear;display:block}.drop-band__meta{color:#ffffff8c;margin:14px 0 0;font-size:12px}.drop-band--live{background:radial-gradient(680px circle at 88% -20%, #0f8a5f52, transparent 62%), var(--ink-deep)}.drop-band__live-figures{flex-wrap:wrap;gap:40px;margin:22px 0 0;display:flex}.drop-band__figure{flex-direction:column;gap:4px;display:flex}.drop-band__figure-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:40px;font-weight:700;line-height:1}.drop-band__figure-label{letter-spacing:.12em;text-transform:uppercase;color:#ffffff80;font-size:10px;font-weight:600}.drop-band--empty .drop-band__name{color:#fffc}.drop-band--empty .button--primary{margin-top:16px}.stat-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;display:grid}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:18px 20px;transition:box-shadow .15s,border-color .15s}.stat-card:hover{box-shadow:var(--shadow-card-hover)}.stat-card__value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:28px;font-weight:700;line-height:1.1}.stat-card--brand .stat-card__value{color:var(--brand-deep)}.stat-card--live .stat-card__value{color:var(--live)}.stat-card__label{color:var(--color-text);margin-top:8px;font-size:13px;font-weight:600}.stat-card__hint{color:var(--color-text-muted);margin-top:3px;font-size:12px}.dashboard-split{grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.chart-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-card);margin-top:32px;padding:20px}.dashboard-split .chart-panel{margin-top:0}.chart-panel h2{margin:0 0 16px}.pipeline{flex-direction:column;gap:9px;margin:0;padding:0;list-style:none;display:flex}.pipeline__row{grid-template-columns:minmax(96px,auto) 1fr auto;align-items:center;gap:10px;display:grid}.pipeline__row .badge{justify-self:start}.pipeline__bar{background:var(--color-surface-muted);border-radius:999px;block-size:6px;display:block;overflow:hidden}.pipeline__bar-fill{background:var(--stone);border-radius:999px;block-size:100%;display:block}.pipeline__bar-fill--active{background:var(--live)}.pipeline__bar-fill--scheduled,.pipeline__bar-fill--approved{background:#2454c7}.pipeline__bar-fill--submitted{background:var(--color-warning)}.pipeline__bar-fill--completed{background:#5b3db8}.pipeline__bar-fill--rejected,.pipeline__bar-fill--cancelled{background:var(--brand)}.pipeline__count{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--color-text-muted);text-align:right;min-width:32px;font-size:13px;font-weight:600}.empty-state{border:1px dashed var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text-muted);text-align:center;margin:0;padding:22px;font-size:14px}.loading-note{color:var(--color-text-muted);font-size:14px}@media (width<=1100px){.dashboard-split{grid-template-columns:minmax(0,1fr)}.dashboard-split .chart-panel+.chart-panel{margin-top:0}}@media (width<=860px){.app-shell{flex-direction:column}.app-nav{border-right:none;border-bottom:1px solid var(--color-border);flex-flow:wrap;align-items:center;gap:8px 16px;width:100%;padding:12px 16px}.app-nav__brand{border-bottom:none;border-right:1px solid var(--color-border);white-space:nowrap;order:1;margin-bottom:0;padding:0 16px 0 0}.app-nav__brand-text small{display:none}.org-switcher{order:2;margin:0;padding:4px 10px}.app-nav__account{border-top:none;flex-direction:row;flex:none;order:3;justify-content:flex-end;align-items:center;gap:12px;margin:0 0 0 auto;padding-top:0}.app-nav__account-email,.app-nav__role{display:none}.app-nav__sections{flex-flow:wrap;flex:0 0 100%;order:4;gap:4px;padding-top:0;overflow:visible}.app-nav__section{flex-flow:wrap;gap:4px}.app-nav__section-title{display:none}.app-nav__link{border-radius:var(--radius-sm);white-space:nowrap;padding:8px 12px}.app-nav__link--active:before{display:none}.app-content{max-width:100%;padding:20px 16px}}@media (width<=640px){.page__header{flex-direction:column;align-items:flex-start}.action-row{width:100%}.action-row .button{flex:auto}.data-table{white-space:nowrap;display:block;overflow-x:auto}.table-scroll .data-table{min-width:0}.kpi-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.stat-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.drop-band{padding:20px}.drop-band__clock{gap:12px}.clock-segment__value{font-size:32px}.drop-band__figure-value{font-size:30px}.drop-band__live-figures{gap:24px}}
