:root{--bg: #f5f6f8;--surface: #ffffff;--surface-2: #f9fafb;--ink: #101828;--ink-2: #344054;--muted: #667085;--subtle: #98a2b3;--line: #e4e7ec;--line-strong: #d0d5dd;--primary: #c8161d;--primary-hover: #a51218;--primary-soft: #fdeceb;--primary-ring: rgba(200, 22, 29, .16);--gold: #f2b705;--graphite: #17191f;--graphite-line: rgba(255, 255, 255, .08);--fire: #b3131a;--fire-deep: #8a0e13;--fire-line: rgba(255, 255, 255, .14);--success: #067647;--success-soft: #ecfdf3;--success-line: #abefc6;--warning: #b54708;--warning-soft: #fffaeb;--warning-line: #fedf89;--danger: #b42318;--danger-soft: #fef3f2;--danger-line: #fecdca;--info: #175cd3;--info-soft: #eff8ff;--panel: var(--surface);--green: var(--success);--red: var(--danger);--amber: var(--warning);--blue: var(--info);--radius-sm: 6px;--radius: 8px;--radius-lg: 12px;--shadow-xs: 0 1px 2px rgba(16, 24, 40, .05);color:var(--ink);background:var(--bg);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-feature-settings:"cv11","ss01";font-size:14px;line-height:1.5;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}a{color:var(--primary);font-weight:500;text-decoration:none}a:hover{color:var(--primary-hover);text-decoration:underline;text-underline-offset:3px}h1{color:var(--ink);font-size:24px;font-weight:600;letter-spacing:-.015em;line-height:1.25;margin:4px 0 0;max-width:860px}h2{align-items:center;color:var(--ink);display:flex;font-size:15px;font-weight:600;gap:8px;letter-spacing:-.005em;margin:0 0 16px}h2 svg{color:var(--muted)}h3{color:var(--ink);font-size:14px;font-weight:600;margin:0 0 10px}small{color:var(--muted);font-size:12px}button{align-items:center;background:var(--primary);border:1px solid var(--primary);border-radius:var(--radius);box-shadow:var(--shadow-xs);color:#fff;cursor:pointer;display:inline-flex;flex:0 0 auto;font-size:14px;font-weight:600;gap:8px;justify-content:center;justify-self:start;line-height:1.2;max-width:100%;min-height:38px;min-width:0;padding:8px 16px;text-align:center;transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease;white-space:normal;width:fit-content}button:hover{background:var(--primary-hover);border-color:var(--primary-hover)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{box-shadow:0 0 0 4px var(--primary-ring);outline:none}button:disabled{box-shadow:none;cursor:not-allowed;opacity:.45}button.secondary{background:var(--surface);border-color:var(--line-strong);color:var(--ink-2)}button.secondary:hover{background:var(--surface-2);border-color:var(--line-strong);color:var(--ink)}button.link{background:transparent;border:0;box-shadow:none;color:var(--ink);font-weight:600;min-height:auto;min-width:auto;padding:0}button.link:hover{background:transparent;color:var(--primary);text-decoration:underline;text-underline-offset:3px}.icon-button{background:transparent;border:1px solid var(--line);box-shadow:none;color:var(--muted);justify-self:center;min-height:36px;min-width:36px;padding:0;width:36px}.icon-button:hover{background:var(--surface-2);border-color:var(--line-strong);color:var(--ink)}.shell{display:grid;grid-template-columns:264px minmax(0,1fr);min-height:100vh}.sidebar{background:linear-gradient(180deg,var(--fire) 0%,var(--fire-deep) 100%);color:#fff;display:flex;flex-direction:column;height:100vh;padding:20px 14px;position:sticky;top:0}.sidebar-header{align-items:center;display:flex;gap:12px;justify-content:space-between;padding:0 6px 18px}.brand{align-items:center;display:flex;gap:12px;min-width:0}.brand-logo{background:#fff;border-radius:50%;box-shadow:0 0 0 2px #ffffffd9,0 2px 6px #00000040;flex:0 0 auto;height:40px;object-fit:contain;width:40px}.brand strong{display:block;font-size:15px;font-weight:700;letter-spacing:.01em}.brand span{color:#ffffffb8;display:block;font-size:11.5px;line-height:1.3;margin-top:2px}.brand-dark strong{color:var(--ink)}.brand-dark span{color:var(--muted)}.menu-button{background:#ffffff1f;border:1px solid var(--fire-line);box-shadow:none;display:none;flex:0 0 auto;min-height:38px;padding:0;width:38px}.menu-button:hover{background:#fff3;border-color:var(--fire-line)}.sidebar nav{border-top:1px solid var(--fire-line);display:grid;gap:2px;overflow-y:auto;padding-top:14px}.nav-group{color:#fff9;font-size:11px;font-weight:600;letter-spacing:.08em;margin:14px 10px 6px;text-transform:uppercase}.nav-group:first-child{margin-top:0}.sidebar a{align-items:center;border-radius:var(--radius);color:#ffffffdb;display:flex;font-size:14px;font-weight:500;gap:11px;padding:9px 10px;position:relative;text-decoration:none;transition:background-color .15s ease,color .15s ease}.sidebar a svg{color:#ffffffb8;flex:0 0 auto}.sidebar a:hover{background:#ffffff1a;color:#fff}.sidebar a.active{background:#ffffff2e;box-shadow:inset 0 0 0 1px #ffffff1f;color:#fff}.sidebar a.active svg{color:var(--gold)}.sidebar a.active:before{background:var(--gold);border-radius:0 3px 3px 0;bottom:8px;content:"";left:-14px;position:absolute;top:8px;width:3px}.sidebar-footer{align-items:center;border-top:1px solid var(--fire-line);display:flex;gap:10px;color:#ffffff9e;font-size:11.5px;line-height:1.45;margin-top:auto;padding:14px 10px 0}.sidebar-footer img{flex:0 0 auto;height:28px;width:28px}.workspace{min-width:0}.topbar{align-items:center;-webkit-backdrop-filter:saturate(180%) blur(8px);backdrop-filter:saturate(180%) blur(8px);background:#ffffffeb;border-bottom:1px solid var(--line);display:flex;gap:16px;justify-content:space-between;min-height:64px;padding:0 32px;position:sticky;top:0;z-index:10}.topbar-context{color:var(--muted);font-size:13px}.topbar-context strong{color:var(--ink);font-weight:600}.topbar-actions{align-items:center;display:flex;gap:12px}.user-chip{align-items:center;border-left:1px solid var(--line);display:flex;gap:10px;min-width:0;padding-left:14px}.avatar{align-items:center;background:linear-gradient(180deg,var(--fire) 0%,var(--fire-deep) 100%);border-radius:50%;color:#fff;display:inline-flex;flex:0 0 auto;font-size:13px;font-weight:600;height:34px;justify-content:center;width:34px}.user-chip strong{color:var(--ink);display:block;font-size:13.5px;font-weight:600;line-height:1.2}.user-chip>div>span{color:var(--muted);display:block;font-size:12px;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.connection{align-items:center;border:1px solid var(--line);border-radius:999px;color:var(--ink-2);display:inline-flex;font-size:12px;font-weight:500;gap:6px;padding:4px 10px}.connection:before{background:var(--success);border-radius:50%;box-shadow:0 0 0 3px var(--success-soft);content:"";height:7px;width:7px}.connection.offline:before{background:var(--danger);box-shadow:0 0 0 3px var(--danger-soft)}.page{margin:0 auto;max-width:1440px;padding:28px 32px 48px}.page-header{align-items:flex-end;display:flex;gap:20px;justify-content:space-between;margin-bottom:24px}.page-header>div>span{color:var(--primary);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.page-header>div>span a{color:var(--muted);font-weight:600}.page-header>div>span a:hover{color:var(--primary)}.catalog-section{margin-top:20px}.metric,.split>section,.admin-grid>section,.form-grid,.process-step,.catalog-section:not(.split):not(.metrics-grid):not(.process-grid){background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs)}.split{display:grid;gap:20px;grid-template-columns:repeat(2,minmax(0,1fr))}.split>section,.form-grid,.admin-grid>section,.catalog-section:not(.split):not(.metrics-grid):not(.process-grid){padding:22px 24px}.admin-grid{display:grid;gap:20px;grid-template-columns:repeat(2,minmax(0,1fr))}.metrics-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.metric{display:grid;gap:4px;padding:18px 20px;position:relative}.metric>span:first-child{color:var(--muted);display:block;font-size:13px;font-weight:500;padding-right:44px}.metric strong{color:var(--ink);display:block;font-size:28px;font-variant-numeric:tabular-nums;font-weight:600;letter-spacing:-.02em;line-height:1.2;margin-top:6px}.metric-icon{align-items:center;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink-2);display:inline-flex;height:36px;justify-content:center;position:absolute;right:16px;top:16px;width:36px}.metric.tone-alert .metric-icon{background:var(--primary-soft);border-color:var(--danger-line);color:var(--primary)}.metric.tone-alert strong{color:var(--primary)}.process-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.process-step{padding:16px}.process-step span{color:var(--muted);display:block;font-size:13px}.bar-list{display:grid;gap:14px}.bar-row{display:grid;gap:6px}.bar-row-label{align-items:baseline;display:flex;justify-content:space-between;gap:12px}.bar-row-label span{color:var(--ink-2);font-weight:500}.bar-row-label strong{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:600}.bar-track{background:var(--surface-2);border:1px solid var(--line);border-radius:999px;height:8px;overflow:hidden}.bar-fill{background:var(--primary);border-radius:999px;height:100%}.bar-fill.neutral{background:var(--ink-2)}.empty-state{color:var(--muted);padding:20px 0;text-align:center}.timeline-list,.table{display:grid;gap:0}.table p,.timeline-list p{align-items:center;border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:2px 16px;justify-content:space-between;margin:0;padding:12px 4px}.table p:last-child,.timeline-list p:last-child{border-bottom:0}.table p>:first-child{flex:1 1 220px}.table p>button.link:first-child{justify-content:flex-start;text-align:left}.table p:hover{background:var(--surface-2)}.table p strong,.timeline-list p strong{color:var(--ink);font-weight:600}.table p span,.timeline-list p span{color:var(--ink-2)}.table p small{flex-basis:100%}.table a{color:var(--ink)}.table a:hover{color:var(--primary)}.table p.selected{background:var(--primary-soft);border-radius:var(--radius-sm);box-shadow:inset 3px 0 0 var(--primary)}.timeline-list p{padding-left:22px;position:relative}.timeline-list p:before{background:var(--line-strong);border-radius:50%;content:"";height:8px;left:4px;position:absolute;top:19px;width:8px}.act{border-bottom:1px solid var(--line);display:grid;gap:3px;padding:14px 0}.act:first-child{padding-top:0}.act:last-child{border-bottom:0}.act strong{color:var(--ink);font-weight:600}.act span{color:var(--muted);font-size:13px}.act-body{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink-2);margin:6px 0 2px;padding:10px 12px;white-space:pre-wrap}.details{display:grid;gap:10px 20px;grid-template-columns:minmax(120px,max-content) 1fr;margin:0}.details dt{color:var(--muted);font-size:13px}.details dd{color:var(--ink);font-weight:500;margin:0}section>h2:not(:first-child),.details+h2{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}.details+h3{margin-top:20px}.status{align-items:center;border:1px solid transparent;border-radius:999px;display:inline-flex;font-size:12px;font-weight:600;gap:6px;letter-spacing:.01em;line-height:1.2;padding:3px 10px 3px 8px;white-space:nowrap}.status:before{background:currentColor;border-radius:50%;content:"";height:6px;width:6px}.status-ok{background:var(--success-soft);border-color:var(--success-line);color:var(--success)}.status-warn{background:var(--warning-soft);border-color:var(--warning-line);color:var(--warning)}.status-danger{background:var(--danger-soft);border-color:var(--danger-line);color:var(--danger)}.status-neutral{background:var(--surface-2);border-color:var(--line);color:var(--ink-2)}.tabs{border-bottom:1px solid var(--line);display:flex;gap:4px;margin-bottom:20px;overflow-x:auto}.tab{background:transparent;border:0;border-bottom:2px solid transparent;border-radius:0;box-shadow:none;color:var(--muted);flex:0 0 auto;font-weight:500;margin-bottom:-1px;min-height:42px;padding:8px 12px}.tab:hover{background:transparent;border-color:transparent;border-bottom-color:var(--line-strong);color:var(--ink)}.tab.active{border-bottom-color:var(--primary);color:var(--ink);font-weight:600}.form-grid{align-content:start;display:grid;gap:16px;grid-auto-rows:max-content}.split>section>label,.admin-grid>section>label{margin-bottom:16px}.split>section>label+button,.admin-grid>section>label+button{margin-top:4px}.split>section>button+button,.admin-grid>section>button+button{margin-left:8px;margin-top:8px}.form-stack{align-content:start;display:grid;gap:12px;grid-auto-rows:max-content}.form-stack.compact{align-items:center;grid-template-columns:1fr auto auto}.form-grid>label,.form-grid>fieldset,.form-stack>label,.form-stack>fieldset{justify-self:stretch;width:100%}.form-grid>button,.form-stack>button,.action-panel button,.inline-actions button,.table button{align-self:start;justify-self:start;width:fit-content}label{color:var(--ink-2);display:grid;font-size:13px;font-weight:500;gap:6px}input,textarea,select{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:var(--shadow-xs);color:var(--ink);font-size:14px;font-weight:400;min-height:40px;padding:9px 12px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}input::placeholder,textarea::placeholder{color:var(--subtle)}input:focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-ring);outline:none}input[type=file]{padding:7px 8px}input[type=file]::file-selector-button{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink-2);cursor:pointer;font:inherit;font-size:13px;font-weight:600;margin-right:10px;padding:4px 10px}textarea{line-height:1.5;min-height:104px;resize:vertical}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23667085' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:36px}select:disabled,input:disabled{background-color:var(--surface-2);color:var(--muted)}label.checkbox{align-items:center;color:var(--ink-2);display:flex;font-weight:400;gap:10px}label.checkbox input{accent-color:var(--primary);box-shadow:none;height:16px;min-height:16px;width:16px}.finding{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-lg);display:grid;gap:12px;margin:0;padding:14px 16px 16px}.finding legend{background:var(--surface);border:1px solid var(--line);border-radius:999px;color:var(--ink-2);font-size:12px;font-weight:600;padding:2px 10px}.grid-4{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.form-hint{color:var(--muted);font-size:13px;margin:0}.form-error{color:var(--danger);font-size:13px;margin:0}p.form-error{background:var(--danger-soft);border:1px solid var(--danger-line);border-radius:var(--radius);padding:10px 14px}.page>p.form-error{margin-bottom:16px}.notice{align-items:center;background:var(--success-soft);border:1px solid var(--success-line);border-radius:var(--radius);color:var(--success);display:flex;font-weight:500;gap:10px;margin:0 0 16px;padding:10px 14px}.notice:before{align-items:center;background:var(--success);border-radius:50%;color:#fff;content:"✓";display:inline-flex;flex:0 0 auto;font-size:11px;height:18px;justify-content:center;width:18px}.action-panel{border-top:1px solid var(--line);margin-top:20px;padding-top:18px}.action-panel h3{align-items:center;display:flex;gap:8px}.action-panel h3:before{background:var(--primary);border-radius:2px;content:"";height:14px;width:3px}.inline-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.login-screen{background:var(--surface);display:grid;grid-template-columns:minmax(380px,46%) 1fr;min-height:100vh}.login-aside{background:radial-gradient(circle at 18% 12%,rgba(255,255,255,.12),transparent 45%),radial-gradient(circle at 90% 95%,rgba(242,183,5,.12),transparent 40%),linear-gradient(160deg,var(--fire) 0%,var(--fire-deep) 100%);color:#fff;display:flex;flex-direction:column;gap:32px;justify-content:space-between;overflow:hidden;padding:48px 56px;position:relative}.login-aside-brand{align-items:center;display:flex;gap:14px}.login-aside-brand img{background:#fff;border-radius:50%;box-shadow:0 0 0 2px #ffffffd9,0 2px 8px #00000040;height:52px;width:52px}.login-aside-brand strong{display:block;font-size:16px;font-weight:700;letter-spacing:.02em}.login-aside-brand span{color:#ffffffc7;font-size:13px}.login-aside h1{color:#fff;font-size:34px;font-weight:600;letter-spacing:-.02em;line-height:1.15;margin:0 0 16px;max-width:460px}.login-aside p{color:#ffffffd1;font-size:15px;line-height:1.6;margin:0;max-width:440px}.login-features{display:grid;gap:10px;list-style:none;margin:28px 0 0;padding:0}.login-features li{align-items:center;color:#ffffffd1;display:flex;font-size:14px;gap:10px}.login-features svg{color:var(--gold);flex:0 0 auto}.login-aside-footer{color:#ffffffa6;font-size:12px}.login-watermark{bottom:-90px;opacity:.1;pointer-events:none;position:absolute;right:-90px;width:360px}.login-main{align-items:center;background:#faf6ef;display:flex;justify-content:center;padding:40px 24px}.login-panel{max-width:420px;width:100%}.login-panel>h2{display:block;font-size:24px;letter-spacing:-.015em;margin:0 0 6px}.login-panel>p{color:var(--muted);margin:0 0 28px}.login-panel .form-grid{background:transparent;border:0;box-shadow:none;padding:0}.login-panel .form-grid>.login-submit{justify-self:stretch;min-height:42px;width:100%}.login-switch{color:var(--muted);font-size:13px;margin-top:20px;text-align:center}.credential-list{border-top:1px solid var(--line);margin-top:28px;padding-top:18px}.credential-list summary{color:var(--ink-2);cursor:pointer;font-size:13px;font-weight:600;list-style:none}.credential-list summary::-webkit-details-marker{display:none}.credential-list summary:after{color:var(--muted);content:"  +"}.credential-list[open] summary:after{content:"  −"}.credential-list>span{color:var(--muted);display:block;font-size:12px;margin:8px 0 10px}.credential-list>div{display:grid;gap:6px;grid-template-columns:repeat(2,minmax(0,1fr));max-height:260px;overflow-y:auto}.credential-chip{align-items:flex-start;background:var(--surface);border:1px solid var(--line);box-shadow:none;color:var(--ink);display:grid;gap:1px;justify-content:stretch;min-height:0;padding:7px 10px;text-align:left;width:100%}.credential-chip:hover{background:var(--primary-soft);border-color:var(--danger-line)}.credential-chip b,.credential-chip small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.credential-chip b{font-size:12.5px;font-weight:600}.credential-chip small{color:var(--muted);font-size:11.5px;font-weight:400}.portal{min-height:100vh}.portal .table p{gap:8px}.portal .table p textarea{flex-basis:100%}@media (max-width: 1100px){.split,.admin-grid{grid-template-columns:1fr}.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 900px){.shell{grid-template-columns:1fr;grid-template-rows:auto 1fr}.sidebar{height:auto;padding:12px 16px;z-index:20}.sidebar-header{padding:0}.sidebar-footer{display:none}.menu-button{display:inline-flex}.sidebar nav{border-top:0;display:none;margin-top:12px;max-height:calc(100vh - 80px);padding-top:0}.sidebar nav.open{display:grid}.sidebar a.active:before{left:-6px}.topbar{min-height:56px;padding:8px 16px;position:static}.topbar-context{display:none}.topbar-actions{justify-content:space-between;width:100%}.user-chip{border-left:0;padding-left:0}.page{padding:20px 16px 40px}.page-header{align-items:flex-start;flex-direction:column;gap:12px}h1{font-size:21px}.split>section,.form-grid,.admin-grid>section,.catalog-section:not(.split):not(.metrics-grid):not(.process-grid){padding:18px 16px}.metrics-grid{gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.metric{padding:14px}.metric>span:first-child{padding-right:0}.metric strong{font-size:22px}.metric-icon{display:none}.process-grid,.credential-list>div{grid-template-columns:1fr}.details{gap:2px;grid-template-columns:1fr}.details dd{margin-bottom:8px}.login-screen{grid-template-columns:1fr}.login-aside{gap:0;padding:24px 20px}.login-aside h1{font-size:22px;margin-top:20px}.login-aside p{font-size:14px}.login-features,.login-aside-footer,.login-watermark{display:none}.login-main{padding:28px 20px 40px}.form-stack.compact{grid-template-columns:1fr}}
