.rb-chip{display:inline-flex;align-items:center;gap:6px;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid color-mix(in srgb,var(--rb-c, var(--text-3)) 35%,transparent);background:color-mix(in srgb,var(--rb-c, var(--text-3)) 12%,transparent);color:var(--text);white-space:nowrap;max-width:100%}.rb-chip .dot{width:8px;height:8px;border-radius:50%;background:var(--rb-c, var(--text-3));flex-shrink:0}.rb-chip .x{cursor:pointer;opacity:.6;border:0;background:transparent;padding:0;color:inherit;display:inline-flex}.rb-chip .x:hover{opacity:1}.rb-chips{display:flex;flex-wrap:wrap;gap:5px;min-width:0}.rb-banner{display:flex;gap:14px;align-items:center;padding:16px 18px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface)}.rb-banner .ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;flex-shrink:0}.rb-banner.on .ic{background:var(--success-bg);color:var(--success)}.rb-banner.off .ic{background:var(--warning-bg);color:var(--warning)}.rb-banner .body{flex:1;min-width:0}@media(max-width:700px){.rb-banner{flex-wrap:wrap}}.rb-group{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--surface)}.rb-group+.rb-group{margin-top:10px}.rb-group-head{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--surface-2);border-bottom:1px solid var(--border);cursor:pointer;-webkit-user-select:none;user-select:none}.rb-group-head h4{margin:0;font-size:13.5px;flex:1;min-width:0}.rb-group-head .count{font-size:12px;color:var(--text-2)}.rb-perms{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.rb-perm{display:flex;gap:10px;align-items:flex-start;padding:9px 14px;border-bottom:1px solid var(--border);border-right:1px solid var(--border);cursor:pointer;min-width:0}.rb-perm:hover{background:var(--surface-2)}.rb-perm.on{background:color-mix(in srgb,var(--brand) 7%,transparent)}.rb-perm.readonly{cursor:default}.rb-perm input{margin-top:3px;accent-color:var(--brand);flex-shrink:0}.rb-perm .t{font-size:13px;font-weight:600}.rb-perm .d{font-size:12px;color:var(--text-2)}.rb-perm .k{font-family:ui-monospace,Menlo,monospace;font-size:11px;color:var(--text-3);overflow-wrap:anywhere}.rb-level{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:0 6px;border-radius:5px;border:1px solid var(--border-strong);color:var(--text-2);margin-left:6px}.rb-level.admin{border-color:color-mix(in srgb,var(--danger) 45%,transparent);color:var(--danger)}.rb-level.staff{border-color:color-mix(in srgb,var(--info) 45%,transparent);color:var(--info)}.rb-eff{display:flex;flex-direction:column}.rb-eff-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:12px;padding:8px 0;border-bottom:1px dashed var(--border);align-items:start}.rb-eff-row:last-child{border-bottom:0}.rb-why{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--text-2);min-width:0}.rb-why span{overflow-wrap:anywhere}@media(max-width:700px){.rb-eff-row{grid-template-columns:minmax(0,1fr);gap:4px}}.rb-area{display:grid;grid-template-columns:minmax(0,1fr) 60px;gap:8px;align-items:center;font-size:12.5px;padding:3px 0}.rb-bar{height:6px;border-radius:3px;background:var(--surface-3);overflow:hidden;grid-column:1 / -1}.rb-bar>div{height:100%;background:var(--brand);border-radius:3px}.rb-preview{display:grid;grid-template-columns:240px minmax(0,1fr);border:2px dashed color-mix(in srgb,var(--warning) 60%,transparent);border-radius:var(--radius-lg);overflow:hidden;background:var(--surface)}.rb-preview-nav{background:var(--sidebar-bg);color:var(--sidebar-text);padding:12px 8px;display:flex;flex-direction:column;gap:2px;min-width:0}.rb-preview-nav .sec{font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:#64748b;padding:12px 10px 4px}.rb-preview-nav .it{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:8px;font-size:13px;color:var(--sidebar-text)}.rb-preview-nav .it span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rb-preview-body{padding:18px;min-width:0}@media(max-width:800px){.rb-preview{grid-template-columns:minmax(0,1fr)}.rb-preview-nav{flex-direction:row;flex-wrap:wrap}.rb-preview-nav .sec{width:100%;padding-top:6px}}.rb-rule{font-family:ui-monospace,Menlo,monospace;font-size:12px;overflow-wrap:anywhere}.rb-method{font-family:ui-monospace,Menlo,monospace;font-size:11px;font-weight:700;padding:1px 6px;border-radius:5px;background:var(--surface-3);color:var(--text-2)}.rb-result{padding:14px;border-radius:var(--radius);border:1px solid var(--border)}.rb-result.ok{background:var(--success-bg);border-color:color-mix(in srgb,var(--success) 40%,transparent)}.rb-result.no{background:var(--danger-bg);border-color:color-mix(in srgb,var(--danger) 40%,transparent)}.rb-result.down{background:var(--warning-bg);border-color:color-mix(in srgb,var(--warning) 40%,transparent)}.rb-toggle-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:10px 0;border-bottom:1px dashed var(--border)}.rb-toggle-row:last-child{border-bottom:0}.rb-sticky-actions{position:sticky;bottom:0;z-index:5;background:color-mix(in srgb,var(--surface) 92%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-top:1px solid var(--border);padding:10px 16px;display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;border-radius:0 0 var(--radius) var(--radius)}.rb-filters{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.rb-filters .input,.rb-filters .select{width:auto;min-width:140px}.rb-filters .grow{flex:1;min-width:200px;max-width:360px}@media(max-width:600px){.rb-filters .input,.rb-filters .select,.rb-filters .grow{width:100%;max-width:none;min-width:0;flex:1 1 100%}}.rb-nowrap{white-space:nowrap}.table td .rb-rule{white-space:normal}.tn-logo{display:inline-flex;overflow:hidden;white-space:nowrap;align-items:center;justify-content:center;font-weight:700;letter-spacing:.02em;line-height:1;border:1px solid color-mix(in srgb,var(--border) 60%,transparent)}.tn-chip{display:inline-flex;align-items:center;gap:8px;min-width:0;max-width:100%;color:var(--text);font-weight:500}.tn-all{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:6px;background:var(--surface-3);color:var(--text-2)}.tn-switch{display:inline-flex;align-items:center;gap:8px;height:36px;max-width:220px;padding:0 10px 0 6px;border-radius:10px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);cursor:pointer;font:inherit;font-size:13px;font-weight:600}.tn-switch:hover{background:var(--surface-3)}.tn-switch:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.tn-switch-name{min-width:0}@media(max-width:720px){.tn-switch-name{display:none}.tn-switch{padding:0 6px}}@media(max-width:480px){.tn-switch{padding:0;width:32px;height:32px;justify-content:center;border-color:transparent;background:transparent;gap:0}.tn-switch .tn-chev{display:none}}.tn-portal-card{border-left:4px solid var(--tn-brand, var(--brand))}.tn-bar-row{display:grid;grid-template-columns:minmax(0,130px) minmax(0,1fr) auto;align-items:center;gap:10px}.tn-bar{height:8px;border-radius:4px;background:var(--surface-3);overflow:hidden;display:block}.tn-bar>span{display:block;height:100%;border-radius:4px;min-width:2px}.tn-num{min-width:56px;text-align:right;font-variant-numeric:tabular-nums}.tn-hero{display:flex;gap:16px;align-items:center;flex-wrap:wrap;padding:18px;border-radius:var(--radius);border:1px solid var(--border);background:linear-gradient(120deg,color-mix(in srgb,var(--tn-brand, var(--brand)) 14%,var(--surface)) 0%,var(--surface) 70%)}.tn-hero h1{margin:0}.tn-swatch{display:inline-block;width:14px;height:14px;border-radius:4px;border:1px solid var(--border);vertical-align:-2px}.tn-preview{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--bg)}.tn-preview-top{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--surface);border-bottom:1px solid var(--border)}.tn-preview-hero{padding:20px 16px;color:#fff;background:linear-gradient(135deg,var(--pv-brand),color-mix(in srgb,var(--pv-brand) 55%,var(--pv-accent)))}.tn-preview-hero h3{margin:0 0 4px;color:inherit;font-size:18px}.tn-preview-body{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;padding:14px}.tn-preview-tile{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:10px;font-size:12px;font-weight:600}.tn-preview-tile i{display:block;width:26px;height:26px;border-radius:8px;margin-bottom:6px;background:color-mix(in srgb,var(--pv-brand) 16%,transparent)}.tn-preview-btn{display:inline-block;margin-top:10px;padding:6px 12px;border-radius:8px;background:#fff;color:var(--pv-brand);font-weight:700;font-size:12px}.tn-rule{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr) minmax(0,1.4fr) minmax(0,1.2fr) auto auto;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid var(--border)}.tn-rule:last-child{border-bottom:0}@media(max-width:820px){.tn-rule{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.tn-overlay-layout{display:grid;grid-template-columns:minmax(0,240px) minmax(0,1fr);gap:16px;align-items:start}@media(max-width:820px){.tn-overlay-layout{grid-template-columns:minmax(0,1fr)}}.tn-key-list{display:flex;flex-direction:column;gap:2px}.tn-key-list button{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;text-align:left;padding:8px 10px;border-radius:8px;border:0;background:transparent;color:var(--text);cursor:pointer;font:inherit;font-size:13px}.tn-key-list button:hover{background:var(--surface-3)}.tn-key-list button.active{background:color-mix(in srgb,var(--brand) 12%,transparent);color:var(--brand);font-weight:600}.tn-inherit{font-size:11px;color:var(--text-3)}.tn-field-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.tn-coverage{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}.tn-coverage .card-body{padding:12px 14px}.tn-meter{height:6px;border-radius:3px;background:var(--surface-3);overflow:hidden;margin:6px 0 4px}.tn-meter>span{display:block;height:100%;background:var(--success)}.tn-admin label.row{flex-wrap:nowrap;align-items:flex-start}.tn-admin label.row .switch{flex-shrink:0}:root{--onb-backdrop: rgba(2, 6, 23, .58);--onb-z: 1200}:root[data-theme=dark]{--onb-backdrop: rgba(0, 0, 0, .7)}.onb-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--onb-z);pointer-events:none}.onb-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none}.onb-backdrop path{fill:var(--onb-backdrop);pointer-events:visiblePainted;transition:d .25s ease}.onb-ring{position:fixed;border-radius:10px;box-shadow:0 0 0 2px var(--brand),0 0 0 6px color-mix(in srgb,var(--brand) 30%,transparent);pointer-events:none;transition:top .25s ease,left .25s ease,width .25s ease,height .25s ease;animation:onb-pulse 2s ease-in-out infinite}.onb-shield{position:fixed;pointer-events:auto;cursor:default}@keyframes onb-pulse{50%{box-shadow:0 0 0 2px var(--brand),0 0 0 10px color-mix(in srgb,var(--brand) 12%,transparent)}}.onb-tip{position:fixed;width:min(380px,calc(100vw - 24px));background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:16px 18px 14px;pointer-events:auto;animation:onb-in .18s ease-out}.onb-tip.measuring{visibility:hidden;animation:none}.onb-tip.centred{width:min(440px,calc(100vw - 24px))}.onb-tip.sheet{left:8px;right:8px;width:auto;border-radius:16px}.onb-tip.sheet .onb-body{max-height:30vh}.onb-tip.sheet.bottom{bottom:8px}.onb-tip.sheet.top{top:8px}@keyframes onb-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.onb-tip,.onb-ring{animation:none;transition:none}.onb-backdrop path{transition:none}}.onb-waiting{display:flex;align-items:center;gap:10px;width:300px;padding:12px 14px}.onb-tip-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:-4px -6px 4px 0}.onb-count{font-size:12px;font-weight:600;color:var(--text-2);letter-spacing:.02em}.onb-title{font-size:17px;line-height:1.3;margin:0 0 6px}.onb-body{font-size:14px;color:var(--text-2);max-height:45vh;overflow:auto}.onb-body p{margin:0 0 8px}.onb-img{display:block;width:100%;max-height:180px;object-fit:cover;border-radius:10px;margin:6px 0 10px;border:1px solid var(--border)}.onb-hint{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--brand);margin-top:8px}.onb-dots{display:flex;gap:5px;margin-top:12px;flex-wrap:wrap}.onb-dots span{width:7px;height:7px;border-radius:50%;background:var(--border-strong);transition:width .2s,background .2s}.onb-dots span.done{background:color-mix(in srgb,var(--brand) 45%,var(--border-strong))}.onb-dots span.on{width:18px;border-radius:4px;background:var(--brand)}.onb-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap;margin-top:12px}.onb-actions .grow{flex:1}.onb-dont{margin-top:10px;display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--text-2);cursor:pointer}.onb-dont input{accent-color:var(--brand)}.onb-arrow{position:absolute;width:12px;height:12px;background:var(--surface);border:1px solid var(--border);transform:rotate(45deg)}.onb-arrow.bottom{top:-7px;margin-left:-6px;border-right:0;border-bottom:0}.onb-arrow.top{bottom:-7px;margin-left:-6px;border-left:0;border-top:0}.onb-arrow.right{left:-7px;margin-top:-6px;border-right:0;border-top:0}.onb-arrow.left{right:-7px;margin-top:-6px;border-left:0;border-bottom:0}.onb-pick-bar{position:fixed;top:10px;left:50%;transform:translate(-50%);z-index:calc(var(--onb-z) + 10);display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center;max-width:calc(100vw - 20px);background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);padding:8px 10px 8px 14px;font-size:13.5px}.onb-pick-bar .dot{width:9px;height:9px;border-radius:50%;background:var(--danger);animation:onb-blink 1.2s infinite}@keyframes onb-blink{50%{opacity:.3}}.onb-pick-box{position:fixed;z-index:calc(var(--onb-z) + 5);pointer-events:none;border:2px dashed var(--brand);background:color-mix(in srgb,var(--brand) 10%,transparent);border-radius:6px;transition:all .06s linear}.onb-pick-label{position:absolute;left:-2px;bottom:100%;margin-bottom:4px;background:var(--brand);color:#fff;font:600 11px/1.4 var(--font);padding:2px 6px;border-radius:5px;white-space:nowrap;max-width:360px;overflow:hidden;text-overflow:ellipsis}.onb-pick-confirm{position:fixed;bottom:14px;left:50%;transform:translate(-50%);z-index:calc(var(--onb-z) + 10);width:min(560px,calc(100vw - 20px));background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);padding:14px}.onb-pick-confirm code{display:block;background:var(--surface-3);border-radius:8px;padding:8px 10px;font-size:12.5px;word-break:break-all}.onb-help-btn .dot{background:var(--brand)}.onb-panel-section{display:flex;flex-direction:column;gap:8px}.onb-panel-section+.onb-panel-section{margin-top:18px}.onb-section-title{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);display:flex;align-items:center;gap:6px}.onb-tour-row{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.onb-tour-row.here{border-color:color-mix(in srgb,var(--brand) 45%,var(--border));background:color-mix(in srgb,var(--brand) 5%,var(--surface))}.onb-tour-icon{width:34px;height:34px;flex-shrink:0;border-radius:10px;display:grid;place-items:center;background:var(--brand-50);color:var(--brand)}.onb-tip-item{border:1px solid var(--border);border-radius:12px;overflow:hidden}.onb-tip-item>button{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;background:transparent;border:0;color:var(--text);font:inherit;font-weight:600;text-align:left;cursor:pointer}.onb-tip-item>button:hover{background:var(--surface-2)}.onb-tip-item .prose{padding:0 12px 12px 38px;font-size:13.5px;color:var(--text-2)}.onb-totd{border-radius:14px;padding:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 12%,var(--surface)),color-mix(in srgb,var(--accent) 8%,var(--surface)));border:1px solid color-mix(in srgb,var(--brand) 25%,var(--border))}.onb-totd .prose{font-size:13.5px;color:var(--text-2)}.onb-note{border:1px solid var(--border);border-radius:14px;padding:14px;background:var(--surface)}.onb-note.unread{border-color:color-mix(in srgb,var(--brand) 50%,var(--border));box-shadow:inset 3px 0 0 var(--brand)}.onb-note .prose{font-size:13.5px}.onb-note .prose h2{font-size:15px}.onb-link{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;color:var(--text)}.onb-link:hover{background:var(--surface-2);text-decoration:none}.onb-kbd-grid{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 12px;font-size:13px;align-items:center}.onb-card-hero{display:flex;align-items:center;gap:16px;padding:16px 18px;border-radius:var(--radius);border:1px solid color-mix(in srgb,var(--brand) 30%,var(--border));background:linear-gradient(120deg,color-mix(in srgb,var(--brand) 10%,var(--surface)),var(--surface) 70%)}.onb-card-hero .ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--brand);color:#fff;flex-shrink:0}.onb-whatsnew-body{max-height:180px;overflow:hidden;position:relative;font-size:13.5px}.onb-whatsnew-body:after{content:"";position:absolute;left:0;right:0;bottom:0;height:48px;background:linear-gradient(transparent,var(--surface))}@media(max-width:560px){.onb-card-hero{flex-wrap:wrap}.onb-card-hero .actions{width:100%}}.onb-steps{display:flex;flex-direction:column;gap:10px}.onb-step{border:1px solid var(--border);border-radius:12px;background:var(--surface)}.onb-step.invalid{border-color:var(--danger)}.onb-step-head{display:flex;align-items:center;gap:8px;padding:8px 10px;cursor:pointer}.onb-step-num{width:26px;height:26px;border-radius:8px;background:var(--brand-50);color:var(--brand);display:grid;place-items:center;font-weight:700;font-size:12.5px;flex-shrink:0}.onb-step-body{padding:4px 14px 14px;border-top:1px solid var(--border)}.onb-sel-row{display:flex;gap:6px;align-items:center}.onb-sel-row .input{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px}.onb-bar{height:8px;border-radius:4px;background:var(--surface-3);overflow:hidden;min-width:80px}.onb-bar>span{display:block;height:100%;background:var(--brand);border-radius:4px}.onb-settings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px 20px}.onb-md-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:start}.onb-md-split .preview{border:1px solid var(--border);border-radius:10px;padding:12px 14px;background:var(--surface-2);max-height:420px;overflow:auto}@media(max-width:900px){.onb-md-split{grid-template-columns:minmax(0,1fr)}}.fm-form{display:flex;flex-direction:column;gap:16px;min-width:0}.fm-section{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-width:0}.fm-section.plain{border:0;background:transparent}.fm-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:14px 16px 0}.fm-section.plain .fm-section-head{padding:0 0 2px}.fm-section-head h3{margin:0;font-size:15px}.fm-section-head .desc{margin:3px 0 0;color:var(--text-2);font-size:13px}.fm-section-head button.fm-collapse{border:0;background:transparent;color:var(--text-2);cursor:pointer;display:inline-flex;align-items:center;gap:8px;padding:0;font:inherit;text-align:left;width:100%}.fm-section-head button.fm-collapse svg{transition:transform .15s;flex-shrink:0}.fm-section-head button.fm-collapse[aria-expanded=false] svg{transform:rotate(-90deg)}.fm-section-body{padding:14px 16px 16px}.fm-section.plain .fm-section-body{padding:8px 0 0}.fm-grid{display:grid;gap:14px 16px;grid-template-columns:minmax(0,1fr)}.fm-grid.c2{grid-template-columns:repeat(2,minmax(0,1fr))}.fm-grid.c3{grid-template-columns:repeat(3,minmax(0,1fr))}.fm-grid>.w2{grid-column:span 2}.fm-grid>.w3,.fm-grid>.wfull{grid-column:1 / -1}.fm-grid.c1>*{grid-column:auto}.fm-mobile .fm-grid,.fm-mobile .fm-grid.c2,.fm-mobile .fm-grid.c3{grid-template-columns:minmax(0,1fr)}.fm-mobile .fm-grid>*{grid-column:auto!important}@media(max-width:720px){.fm-grid,.fm-grid.c2,.fm-grid.c3{grid-template-columns:minmax(0,1fr)}.fm-grid>*{grid-column:auto!important}}.fm-field-readonly .v{font-size:14px;color:var(--text);white-space:pre-wrap;word-break:break-word}.fm-legend{font-size:12px;color:var(--text-3)}.fm-legend b{color:var(--danger)}.fm-info{display:flex;gap:12px;border-radius:var(--radius-sm);padding:12px 14px;border:1px solid color-mix(in srgb,var(--info) 30%,transparent);background:var(--info-bg)}.fm-info.warning{border-color:color-mix(in srgb,var(--warning) 35%,transparent);background:var(--warning-bg)}.fm-info.success{border-color:color-mix(in srgb,var(--success) 35%,transparent);background:var(--success-bg)}.fm-info.danger{border-color:color-mix(in srgb,var(--danger) 35%,transparent);background:var(--danger-bg)}.fm-info.neutral{border-color:var(--border);background:var(--surface-2)}.fm-info>svg{flex-shrink:0;margin-top:2px;color:var(--info)}.fm-info.warning>svg{color:var(--warning)}.fm-info.success>svg{color:var(--success)}.fm-info.danger>svg{color:var(--danger)}.fm-info.neutral>svg{color:var(--text-3)}.fm-info .t{font-weight:650;margin-bottom:2px}.fm-info .prose{font-size:13.5px}.fm-info .prose>:first-child{margin-top:0}.fm-info .prose>:last-child{margin-bottom:0}.fm-heading{margin:4px 0 0}.fm-heading+.sub{color:var(--text-2);font-size:13px;margin-top:2px}.fm-divider{display:flex;align-items:center;gap:10px;color:var(--text-3);font-size:12px;text-transform:uppercase;letter-spacing:.06em}.fm-divider:before,.fm-divider:after{content:"";flex:1;height:1px;background:var(--border)}.fm-divider.bare:before{flex:1}.fm-divider.bare:after{display:none}.fm-image{margin:0}.fm-image img{max-width:100%;border-radius:var(--radius-sm);border:1px solid var(--border);display:block}.fm-image figcaption{font-size:12px;color:var(--text-3);margin-top:6px}.fm-links{display:grid;gap:8px}.fm-links a{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);background:var(--surface-2)}.fm-links a:hover{border-color:var(--brand);text-decoration:none}.fm-links a .d{font-size:12px;color:var(--text-3)}.fm-affix{display:flex;align-items:stretch;min-width:0}.fm-affix .input{flex:1;min-width:0}.fm-affix .pre,.fm-affix .suf{display:inline-flex;align-items:center;padding:0 10px;border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text-2);font-size:13px;white-space:nowrap}.fm-affix .pre{border-right:0;border-radius:10px 0 0 10px}.fm-affix .pre+.input{border-top-left-radius:0;border-bottom-left-radius:0}.fm-affix .suf{border-left:0;border-radius:0 10px 10px 0}.fm-affix .input:has(+.suf){border-top-right-radius:0;border-bottom-right-radius:0}.fm-range{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:center}.fm-choices{display:flex;flex-wrap:wrap;gap:6px 14px}.fm-choices.stack{flex-direction:column;gap:6px}.fm-consent{border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 14px;background:var(--surface-2);display:flex;flex-direction:column;gap:10px}.fm-consent .prose{font-size:13.5px;max-height:220px;overflow:auto}.fm-consent .prose>:first-child{margin-top:0}.fm-consent .prose>:last-child{margin-bottom:0}.fm-stars{display:inline-flex;gap:2px}.fm-stars button{border:0;background:transparent;padding:3px;cursor:pointer;border-radius:6px;color:var(--warning);display:inline-flex}.fm-stars button:hover,.fm-stars button:focus-visible{background:var(--surface-3)}.fm-files{display:flex;flex-direction:column;gap:8px}.fm-drop{border:1.5px dashed var(--border-strong);border-radius:var(--radius-sm);padding:14px;text-align:center;color:var(--text-2);font-size:13px;cursor:pointer;background:var(--surface-2)}.fm-drop:hover,.fm-drop.over{border-color:var(--brand);color:var(--brand)}.fm-lookup{position:relative;min-width:0}.fm-lookup .control{display:flex;align-items:center;gap:6px;flex-wrap:wrap;cursor:text;min-height:38px;padding:4px 8px 4px 11px}.fm-lookup .control input{border:0;outline:0;background:transparent;color:var(--text);flex:1;min-width:80px;font:inherit;padding:4px 0}.fm-lookup .control .sel{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fm-lookup .menu{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:60;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg);padding:6px;max-height:300px;overflow:auto;animation:pop .12s}.fm-lookup .opt{display:flex;flex-direction:column;padding:7px 10px;border-radius:8px;cursor:pointer}.fm-lookup .opt.active{background:var(--surface-3)}.fm-lookup .opt .l{font-size:13.5px;font-weight:550}.fm-lookup .opt .s{font-size:12px;color:var(--text-3)}.fm-lookup .note{padding:8px 10px;font-size:12.5px;color:var(--text-3)}.fm-lookup .src{display:flex;align-items:center;gap:6px;padding:6px 10px 2px;font-size:11px;color:var(--text-3);border-top:1px solid var(--border);margin-top:4px}.fm-repeat{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.fm-repeat table{width:100%;border-collapse:collapse;font-size:13px}.fm-repeat th{background:var(--surface-2);text-align:left;font-size:11.5px;color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;padding:8px;border-bottom:1px solid var(--border);font-weight:600}.fm-repeat td{padding:6px 8px;border-bottom:1px solid var(--border);vertical-align:top}.fm-repeat td .input,.fm-repeat td .select{min-height:32px;padding:4px 8px;font-size:13px}.fm-repeat .foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px;background:var(--surface-2);flex-wrap:wrap}.fm-repeat .card-row{padding:12px;border-bottom:1px solid var(--border);display:grid;gap:10px}.fm-repeat .card-row .h{display:flex;justify-content:space-between;align-items:center;font-weight:600;font-size:13px}.fm-wizard{display:flex;flex-direction:column;gap:16px}.fm-steps{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px;list-style:none;margin:0;padding-left:0}.fm-steps li{flex:1;min-width:110px}.fm-steps button{width:100%;display:flex;align-items:center;gap:8px;border:0;background:transparent;padding:0;cursor:pointer;color:var(--text-3);font:inherit;font-size:12.5px;text-align:left}.fm-steps .dot{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--surface-3);color:var(--text-2);font-weight:700;font-size:12px;flex-shrink:0;border:2px solid transparent}.fm-steps li.done .dot{background:var(--brand);color:#fff}.fm-steps li.current .dot{border-color:var(--brand);background:var(--brand-50);color:var(--brand)}.fm-steps li.current button{color:var(--text);font-weight:600}.fm-steps li.err .dot{border-color:var(--danger);color:var(--danger);background:var(--danger-bg)}.fm-steps .bar{height:3px;border-radius:2px;background:var(--surface-3);margin-top:8px;overflow:hidden}.fm-steps li.done .bar>div,.fm-steps li.current .bar>div{background:var(--brand);height:100%}.fm-progress{display:flex;flex-direction:column;gap:6px}.fm-progress .track{height:6px;border-radius:3px;background:var(--surface-3);overflow:hidden}.fm-progress .track>div{height:100%;background:var(--brand);transition:width .2s}.fm-nav{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.fm-tabs{margin-bottom:-4px}.fd{display:grid;grid-template-columns:220px minmax(0,1fr) 340px;gap:14px;align-items:start;min-width:0}.fd.no-props{grid-template-columns:220px minmax(0,1fr)}.fd-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:12px}.fd-panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-width:0}.fd-panel>.h{padding:10px 12px;border-bottom:1px solid var(--border);font-weight:650;font-size:13px;display:flex;align-items:center;justify-content:space-between;gap:8px}.fd-palette{position:sticky;top:76px;max-height:calc(100vh - 100px);overflow:auto}.fd-palette .grp{padding:8px 10px 2px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);font-weight:600}.fd-palette .items{display:grid;grid-template-columns:1fr;gap:4px;padding:4px 8px 8px}.fd-pal{display:flex;align-items:center;gap:8px;padding:7px 9px;border:1px solid var(--border);border-radius:9px;background:var(--surface-2);cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;color:var(--text);text-align:left;width:100%;font:inherit;font-size:13px}.fd-pal:hover{border-color:var(--brand);background:var(--brand-50)}.fd-pal svg{color:var(--brand);flex-shrink:0}.fd-canvas{display:flex;flex-direction:column;gap:14px;min-width:0}.fd-page{border:1px dashed var(--border-strong);border-radius:var(--radius-lg);padding:12px;display:flex;flex-direction:column;gap:12px;background:color-mix(in srgb,var(--surface-2) 60%,transparent)}.fd-page.selected{border-color:var(--brand)}.fd-page-head{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;font-weight:600;cursor:pointer}.fd-sec{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm)}.fd-sec.selected{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 18%,transparent)}.fd-sec.drop-into{border-color:var(--brand);background:var(--brand-50)}.fd-sec-head{display:flex;align-items:center;gap:8px;padding:9px 10px 9px 12px;border-bottom:1px solid var(--border);cursor:pointer}.fd-sec-head .t{flex:1;min-width:0;font-weight:650;font-size:13.5px}.fd-sec-head .t .d{font-weight:400;color:var(--text-3);font-size:12px}.fd-sec-body{padding:10px;min-height:64px}.fd-empty{border:1.5px dashed var(--border-strong);border-radius:10px;padding:16px;text-align:center;color:var(--text-3);font-size:13px}.fd-card{position:relative;border:1px solid var(--border);border-radius:10px;background:var(--surface);padding:8px 10px 8px 6px;display:flex;align-items:flex-start;gap:6px;cursor:pointer;min-width:0;transition:border-color .1s,box-shadow .1s}.fd-card:hover{border-color:var(--border-strong)}.fd-card.selected{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 18%,transparent)}.fd-card.dragging{opacity:.35}.fd-card.layout{background:var(--surface-2)}.fd-card .grip{cursor:grab;color:var(--text-3);padding:2px;touch-action:none;display:inline-flex;border-radius:6px;flex-shrink:0;border:0;background:transparent}.fd-card .grip:hover{background:var(--surface-3);color:var(--text)}.fd-card .body{flex:1;min-width:0}.fd-card .lab{font-weight:600;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-card .meta{display:flex;align-items:center;gap:4px;flex-wrap:wrap;margin-top:3px;font-size:11.5px;color:var(--text-3)}.fd-card .meta .badge{font-size:10.5px;padding:0 6px}.fd-card .acts{display:flex;gap:0;opacity:0;pointer-events:none;transition:opacity .1s;position:absolute;top:4px;right:4px;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-sm);z-index:3}.fd-card:hover .acts,.fd-card.selected .acts,.fd-card:focus-within .acts{opacity:1;pointer-events:auto}.fd-card.drop-before:before,.fd-card.drop-after:after{content:"";position:absolute;background:var(--brand);border-radius:2px;z-index:2}.fd-grid.c1 .fd-card.drop-before:before{left:0;right:0;top:-7px;height:3px}.fd-grid.c1 .fd-card.drop-after:after{left:0;right:0;bottom:-7px;height:3px}.fd-grid:not(.c1) .fd-card.drop-before:before{top:0;bottom:0;left:-9px;width:3px}.fd-grid:not(.c1) .fd-card.drop-after:after{top:0;bottom:0;right:-9px;width:3px}.fd-ghost{position:fixed;z-index:400;pointer-events:none;padding:7px 12px;border-radius:10px;background:var(--surface);border:1px solid var(--brand);box-shadow:var(--shadow-lg);font-size:13px;font-weight:600;display:flex;align-items:center;gap:8px;transform:translate(10px,10px);color:var(--text)}.fd-props{position:sticky;top:76px;max-height:calc(100vh - 100px);overflow:auto}.fd-props .body{padding:12px;display:flex;flex-direction:column;gap:12px}.fd-props .tabs button{padding:8px 10px;font-size:12.5px}.fd-seg{display:inline-flex;border:1px solid var(--border-strong);border-radius:9px;overflow:hidden}.fd-seg button{border:0;background:var(--surface);padding:5px 11px;font:inherit;font-size:12.5px;cursor:pointer;color:var(--text-2);display:inline-flex;align-items:center;gap:5px}.fd-seg button+button{border-left:1px solid var(--border-strong)}.fd-seg button.on{background:var(--brand);color:#fff}.fd-rule{border:1px solid var(--border);border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:8px;background:var(--surface-2)}.fd-group{border-left:3px solid var(--brand-100);padding-left:10px;display:flex;flex-direction:column;gap:6px}.fd-cond{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr) auto;gap:6px;align-items:center}.fd-cond.narrow{grid-template-columns:minmax(0,1fr) auto}.fd-cond.narrow>:nth-child(2),.fd-cond.narrow>:nth-child(3){grid-column:1}.fd-preview-frame{margin:0 auto;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg);padding:18px}.fd-preview-frame.mobile{width:390px;max-width:100%;border-radius:28px;border-width:8px;border-color:var(--surface-3);padding:16px 14px;box-shadow:var(--shadow)}.fd-json{font-family:ui-monospace,Menlo,monospace;font-size:12px;min-height:480px;white-space:pre}.fd-mobile-bar{display:none}@media(max-width:1180px){.fd,.fd.no-props{grid-template-columns:minmax(0,1fr)}.fd-palette,.fd-props{position:static;max-height:none}.fd-palette .items{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.fd-palette .grp{display:none}.fd-palette .grp:first-of-type{display:block}}@media(max-width:720px){.fd-palette .items{display:flex;overflow-x:auto;padding-bottom:10px}.fd-palette .items .fd-pal{width:auto;flex-shrink:0}.fd-palette .grp{display:none!important}.fd-card .acts{opacity:1;pointer-events:auto;position:static;border:0;box-shadow:none;background:transparent}.fd-cond{grid-template-columns:minmax(0,1fr) auto}.fd-cond>:nth-child(2),.fd-cond>:nth-child(3){grid-column:1}}.fm-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}@media(max-width:900px){.fm-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}.fm-health{display:inline-flex;align-items:center;gap:6px;font-size:12.5px}.fm-code{font-family:ui-monospace,Menlo,monospace;font-size:12px;background:var(--surface-3);padding:1px 6px;border-radius:6px}.fm-editor-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.fm-sample{max-height:220px;overflow:auto;border:1px solid var(--border);border-radius:10px}.fm-sample div{padding:6px 10px;border-bottom:1px solid var(--border);font-size:13px;display:flex;justify-content:space-between;gap:10px}.fm-sample div:last-child{border-bottom:0}.fm-answers .props{margin-bottom:4px}.fm-lookup .spin,.fd .spin{animation:spin 1s linear infinite}.fm-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.modal-body .fd-palette,.modal-body .fd-props{top:0;max-height:70vh}.shp{display:flex;flex-direction:column;gap:10px;min-width:0;container-type:inline-size}.shp-bar{display:flex;align-items:center;gap:8px;min-width:0}.shp-search{flex:1;min-width:0;display:flex;align-items:center;gap:6px;border:1px solid var(--border-strong);border-radius:10px;padding:0 10px;background:var(--surface);color:var(--text-3);min-height:36px}.shp-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-size:13.5px;padding:6px 0}.shp-search:focus-within{border-color:var(--brand)}.shp-lay{display:inline-flex;border:1px solid var(--border-strong);border-radius:9px;overflow:hidden;flex-shrink:0}.shp-lay button{border:0;background:var(--surface);color:var(--text-3);width:32px;height:34px;display:grid;place-items:center;cursor:pointer}.shp-lay button+button{border-left:1px solid var(--border-strong)}.shp-lay button.on{background:var(--brand);color:#fff}.shp-cats{gap:6px}.shp-main{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:12px;align-items:start}.shp-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;min-width:0}.shp.list .shp-list{grid-template-columns:minmax(0,1fr);gap:6px}.shp-note{grid-column:1 / -1;display:flex;align-items:center;gap:8px;padding:14px;border:1.5px dashed var(--border-strong);border-radius:var(--radius-sm);color:var(--text-2);font-size:13px;flex-wrap:wrap}.shp-note.danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 40%,transparent)}.shp-draft{grid-column:1 / -1}.shp-item{display:flex;flex-direction:column;gap:8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);padding:10px;min-width:0;transition:border-color .1s,box-shadow .1s}.shp-item.in{border-color:var(--brand);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand) 18%,transparent)}.shp-item.blocked{opacity:.6}.shp.list .shp-item{flex-direction:row;align-items:center;padding:8px 10px}.shp-img{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:8px;background:var(--surface-2);border:1px solid var(--border);display:grid;place-items:center;color:var(--text-3)}.shp.list .shp-img{width:56px;height:42px;aspect-ratio:auto;flex-shrink:0}.shp-img.ph{aspect-ratio:auto;height:44px}.shp-body{min-width:0;flex:1;display:flex;flex-direction:column;gap:3px}.shp-name{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:13.5px;min-width:0}.shp-name .badge{font-size:10px;padding:0 6px}.shp-meta{display:flex;align-items:center;gap:10px;font-size:11.5px;color:var(--text-3);flex-wrap:wrap}.shp-meta .mono{font-family:ui-monospace,Menlo,monospace}.shp-desc{font-size:12.5px;color:var(--text-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.shp-act{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;flex-wrap:wrap}.shp.list .shp-act{margin-top:0;flex-shrink:0;justify-content:flex-end}.shp-price{font-size:13.5px;white-space:nowrap}.shp-step{display:inline-flex;align-items:stretch;border:1px solid var(--border-strong);border-radius:8px;overflow:hidden;background:var(--surface)}.shp-step button{border:0;background:transparent;color:var(--text-2);width:28px;display:grid;place-items:center;cursor:pointer}.shp-step button:hover:not(:disabled){background:var(--surface-3);color:var(--text)}.shp-step button:disabled{opacity:.4;cursor:default}.shp-step input{width:40px;border:0;border-left:1px solid var(--border-strong);border-right:1px solid var(--border-strong);background:transparent;color:var(--text);font:inherit;font-size:13px;text-align:center;padding:4px 0;-moz-appearance:textfield}.shp-step input::-webkit-outer-spin-button,.shp-step input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.shp-step button:focus-visible,.shp-step input:focus-visible,.shp-lay button:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.shp-side{position:sticky;top:76px;min-width:0}.shp-basket{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);padding:10px 12px;display:flex;flex-direction:column;gap:8px;min-width:0}.shp-basket.empty{align-items:center;text-align:center;color:var(--text-3);padding:18px 12px}.shp-basket-h{display:flex;align-items:center;gap:6px;font-size:13.5px}.shp-basket-h>svg{color:var(--brand)}.shp-basket-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.shp-basket-list li{display:flex;align-items:center;gap:8px;min-width:0;padding:6px 0;border-bottom:1px solid var(--border)}.shp-basket-list li:last-child{border-bottom:0}.shp-basket-list li.gone .n{text-decoration:line-through;color:var(--text-3)}.shp-basket-list li.gone .s{color:var(--danger)}.shp-basket-list .n{display:block;font-size:13px;font-weight:550}.shp-basket-list .s{display:block;font-size:11px;color:var(--text-3);font-family:ui-monospace,Menlo,monospace}.shp-basket-list .icon-btn{width:28px;height:28px;flex-shrink:0}.shp-line-total{font-size:12.5px;white-space:nowrap;min-width:62px;text-align:right}.shp-totals{margin:0;display:grid;grid-template-columns:1fr auto;gap:3px 10px;font-size:12.5px;border-top:1px solid var(--border);padding-top:8px}.shp-totals dt{color:var(--text-2)}.shp-totals dd{margin:0;text-align:right}.shp-totals .b{font-weight:650;color:var(--text);font-size:13.5px}.shp-readonly{display:block}.shp-table table{width:100%;border-collapse:collapse;font-size:13px}.shp-table th{background:var(--surface-2);text-align:left;font-size:11.5px;color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;padding:7px 8px;border-bottom:1px solid var(--border);font-weight:600}.shp-table td{padding:6px 8px;border-bottom:1px solid var(--border);vertical-align:top}.shp-table tfoot td{border-bottom:0;color:var(--text-2);padding:4px 8px}.shp-table tfoot tr.b td{font-weight:650;color:var(--text)}.shp-table .r{text-align:right;white-space:nowrap}.shp-table .mono{font-family:ui-monospace,Menlo,monospace;font-size:12px}.shp-bar.end{justify-content:flex-end}.shp-cat{display:inline-flex;align-items:center;padding:0 6px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);color:var(--text-2);font-size:11px;line-height:17px}.shp-price.both{display:inline-flex;flex-direction:column;line-height:1.25}.shp.cols-1:not(.list) .shp-list{grid-template-columns:minmax(0,1fr)}.shp.cols-2:not(.list) .shp-list{grid-template-columns:repeat(2,minmax(0,1fr))}.shp.cols-3:not(.list) .shp-list{grid-template-columns:repeat(3,minmax(0,1fr))}.shp.cols-4:not(.list) .shp-list{grid-template-columns:repeat(4,minmax(0,1fr))}.shp.below .shp-main,.shp.nobasket .shp-main{grid-template-columns:minmax(0,1fr)}.shp.below .shp-side{position:static}.shp-basket-list li>.grow{flex:1 1 auto}.shp.below .shp-basket.empty{flex-direction:row;justify-content:center;gap:8px;padding:10px 12px;flex-wrap:wrap}.shp.compact .shp-list{gap:8px}.shp.compact .shp-item{padding:8px;gap:6px}.shp.compact:not(.list) .shp-img{aspect-ratio:5 / 2}.shp.compact .shp-img.ph{height:32px}.shp.compact .shp-name{font-size:13px}.shp.compact .shp-desc{-webkit-line-clamp:1;font-size:12px}.shp.compact.list .shp-item{padding:5px 10px}.shp.compact.list .shp-img{width:40px;height:30px}.shp-sumline{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);font-size:13px}.shp-sumline>svg{color:var(--brand);flex-shrink:0}@container (max-width: 720px){.shp-main{grid-template-columns:minmax(0,1fr)}.shp-side{position:static;order:-1}.shp.below .shp-side{order:0}.shp-list{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.shp.cols-3:not(.list) .shp-list,.shp.cols-4:not(.list) .shp-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@container (max-width: 420px){.shp-list,.shp.shp:not(.list) .shp-list{grid-template-columns:minmax(0,1fr)}.shp-item{flex-direction:row;align-items:flex-start;flex-wrap:wrap}.shp-item .shp-img{width:64px;height:48px;aspect-ratio:auto}.shp-item .shp-body{flex:1;min-width:0}.shp-item .shp-act{flex-basis:100%}.shp-basket-list li{flex-wrap:wrap;row-gap:4px}.shp-basket-list li>.grow{flex-basis:100%}.shp-basket-list .shp-line-total{margin-left:auto}}.fm-shop-fact{display:flex;gap:8px;align-items:flex-start;font-size:12.5px;padding:8px 10px;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);color:var(--text-2)}.fm-shop-fact>svg{flex-shrink:0;margin-top:2px;color:var(--brand)}.fm-shop-pick{display:flex;flex-direction:column;gap:6px}.fm-shop-search{display:flex;align-items:center;gap:6px;border:1px solid var(--border-strong);border-radius:8px;padding:0 8px;color:var(--text-3)}.fm-shop-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-size:12.5px;padding:5px 0}.fm-shop-search:focus-within{border-color:var(--brand)}.fm-shop-items{max-height:220px;overflow:auto;border:1px solid var(--border);border-radius:8px;padding:4px;display:flex;flex-direction:column}.fm-shop-item{display:flex;align-items:center;gap:6px;padding:4px 6px;border-radius:6px;min-width:0}.fm-shop-item:hover{background:var(--surface-3)}.fm-shop-item .mono{font-family:ui-monospace,Menlo,monospace;font-size:11px;flex-shrink:0}.fd-threshold{align-self:center;white-space:nowrap}.lst{display:flex;flex-direction:column;gap:8px;min-width:0;container-type:inline-size}.lst-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0;font-size:13px}.lst-bar-t{display:inline-flex;align-items:center;gap:6px}.lst-bar-t>svg{color:var(--brand)}.lst-note{display:flex;align-items:center;gap:8px;padding:12px 14px;border:1.5px dashed var(--border-strong);border-radius:var(--radius-sm);color:var(--text-2);font-size:13px;flex-wrap:wrap}.lst-note.danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 40%,transparent)}.lst-note.warning{color:var(--warning, #b45309);border-color:color-mix(in srgb,var(--warning, #f59e0b) 45%,transparent)}.lst-table{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;background:var(--surface);min-width:0}.lst-h,.lst-row{display:grid;grid-template-columns:var(--lst-cols);gap:0 10px;align-items:start;padding:8px 10px;min-width:0}.lst-h{background:var(--surface-2);border-bottom:1px solid var(--border);font-size:11.5px;color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;font-weight:600;padding:8px 10px}.lst-h .req{color:var(--danger)}.lst-row{border-bottom:1px solid var(--border)}.lst-row:last-child{border-bottom:0}.lst-row.added{background:color-mix(in srgb,var(--brand) 5%,transparent)}.lst-rec{min-width:0;font-size:13px;padding-top:7px}.lst-rec .val{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lst-rec.first .val{font-weight:600}.lst-rec .lbl,.lst-q .lbl{display:none}.lst-q{min-width:0}.lst-q .field{gap:3px}.lst-q .input,.lst-q .select,.lst-q .fm-lookup .control{min-height:32px;padding:4px 8px;font-size:13px}.lst-q .err{font-size:11.5px}.lst-q.hidden{padding-top:7px}.lst-act{display:flex;justify-content:flex-end}.lst-act .icon-btn,.lst-card-h .icon-btn{width:30px;height:30px}.lst-add{display:flex;flex-direction:column;gap:6px;padding:10px;border:1px dashed var(--border-strong);border-radius:var(--radius-sm)}.lst.readonly .lst-q .input:disabled,.lst.readonly .lst-q .select:disabled{background:var(--surface-2)}.lst-recs,.lst-qs{display:contents}.lst-card-h,.lst-table.cards .lst-h{display:none}.lst-table.cards .lst-row{display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:12px}.lst-table.cards .lst-card-h{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13.5px}.lst-table.cards .lst-card-h .icon-btn{margin-left:auto}.lst-table.cards .lst-recs{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:4px 16px}.lst-table.cards .lst-rec{display:flex;gap:8px;padding:0;font-size:12.5px;min-width:0}.lst-table.cards .lst-rec .lbl{display:inline;color:var(--text-3);flex-shrink:0;min-width:84px}.lst-table.cards .lst-rec.first{display:none}.lst-table.cards .lst-rec .val{white-space:normal;font-weight:400}.lst-table.cards .lst-qs{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px 12px}.lst-table.cards .lst-q{display:flex;flex-direction:column;gap:4px}.lst-table.cards .lst-q .lbl{display:block;font-size:12.5px;font-weight:600}.lst-table.cards .lst-q .input,.lst-table.cards .lst-q .select{width:100%}.lst-table.cards .lst-q.hidden,.lst-table.cards .lst-act{display:none}@container (max-width: 720px){.lst-table:not(.cards) .lst-h{display:none}.lst-table:not(.cards) .lst-row{display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:12px}.lst-table:not(.cards) .lst-card-h{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13.5px}.lst-table:not(.cards) .lst-card-h .icon-btn{margin-left:auto}.lst-table:not(.cards) .lst-recs{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:4px 16px}.lst-table:not(.cards) .lst-rec{display:flex;gap:8px;padding:0;font-size:12.5px;min-width:0}.lst-table:not(.cards) .lst-rec .lbl{display:inline;color:var(--text-3);flex-shrink:0;min-width:84px}.lst-table:not(.cards) .lst-rec.first{display:none}.lst-table:not(.cards) .lst-rec .val{white-space:normal;font-weight:400}.lst-table:not(.cards) .lst-qs{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px 12px}.lst-table:not(.cards) .lst-q{display:flex;flex-direction:column;gap:4px}.lst-table:not(.cards) .lst-q .lbl{display:block;font-size:12.5px;font-weight:600}.lst-table:not(.cards) .lst-q .input,.lst-table:not(.cards) .lst-q .select{width:100%}.lst-table:not(.cards) .lst-q.hidden{display:none}.lst-table:not(.cards) .lst-act{display:none}}.lst-view table{width:100%;border-collapse:collapse;font-size:13px}.lst-view th{background:var(--surface-2);text-align:left;font-size:11.5px;color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;padding:7px 8px;border-bottom:1px solid var(--border);font-weight:600;white-space:nowrap}.lst-view td{padding:6px 8px;border-bottom:1px solid var(--border);vertical-align:top}.lst-view.compact td,.lst-view.compact th{padding:4px 6px;font-size:12.5px}.fd-kind-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.fd-kind-card{display:flex;gap:8px;align-items:flex-start;text-align:left;padding:8px 10px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);cursor:pointer;min-width:0;font:inherit}.fd-kind-card>svg{flex-shrink:0;margin-top:2px;color:var(--text-3)}.fd-kind-card>span{display:flex;flex-direction:column;gap:2px;min-width:0}.fd-kind-card b{font-size:12.5px}.fd-kind-card .d{font-size:11px;color:var(--text-3);line-height:1.3}.fd-kind-card.on{border-color:var(--brand);background:var(--brand-100)}.fd-kind-card.on>svg,.fd-kind-card.on b{color:var(--brand-600)}.fd-kind-card:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.fd-col-row{gap:4px;padding:2px 0}.fd-col-row .fm-code{margin-left:6px}.lst-view{container-type:inline-size}.lst-view td.q{font-weight:500}@container (max-width: 560px){.lst-view thead{display:none}.lst-view table,.lst-view tbody,.lst-view tr,.lst-view td{display:block}.lst-view tr{padding:8px 8px 10px;border-bottom:1px solid var(--border)}.lst-view td{padding:2px 0;border:0;display:grid;grid-template-columns:96px minmax(0,1fr);gap:8px;font-size:12.5px}.lst-view td:before{content:attr(data-label);color:var(--text-3)}.lst-view td.first{grid-template-columns:1fr;font-weight:600;font-size:13.5px;padding-bottom:4px}.lst-view td.first:before{display:none}}.fm-children-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.fm-children-list li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;border-top:1px solid var(--border);min-width:0}.fm-children-list li:first-child{border-top:0;padding-top:0}.fm-child-link{display:flex;align-items:center;gap:8px;min-width:0;max-width:100%;color:var(--text)}.fm-child-link .truncate{min-width:0}.fm-child-link .mono{color:var(--text-2);flex-shrink:0}.fm-child-meta{flex-shrink:0}.fm-reg .pfg-detail,.fm-reg .pfg.compact .pfg-detail{max-height:none;overflow:visible;white-space:normal;margin-top:6px}.fm-reg .pfg-row.skipped .fm-reg-editor{opacity:.7}.fm-reg-editor{display:flex;flex-direction:column;gap:6px}.fm-reg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:6px 10px}.fm-reg-cell{display:flex;flex-direction:column;gap:3px;min-width:0}.fm-reg-lbl{font-size:11px;color:var(--text-3);text-transform:uppercase;letter-spacing:.02em}.fm-reg-lbl .req{color:var(--danger);margin-left:2px}.fm-reg-cell.bad .input,.fm-reg-cell.bad .select{border-color:var(--danger)}.fm-reg-cell .err{color:var(--danger)}.fm-reg-done{margin-top:10px;padding-top:10px;border-top:1px solid var(--border)}.fm-reg-done-list{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}.fm-reg-done-list a{color:var(--text)}@media(max-width:720px){.fm-children-list li{flex-direction:column;align-items:stretch;gap:4px}.fm-child-meta{flex-wrap:wrap}.fm-reg-grid{grid-template-columns:minmax(0,1fr)}}.fm-shop-display{border-top:1px solid var(--border);padding-top:12px}.fm-shop-mini{position:relative;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg, var(--surface-2))}.fm-shop-mini-in{transform-origin:0 0;padding:10px;background:var(--surface)}.fm-regmatch{display:flex;align-items:flex-start;gap:10px;margin-top:8px;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--info) 30%,transparent);background:var(--info-bg);font-size:13.5px;line-height:1.45;color:var(--text)}.fm-regmatch.warning{border-color:color-mix(in srgb,var(--warning) 35%,transparent);background:var(--warning-bg)}.fm-regmatch .ic{flex-shrink:0;margin-top:2px;color:var(--info)}.fm-regmatch.warning .ic{color:var(--warning)}.fm-regmatch-go{display:inline-flex;align-items:center;gap:3px;font-weight:600;white-space:nowrap}.fm-regmatch-more,.fm-regmatch-note{font-size:12.5px;margin-top:3px}.fm-regmatch .icon-btn{width:26px;height:26px;flex-shrink:0;margin:-3px -4px 0 0}.fm-shop-mini .shp-draft{display:none}.pfg-bar{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius, 10px);background:var(--surface-2)}.pfg-count{display:flex;flex-direction:column;gap:1px;font-size:13px}.pfg-intro{margin:8px 2px 0}.pfg-group{border:1px solid var(--border);border-radius:var(--radius, 10px);overflow:hidden;margin-top:10px}.pfg-group>header{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 12px;background:var(--surface-2);border-bottom:1px solid var(--border)}.pfg-group>header h4{margin:0;font-size:13px;display:flex;align-items:center;gap:6px}.pfg-rows{display:grid}.pfg-row{display:grid;grid-template-columns:26px minmax(0,1fr);gap:10px;padding:10px 12px;align-items:start}.pfg-row+.pfg-row{border-top:1px solid var(--border)}.pfg-row.skipped{opacity:.55}.pfg-row>input{margin-top:3px}.pfg-body{min-width:0}.pfg-head{display:flex;justify-content:space-between;gap:8px;align-items:baseline;flex-wrap:wrap}.pfg-head b{font-size:13px;font-weight:600;overflow-wrap:anywhere}.pfg-detail{margin-top:3px;font-size:12.5px;color:var(--text-2);white-space:pre-wrap;overflow-wrap:anywhere;max-height:180px;overflow:auto}.pfg-src{margin-top:6px;font-size:11.5px;color:var(--text-2);display:flex;gap:6px;align-items:flex-start}.pfg-src button{background:none;border:0;padding:0;color:var(--brand);cursor:pointer;font:inherit;text-align:left}.pfg-confirm{margin:0;padding-left:18px;font-size:13px;display:grid;gap:3px;max-height:320px;overflow:auto}.pfg.compact .pfg-group{margin-top:8px}.pfg.compact .pfg-row{padding:8px 10px}.pfg.compact .pfg-detail{max-height:120px}@media(max-width:480px){.pfg-row{grid-template-columns:22px minmax(0,1fr);gap:8px}.pfg-bar{padding:9px 10px}}.pf-suggest{border-color:color-mix(in srgb,var(--brand) 30%,var(--border))}.pf-suggest.inline{box-shadow:none;background:var(--surface-2)}.pf-suggest.inline .card-header h3{font-size:13px}h1,h2,h3{font-family:var(--pd-heading-font, var(--font))}:root[data-hero] .portal-hero{background:linear-gradient(135deg,var(--pd-hero-from, var(--brand)),var(--pd-hero-to, var(--accent, #2563eb)))}:root[data-hero=image] .portal-hero{background:linear-gradient(rgba(2,6,23,var(--pd-hero-overlay, .35)),rgba(2,6,23,var(--pd-hero-overlay, .35))),var(--pd-hero-image) center / cover no-repeat,linear-gradient(135deg,var(--pd-hero-from, var(--brand)),var(--pd-hero-to, var(--accent, #2563eb)))}:root[data-sidebar=light]{--sidebar-bg: var(--surface);--sidebar-text: var(--text-2);--sidebar-active: var(--surface-3)}:root[data-sidebar=light] .sidebar{border-right:1px solid var(--border)}:root[data-sidebar=light] .sidebar .brand{color:var(--text);border-bottom-color:var(--border)}:root[data-sidebar=light] .sidebar .nav-item:hover{color:var(--text)}:root[data-sidebar=light] .sidebar .nav-item:not(.active) .badge{background:var(--surface-3)!important;color:var(--text-2)!important}:root[data-sidebar=light] .sidebar .sidebar-footer{border-top-color:var(--border)}:root[data-sidebar=light] .sidebar .nav-section{color:var(--text-3)}:root[data-sidebar=brand]{--sidebar-bg: var(--brand);--sidebar-text: rgba(255, 255, 255, .86);--sidebar-active: rgba(255, 255, 255, .14)}:root[data-sidebar=custom]{--sidebar-bg: var(--pd-sidebar, #0b1220);--sidebar-text: rgba(255, 255, 255, .82);--sidebar-active: rgba(255, 255, 255, .1)}:root[data-sidebar=brand] .sidebar .nav-item.active,:root[data-sidebar=custom] .sidebar .nav-item.active{background:#ffffff38;box-shadow:none}:root[data-sidebar=brand] .sidebar .nav-section,:root[data-sidebar=custom] .sidebar .nav-section{color:#fff9}:root[data-sidebar=brand] .sidebar .brand .logo{background:#ffffff2e}[data-pattern]{--pd-pattern-size: 22px}[data-pattern=dots]{--pd-pattern: radial-gradient(currentColor 1.2px, transparent 1.6px);--pd-pattern-size: 18px 18px}[data-pattern=grid]{--pd-pattern: linear-gradient(currentColor 1px, transparent 1px), linear-gradient(90deg, currentColor 1px, transparent 1px);--pd-pattern-size: 26px 26px}[data-pattern=diagonal]{--pd-pattern: repeating-linear-gradient(45deg, currentColor 0 1px, transparent 1px 12px);--pd-pattern-size: auto}[data-pattern=waves]{--pd-pattern: radial-gradient(circle at 100% 50%, transparent 20%, currentColor 21%, currentColor 26%, transparent 27%, transparent), radial-gradient(circle at 0% 50%, transparent 20%, currentColor 21%, currentColor 26%, transparent 27%, transparent);--pd-pattern-size: 36px 18px}[data-pattern=circles]{--pd-pattern: radial-gradient(circle, transparent 58%, currentColor 60%, currentColor 64%, transparent 66%);--pd-pattern-size: 34px 34px}[data-pattern=topo]{--pd-pattern: repeating-radial-gradient(circle at 18% 30%, transparent 0 16px, currentColor 17px 18px), repeating-radial-gradient(circle at 82% 80%, transparent 0 22px, currentColor 23px 24px);--pd-pattern-size: auto}:root[data-pattern]:not([data-pattern-target=page]) .portal-hero,.pd-pattern-hero{isolation:isolate}:root[data-pattern]:not([data-pattern-target=page]) .portal-hero:before,.pd-pattern-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;color:#fff;opacity:var(--pd-pattern-opacity, .12);background-image:var(--pd-pattern);background-size:var(--pd-pattern-size);pointer-events:none}:root[data-pattern][data-pattern-target=page] .content,:root[data-pattern][data-pattern-target=both] .content{position:relative;isolation:isolate}:root[data-pattern][data-pattern-target=page] .content:before,:root[data-pattern][data-pattern-target=both] .content:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;color:var(--text-3);opacity:calc(var(--pd-pattern-opacity, .12) * .6);background-image:var(--pd-pattern);background-size:var(--pd-pattern-size);pointer-events:none}.pd-home{container:pdhome / inline-size;display:flex;flex-direction:column;gap:var(--pd-gap, var(--gap, 10px));min-width:0}.pd-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--pd-gap, var(--gap, 10px));align-items:start;grid-auto-flow:row dense}.pd-gap-s{--pd-gap: 6px}.pd-gap-l{--pd-gap: 24px}.pd-railed{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:var(--pd-gap, var(--gap, 10px));align-items:start}.pd-rail{display:flex;flex-direction:column;gap:var(--pd-gap, var(--gap, 10px));min-width:0}@container pdhome (max-width: 900px){.pd-railed{grid-template-columns:minmax(0,1fr)}}.pd-w-full{grid-column:span 6}.pd-w-two_thirds{grid-column:span 4}.pd-w-half{grid-column:span 3}.pd-w-third{grid-column:span 2}@container pdhome (max-width: 980px){.pd-w-third{grid-column:span 3}.pd-w-two_thirds{grid-column:span 6}}@container pdhome (max-width: 720px){.pd-grid>*{grid-column:span 6}.pd-home .portal-hero{padding:26px 20px}.pd-home .portal-hero h1{font-size:22px}}.pd-block{min-width:0;position:relative}.pd-block.pd-selectable{cursor:pointer;border-radius:16px;outline:2px dashed transparent;outline-offset:4px;transition:outline-color .12s}.pd-block.pd-selectable:hover{outline-color:color-mix(in srgb,var(--brand) 45%,transparent)}.pd-block.pd-selected{outline:2px solid var(--brand)}.pd-block .pd-block-tag{position:absolute;top:-10px;left:10px;z-index:3;font-size:11px;font-weight:600;background:var(--brand);color:#fff;border-radius:6px;padding:1px 7px;pointer-events:none}.pd-hero.h-compact{padding:24px 28px;gap:10px}.pd-hero.h-tall{padding:56px 40px;min-height:320px;justify-content:center}.pd-hero.a-centre{align-items:center;text-align:center}.pd-hero.a-centre p,.pd-hero.a-centre .search{margin-left:auto;margin-right:auto}.pd-hero .pd-hero-logo{width:56px;height:56px;border-radius:14px;object-fit:cover;background:#ffffff26;position:relative;z-index:1}.pd-hero>*{position:relative;z-index:1}.pd-hero .pd-hero-actions{display:flex;flex-wrap:wrap;gap:8px}.pd-hero .pd-hero-actions a{display:inline-flex;align-items:center;gap:8px;background:#ffffff29;color:#fff;border-radius:10px;padding:7px 12px;font-weight:600;font-size:13px}.pd-hero .pd-hero-actions a:hover{background:#ffffff42;text-decoration:none}.pd-contact-btn{background:#ffffff26!important;color:#fff!important;border-color:transparent!important}.pd-tiles{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.pd-tiles.c-2{grid-template-columns:repeat(2,minmax(0,1fr))}.pd-tiles.c-3{grid-template-columns:repeat(3,minmax(0,1fr))}.pd-tiles.c-4{grid-template-columns:repeat(4,minmax(0,1fr))}.pd-tiles.c-6{grid-template-columns:repeat(6,minmax(0,1fr))}@container pdhome (max-width: 720px){.pd-tiles.c-3,.pd-tiles.c-4,.pd-tiles.c-6{grid-template-columns:repeat(2,minmax(0,1fr))}}@container pdhome (max-width: 380px){.pd-tiles{grid-template-columns:minmax(0,1fr)!important}}.pd-tile{--tile: var(--brand);display:flex;flex-direction:column;gap:8px;padding:16px;border-radius:14px;border:1px solid var(--border);background:var(--surface);color:var(--text);transition:transform .15s,box-shadow .15s,border-color .15s;min-width:0}.pd-tile:hover{border-color:var(--tile);transform:translateY(-2px);box-shadow:var(--shadow);text-decoration:none}.pd-tile .pd-tile-icon{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--tile) 13%,transparent);color:var(--tile);flex-shrink:0}.pd-tile .t{font-weight:700}.pd-tile .s{font-size:12.5px;color:var(--text-2)}.pd-tiles.s-compact .pd-tile{flex-direction:row;align-items:center;padding:10px 12px;gap:10px}.pd-tiles.s-compact .pd-tile .pd-tile-icon{width:34px;height:34px}.pd-tiles.s-pill{display:flex;flex-wrap:wrap;gap:8px}.pd-tiles.s-pill .pd-tile{flex-direction:row;align-items:center;padding:6px 14px 6px 6px;border-radius:999px;gap:8px}.pd-tiles.s-pill .pd-tile .pd-tile-icon{width:28px;height:28px;border-radius:999px}.pd-tiles.s-pill .pd-tile .s{display:none}.pd-list-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 16px;border-bottom:1px solid var(--border);color:var(--text);min-width:0}.pd-list-row:last-child{border-bottom:0}.pd-list-row:hover{background:var(--surface-2);text-decoration:none}.pd-link-cards{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.pd-link-card{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2);color:var(--text);min-width:0}.pd-link-card:hover{border-color:var(--brand);text-decoration:none}.pd-link-card .ic{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--brand-50);color:var(--brand);flex-shrink:0}.pd-cat-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.pd-cat-tile{--cat: var(--brand);display:flex;gap:10px;align-items:center;padding:12px;border-radius:12px;border:1px solid var(--border);border-left:4px solid var(--cat);background:var(--surface);color:var(--text);min-width:0}.pd-cat-tile:hover{box-shadow:var(--shadow);text-decoration:none}.pd-cat-tile .ic{color:var(--cat);display:grid;place-items:center;flex-shrink:0}.pd-notice{border-radius:12px;padding:12px 14px;border:1px solid var(--border);background:var(--surface-2)}.pd-notice.info{background:var(--info-bg);border-color:color-mix(in srgb,var(--info) 25%,transparent)}.pd-notice.success{background:var(--success-bg);border-color:color-mix(in srgb,var(--success) 25%,transparent)}.pd-notice.warning{background:var(--warning-bg);border-color:color-mix(in srgb,var(--warning) 25%,transparent)}.pd-notice.danger{background:var(--danger-bg);border-color:color-mix(in srgb,var(--danger) 25%,transparent)}.pd-html{overflow-wrap:anywhere}.pd-html :first-child{margin-top:0}.pd-html :last-child{margin-bottom:0}.pd-html img{border-radius:8px;height:auto}.pd-html.tone-brand{background:linear-gradient(135deg,var(--brand-50),var(--surface))}.pd-html.tone-info{background:var(--info-bg)}.pd-html.tone-warning{background:var(--warning-bg)}.pd-image{display:block;overflow:hidden;width:100%;background:var(--surface-3)}.pd-image img{width:100%;height:100%;display:block}.pd-image.rounded{border-radius:16px}.pd-video{position:relative;width:100%;border-radius:12px;overflow:hidden;background:#000}.pd-video iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.pd-spacer.s-s{height:4px}.pd-spacer.s-m{height:16px}.pd-spacer.s-l{height:40px}.pd-spacer.divider{display:flex;align-items:center}.pd-spacer.divider:after{content:"";flex:1;height:1px;background:var(--border)}.pd-status-dot{width:10px;height:10px;border-radius:50%;display:inline-block;flex-shrink:0}.pd-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(200px,1fr);gap:10px;overflow-x:auto;padding-bottom:4px;scroll-snap-type:x mandatory}.pd-strip>*{scroll-snap-align:start}.pd-editor{display:grid;grid-template-columns:340px minmax(0,1fr);gap:16px;align-items:start}.pd-editor .pd-panel{max-height:calc(100vh - 92px);overflow:auto}@media(max-width:1100px){.pd-editor{grid-template-columns:minmax(0,1fr)}.pd-editor .pd-panel{max-height:none}}.pd-editor .pd-sticky{position:sticky;top:76px}@media(max-width:1100px){.pd-editor .pd-sticky{position:static}}.pd-blocklist{display:flex;flex-direction:column;gap:6px;padding:10px}.pd-block-row{display:flex;align-items:center;gap:8px;padding:7px 8px;border:1px solid var(--border);border-radius:10px;background:var(--surface);cursor:pointer;-webkit-user-select:none;user-select:none;min-width:0;transition:border-color .12s,box-shadow .12s,opacity .12s}.pd-block-row:hover{border-color:var(--border-strong)}.pd-block-row.active{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 18%,transparent)}.pd-block-row.is-hidden{opacity:.55}.pd-block-row.dragging{opacity:.35}.pd-block-row .pd-handle{cursor:grab;touch-action:none;color:var(--text-3);display:grid;place-items:center;width:22px;height:28px;border-radius:6px;border:0;background:transparent;padding:0}.pd-block-row .pd-handle:hover{background:var(--surface-3);color:var(--text)}.pd-block-row .pd-handle:active{cursor:grabbing}.pd-block-row .meta{flex:1;min-width:0}.pd-block-row .meta .t{font-weight:600;font-size:13px}.pd-drop-line{height:3px;border-radius:3px;background:var(--brand);margin:-2px 4px}.pd-drag-ghost{position:fixed;z-index:1000;pointer-events:none;opacity:.92;box-shadow:var(--shadow-lg);transform:rotate(-1deg)}.pd-palette{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px}.pd-palette button{display:flex;gap:10px;align-items:flex-start;text-align:left;padding:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface);cursor:pointer}.pd-palette button:hover:not(:disabled){border-color:var(--brand);background:var(--brand-50)}.pd-palette button:disabled{opacity:.5;cursor:not-allowed}.pd-palette .ic{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;background:var(--brand-50);color:var(--brand);flex-shrink:0}.pd-seg{display:inline-flex;border:1px solid var(--border);border-radius:9px;overflow:hidden;background:var(--surface)}.pd-seg button{border:0;background:transparent;padding:5px 10px;font-size:12.5px;cursor:pointer;color:var(--text-2);display:inline-flex;align-items:center;gap:6px}.pd-seg button+button{border-left:1px solid var(--border)}.pd-seg button.on{background:var(--brand);color:#fff}.pd-stage{background:var(--surface-3);border-radius:14px;padding:16px;overflow:hidden;min-height:420px}.pd-stage-inner{transform-origin:top left;background:var(--bg);border-radius:12px;padding:20px}.pd-phone{width:390px;max-width:100%;margin:0 auto;border:10px solid #0f172a;border-radius:36px;overflow:hidden;background:var(--bg);box-shadow:var(--shadow-lg)}.pd-phone .pd-phone-bar{height:22px;background:#0f172a;display:flex;justify-content:center}.pd-phone .pd-phone-bar:after{content:"";width:90px;height:14px;border-radius:0 0 10px 10px;background:#000}.pd-phone .pd-phone-body{padding:14px;max-height:760px;overflow:auto}.pd-items-editor{display:flex;flex-direction:column;gap:8px}.pd-item{border:1px solid var(--border);border-radius:10px;padding:10px;background:var(--surface-2);display:flex;flex-direction:column;gap:8px}.pd-item-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}@media(max-width:480px){.pd-item-grid{grid-template-columns:minmax(0,1fr)}}.pd-inspector .field{margin-bottom:10px}.pd-colour-row{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.pd-swatch{width:22px;height:22px;border-radius:6px;border:1px solid var(--border);cursor:pointer;padding:0}.pd-swatch.on{outline:2px solid var(--text);outline-offset:1px}.pd-icon-trigger{display:inline-flex;align-items:center;gap:8px;min-width:0;max-width:100%}.pd-icon-trigger .pv{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:var(--brand-50);color:var(--brand);flex-shrink:0}.pd-icon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:6px;max-height:380px;overflow:auto;padding:2px}.pd-icon-cell{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 4px 8px;border:1px solid var(--border);border-radius:10px;background:var(--surface);cursor:pointer;color:var(--text);min-width:0}.pd-icon-cell:hover,.pd-icon-cell:focus-visible{border-color:var(--brand);background:var(--brand-50);outline:none}.pd-icon-cell.on{border-color:var(--brand);background:var(--brand);color:#fff}.pd-icon-cell .n{font-size:10.5px;color:inherit;opacity:.75;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-emoji-grid{grid-template-columns:repeat(auto-fill,minmax(46px,1fr))}.pd-emoji-grid .pd-icon-cell{padding:8px 0}.pd-dropzone{border:2px dashed var(--border-strong);border-radius:12px;padding:18px;text-align:center;color:var(--text-2);cursor:pointer;background:var(--surface-2)}.pd-dropzone.over,.pd-dropzone:hover{border-color:var(--brand);background:var(--brand-50)}.pd-checker{background-image:linear-gradient(45deg,var(--surface-3) 25%,transparent 25%),linear-gradient(-45deg,var(--surface-3) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--surface-3) 75%),linear-gradient(-45deg,transparent 75%,var(--surface-3) 75%);background-size:14px 14px;background-position:0 0,0 7px,7px -7px,-7px 0}.pd-icon-card{display:flex;flex-direction:column;gap:8px;align-items:stretch;border:1px solid var(--border);border-radius:12px;padding:12px;background:var(--surface);min-width:0}.pd-icon-card .pv{display:flex;gap:8px;justify-content:center}.pd-icon-card .pv>span{width:56px;height:56px;border-radius:10px;display:grid;place-items:center}.pd-icon-card .pv .l{background:#fff;color:#0f172a;border:1px solid #e5e9f0}.pd-icon-card .pv .d{background:#111a2b;color:#e5ecf6}.pd-theme{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:20px;align-items:start}@media(max-width:1200px){.pd-theme{grid-template-columns:minmax(0,1fr)}}.pd-upload{display:flex;gap:12px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2);min-width:0}.pd-upload .thumb{width:64px;height:64px;border-radius:10px;display:grid;place-items:center;overflow:hidden;flex-shrink:0;border:1px solid var(--border)}.pd-upload .thumb img{width:100%;height:100%;object-fit:contain}.pd-upload.hero .thumb{width:120px}.pd-upload.hero .thumb img{object-fit:cover}.pd-mini-app{border-radius:14px;overflow:hidden;border:1px solid var(--border);display:grid;grid-template-columns:76px minmax(0,1fr);min-height:300px;font-size:12px}.pd-mini-app .sb{padding:10px 8px;display:flex;flex-direction:column;gap:6px}.pd-mini-app .sb .logo{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;margin:0 auto 8px;overflow:hidden}.pd-mini-app .sb .it{height:18px;border-radius:6px}.pd-mini-app .mn{padding:12px;display:flex;flex-direction:column;gap:10px;min-width:0}.pd-mini-app .hero{border-radius:12px;padding:14px;color:#fff;position:relative;overflow:hidden}.pd-mini-app .card{padding:10px;border-radius:10px}.pd-css{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;min-height:180px;-moz-tab-size:2;tab-size:2}.pd-cat-cards{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.pd-cat-cards.cols-1{grid-template-columns:minmax(0,1fr)}.pd-cat-cards.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.pd-cat-cards.cols-auto{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.pd-cat-cards.size-large.cols-auto{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}@media(max-width:1000px){.pd-cat-cards.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.pd-cat-cards,.pd-cat-cards.cols-3{grid-template-columns:minmax(0,1fr)}.pd-cat-cards.size-large{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:380px){.pd-cat-cards.size-large{grid-template-columns:minmax(0,1fr)}}.catalogue-card.pd-card{--cat: var(--brand);min-width:0}.catalogue-card.pd-card:hover{border-color:var(--cat)}.pd-card.size-compact{padding:10px 12px;gap:10px;align-items:center}.pd-card.size-compact .ci-icon{width:34px;height:34px;border-radius:9px}.pd-card.size-large{flex-direction:column;align-items:flex-start;padding:20px;min-height:170px}.pd-card.size-large .ci-icon{width:54px;height:54px;border-radius:14px}.pd-card .ci-icon{background:color-mix(in srgb,var(--cat) 12%,transparent);color:var(--cat)}.pd-card.icon-filled .ci-icon{background:var(--cat);color:#fff}.pd-card.icon-outline .ci-icon{background:transparent;border:1.5px solid color-mix(in srgb,var(--cat) 55%,transparent);color:var(--cat)}.pd-card.icon-emoji .ci-icon{background:var(--surface-3)}.pd-cat-heading{display:flex;align-items:center;gap:10px;margin:8px 0 -4px}.pd-cat-heading .bar{width:4px;height:20px;border-radius:3px;background:var(--cat, var(--brand))}.pd-featured{border-radius:16px;padding:14px;background:linear-gradient(135deg,var(--brand-50),var(--surface));border:1px solid var(--border)}.pd-featured .pd-feat-card{--cat: var(--brand);display:flex;flex-direction:column;gap:6px;padding:12px;border-radius:12px;background:var(--surface);border:1px solid var(--border);color:var(--text);min-width:0}.pd-featured .pd-feat-card:hover{border-color:var(--brand);text-decoration:none}.pd-nav-preview{background:var(--sidebar-bg);color:var(--sidebar-text);border-radius:14px;padding:10px;display:flex;flex-direction:column;gap:2px;min-height:300px}.pd-nav-preview .it{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:8px;font-weight:500;font-size:13px}.pd-nav-preview .it.first{background:var(--brand);color:#fff}.pd-nav-preview .sec{font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:#64748b;padding:10px 10px 4px;font-weight:600}.pd-nav-row{display:grid;grid-template-columns:22px minmax(0,1fr) auto auto;gap:8px;align-items:center;padding:8px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.pd-nav-row .pd-nav-extra{grid-column:2 / -1}@media(max-width:560px){.pd-nav-row{grid-template-columns:22px minmax(0,1fr)}.pd-nav-row>*{grid-column:2 / -1}.pd-nav-row>:first-child{grid-column:1}}.pd-phone-body{container:pdhome / inline-size}@container pdhome (max-width: 700px){.pd-cat-cards,.pd-cat-cards.cols-3,.pd-cat-cards.cols-auto{grid-template-columns:minmax(0,1fr)}.pd-cat-cards.size-large{grid-template-columns:repeat(2,minmax(0,1fr))}.pd-phone-body .page-header{flex-direction:column;align-items:flex-start}}.ab-tally{display:flex;flex-direction:column;gap:5px;min-width:0}.ab-bar{position:relative;display:flex;height:8px;border-radius:999px;background:var(--surface-3);overflow:visible}.ab-tally.compact .ab-bar{height:6px}.ab-bar .yes{background:var(--success);border-radius:999px 0 0 999px}.ab-bar .no{background:var(--danger)}.ab-bar .quorum{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--text);opacity:.55;border-radius:1px}.ab-tally-text{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:center}.ab-tally-text>span{display:inline-flex;align-items:center;gap:3px}.ab-tally-text .yes-t{color:var(--success);font-weight:600}.ab-tally-text .no-t{color:var(--danger);font-weight:600}.ab-members{display:flex;flex-wrap:wrap;gap:4px}.ab-member{display:inline-flex;align-items:center;gap:4px;max-width:170px;padding:2px 8px;border-radius:999px;border:1px solid var(--border);background:var(--surface);font-size:12px;color:var(--text-2)}.ab-member.approved{border-color:color-mix(in srgb,var(--success) 45%,transparent);background:var(--success-bg);color:var(--success)}.ab-member.rejected{border-color:color-mix(in srgb,var(--danger) 45%,transparent);background:var(--danger-bg);color:var(--danger)}.ab-member.skipped,.ab-member.cancelled{opacity:.6;text-decoration:line-through}.ab-member.me{box-shadow:0 0 0 2px var(--brand-100)}.ab-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ab-board-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ab-dot{width:12px;height:12px;border-radius:4px;flex-shrink:0;background:var(--ab-colour, var(--brand))}.ab-item{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;padding:14px 18px;border-top:1px solid var(--border)}.ab-item:first-child{border-top:0}.ab-item.overdue{box-shadow:inset 4px 0 0 var(--danger)}.ab-item .ab-title{font-weight:650;font-size:15px;color:var(--text)}.ab-item .ab-summary{font-size:13px;color:var(--text-2);white-space:pre-line;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ab-item .ab-summary.open{-webkit-line-clamp:unset;display:block}.ab-side{display:flex;flex-direction:column;gap:10px;min-width:0}.ab-actions{display:flex;flex-wrap:wrap;gap:6px}.ab-form{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:12.5px}.ab-form span b{color:var(--text-2);font-weight:600}.ab-history{display:flex;flex-direction:column;gap:10px}.ab-history .ev{display:grid;grid-template-columns:22px minmax(0,1fr);gap:8px;font-size:13px}.ab-history .ev .ic{width:22px;height:22px;border-radius:11px;display:grid;place-items:center;background:var(--surface-3);color:var(--text-2)}.ab-history .ev .ic.approve{background:var(--success-bg);color:var(--success)}.ab-history .ev .ic.reject{background:var(--danger-bg);color:var(--danger)}.ab-history .ev .ic.outcome{background:var(--brand-100);color:var(--brand-600)}.ab-rule{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 14px;border-top:1px solid var(--border)}.ab-rule:first-child{border-top:0}.ab-cond{display:grid;grid-template-columns:minmax(0,1fr) 140px minmax(0,1fr) auto;gap:8px;align-items:center}.ab-member-row{display:grid;grid-template-columns:minmax(0,1fr) 210px auto;gap:8px;align-items:center;padding:6px 0;border-bottom:1px dashed var(--border)}@media(max-width:800px){.ab-item{grid-template-columns:minmax(0,1fr);padding:12px 14px}.ab-rule{grid-template-columns:minmax(0,1fr)}.ab-cond{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.ab-member-row{grid-template-columns:minmax(0,1fr) auto}.ab-member-row>:nth-child(2){grid-column:1 / -1;order:3}}.ab-subhead{margin-top:6px;padding-top:10px;border-top:1px solid var(--border);font-size:13.5px}.siem-json{max-height:520px;overflow:auto;font-size:12px;white-space:pre-wrap;word-break:break-word;margin:0;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px}.siem-json.short{max-height:260px}.siem-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.siem-conn{display:flex;gap:12px;align-items:flex-start}.siem-conn .dot{width:10px;height:10px;border-radius:50%;margin-top:5px;flex-shrink:0;background:var(--text-3)}.siem-conn .dot.ok{background:var(--success)}.siem-conn .dot.bad{background:var(--danger)}.siem-conn .dot.off{background:var(--border-strong)}.siem-map-row{display:grid;grid-template-columns:minmax(0,1fr) 170px 32px;gap:8px;align-items:center;margin-bottom:6px}.siem-cat{display:grid;grid-template-columns:44px minmax(0,1fr) 120px;gap:12px;align-items:center;padding:10px 14px;border-bottom:1px solid var(--border)}.siem-cat:last-child{border-bottom:0}.siem-cat .name{font-weight:600}.siem-cat.off .name{color:var(--text-3)}.siem-rule{display:grid;grid-template-columns:minmax(0,1.2fr) 110px minmax(0,1fr) minmax(0,1fr) 110px 32px 32px;gap:8px;align-items:center;margin-bottom:8px}.siem-preview-item{border-bottom:1px solid var(--border)}.siem-preview-item:last-child{border-bottom:0}.siem-preview-item>button{width:100%;display:flex;align-items:center;gap:8px;justify-content:space-between;background:transparent;border:0;padding:9px 14px;color:var(--text);font:inherit;cursor:pointer;text-align:left}.siem-preview-item>button:hover{background:var(--surface-2)}.siem-preview-item.excluded .lbl{color:var(--text-3);text-decoration:line-through}.siem-preview-body{padding:0 14px 12px}.siem-widget-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.siem-widget-stats a,.siem-widget-stats div{display:flex;flex-direction:column;color:var(--text);min-width:0}.siem-widget-stats b{font-size:22px;font-weight:800;line-height:1.2}@media(max-width:1100px){.siem-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){.siem-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.siem-map-row{grid-template-columns:minmax(0,1fr) 32px}.siem-map-row>:nth-child(2){grid-column:1 / 2}.siem-cat{grid-template-columns:44px minmax(0,1fr)}.siem-cat>:nth-child(3){grid-column:2 / 3}.siem-rule{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding-bottom:8px;border-bottom:1px dashed var(--border)}.siem-rule>:first-child{grid-column:1 / -1}.siem-widget-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){.siem-filters .search-input{flex:1 1 100%}}.ds-sources{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.ds-source{display:flex;flex-direction:column;gap:10px}.ds-source .ds-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.ds-source h3{margin:0;font-size:15px}.ds-times{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 12px;font-size:13px;align-items:center}.ds-times .k{color:var(--text-2)}.ds-counts{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12px;color:var(--text-2)}.ds-counts b{color:var(--text)}.ds-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}.ds-diff{display:flex;flex-direction:column;gap:2px;font-size:12px;min-width:0}.ds-diff-row{display:flex;gap:6px;min-width:0;flex-wrap:wrap}.ds-diff-k{font-family:var(--mono, ui-monospace, monospace);color:var(--text-2);flex-shrink:0}.ds-diff-v{min-width:0;overflow-wrap:anywhere}.ds-from{text-decoration:line-through;color:var(--text-2)}.ds-to{color:var(--text);font-weight:500}.ds-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.ds-filters .input,.ds-filters .select{width:auto;min-width:140px}.ds-toggle-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 0;border-bottom:1px dashed var(--border)}.ds-toggle-row:last-child{border-bottom:0}.ds-toggle-row .l{min-width:0}.ds-rule{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--border)}.ds-rule:last-child{border-bottom:0}.ds-rule .ds-rule-sum{font-size:13px;color:var(--text-2);overflow-wrap:anywhere}.ds-rule .ds-rule-sum code{font-size:12px}.ds-rule .ds-order{display:flex;flex-direction:column;gap:2px}.ds-rule .ds-order button{padding:0;height:14px;line-height:1;border:0;background:transparent;color:var(--text-2);cursor:pointer}.ds-rule .ds-order button:disabled{opacity:.3;cursor:default}.ds-preview-summary{display:flex;flex-wrap:wrap;gap:8px}.ds-kv{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 36px;gap:6px;align-items:center}.ds-kv+.ds-kv{margin-top:6px}.ds-test-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.ds-test-grid pre{margin:0;font-size:11px;max-height:320px;overflow:auto;background:var(--surface-2);padding:8px;border-radius:var(--radius)}.ds-perm{display:flex;justify-content:space-between;gap:10px;padding:6px 0;border-bottom:1px dashed var(--border)}.ds-perm:last-child{border-bottom:0}.ds-side-list{display:flex;flex-direction:column;gap:8px}.ds-side-list .item{display:flex;flex-direction:column;gap:2px;padding-bottom:8px;border-bottom:1px dashed var(--border)}.ds-side-list .item:last-child{border-bottom:0;padding-bottom:0}@media(max-width:700px){.ds-test-grid{grid-template-columns:minmax(0,1fr)}.ds-rule{grid-template-columns:24px minmax(0,1fr)}.ds-rule .ds-rule-actions{grid-column:2;justify-content:flex-end}.ds-filters .input,.ds-filters .select{min-width:0;flex:1 1 45%}}.sw-icon{display:inline-grid;place-items:center;flex-shrink:0;background:var(--brand-50);color:var(--brand);border:1px solid color-mix(in srgb,var(--brand) 18%,transparent);overflow:hidden}.sw-icon.img{background:var(--surface);border-color:var(--border)}.sw-icon.img img{width:100%;height:100%;object-fit:contain;padding:3px}.sw-name{display:inline-flex;align-items:center;gap:10px;min-width:0;color:var(--text);max-width:100%}a.sw-name:hover{text-decoration:none}a.sw-name:hover .bold{color:var(--brand)}.sw-chip-x{border:0;background:transparent;padding:0;margin-left:2px;display:inline-grid;place-items:center;color:inherit;opacity:.6;cursor:pointer}.sw-chip-x:hover{opacity:1}.sw-seatbar{height:6px;border-radius:999px;background:var(--surface-3);overflow:hidden;min-width:60px}.sw-seatbar>div{height:100%;border-radius:999px}.sw-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.sw-toggles{display:flex;flex-wrap:wrap;gap:6px}.sw-toggles .chip{min-height:32px}.sw-head{display:flex;gap:16px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap}.sw-head-main{display:flex;gap:14px;align-items:flex-start;min-width:0;flex:1 1 360px}.sw-head-main h1{overflow-wrap:anywhere}.sw-head-actions{display:flex;gap:8px;flex-wrap:wrap}.sw-note{border-left:3px solid var(--border-strong);padding:8px 12px;background:var(--surface-2);border-radius:0 var(--radius-sm) var(--radius-sm) 0;white-space:pre-wrap}.sw-note.success{border-color:var(--success)}.sw-note.info{border-color:var(--info)}.sw-note.warning{border-color:var(--warning)}.sw-note.danger{border-color:var(--danger);background:var(--danger-bg)}.sw-code{display:flex;gap:8px;align-items:center;background:var(--surface-3);border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 8px 6px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;min-width:0}.sw-code code{flex:1;min-width:0;overflow-x:auto;white-space:nowrap;background:transparent;padding:0}.sw-list-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px;border-bottom:1px solid var(--border);color:var(--text);min-width:0}.sw-list-row:last-child{border-bottom:0}a.sw-list-row:hover{background:var(--surface-2);text-decoration:none}.sw-pattern-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;gap:8px;align-items:center}.sw-portal-head{display:flex;flex-direction:column;gap:12px}.sw-search{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:4px 6px 4px 14px;box-shadow:var(--shadow-sm)}.sw-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;padding:10px 0;font-size:15px}.sw-search:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 18%,transparent)}.sw-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.sw-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.sw-card{display:flex;flex-direction:column;gap:10px;padding:16px;border-radius:14px;border:1px solid var(--border);background:var(--surface);color:var(--text);text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s;min-width:0;font:inherit}.sw-card:hover,.sw-card:focus-visible{border-color:var(--brand);box-shadow:var(--shadow);transform:translateY(-1px);outline:none}.sw-card.prohibited{border-style:dashed}.sw-card .top{display:flex;gap:12px;align-items:flex-start;min-width:0}.sw-card .desc{color:var(--text-2);font-size:13px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sw-card .foot{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:auto}.sw-howto{display:grid;gap:10px}.sw-howto .step{display:flex;gap:12px;align-items:flex-start;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2)}.sw-howto .step .n{width:26px;height:26px;border-radius:50%;background:var(--brand);color:#fff;display:grid;place-items:center;font-weight:700;font-size:13px;flex-shrink:0}.sw-alt{display:flex;gap:10px;align-items:center;padding:10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;text-align:left;font:inherit;width:100%}.sw-alt:hover{border-color:var(--brand)}.sw-tile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.sw-tile{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 6px;border-radius:var(--radius-sm);color:var(--text);text-align:center;font-size:12.5px;min-width:0}.sw-tile:hover{background:var(--surface-2);text-decoration:none}.sw-tile span.label{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sw-mine{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}@media(max-width:1100px){.sw-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){.sw-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.sw-grid,.sw-mine,.sw-pattern-row{grid-template-columns:minmax(0,1fr)}.sw-head-actions .btn{flex:1 1 auto}}.sw-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.docs-type{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--text-2);white-space:nowrap}.docs-type svg{color:var(--tc, var(--text-3))}.docs-source{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--text-2);white-space:nowrap}.docs-source.sharepoint svg{color:#0078d4}.docs-source.kb svg{color:var(--brand)}.docs-num{font-family:ui-monospace,Menlo,monospace;font-size:12px;color:var(--text-2);white-space:nowrap}.docs-hub{display:grid;grid-template-columns:250px minmax(0,1fr);gap:18px;align-items:start}.docs-tree{position:sticky;top:calc(var(--topbar-h) + 12px);max-height:calc(100vh - var(--topbar-h) - 24px);overflow:auto}.docs-tree .tree-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px 6px}.docs-tree .tree-head h4{margin:0}.docs-tree ul{list-style:none;margin:0;padding:0 6px 10px}.docs-tree li button{width:100%;display:flex;align-items:center;gap:6px;padding:6px 8px;border:0;border-radius:8px;background:transparent;color:var(--text);font:inherit;font-size:13px;cursor:pointer;text-align:left}.docs-tree li button:hover{background:var(--surface-3)}.docs-tree li button.on{background:var(--brand-50);color:var(--brand);font-weight:600}.docs-tree li button .n{margin-left:auto;font-size:11px;color:var(--text-3)}.docs-tree li button .dot{width:8px;height:8px;border-radius:3px;flex-shrink:0;background:var(--cc, var(--border-strong))}.docs-tree .twisty{width:16px;height:16px;display:inline-grid;place-items:center;color:var(--text-3);flex-shrink:0}.docs-tree .inactive{opacity:.55}.docs-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:14px}.docs-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.docs-card{display:flex;flex-direction:column;gap:8px;padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);box-shadow:var(--shadow-sm);transition:box-shadow .15s,transform .15s;min-width:0;border-top:3px solid var(--tc, var(--border))}.docs-card:hover{text-decoration:none;box-shadow:var(--shadow);transform:translateY(-1px)}.docs-card .t{font-weight:600;line-height:1.35}.docs-card .s{font-size:12.5px;color:var(--text-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.docs-card .foot{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:auto;font-size:12px;color:var(--text-3)}.docs-banner{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--radius-sm);background:var(--brand-50);border:1px solid var(--brand-100);margin-bottom:12px;flex-wrap:wrap}.docs-flag{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;font-weight:600;color:var(--warning)}.docs-flag.danger{color:var(--danger)}.docs-head{display:flex;gap:14px;align-items:flex-start}.docs-head .ic{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;flex-shrink:0;color:var(--tc, var(--brand));background:color-mix(in srgb,var(--tc, var(--brand)) 12%,transparent)}.docs-steps{display:flex;gap:0;flex-wrap:wrap;margin:4px 0 14px}.docs-steps .step{position:relative;padding:6px 14px 6px 22px;font-size:12px;font-weight:600;color:var(--text-3);background:var(--surface-2);border:1px solid var(--border);margin-right:-1px}.docs-steps .step:first-child{border-radius:8px 0 0 8px;padding-left:14px}.docs-steps .step:last-child{border-radius:0 8px 8px 0}.docs-steps .step.done{color:var(--success);background:var(--success-bg)}.docs-steps .step.now{color:#fff;background:var(--brand);border-color:var(--brand)}.docs-preview{border:1px solid var(--border);border-radius:var(--radius-sm);padding:16px;background:var(--surface-2)}.docs-file{display:flex;gap:12px;align-items:center;padding:14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);flex-wrap:wrap}.docs-file .big{width:44px;height:44px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,#0078d4 12%,transparent);color:#0078d4;flex-shrink:0}.docs-trail{list-style:none;margin:0;padding:0}.docs-trail li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;padding:8px 0;border-bottom:1px dashed var(--border)}.docs-trail li:last-child{border-bottom:0}.docs-trail .pip{width:10px;height:10px;border-radius:50%;margin-top:5px;background:var(--border-strong)}.docs-trail .pip.good{background:var(--success)}.docs-trail .pip.warn{background:var(--warning)}.docs-trail .pip.bad{background:var(--danger)}.docs-trail .pip.brand{background:var(--brand)}.docs-review-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:8px 0;border-bottom:1px solid var(--border)}.docs-review-row:last-child{border-bottom:0}.sp-browser{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.sp-crumbs{display:flex;flex-wrap:wrap;gap:4px;align-items:center;padding:8px 10px;background:var(--surface-2);border-bottom:1px solid var(--border);font-size:12.5px}.sp-crumbs button{border:0;background:none;color:var(--brand);cursor:pointer;font:inherit;padding:2px 4px;border-radius:4px}.sp-crumbs button:hover{background:var(--surface-3)}.sp-list{max-height:380px;overflow:auto}.sp-row{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 12px;border-bottom:1px solid var(--border);cursor:pointer;background:var(--surface);width:100%;border-left:0;border-right:0;border-top:0;text-align:left;font:inherit;color:var(--text)}.sp-row:hover{background:var(--surface-3)}.sp-row.sel{background:var(--brand-50);box-shadow:inset 3px 0 0 var(--brand)}.sp-row .meta{font-size:11.5px;color:var(--text-3);white-space:nowrap}.pdocs-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.pdocs-tile{display:flex;gap:12px;align-items:flex-start;padding:16px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm);text-align:left;cursor:pointer;font:inherit;transition:box-shadow .15s,transform .15s}.pdocs-tile:hover,.pdocs-tile.on{box-shadow:var(--shadow);transform:translateY(-1px);text-decoration:none}.pdocs-tile.on{border-color:var(--brand)}.pdocs-tile .ic{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;flex-shrink:0;color:var(--cc, var(--brand));background:color-mix(in srgb,var(--cc, var(--brand)) 13%,transparent)}.pdocs-list{display:flex;flex-direction:column}.pdocs-item{display:flex;gap:12px;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border);color:var(--text)}.pdocs-item:last-child{border-bottom:0}.pdocs-item:hover{background:var(--surface-2);text-decoration:none}.pdocs-item .ic{color:var(--tc, var(--brand));flex-shrink:0}.pdocs-open{display:flex;gap:14px;align-items:center;padding:18px;border-radius:var(--radius);background:var(--brand-50);border:1px solid var(--brand-100);flex-wrap:wrap}@media(max-width:1100px){.docs-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.docs-hub{grid-template-columns:minmax(0,1fr)}.docs-tree{position:static;max-height:none}.docs-tree.collapsed ul{display:none}}@media(max-width:560px){.docs-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.docs-cards{grid-template-columns:minmax(0,1fr)}.docs-head .ic{display:none}.docs-steps .step{padding:5px 9px;font-size:11px}}.docs-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.docsr-box{display:flex;align-items:center;gap:10px;padding:6px 12px;margin-bottom:14px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm, none);flex-wrap:wrap}.docsr-box input{flex:1 1 220px;min-width:0;border:0;outline:0;background:transparent;padding:11px 0;font-size:15px;color:var(--text);font-family:inherit}.docsr-filters{margin-bottom:12px}.docsr-answer{border-left:3px solid var(--brand)}.docsr-cites{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:12px;padding-top:10px;border-top:1px solid var(--border)}.docsr-cite{display:inline-flex;align-items:center;gap:5px;font-size:12px;background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:3px 10px;max-width:100%}.docsr-cite a{color:var(--text-2);display:inline-flex;align-items:center;gap:5px;min-width:0}.docsr-cite a:hover{color:var(--brand)}.docsr-cite .n{display:inline-grid;place-items:center;width:16px;height:16px;border-radius:8px;background:var(--brand);color:#fff;font-size:10px;font-weight:700;flex-shrink:0}.docsr-row{display:flex;gap:12px;align-items:flex-start;padding:12px 14px}.docsr-main{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1}.docsr-title{font-weight:600;font-size:15px;display:inline-flex;align-items:center;gap:7px;min-width:0}.docsr-actions{display:flex;flex-direction:column;gap:6px;flex-shrink:0}.docsr-score{display:block;width:64px;height:5px;border-radius:3px;background:var(--surface-3);flex-shrink:0;overflow:hidden}.docsr-score>span{display:block;height:100%;background:var(--brand)}.docsr-snip{margin:2px 0;color:var(--text-2);font-size:13px;line-height:1.55}.docsr-snip mark{background:color-mix(in srgb,var(--warning, #f59e0b) 30%,transparent);color:inherit;border-radius:3px;padding:0 1px}@media(max-width:560px){.docsr-row{flex-direction:column}.docsr-actions{flex-direction:row;width:100%}.docsr-score{display:none}}.docsr-sp .card-header h3{font-size:13px}.docsr-sprow{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 14px;border-bottom:1px solid var(--border);color:var(--text);text-decoration:none}.docsr-sprow:last-of-type{border-bottom:0}.docsr-sprow:hover{background:var(--surface-3)}@media(max-width:560px){.docsr-sprow{grid-template-columns:20px minmax(0,1fr);row-gap:2px}.docsr-sprow>span:last-child{grid-column:2}}.kbi-nav{margin-bottom:4px;overflow-x:auto}.kbi-nav .tabs{flex-wrap:nowrap}.kbi-meter{height:8px;border-radius:999px;background:var(--surface-3);overflow:hidden;min-width:60px}.kbi-meter .fill{height:100%;border-radius:999px;background:var(--brand)}.kbi-meter .fill.success{background:var(--success)}.kbi-meter .fill.warning{background:var(--warning)}.kbi-meter .fill.danger{background:var(--danger)}.kbi-lines{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px}.kbi-lines li{line-height:1.45}.kbi-kw{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.kbi-kw span{font-size:11px;padding:1px 7px;border-radius:999px;background:var(--surface-3);color:var(--text-2)}.kbi-rank{display:inline-grid;place-items:center;min-width:26px;height:26px;border-radius:8px;background:var(--brand-50);color:var(--brand-600);font-weight:700;font-size:12px}:root[data-theme=dark] .kbi-rank{color:#5eead4}.kbi-sample{border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;background:var(--surface)}.kbi-sample+.kbi-sample{margin-top:8px}.kbi-sample .res{margin-top:6px;font-size:13px;color:var(--text-2);white-space:pre-wrap;word-break:break-word;border-left:3px solid var(--brand-100);padding-left:8px}.kbi-sample .res.none{border-left-color:var(--warning-bg);color:var(--text-3);font-style:italic}.kbi-impact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.kbi-impact .cell{background:var(--surface-2);border-radius:var(--radius-sm);padding:10px 12px}.kbi-impact .cell .v{font-size:20px;font-weight:800;letter-spacing:-.01em}.kbi-impact .cell .k{font-size:11.5px;color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.kbi-bulk{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:8px 12px;border-radius:var(--radius-sm);background:var(--brand-50);border:1px solid var(--brand-100)}.kbi-body-editor{font:12.5px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;min-height:280px}.kbi-side-item{padding:8px 0;border-bottom:1px solid var(--border)}.kbi-side-item:last-child{border-bottom:0}.kbi-map-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 36px;gap:8px;align-items:center}.kbi-cov-cell{display:flex;align-items:center;gap:8px;min-width:140px}.kbi-cov-cell .kbi-meter{flex:1}.kbi-pre{white-space:pre-wrap;word-break:break-word;font-size:13px}@media(max-width:640px){.kbi-impact{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.kbi-map-row{grid-template-columns:minmax(0,1fr) 36px}.kbi-map-row>:nth-child(2){grid-column:1}.kbi-map-row>:nth-child(3){grid-row:1 / span 2;grid-column:2}}:root{--svc-ok: var(--success);--svc-maint: var(--info);--svc-degraded: #b45309;--svc-partial: #c2410c;--svc-major: var(--danger)}:root[data-theme=dark]{--svc-degraded: #fbbf24;--svc-partial: #fb923c}.svc-health{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap;line-height:1.6;color:var(--svc-ok);background:color-mix(in srgb,currentColor 12%,transparent)}.svc-health.maintenance{color:var(--svc-maint)}.svc-health.degraded{color:var(--svc-degraded)}.svc-health.partial_outage{color:var(--svc-partial)}.svc-health.major_outage{color:var(--svc-major)}.svc-health.lg{font-size:13px;padding:4px 12px}.svc-crit{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--text-2);white-space:nowrap}.svc-crit .dot{width:8px;height:8px;border-radius:2px;background:var(--c)}.svc-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.svc-strip button{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);cursor:pointer;text-align:left;color:var(--text);min-width:0}.svc-strip button:hover{border-color:var(--border-strong)}.svc-strip button.on{border-color:var(--brand);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand) 25%,transparent)}.svc-strip .n{font-size:22px;font-weight:800;line-height:1}.svc-strip .lbl{font-size:12px;color:var(--text-2)}.svc-strip .ic{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;flex-shrink:0;background:color-mix(in srgb,currentColor 12%,transparent)}.svc-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.svc-card{display:flex;flex-direction:column;gap:10px;padding:16px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--text);position:relative;overflow:hidden;min-width:0}.svc-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--svc-ok)}.svc-card.maintenance:before{background:var(--svc-maint)}.svc-card.degraded:before{background:var(--svc-degraded)}.svc-card.partial_outage:before{background:var(--svc-partial)}.svc-card.major_outage:before{background:var(--svc-major)}.svc-card:hover{text-decoration:none;box-shadow:var(--shadow);border-color:var(--border-strong)}.svc-card .head{display:flex;gap:10px;align-items:flex-start}.svc-card .ticon{width:36px;height:36px;border-radius:10px;background:var(--surface-3);display:grid;place-items:center;color:var(--text-2);flex-shrink:0}.svc-card .reason{font-size:12px;color:var(--text-2);border-top:1px dashed var(--border);padding-top:8px}.svc-card .meta{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--text-3)}.svc-dep{display:flex;gap:10px;align-items:center;padding:10px 14px;border-bottom:1px solid var(--border);min-width:0}.svc-dep:last-child{border-bottom:0}.svc-dep .body{flex:1;min-width:0}.svc-path{font-size:11.5px;color:var(--text-3);display:flex;flex-wrap:wrap;gap:4px;align-items:center}.svc-avail{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:8px}.svc-avail .m{border:1px solid var(--border);border-radius:10px;padding:8px 10px}.svc-avail .m .v{font-weight:700;font-variant-numeric:tabular-nums}.svc-avail .m.miss{border-color:color-mix(in srgb,var(--danger) 45%,var(--border));background:color-mix(in srgb,var(--danger) 6%,transparent)}.svc-cause{padding:8px 10px;border-radius:8px;background:var(--surface-2);font-size:13px}.svc-map-page{display:flex;flex-direction:column;gap:12px;min-height:calc(100vh - 140px)}.svc-map-area{position:relative;flex:1;display:flex;flex-direction:column;min-height:520px}.svc-map-wrap{position:relative;flex:1;min-height:520px;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--surface-2)}.svc-map-wrap .react-flow{--xy-background-color: var(--surface-2);--xy-node-background-color: var(--surface);--xy-edge-stroke: var(--border-strong);--xy-minimap-background-color: var(--surface);--xy-controls-button-background-color: var(--surface);--xy-controls-button-color: var(--text);--xy-controls-button-border-color: var(--border);--xy-controls-button-background-color-hover: var(--surface-3);color:var(--text)}.svc-node{width:200px;padding:8px 10px;border-radius:10px;background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--svc-ok);box-shadow:var(--shadow-sm);font-size:12px;color:var(--text);cursor:pointer}.svc-node.maintenance{border-left-color:var(--svc-maint)}.svc-node.degraded{border-left-color:var(--svc-degraded)}.svc-node.partial_outage{border-left-color:var(--svc-partial)}.svc-node.major_outage{border-left-color:var(--svc-major)}.svc-node.ci{border-style:dashed;border-left-style:solid;background:var(--surface-2)}.svc-node.focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 40%,transparent)}.svc-node.selected{outline:2px solid var(--brand)}.svc-node.dim{opacity:.35}.svc-node .t{font-weight:700;font-size:12.5px;display:flex;align-items:center;gap:6px}.svc-node .t span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.svc-node .s{color:var(--text-3);font-size:11px;display:flex;justify-content:space-between;gap:6px;margin-top:3px}.svc-map-panel{position:absolute;top:12px;right:12px;width:320px;max-height:calc(100% - 24px);overflow:auto;z-index:10}.svc-map-legend{display:flex;gap:10px;flex-wrap:wrap;font-size:12px;color:var(--text-2);align-items:center}.svc-map-legend .ln{display:inline-block;width:22px;height:0;border-top:2px solid var(--text-3);vertical-align:middle;margin-right:4px}.svc-map-legend .ln.soft{border-top-style:dashed}@media(max-width:820px){.svc-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.svc-map-panel{position:static;width:auto;max-height:none;margin-top:12px}.svc-map-wrap{min-height:420px}.svc-map-wrap .react-flow__minimap{display:none}}.fl-section{display:flex;flex-direction:column;gap:10px}.fl-section+.fl-section{margin-top:18px}.fl-sec-head{display:flex;flex-direction:column;gap:2px;border-bottom:1px solid var(--border);padding-bottom:6px}.fl-sec-head h4{margin:0;font-size:13px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--text-2)}.fl-sec-head p{margin:0}.fl-collapse{display:flex;align-items:center;gap:8px;background:none;border:0;padding:0;cursor:pointer;color:inherit;text-align:left;width:100%}.fl-collapse svg{transition:transform .15s ease;flex:0 0 auto;color:var(--text-3, var(--text-2))}.fl-collapse[aria-expanded=false] svg{transform:rotate(-90deg)}.fl-block-heading{margin:4px 0 0;font-size:14px;font-weight:600}.fl-block-sub{margin:0}.fl-divider{border:0;border-top:1px solid var(--border);margin:6px 0}.fl-readonly{min-height:36px;display:flex;align-items:center;padding:7px 10px;border:1px solid var(--border);border-radius:var(--radius, 8px);background:var(--surface-2);color:var(--text-2);word-break:break-word}.fl-locked{color:var(--text-2)}.fl-designer{display:grid;grid-template-columns:200px minmax(0,1fr) 290px;gap:12px;align-items:start}.fl-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius, 10px);overflow:hidden;position:sticky;top:12px;max-height:calc(100vh - 90px);display:flex;flex-direction:column}.fl-panel>.h{padding:10px 12px;border-bottom:1px solid var(--border);font-weight:600;font-size:13px;display:flex;align-items:center;justify-content:space-between;gap:8px}.fl-panel>.b{padding:10px 12px;overflow:auto;display:flex;flex-direction:column;gap:10px}.fl-pal{display:flex;align-items:center;gap:8px;width:100%;padding:7px 9px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);cursor:grab;font-size:12.5px;color:var(--text);text-align:left}.fl-pal:hover{border-color:var(--brand)}.fl-canvas{display:flex;flex-direction:column;gap:12px;min-width:0}.fl-sec{border:1px solid var(--border);border-radius:var(--radius, 10px);background:var(--surface)}.fl-sec.selected{border-color:var(--brand);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand) 22%,transparent)}.fl-sec.drop-into{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 5%,var(--surface))}.fl-sec-bar{display:flex;align-items:center;gap:6px;padding:7px 10px;border-bottom:1px solid var(--border);background:var(--surface-2);border-radius:var(--radius, 10px) var(--radius, 10px) 0 0}.fl-sec-bar .t{flex:1;min-width:0;font-weight:600;font-size:13px}.fl-sec-body{padding:10px}.fl-grid{display:grid;gap:8px}.fl-empty{border:1px dashed var(--border);border-radius:8px;padding:14px;text-align:center;color:var(--text-2);font-size:12.5px}.fl-card{display:flex;align-items:center;gap:4px;padding:6px;border:1px solid var(--border);border-radius:8px;background:var(--surface);cursor:pointer;min-width:0}.fl-card.selected{border-color:var(--brand);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand) 20%,transparent)}.fl-card.hidden{opacity:.55;border-style:dashed}.fl-card.dragging{opacity:.35}.fl-card.drop-before{box-shadow:-3px 0 0 0 var(--brand)}.fl-card.drop-after{box-shadow:3px 0 0 0 var(--brand)}.fl-card .grip{background:none;border:0;padding:2px;cursor:grab;color:var(--text-3, var(--text-2));display:flex}.fl-card .body{flex:1;min-width:0}.fl-card .lab{font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.fl-card .meta{display:flex;align-items:center;gap:4px;flex-wrap:wrap;font-size:10.5px;color:var(--text-2)}.fl-card .grip{flex:0 0 auto}.fl-card .acts{display:none;gap:2px;flex:0 0 auto}.fl-card:hover .acts,.fl-card.selected .acts,.fl-card:focus-within .acts{display:flex}.fl-ghost{position:fixed;z-index:90;pointer-events:none;transform:translate(10px,10px);background:var(--surface);border:1px solid var(--brand);border-radius:8px;padding:5px 9px;font-size:12px;display:flex;gap:6px;align-items:center;box-shadow:var(--shadow-2, 0 6px 20px rgba(0,0,0,.18))}.fl-code{font:11px/1.4 var(--mono, ui-monospace, monospace);background:var(--surface-3, var(--surface-2));border-radius:4px;padding:0 4px}.fl-preview{border:1px solid var(--border);border-radius:var(--radius, 10px);padding:14px;background:var(--surface)}.fl-preview.mobile{max-width:390px;margin:0 auto}.fl-diff{font-size:12.5px;display:flex;flex-direction:column;gap:4px}@media(max-width:1200px){.fl-designer{grid-template-columns:1fr}.fl-panel{position:static;max-height:none}}.fl-canvas.fl-rec{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:12px;align-items:start}.fl-rec-col{display:flex;flex-direction:column;gap:10px;min-width:0;min-height:120px;border:1px dashed var(--border);border-radius:var(--radius, 10px);padding:10px;background:color-mix(in srgb,var(--surface-2) 45%,transparent)}.fl-rec-head{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-2)}.fl-designer.rec{grid-template-columns:180px minmax(0,1fr) 270px}.fl-rec-panel .fl-sec-bar{flex-wrap:wrap;row-gap:2px}.fl-rec-panel .fl-sec-bar .t{flex:1 0 100%}.fl-rec-panel .fl-sec-bar .grip{order:-1}.fl-rec-panel .fl-card .lab{white-space:normal}.fl-rec-panel.hidden{opacity:.55;border-style:dashed}.fl-rec-panel.dragging{opacity:.4}.fl-rec-panel.drop-before{box-shadow:0 -3px 0 0 var(--brand)}.fl-rec-panel.drop-after{box-shadow:0 3px 0 0 var(--brand)}.fl-sec-bar .grip{background:none;border:0;padding:2px;cursor:grab;color:var(--text-3, var(--text-2));display:flex;flex:0 0 auto}.fl-tab-row{display:flex;align-items:center;gap:2px;flex-wrap:wrap;font-size:12.5px;border:1px solid var(--border);border-radius:8px;padding:4px 6px;background:var(--surface-2)}.fl-tab-row>span:first-child{flex:1 0 100%;font-weight:500}.fl-tab-row .btn{margin-left:auto}.fl-tab-row .btn~.btn{margin-left:0}.fl-tab-row.hidden{opacity:.55;border-style:dashed}.fl-tab-row .truncate{flex:1;min-width:0}.fl-rec-narrow{display:block}@media(max-width:900px){.fl-canvas.fl-rec{grid-template-columns:minmax(0,1fr)}}:root{--st-ok: var(--success);--st-maint: var(--info);--st-degraded: #b45309;--st-partial: #c2410c;--st-major: var(--danger);--st-nodata: var(--surface-3);--st-solid-degraded: #b45309;--st-solid-partial: #c2410c;--st-on-solid: #fff}:root[data-theme=dark]{--st-degraded: #fbbf24;--st-partial: #fb923c}.st-muted{color:var(--text-2)}.st-row{display:flex;align-items:center;gap:8px}.st-chip{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;white-space:nowrap;color:var(--st-ok)}.st-chip.maint{color:var(--st-maint)}.st-chip.degraded{color:var(--st-degraded)}.st-chip.partial{color:var(--st-partial)}.st-chip.major{color:var(--st-major)}.st-pill{display:inline-flex;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:600;background:var(--surface-3);color:var(--text-2);white-space:nowrap}.st-pill.danger{background:var(--danger-bg);color:var(--danger)}.st-pill.warning{background:var(--warning-bg);color:var(--warning)}.st-pill.info{background:var(--info-bg);color:var(--info)}.st-pill.success{background:var(--success-bg);color:var(--success)}.st-view{display:flex;flex-direction:column;gap:24px}.st-overall{display:flex;align-items:center;gap:14px;padding:18px 20px;border-radius:var(--radius);color:var(--st-on-solid);background:var(--st-ok);box-shadow:var(--shadow)}.st-overall.maint{background:var(--st-maint)}.st-overall.degraded{background:var(--st-solid-degraded)}.st-overall.partial{background:var(--st-solid-partial)}.st-overall.major{background:var(--danger)}.st-overall-title{font-size:19px;font-weight:700}.st-overall-sub{font-size:12.5px;opacity:.9}.st-section{display:flex;flex-direction:column;gap:12px}.st-section h2{font-size:16px}.st-groups{display:flex;flex-direction:column;gap:12px}.st-group{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.st-group-head{width:100%;display:flex;align-items:center;gap:8px;padding:12px 16px;background:transparent;border:0;cursor:pointer;text-align:left;color:var(--text);flex-wrap:wrap}.st-group-head:hover{background:var(--surface-2)}.st-group-name{font-weight:700}.st-component{padding:12px 16px;border-top:1px solid var(--border)}.st-component-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.st-component-name{font-weight:600}.st-uptime{margin-top:10px}.st-bars{display:flex;gap:2px;height:30px;align-items:stretch}.st-bar{flex:1;min-width:1px;border-radius:2px;background:var(--st-ok);opacity:.85}.st-bar:hover{opacity:1;transform:scaleY(1.08)}.st-bar.maint{background:var(--st-maint)}.st-bar.degraded{background:var(--st-degraded)}.st-bar.partial{background:var(--st-partial)}.st-bar.major{background:var(--st-major)}.st-bar.nodata{background:var(--st-nodata)}.st-uptime-foot{display:flex;justify-content:space-between;gap:8px;font-size:11.5px;color:var(--text-3);margin-top:4px}.st-uptime-foot span:nth-child(2){color:var(--text-2);text-align:center}.st-incident{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--warning);border-radius:var(--radius);padding:14px 16px;display:flex;flex-direction:column;gap:10px}.st-incident.impact-major,.st-incident.impact-critical{border-left-color:var(--danger)}.st-incident.impact-none{border-left-color:var(--border-strong)}.st-incident.impact-maint{border-left-color:var(--st-maint)}.st-incident-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.st-incident-head h3{font-size:15px}.st-timeline{list-style:none;margin:0;padding:0 0 0 14px;border-left:2px solid var(--border);display:flex;flex-direction:column;gap:10px}.st-timeline li{position:relative}.st-timeline li:before{content:"";position:absolute;left:-20px;top:5px;width:10px;height:10px;border-radius:50%;background:var(--surface);border:2px solid var(--border-strong)}.st-timeline li:first-child:before{border-color:var(--brand);background:var(--brand)}.st-tl-meta{font-size:12px;color:var(--text-2)}.st-prose{font-size:14px;overflow-wrap:anywhere}.st-prose p{margin:2px 0}.st-link{background:none;border:0;padding:0;color:var(--brand);cursor:pointer;font:inherit;font-size:13px;align-self:flex-start}.st-postmortem{background:var(--surface-2);border-radius:8px;padding:10px 12px}.st-banner{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:var(--radius);border:1px solid color-mix(in srgb,var(--danger) 35%,transparent);background:var(--danger-bg);color:var(--text)}.st-banner.maint{border-color:color-mix(in srgb,var(--info) 35%,transparent);background:var(--info-bg)}.st-banner .ic{color:var(--danger);flex-shrink:0}.st-banner.maint .ic{color:var(--info)}.st-banner .body{flex:1;min-width:0}.st-public{min-height:100vh;background:var(--bg);color:var(--text)}.st-public-head{background:var(--st-brand, var(--brand));color:var(--st-on-solid);padding:28px 16px 64px}.st-public-inner{max-width:880px;margin:0 auto}.st-public-head h1{font-size:26px;color:var(--st-on-solid)}.st-public-head p{opacity:.9;margin:4px 0 0}.st-public-head .brand{display:flex;align-items:center;gap:12px}.st-public-head img{width:44px;height:44px;border-radius:10px;object-fit:cover;background:var(--st-on-solid)}.st-public-body{max-width:880px;margin:-40px auto 0;padding:0 16px 40px}.st-public-foot{max-width:880px;margin:0 auto;padding:0 16px 32px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--text-3)}.st-public-foot a{color:var(--text-2)}.st-editor-preview{border:1px dashed var(--border-strong);border-radius:var(--radius);padding:12px;background:var(--bg)}.st-svc-row{display:grid;grid-template-columns:minmax(0,1fr) 200px 32px;gap:8px;align-items:center;padding:6px 0;border-bottom:1px solid var(--border)}@media(max-width:600px){.st-svc-row{grid-template-columns:minmax(0,1fr) 32px}.st-svc-row select{grid-column:1 / 2}.st-component-head{flex-direction:column;gap:4px}.st-uptime-foot span:nth-child(1),.st-uptime-foot span:nth-child(3){display:none}.st-uptime-foot{justify-content:center}.st-incident-head{flex-direction:column}.st-public-head{padding:20px 16px 56px}}.as-pill{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);color:var(--text-2);font-weight:600;font-size:12.5px;cursor:pointer;white-space:nowrap}.as-pill:hover{background:var(--surface-3)}.as-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 2px var(--surface)}.as-dot.available{background:var(--success)}.as-dot.busy{background:var(--warning)}.as-dot.away{background:var(--danger)}.as-dot.offline{background:var(--text-3)}.as-pill .lbl{display:inline}.as-pop{position:absolute;right:0;top:40px;z-index:40;width:min(340px,calc(100vw - 32px));background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg, 0 12px 32px -8px rgba(0,0,0,.25));padding:12px}.as-status-btn{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--text);cursor:pointer;text-align:left;font-weight:500}.as-status-btn:hover{background:var(--surface-3)}.as-status-btn.on{border-color:var(--brand);background:var(--brand-50)}.as-agent{display:grid;grid-template-columns:200px minmax(0,1fr) 120px;gap:12px;align-items:center;padding:10px 16px;border-bottom:1px solid var(--border)}.as-agent:last-child{border-bottom:0}.as-load{height:12px;border-radius:6px;background:var(--surface-3);overflow:hidden;position:relative}.as-load>div{height:100%;border-radius:6px;background:var(--brand);transition:width .3s}.as-load.hot>div{background:var(--danger)}.as-load.warm>div{background:var(--warning)}.as-prio{display:inline-flex;gap:3px}.as-prio span{font-size:10.5px;padding:0 5px;border-radius:4px;background:var(--surface-3);color:var(--text-2);font-weight:600}.as-matrix{border-collapse:separate;border-spacing:0}.as-matrix th.rot{height:130px;white-space:nowrap;vertical-align:bottom;padding:0}.as-matrix th.rot>div{transform:rotate(-60deg) translate(8px,40px);transform-origin:left bottom;width:24px;font-weight:600;font-size:12px}.as-matrix td.lvl{text-align:center;padding:2px}.as-lvl{width:30px;height:26px;border-radius:6px;border:1px solid var(--border);background:var(--surface);font-weight:700;font-size:12px;cursor:pointer;color:var(--text-2)}.as-lvl.l1{background:color-mix(in srgb,var(--brand) 12%,var(--surface))}.as-lvl.l2{background:color-mix(in srgb,var(--brand) 25%,var(--surface))}.as-lvl.l3{background:color-mix(in srgb,var(--brand) 42%,var(--surface));color:#fff}.as-lvl.l4{background:color-mix(in srgb,var(--brand) 65%,var(--surface));color:#fff}.as-lvl.l5{background:var(--brand);color:#fff}.as-lvl:disabled{cursor:default}.as-cand{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.as-cand.chosen{border-color:var(--success);background:color-mix(in srgb,var(--success-bg) 70%,var(--surface))}.as-cand.out{opacity:.65}.as-pattern{display:grid;grid-template-columns:60px 1fr 1fr 40px;gap:6px 10px;align-items:center}@media(max-width:820px){.as-pill .lbl{display:none}.as-pill{padding:0 10px}.as-agent{grid-template-columns:1fr;gap:6px}.as-agent .card-header{flex-wrap:wrap}}.as-team-card>.card-header{flex-wrap:wrap}.as-team-card>.card-header h3{flex-wrap:wrap;min-width:0}.idm-type{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:12px;padding:2px 9px;border-radius:999px;border:1px solid transparent}.idm-type.joiner{background:var(--success-bg);color:var(--success)}.idm-type.mover{background:var(--info-bg);color:var(--info)}.idm-type.leaver{background:var(--warning-bg);color:var(--warning)}.idm-progress{height:6px;border-radius:3px;background:var(--surface-3);overflow:hidden;min-width:60px}.idm-progress>div{height:100%;border-radius:3px;background:var(--brand);transition:width .3s}.idm-progress.danger>div{background:var(--danger)}.idm-switchbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.jml-cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--border);border-left:1px solid var(--border)}.jml-cal .dow{font-size:11px;font-weight:600;text-transform:uppercase;color:var(--text-3);padding:6px 8px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface-2)}.jml-cal .day{min-height:88px;padding:4px 6px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:3px;min-width:0}.jml-cal .day.other{background:var(--surface-2)}.jml-cal .day.today .num{background:var(--brand);color:var(--text-inverse);border-radius:999px;padding:0 6px}.jml-cal .num{font-size:11.5px;color:var(--text-2);align-self:flex-start}.jml-cal .ev{font-size:11.5px;padding:1px 6px;border-radius:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text);text-decoration:none;display:block}.jml-cal .ev.joiner{background:var(--success-bg);border-left:3px solid var(--success)}.jml-cal .ev.mover{background:var(--info-bg);border-left:3px solid var(--info)}.jml-cal .ev.leaver{background:var(--warning-bg);border-left:3px solid var(--warning)}.jml-cal .ev.cancelled{opacity:.5;text-decoration:line-through}@media(max-width:700px){.jml-cal .day{min-height:54px}.jml-cal .ev span.nm{display:none}}.jml-steps{display:flex;flex-direction:column}.jml-step{display:grid;grid-template-columns:28px minmax(0,1fr);gap:12px;position:relative;padding:12px 16px;border-bottom:1px solid var(--border)}.jml-step:last-child{border-bottom:0}.jml-step .ico{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--surface-3);color:var(--text-2)}.jml-step .ico.completed{background:var(--success-bg);color:var(--success)}.jml-step .ico.dry_run{background:var(--info-bg);color:var(--info)}.jml-step .ico.failed{background:var(--danger-bg);color:var(--danger)}.jml-step .ico.waiting,.jml-step .ico.running{background:var(--warning-bg);color:var(--warning)}.jml-step .ico.skipped,.jml-step .ico.cancelled{background:var(--surface-3);color:var(--text-3)}.jml-step .head{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:flex-start}.jml-step .meta{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:12px;color:var(--text-3);margin-top:2px}.jml-step .msg{margin-top:8px;font-size:12.5px;padding:8px 10px;border-radius:8px}.jml-step .msg.err{background:var(--danger-bg);color:var(--danger)}.jml-step .msg.wait{background:var(--warning-bg);color:var(--warning)}.jml-step pre{font-size:11.5px;margin:6px 0 0;max-height:260px;white-space:pre-wrap;word-break:break-word}.jml-req{display:flex;gap:8px;align-items:baseline;font-family:ui-monospace,Menlo,monospace;font-size:12px;flex-wrap:wrap}.jml-req .m{font-weight:700;padding:0 6px;border-radius:4px;background:var(--surface-3)}.jml-req .m.POST,.jml-req .m.PUT{color:var(--info)}.jml-req .m.PATCH{color:var(--warning)}.jml-req .m.DELETE{color:var(--danger)}.jml-req .m.GET{color:var(--success)}.jml-req .p{word-break:break-all}.idm-choice{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.idm-choice button{text-align:left;border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:14px;cursor:pointer;color:var(--text);display:flex;flex-direction:column;gap:6px}.idm-choice button:hover{border-color:var(--brand)}.idm-choice button.on{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-100);background:var(--brand-50)}.idm-choice .t{font-weight:700;display:flex;align-items:center;gap:8px}.idm-choice .d{font-size:12.5px;color:var(--text-2)}.jml-builder-step{border:1px solid var(--border);border-radius:12px;background:var(--surface)}.jml-builder-step+.jml-builder-step{margin-top:8px}.jml-builder-step .bar{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer}.jml-builder-step .bar .n{width:24px;height:24px;border-radius:50%;background:var(--surface-3);display:grid;place-items:center;font-size:12px;font-weight:700;flex-shrink:0}.jml-builder-step.off{opacity:.6}.jml-builder-step .body{border-top:1px solid var(--border);padding:12px}.jml-offset{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.jml-offset .input,.jml-offset .select{width:auto;min-width:70px}.idm-rule{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1.4fr) 36px;gap:6px;align-items:center}.idm-rule+.idm-rule{margin-top:6px}@media(max-width:640px){.idm-rule{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.idm-secret{font-family:ui-monospace,Menlo,monospace;font-size:24px;letter-spacing:2px;padding:16px;text-align:center;border-radius:12px;background:var(--surface-3);border:1px dashed var(--border-strong);word-break:break-all}.idm-kv{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 36px;gap:6px;align-items:center}.idm-kv+.idm-kv{margin-top:6px}.idm-toggle-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 0;border-bottom:1px dashed var(--border)}.idm-toggle-row:last-child{border-bottom:0}.idm-toggle-row .l{min-width:0}.pp-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px;align-items:start}.pp-aside{position:sticky;top:calc(var(--topbar-h, 56px) + 16px)}.pp-intro{display:flex;gap:14px;align-items:flex-start}.pp-intro .ic{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--brand-50);color:var(--brand);flex-shrink:0}:root[data-theme=dark] .pp-intro .ic{background:color-mix(in srgb,var(--brand) 18%,var(--surface))}.pp-chips{display:flex;flex-wrap:wrap;gap:8px}.pp-chips .chip{padding:6px 12px;font-size:13px;color:var(--text)}.pp-chips .chip[aria-pressed=true]{background:var(--brand-100);border-color:var(--brand);color:var(--brand-600)}:root[data-theme=dark] .pp-chips .chip[aria-pressed=true]{color:#5eead4;background:color-mix(in srgb,var(--brand) 22%,var(--surface))}.pp-current{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:10px 12px;font-size:13px}.pp-next{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none}.pp-next li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:8px;font-size:13px}.pp-next .n{width:22px;height:22px;border-radius:50%;background:var(--surface-3);display:grid;place-items:center;font-size:11px;font-weight:700;color:var(--text-2)}.pp-tag{font-size:11px;padding:1px 7px;border-radius:999px;background:var(--info-bg);color:var(--info);white-space:nowrap}.pp-list .pp-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px 18px;border-bottom:1px solid var(--border);color:var(--text)}.pp-list .pp-row:last-child{border-bottom:0}.pp-list .pp-row:hover{background:var(--surface-2);text-decoration:none}.pp-avatar{width:40px;height:40px;border-radius:12px;display:grid;place-items:center}.pp-avatar.joiner{background:var(--success-bg);color:var(--success)}.pp-avatar.mover{background:var(--info-bg);color:var(--info)}.pp-avatar.leaver{background:var(--warning-bg);color:var(--warning)}.pp-bar{height:5px;border-radius:3px;background:var(--surface-3);overflow:hidden;margin-top:6px;max-width:220px}.pp-bar>div{height:100%;background:var(--brand);border-radius:3px}.pp-track{display:grid;grid-template-columns:repeat(var(--n, 5),minmax(0,1fr));gap:0;margin:4px 0 2px}.pp-track .ms{position:relative;text-align:center;padding:0 6px;font-size:12.5px}.pp-track .ms:before{content:"";position:absolute;top:15px;left:-50%;right:50%;height:3px;background:var(--border);z-index:0}.pp-track .ms:first-child:before{display:none}.pp-track .ms.done:before,.pp-track .ms.active:before{background:var(--brand)}.pp-track .dot{position:relative;z-index:1;width:32px;height:32px;border-radius:50%;margin:0 auto 6px;display:grid;place-items:center;background:var(--surface);border:2px solid var(--border);color:var(--text-3)}.pp-track .ms.done .dot{background:var(--brand);border-color:var(--brand);color:var(--text-inverse, #fff)}.pp-track .ms.active .dot{border-color:var(--brand);color:var(--brand);box-shadow:0 0 0 4px var(--brand-100)}.pp-track .ms.failed .dot{border-color:var(--danger);color:var(--danger)}.pp-track .ms.cancelled .dot{border-style:dashed}.pp-track .lbl{font-weight:600}.pp-track .sub{color:var(--text-3);font-size:11.5px}.pp-steps{list-style:none;margin:0;padding:0}.pp-steps li{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 18px;border-bottom:1px solid var(--border);font-size:13.5px}.pp-steps li:last-child{border-bottom:0}.pp-steps .si{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--surface-3);color:var(--text-3)}.pp-steps .done .si{background:var(--success-bg);color:var(--success)}.pp-steps .active .si{background:var(--warning-bg);color:var(--warning)}.pp-steps .cancelled{opacity:.55}@media(max-width:960px){.pp-layout{grid-template-columns:minmax(0,1fr)}.pp-aside{position:static}}@media(max-width:640px){.pp-track{grid-template-columns:minmax(0,1fr);gap:10px}.pp-track .ms{display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;text-align:left;align-items:center;padding:0}.pp-track .ms:before{display:none}.pp-track .dot{margin:0}.pp-list .pp-row{grid-template-columns:36px minmax(0,1fr)}.pp-list .pp-row>:last-child{grid-column:2;justify-self:start}.pp-avatar{width:36px;height:36px}}.jml-src{display:flex;flex-direction:column;gap:4px;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--border);color:var(--text);cursor:pointer;font:inherit}.jml-src:hover{background:var(--surface-2)}.jml-src-bar{display:flex;height:6px;border-radius:3px;background:var(--surface-3);overflow:hidden}.jml-src-bar .joiner{background:var(--success)}.jml-src-bar .mover{background:var(--info)}.jml-src-bar .leaver{background:var(--warning)}.m365-stale{color:var(--danger);font-weight:600}.m365-aging{color:var(--warning)}.m365-chip{font-size:11px;padding:1px 7px;border-radius:999px;border:1px solid var(--border);color:var(--text-3);white-space:nowrap}.m365-chip.on{color:var(--success);background:var(--success-bg);border-color:transparent}.m365-util{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,2fr) 110px;gap:10px;align-items:center;padding:9px 16px;border-bottom:1px solid var(--border);color:var(--text)}.m365-util:last-child{border-bottom:0}.m365-util:hover{background:var(--surface-2);text-decoration:none}.m365-bar{height:10px;border-radius:5px;background:var(--surface-3);overflow:hidden;display:flex}.m365-bar .used{background:var(--brand)}.m365-bar .over{background:var(--danger)}.m365-warnings li{margin:2px 0}@media(max-width:640px){.m365-util{grid-template-columns:minmax(0,1fr);gap:4px}}.sc-tier{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:2px 9px;border-radius:999px;color:var(--tier);background:color-mix(in srgb,var(--tier) 14%,transparent);border:1px solid color-mix(in srgb,var(--tier) 30%,transparent);white-space:nowrap}.sc-ring{position:relative;display:inline-grid;place-items:center;flex-shrink:0}.sc-ring svg{position:absolute;top:0;right:0;bottom:0;left:0}.sc-ring circle{fill:none;stroke-width:7}.sc-ring .track{stroke:var(--surface-3)}.sc-ring .value{stroke:var(--text-3);stroke-linecap:round;transition:stroke-dashoffset .4s}.sc-ring.rag-green .value{stroke:var(--success)}.sc-ring.rag-amber .value{stroke:var(--warning)}.sc-ring.rag-red .value{stroke:var(--danger)}.sc-ring .n{position:relative;font-weight:800;letter-spacing:-.02em}.sc-spark path{fill:none;stroke:var(--text-3);stroke-width:1.8}.sc-spark circle{fill:var(--text-3)}.sc-spark.up path{stroke:var(--success)}.sc-spark.up circle{fill:var(--success)}.sc-spark.down path{stroke:var(--danger)}.sc-spark.down circle{fill:var(--danger)}.sc-rank{font-weight:800;color:var(--text-3);font-variant-numeric:tabular-nums;width:28px;display:inline-block}.sc-hero{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.sc-kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}.sc-kpi{border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;background:var(--surface);display:flex;flex-direction:column;gap:4px}.sc-kpi .label{font-size:12px;color:var(--text-3);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.sc-kpi .value{font-size:24px;font-weight:800}.sc-kpi .target{font-size:12px;color:var(--text-2)}.sc-kpi .meter{height:6px;border-radius:3px;background:var(--surface-3);overflow:hidden}.sc-kpi .meter>span{display:block;height:100%;border-radius:3px;background:var(--text-3)}.sc-kpi.rag-green .meter>span{background:var(--success)}.sc-kpi.rag-amber .meter>span{background:var(--warning)}.sc-kpi.rag-red .meter>span{background:var(--danger)}.sc-star{background:none;border:0;padding:2px;cursor:pointer;color:var(--border-strong);line-height:0;border-radius:6px}.sc-star.on{color:#f59e0b}.sc-star.on svg{fill:#f59e0b}.sc-star:disabled{cursor:default}.sc-star:focus-visible{outline:2px solid var(--brand)}.sc-criterion{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;align-items:center;padding:12px 0;border-bottom:1px solid var(--border)}.sc-criterion .note{grid-column:1 / -1}.sc-overdue{color:var(--danger);font-weight:600}@media(max-width:820px){.sc-criterion{grid-template-columns:minmax(0,1fr)}.sc-hero{gap:12px}}:root{--rag-green: #15803d;--rag-amber: #b45309;--rag-red: #dc2626}:root[data-theme=dark]{--rag-green: #4ade80;--rag-amber: #fbbf24;--rag-red: #f87171}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.prj-rag{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap;line-height:1.6;color:var(--text-2);background:var(--surface-3)}.prj-rag.green{color:var(--rag-green);background:color-mix(in srgb,var(--rag-green) 12%,transparent)}.prj-rag.amber{color:var(--rag-amber);background:color-mix(in srgb,var(--rag-amber) 14%,transparent)}.prj-rag.red{color:var(--rag-red);background:color-mix(in srgb,var(--rag-red) 12%,transparent)}.prj-rag.lg{font-size:13px;padding:4px 12px}.prj-ragdot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--text-3);flex-shrink:0}.prj-ragdot.green{background:var(--rag-green)}.prj-ragdot.amber{background:var(--rag-amber)}.prj-ragdot.red{background:var(--rag-red)}.prj-col{display:inline-flex;align-items:center;padding:1px 8px;border-radius:6px;font-size:12px;font-weight:600;background:var(--surface-3);color:var(--text-2);white-space:nowrap}.prj-col.in_progress{background:color-mix(in srgb,var(--info) 14%,transparent);color:var(--info)}.prj-col.done{background:color-mix(in srgb,var(--success) 14%,transparent);color:var(--success)}.prj-progress{display:flex;align-items:center;gap:8px;min-width:90px}.prj-progress .track{flex:1;height:8px;border-radius:4px;background:var(--surface-3);overflow:hidden}.prj-progress.sm .track{height:6px}.prj-progress .fill{height:100%;background:var(--brand);border-radius:4px;transition:width .3s}.prj-progress .fill.amber{background:var(--rag-amber)}.prj-progress .fill.red{background:var(--rag-red)}.prj-progress .pct{font-size:12px;font-weight:600;color:var(--text-2);min-width:34px;text-align:right;font-variant-numeric:tabular-nums}.prj-health-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.prj-health-strip button{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);cursor:pointer;text-align:left;color:var(--text);min-width:0}.prj-health-strip button.on{border-color:var(--brand);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand) 25%,transparent)}.prj-health-strip .n{font-size:24px;font-weight:800;line-height:1}.prj-health-strip .lbl{font-size:12px;color:var(--text-2)}.prj-health-strip .ic{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;flex-shrink:0;background:var(--surface-3);color:var(--text-2)}.prj-health-strip .ic.green{color:var(--rag-green);background:color-mix(in srgb,var(--rag-green) 12%,transparent)}.prj-health-strip .ic.amber{color:var(--rag-amber);background:color-mix(in srgb,var(--rag-amber) 14%,transparent)}.prj-health-strip .ic.red{color:var(--rag-red);background:color-mix(in srgb,var(--rag-red) 12%,transparent)}.prj-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}.prj-card{display:flex;flex-direction:column;gap:10px;padding:16px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--text);position:relative;overflow:hidden;min-width:0}.prj-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--text-3)}.prj-card.green:before{background:var(--rag-green)}.prj-card.amber:before{background:var(--rag-amber)}.prj-card.red:before{background:var(--rag-red)}.prj-card:hover{text-decoration:none;box-shadow:var(--shadow);border-color:var(--border-strong)}.prj-card .title{font-weight:700;font-size:15px;line-height:1.3}.prj-card .meta{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--text-2)}.prj-card .meta span{display:inline-flex;align-items:center;gap:4px}.prj-card .foot{border-top:1px dashed var(--border);padding-top:8px;font-size:12px;color:var(--text-2);display:flex;justify-content:space-between;gap:8px}.prj-roadmap{overflow-x:auto}.prj-roadmap .inner{position:relative;min-width:720px}.prj-roadmap .scale{display:flex;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--surface-2)}.prj-roadmap .scale div{flex:1;font-size:11px;color:var(--text-3);padding:6px 4px;border-left:1px solid var(--border);white-space:nowrap;overflow:hidden}.prj-roadmap .lane{display:grid;grid-template-columns:220px minmax(0,1fr);border-bottom:1px solid var(--border);min-height:40px;align-items:center}.prj-roadmap .lane .name{padding:6px 12px;font-size:13px;min-width:0;border-right:1px solid var(--border);background:var(--surface);position:sticky;left:0;z-index:1}.prj-roadmap .track{position:relative;height:40px}.prj-roadmap .bar{position:absolute;top:11px;height:18px;border-radius:9px;background:color-mix(in srgb,var(--brand) 30%,transparent);border:1px solid var(--brand);overflow:hidden;cursor:pointer}.prj-roadmap .bar .done{height:100%;background:var(--brand);opacity:.75}.prj-roadmap .bar.amber{border-color:var(--rag-amber);background:color-mix(in srgb,var(--rag-amber) 22%,transparent)}.prj-roadmap .bar.amber .done{background:var(--rag-amber)}.prj-roadmap .bar.red{border-color:var(--rag-red);background:color-mix(in srgb,var(--rag-red) 18%,transparent)}.prj-roadmap .bar.red .done{background:var(--rag-red)}.prj-roadmap .ms{position:absolute;top:14px;width:10px;height:10px;transform:rotate(45deg);background:var(--accent);border:1px solid var(--surface);margin-left:-5px}.prj-roadmap .ms.completed{background:var(--success)}.prj-roadmap .today,.prj-gantt .today{position:absolute;top:0;bottom:0;width:2px;background:var(--danger);opacity:.7;z-index:2;pointer-events:none}.prj-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap}.prj-head h1{margin:4px 0 2px}.prj-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.prj-ms-list{display:flex;flex-direction:column}.prj-ms-list .item{display:flex;align-items:center;gap:10px;padding:9px 16px;border-bottom:1px solid var(--border);min-width:0}.prj-ms-list .item:last-child{border-bottom:0}.prj-ms-list .diamond{width:10px;height:10px;transform:rotate(45deg);background:var(--accent);flex-shrink:0}.prj-ms-list .diamond.completed{background:var(--success)}.prj-ms-list .diamond.overdue{background:var(--danger)}.prj-activity{display:flex;flex-direction:column}.prj-activity .ev{display:flex;gap:10px;padding:8px 0;border-bottom:1px dashed var(--border);font-size:13px}.prj-activity .ev:last-child{border-bottom:0}.prj-member{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--border)}.prj-member:last-child{border-bottom:0}.prj-alloc{width:60px;height:5px;border-radius:3px;background:var(--surface-3);overflow:hidden}.prj-alloc>div{height:100%;background:var(--accent)}.prj-board{display:flex;gap:12px;overflow-x:auto;padding-bottom:8px;align-items:flex-start}.prj-board .col{min-width:270px;width:270px;flex-shrink:0;background:var(--surface-2);border:1px solid var(--border);border-radius:14px;display:flex;flex-direction:column;max-height:calc(100vh - 250px)}.prj-board .col.over{border-color:var(--brand);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand) 20%,transparent)}.prj-board .col.wip-over .col-head .wip{color:var(--danger);background:var(--danger-bg)}.prj-board .col-head{padding:10px 12px;font-weight:700;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--border)}.prj-board .col-head .dot{width:9px;height:9px;border-radius:3px}.prj-board .col-head .wip{margin-left:auto;font-size:11.5px;font-weight:600;color:var(--text-2);background:var(--surface-3);border-radius:999px;padding:1px 8px}.prj-board .col-body{padding:8px;display:flex;flex-direction:column;gap:8px;overflow-y:auto;min-height:60px}.prj-board .drop-line{height:3px;border-radius:2px;background:var(--brand);margin:-2px 0}.prj-tcard{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:9px 11px;cursor:grab;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:6px;min-width:0}.prj-tcard:hover{border-color:var(--border-strong)}.prj-tcard.dragging{opacity:.45}.prj-tcard.critical{box-shadow:inset 3px 0 0 var(--danger),var(--shadow-sm)}.prj-tcard .t{font-size:13.5px;font-weight:600;line-height:1.35;word-break:break-word}.prj-tcard .m{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:11.5px;color:var(--text-2)}.prj-tcard .m>span{display:inline-flex;align-items:center;gap:3px}.prj-tcard .m .late{color:var(--danger);font-weight:600}.prj-label{font-size:11px;padding:0 6px;border-radius:4px;background:var(--surface-3);color:var(--text-2)}.prj-quickadd{display:flex;gap:6px;padding:8px;border-top:1px solid var(--border)}.prj-inline{border:1px solid transparent;background:transparent;border-radius:6px;padding:3px 6px;font:inherit;color:inherit;min-width:0;max-width:100%}.prj-inline:hover,.prj-inline:focus{border-color:var(--border-strong);background:var(--surface);outline:none}select.prj-inline{cursor:pointer}.prj-sub{padding-left:22px!important}.prj-gantt{display:grid;grid-template-columns:260px minmax(0,1fr);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--surface)}.prj-gantt .left{border-right:1px solid var(--border);min-width:0}.prj-gantt .right{overflow-x:auto;position:relative}.prj-gantt .hdr{height:48px;border-bottom:1px solid var(--border);background:var(--surface-2);position:relative}.prj-gantt .hdr .band{position:absolute;top:0;height:24px;font-size:11px;font-weight:700;color:var(--text-2);padding:4px 6px;border-left:1px solid var(--border);white-space:nowrap;overflow:hidden}.prj-gantt .hdr .tick{position:absolute;top:24px;height:24px;font-size:10.5px;color:var(--text-3);padding:5px 3px;border-left:1px solid var(--border);white-space:nowrap;overflow:hidden;text-align:center}.prj-gantt .hdr .tick.weekend,.prj-gantt .bg .weekend{background:color-mix(in srgb,var(--surface-3) 70%,transparent)}.prj-gantt .lrow{height:34px;display:flex;align-items:center;gap:6px;padding:0 10px;border-bottom:1px solid var(--border);font-size:12.5px;min-width:0;cursor:pointer}.prj-gantt .lrow:hover{background:var(--surface-2)}.prj-gantt .lrow.ms{font-weight:600}.prj-gantt .body{position:relative}.prj-gantt .row{height:34px;border-bottom:1px solid var(--border);position:relative}.prj-gantt .bg{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.prj-gantt .bg>div{position:absolute;top:0;bottom:0}.prj-gantt .gbar{position:absolute;top:7px;height:20px;border-radius:6px;background:color-mix(in srgb,var(--brand) 30%,var(--surface));border:1px solid var(--brand);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;display:flex;align-items:center;overflow:hidden;z-index:3}.prj-gantt .gbar .fill{position:absolute;left:0;top:0;bottom:0;background:var(--brand);opacity:.55;pointer-events:none}.prj-gantt .gbar .lbl{position:relative;font-size:11px;padding:0 8px;white-space:nowrap;color:var(--text);pointer-events:none}.prj-gantt .gbar.done{border-color:var(--success);background:color-mix(in srgb,var(--success) 22%,var(--surface))}.prj-gantt .gbar.critical{border-color:var(--danger);box-shadow:0 0 0 1px var(--danger)}.prj-gantt .gbar.critical .fill{background:var(--danger)}.prj-gantt .gbar.parent{height:10px;top:12px;border-radius:2px;background:var(--text-2);border-color:var(--text-2)}.prj-gantt .gbar.readonly{cursor:default}.prj-gantt .gbar .h{position:absolute;top:0;bottom:0;width:8px;cursor:ew-resize;z-index:2}.prj-gantt .gbar .h.l{left:0}.prj-gantt .gbar .h.r{right:0}.prj-gantt .gms{position:absolute;top:10px;width:14px;height:14px;transform:rotate(45deg);background:var(--accent);margin-left:-7px;z-index:3}.prj-gantt .gms.completed{background:var(--success)}.prj-gantt .gms.overdue{background:var(--danger)}.prj-gantt svg.links{position:absolute;left:0;top:0;pointer-events:none;z-index:2;overflow:visible}.prj-gantt svg.links path{fill:none;stroke:var(--text-3);stroke-width:1.4}.prj-gantt svg.links path.critical{stroke:var(--danger);stroke-width:1.8}.prj-gantt .nodates{font-size:11px;color:var(--text-3);padding:9px 8px}.prj-score{display:inline-grid;place-items:center;min-width:28px;height:22px;padding:0 6px;border-radius:6px;font-weight:700;font-size:12px;background:var(--surface-3);color:var(--text-2)}.prj-score.green{background:color-mix(in srgb,var(--rag-green) 14%,transparent);color:var(--rag-green)}.prj-score.amber{background:color-mix(in srgb,var(--rag-amber) 16%,transparent);color:var(--rag-amber)}.prj-score.red{background:color-mix(in srgb,var(--rag-red) 14%,transparent);color:var(--rag-red)}.prj-matrix{display:grid;grid-template-columns:28px repeat(5,minmax(0,1fr));gap:3px;font-size:11px}.prj-matrix .cell{aspect-ratio:1.4;border-radius:6px;display:grid;place-items:center;font-weight:700;font-size:13px;color:var(--text)}.prj-matrix .cell.green{background:color-mix(in srgb,var(--rag-green) 16%,transparent)}.prj-matrix .cell.amber{background:color-mix(in srgb,var(--rag-amber) 22%,transparent)}.prj-matrix .cell.red{background:color-mix(in srgb,var(--rag-red) 22%,transparent)}.prj-matrix .ax{display:grid;place-items:center;color:var(--text-3)}.prj-drawer-sec{border-top:1px solid var(--border);padding-top:12px;margin-top:4px}.prj-drawer-sec h4{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:13px}.prj-check{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13.5px}.prj-check.done span{text-decoration:line-through;color:var(--text-3)}.prj-comment{display:flex;gap:10px;padding:8px 0}.prj-comment .body{flex:1;min-width:0;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:8px 12px}.prj-mention-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;cursor:pointer}.prj-dep{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px;min-width:0}.prj-portal-card{display:flex;flex-direction:column;gap:8px;padding:16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);min-width:0}.prj-portal-card:hover{text-decoration:none;border-color:var(--border-strong);box-shadow:var(--shadow)}.prj-steps{display:flex;flex-direction:column;gap:0}.prj-steps .s{display:grid;grid-template-columns:20px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 0;border-bottom:1px dashed var(--border);font-size:13.5px}.prj-optional-panel{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:14px;padding:10px 14px;border:1px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface-2)}.prj-selbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.prj-dellist{max-height:200px;overflow:auto;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);display:flex;flex-direction:column;gap:4px}@media(max-width:1100px){.prj-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:560px){.prj-optional-panel{align-items:flex-start;flex-direction:column}}@media(max-width:820px){.prj-health-strip,.prj-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.prj-gantt,.prj-roadmap .lane{grid-template-columns:130px minmax(0,1fr)}.prj-board .col{min-width:240px;width:240px}.prj-cards{grid-template-columns:minmax(0,1fr)}}.pf-stage,.pf-state,.pf-band,.pf-theme{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;border-radius:999px;font-size:12px;font-weight:600;line-height:1;padding:4px 9px;border:1px solid color-mix(in srgb,var(--c) 32%,transparent);background:color-mix(in srgb,var(--c) 13%,transparent);color:var(--c)}.pf-stage.sm{font-size:11px;padding:3px 7px}.pf-band .sc{font-weight:500;opacity:.8;margin-left:2px}.pf-theme{font-weight:500}.pf-stale{font-size:12px;white-space:nowrap}.pf-stale.warning{color:var(--warning);font-weight:600}.pf-stale.danger{color:var(--danger);font-weight:600}.pf-stale.ok{color:var(--text-3)}.pf-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.pf-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.pf-bulkbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius, 10px);padding:8px 12px}.pf-item-cell{min-width:200px;display:flex;flex-direction:column;gap:3px}.pf-item-cell .meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.pf-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}.pf-card{display:flex;flex-direction:column;gap:8px;padding:14px;border:1px solid var(--border);border-radius:var(--radius, 10px);background:var(--surface);color:var(--text)}.pf-card:hover{border-color:color-mix(in srgb,var(--brand) 45%,var(--border))}.pf-card .title{font-weight:600}.pf-stagebar{display:flex;flex-wrap:wrap;gap:6px}.pf-stagebar .st{flex:1 1 130px;min-width:120px;text-align:left;cursor:default;border:1px solid var(--border);border-radius:var(--radius, 10px);background:var(--surface-2);padding:9px 11px;color:var(--text-2);font:inherit;display:flex;flex-direction:column;gap:3px}.pf-stagebar .st.done{border-color:color-mix(in srgb,var(--c) 40%,transparent);background:color-mix(in srgb,var(--c) 8%,transparent)}.pf-stagebar .st.now{border-color:var(--c);background:color-mix(in srgb,var(--c) 15%,transparent);color:var(--text);box-shadow:0 0 0 1px color-mix(in srgb,var(--c) 35%,transparent) inset}.pf-stagebar .st .n{display:flex;align-items:center;gap:6px;font-weight:700;font-size:13px}.pf-stagebar .st .o{font-size:11px;color:var(--text-3)}.pf-stagebar .st.clickable{cursor:pointer}.pw-head-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap}.pw-head-main{min-width:0;flex:1 1 380px}.pw-head-main h1{margin:6px 0 8px}.pw-head-actions{flex-wrap:wrap;justify-content:flex-end}.danger-text{color:var(--danger);font-weight:600}.pf-stagestrip{display:flex;align-items:center;gap:10px;flex-wrap:wrap;width:100%;text-align:left;padding:7px 10px;border:1px solid var(--border);border-radius:var(--radius, 10px);background:var(--surface-2);color:var(--text-2);font:inherit}.pf-stagestrip.clickable{cursor:pointer}.pf-stagestrip.clickable:hover{border-color:color-mix(in srgb,var(--brand) 45%,var(--border))}.pf-stagestrip .segs{display:flex;gap:3px;flex:0 0 auto}.pf-stagestrip .seg{width:34px;height:6px;border-radius:3px;background:var(--surface-3)}.pf-stagestrip .seg.done{background:color-mix(in srgb,var(--c) 45%,transparent)}.pf-stagestrip .seg.now{background:var(--c)}.pf-stagestrip .lbl{font-size:13px;color:var(--text)}.pf-stagestrip .out{font-size:12px;margin-left:auto}.pw-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px 16px;margin-top:10px;padding:10px 0 0;border-top:1px solid var(--border)}.pw-facts .f{min-width:0;display:flex;flex-direction:column;gap:3px}.pw-facts .f.dates{grid-column:1 / -1;flex-direction:row;align-items:baseline;gap:8px;padding-top:8px;border-top:1px dashed var(--border)}.pw-facts .k{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3)}.pw-facts .v{font-size:13px;min-width:0;display:flex;align-items:center;gap:6px}.pw-flag{display:inline-flex;align-items:center;gap:5px;min-width:0;max-width:100%;font:inherit;font-weight:600;border:1px solid transparent;border-radius:8px;padding:2px 6px;margin:-2px -6px;background:transparent;cursor:pointer;text-align:left}.pw-flag:disabled{cursor:default}.pw-flag.danger{color:var(--danger)}.pw-flag.warn{color:var(--warning)}.pw-flag:not(:disabled):hover{border-color:currentColor}.pw-tabbar{display:flex;align-items:flex-end;gap:8px;margin-top:14px}.pw-tabbar .tabs{flex:1 1 auto;min-width:0}.pw-more{flex:0 0 auto;display:inline-flex;align-items:center;gap:5px;font:inherit;font-weight:600;font-size:14px;color:var(--text-3);background:transparent;border:0;border-bottom:2px solid transparent;padding:9px 10px;cursor:pointer}.pw-more:hover{color:var(--text)}.pw-more.on{color:var(--brand);border-bottom-color:var(--brand)}.pw-tasktools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:12px 0 4px}.pw-tasktools .filter-bar{flex:1 1 320px;margin:0}@media(max-width:900px){.pw-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}.pf-stagestrip .out{display:none}}@media(max-width:560px){.pw-head-actions{width:100%;justify-content:flex-start}.pw-facts{grid-template-columns:minmax(0,1fr)}.pw-facts .f.dates{flex-direction:column;align-items:flex-start;gap:3px}.pf-stagestrip .seg{width:100%}.pf-stagestrip .segs{flex:1 1 100%}.pw-tasktools .filter-bar{flex-basis:100%}.pw-tasktools .filter-bar .search-input{min-width:0;max-width:none;flex-basis:100%}.pw-tasktools .filter-bar .select{flex:1 1 100%;min-width:0}.pw-tasktools .filter-bar .checkbox{white-space:nowrap;flex:0 0 auto}}.pf-checks{display:flex;flex-direction:column}.pf-checks .ck{display:flex;gap:10px;align-items:flex-start;padding:7px 0;border-top:1px solid var(--border)}.pf-checks .ck:first-child{border-top:0}.pf-checks .ck input{margin-top:2px;accent-color:var(--brand)}.pf-checks .ck .req{font-size:11px;color:var(--danger)}.pf-score-row{display:grid;grid-template-columns:minmax(140px,1.2fr) auto minmax(90px,.6fr);gap:10px;align-items:center;padding:8px 0;border-top:1px solid var(--border)}.pf-score-row:first-of-type{border-top:0}.pf-scale{display:flex;gap:4px}.pf-scale button{width:30px;height:30px;border-radius:8px;border:1px solid var(--border);background:var(--surface-2);color:var(--text-2);font:inherit;font-weight:600;cursor:pointer}.pf-scale button.on{background:var(--brand);border-color:var(--brand);color:#fff}.pf-scale button:disabled{cursor:not-allowed;opacity:.6}.pf-score-total{display:flex;align-items:baseline;gap:8px}.pf-score-total .v{font-size:28px;font-weight:700}.pf-calib{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.pf-calib .b{border:1px solid var(--border);border-radius:var(--radius, 10px);padding:10px;background:var(--surface-2)}.pf-calib .b .k{font-weight:700;color:var(--c, var(--text))}.pf-calib .b .n{font-size:22px;font-weight:700}.pf-calib .b .d{font-size:12px;color:var(--text-3)}.pf-calib .b .d.up{color:var(--danger)}.pf-calib .b .d.down{color:var(--success, var(--rag-green))}.pf-log{display:flex;flex-direction:column}.pf-log .u{display:flex;gap:10px;padding:12px 0;border-top:1px solid var(--border)}.pf-log .u:first-child{border-top:0}.pf-log .u .body{min-width:0;flex:1}.pf-log .u .head{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline}.pf-kind{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--text-3)}@media(max-width:640px){.pf-score-row{grid-template-columns:1fr}.pf-stagebar .st{flex-basis:100%}.pf-scale button{width:40px;height:34px}}@media(max-width:640px){.pf-filters .search-input{min-width:100%;flex-basis:100%}.pf-filters .select{min-width:46%}}.pfs-ev{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.pfs-ev li{display:flex;align-items:flex-start;gap:6px;min-width:0;font-size:12.5px}.pfs-ev li>svg{flex-shrink:0;color:var(--text-3);margin-top:3px}.pfs-ev li>span{min-width:0;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.pfs-ev li .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.pfs-ev li.unread{color:var(--text-3)}.pfs-ev li .block{flex-basis:100%}.pb-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.pb-reason,.pb-state,.pb-decision,.pb-sec,.pb-flag{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;border-radius:999px;font-size:12px;font-weight:600;line-height:1;padding:4px 9px;border:1px solid var(--border);background:var(--surface-2);color:var(--text-2)}.pb-reason.sm,.pb-sec.sm{font-size:11px;padding:3px 7px}.pb-reason.brand,.pb-state.brand{border-color:color-mix(in srgb,var(--brand) 38%,transparent);background:color-mix(in srgb,var(--brand) 12%,transparent);color:var(--brand)}.pb-reason.info,.pb-state.info,.pb-decision.info,.pb-sec.info{border-color:color-mix(in srgb,var(--info, #0ea5e9) 38%,transparent);background:color-mix(in srgb,var(--info, #0ea5e9) 12%,transparent);color:var(--info, #0ea5e9)}.pb-reason.warning,.pb-state.warning,.pb-decision.warning,.pb-sec.warning{border-color:color-mix(in srgb,var(--warning) 38%,transparent);background:color-mix(in srgb,var(--warning) 12%,transparent);color:var(--warning)}.pb-reason.danger,.pb-state.danger,.pb-decision.danger,.pb-sec.danger{border-color:color-mix(in srgb,var(--danger) 38%,transparent);background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger)}.pb-reason.success,.pb-state.success,.pb-decision.success,.pb-sec.success{border-color:color-mix(in srgb,var(--success) 38%,transparent);background:color-mix(in srgb,var(--success) 12%,transparent);color:var(--success)}.pb-flag{font-size:11px;font-weight:500;padding:3px 7px}.pb-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:12px}.pb-card{display:flex;flex-direction:column;gap:8px;padding:14px;color:var(--text);border:1px solid var(--border);border-radius:var(--radius, 10px);background:var(--surface)}.pb-card:hover{border-color:color-mix(in srgb,var(--brand) 45%,var(--border))}.pb-card .title{font-weight:700;font-size:15px}.pb-card .meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;color:var(--text-3);font-size:12px}.pb-next{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;justify-content:space-between;border:1px solid color-mix(in srgb,var(--brand) 35%,var(--border));border-radius:var(--radius, 10px);background:color-mix(in srgb,var(--brand) 7%,transparent);padding:12px 14px}.pb-agenda{display:flex;flex-direction:column}.pb-agenda .row-item{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:start;padding:10px 0;border-top:1px solid var(--border)}.pb-agenda .row-item:first-child{border-top:0}.pb-agenda .num{font-weight:700;color:var(--text-3);font-size:13px;padding-top:2px}.pb-agenda .meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:4px}.pb-agenda .side{display:flex;flex-direction:column;gap:6px;align-items:flex-end}.pb-run{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:14px;align-items:start}.pb-run-head{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:3;padding:10px 12px;margin-bottom:12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius, 10px)}.pb-run-progress{height:6px;border-radius:999px;background:var(--surface-3);overflow:hidden;min-width:120px;flex:1 1 140px}.pb-run-progress>div{height:100%;background:var(--brand)}.pb-run-list{max-height:60vh;overflow:auto;display:flex;flex-direction:column}.pb-run-list .pick{display:flex;gap:8px;align-items:center;width:100%;text-align:left;font:inherit;color:var(--text);background:transparent;border:0;border-left:3px solid transparent;padding:7px 9px;cursor:pointer}.pb-run-list .pick.on{background:var(--surface-2);border-left-color:var(--brand);font-weight:600}.pb-run-list .pick.done{color:var(--text-3)}.pb-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.pb-fact{border:1px solid var(--border);border-radius:var(--radius, 10px);padding:9px 11px;background:var(--surface-2)}.pb-fact .k{font-size:11px;color:var(--text-3);text-transform:uppercase;letter-spacing:.03em}.pb-fact .v{font-weight:600;margin-top:3px;min-width:0;overflow:hidden;text-overflow:ellipsis}.pb-fact .v .pf-theme,.pb-fact .v .pf-stage{max-width:100%;overflow:hidden}.pb-decisions{display:flex;flex-wrap:wrap;gap:8px}.pb-decisions .btn.on{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 12%,transparent);color:var(--brand)}.pb-queue-age{font-weight:600}.pb-queue-age.breached{color:var(--danger)}.pb-questions{display:flex;flex-direction:column}.pb-question{display:flex;flex-direction:column;gap:6px;padding:11px 0;border-top:1px solid var(--border)}.pb-question:first-child{border-top:0}.pb-question .q{display:flex;gap:10px;align-items:baseline;justify-content:space-between;flex-wrap:wrap}.pb-answers{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden}.pb-answers button{font:inherit;font-size:12px;font-weight:600;padding:4px 11px;background:var(--surface);color:var(--text-2);border:0;border-left:1px solid var(--border);cursor:pointer}.pb-answers button:first-child{border-left:0}.pb-answers button.on{background:color-mix(in srgb,var(--brand) 14%,transparent);color:var(--brand)}.pb-answers button:disabled{cursor:not-allowed;opacity:.6}.pb-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px}.pb-bars{display:flex;flex-direction:column;gap:8px}.pb-bars .b{display:grid;grid-template-columns:minmax(90px,140px) minmax(0,1fr) 54px;gap:10px;align-items:center;font-size:13px}.pb-bars .track{height:9px;border-radius:999px;background:var(--surface-3);overflow:hidden}.pb-bars .track>span{display:block;height:100%;background:var(--c, var(--brand))}.pb-bars .n{text-align:right;font-weight:600}@media(max-width:900px){.pb-run{grid-template-columns:minmax(0,1fr)}.pb-run-list{max-height:260px}}@media(max-width:560px){.pb-agenda .row-item{grid-template-columns:24px minmax(0,1fr)}.pb-agenda .side{grid-column:1 / -1;align-items:flex-start;flex-direction:row;flex-wrap:wrap}.pb-run-head{position:static}}.spx-explorer{display:flex;flex-direction:column;gap:10px}.spx-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.spx-search{display:flex;align-items:center;gap:6px;flex:1 1 220px;min-width:0}.spx-search .input{flex:1 1 auto;min-width:0}.spx-crumbs{display:flex;flex-wrap:wrap;gap:4px;align-items:center;padding:7px 10px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12.5px}.spx-crumbs button{border:0;background:none;color:var(--brand);cursor:pointer;font:inherit;padding:2px 5px;border-radius:4px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spx-crumbs button:hover{background:var(--surface-3)}.spx-crumbs button.here{color:var(--text);font-weight:600}.spx-list{border:1px solid var(--border);border-radius:var(--radius-sm);max-height:46vh;min-height:180px;overflow:auto;background:var(--surface)}.spx-group+.spx-group{border-top:1px solid var(--border)}.spx-group-head{display:flex;align-items:center;gap:6px;padding:7px 12px;font-size:11.5px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--text-3);background:var(--surface-2);position:sticky;top:0;z-index:1}.spx-note{padding:10px 12px}.spx-row{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:10px;align-items:center;width:100%;padding:8px 12px;text-align:left;font:inherit;color:var(--text);background:var(--surface);border:0;border-bottom:1px solid var(--border);cursor:pointer}.spx-row:last-child{border-bottom:0}.spx-row:hover{background:var(--surface-3)}.spx-row:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.spx-row.sel{background:var(--brand-50);box-shadow:inset 3px 0 0 var(--brand)}.spx-row .name{display:block;font-weight:500}.spx-row .name.folder{font-weight:600}.spx-row .block{display:block}.spx-row .meta{font-size:11.5px;color:var(--text-3);white-space:nowrap;display:flex;align-items:center;gap:4px}.spx-off{display:flex;align-items:center;gap:14px;padding:16px;border:1px dashed var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-3)}.spx-url{font-size:12.5px}.spx-url summary{cursor:pointer;color:var(--text-3)}.spx-url summary:hover{color:var(--brand)}.spx-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:4px 8px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);font-size:12.5px;min-width:0}.spx-chip a{color:var(--text);text-decoration:none;min-width:0}.spx-chip a:hover{text-decoration:underline;color:var(--brand)}.spx-chip.compact{padding:2px 7px;font-size:12px}.spx-chip .x{border:0;background:none;color:var(--text-3);cursor:pointer;display:inline-flex;padding:1px;border-radius:4px;flex-shrink:0}.spx-chip .x:hover{background:var(--surface-3);color:var(--danger)}.spx-field{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}@media(max-width:560px){.spx-bar{gap:6px}.spx-row{grid-template-columns:20px minmax(0,1fr);row-gap:2px}.spx-row .meta{grid-column:2;justify-content:flex-start}.spx-crumbs button{max-width:130px}.spx-list{max-height:50vh}}@media(max-width:560px){.spx-row .meta>svg{display:none}}.capp-stages{display:flex;flex-direction:column;gap:10px}.capp-stage{border:1px solid var(--border);border-left:3px solid var(--border);border-radius:10px;padding:10px 12px;background:var(--surface-2);min-width:0}.capp-stage.pending{border-left-color:var(--warning, var(--brand));background:color-mix(in srgb,var(--warning, var(--brand)) 7%,var(--surface-2))}.capp-stage.approved{border-left-color:var(--success, var(--brand))}.capp-stage.rejected{border-left-color:var(--danger)}.capp-stage-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.capp-step{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex:none;border-radius:50%;background:var(--surface-3, var(--surface));border:1px solid var(--border);font-size:11px;font-weight:700;color:var(--text-2)}.capp-people{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}.capp-person{display:flex;align-items:center;gap:7px;font-size:13px;min-width:0;flex-wrap:wrap}.capp-person .capp-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:260px}.capp-person.approved>svg{color:var(--success, var(--brand))}.capp-person.rejected>svg{color:var(--danger)}.capp-person.pending>svg{color:var(--warning, var(--brand))}.capp-person.waiting>svg,.capp-person.skipped>svg{color:var(--text-2)}.capp-person.waiting,.capp-person.skipped{color:var(--text-2)}.capp-notes{list-style:none;margin:8px 0 0;padding:8px 0 0;border-top:1px dashed var(--border);display:flex;flex-direction:column;gap:8px;font-size:13px}.capp-note{color:var(--text-2)}.capp-note p{margin:2px 0}.capp-preview{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.capp-preview li{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:7px 10px;border-radius:9px;background:var(--surface-2);border:1px solid var(--border)}.capp-history{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.capp-history li{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-bottom:10px;border-bottom:1px solid var(--border)}.capp-history li:last-child{border-bottom:0;padding-bottom:0}.capp-queue{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.capp-item{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-top:1px solid var(--border);min-width:0}.capp-item:first-child{border-top:0}.capp-item-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.capp-item-title{font-weight:600;line-height:1.35}.capp-item-meta{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:12.5px;color:var(--text-2)}.capp-item-actions{display:flex;gap:6px;flex-wrap:wrap}.capp-rules{width:100%;min-width:720px;border-collapse:collapse;font-size:13px}.capp-rules th{text-align:left;font-size:12px;color:var(--text-2);font-weight:600;padding:6px 8px;white-space:nowrap}.capp-rules td{padding:5px 8px;vertical-align:middle;border-top:1px solid var(--border)}.capp-rules select,.capp-rules input{min-width:0;width:100%;padding:5px 8px;font-size:12.5px}.capp-rules td:first-child{width:28px;color:var(--text-2)}.capp-rules td:last-child{white-space:nowrap;width:1%}.capp-stage-edit{border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:var(--surface-2)}@media(max-width:720px){.capp-item{flex-direction:column;gap:8px}.capp-person .capp-name{max-width:180px}.capp-stage-head{gap:6px}}.crk-summary{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.crk-pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600;background:color-mix(in srgb,var(--crk-c, var(--text-2)) 14%,transparent);color:var(--crk-c, var(--text-2));border:1px solid color-mix(in srgb,var(--crk-c, var(--text-2)) 32%,transparent)}.crk-pill.lg{font-size:15px;padding:4px 12px}.crk-list{display:grid;gap:10px}.crk-card{border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:var(--surface-2);border-left:4px solid var(--crk-c, var(--border))}.crk-card-head{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap}.crk-card-head .crk-desc{flex:1 1 200px;min-width:0;font-weight:600}.crk-card dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 12px;margin:8px 0 0;font-size:13px}.crk-card dt{color:var(--text-2)}.crk-card dd{margin:0;min-width:0;overflow-wrap:anywhere}.crk-ai{font-size:11px;font-weight:600;border-radius:999px;padding:1px 7px;margin-left:6px;white-space:nowrap;background:color-mix(in srgb,var(--brand) 14%,transparent);color:var(--brand)}.crk-matrix{display:grid;grid-template-columns:minmax(44px,auto) repeat(5,minmax(0,1fr));gap:3px;margin-top:6px}.crk-matrix .h{font-size:11px;color:var(--text-2);text-align:center;align-self:end;padding-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crk-matrix .rh{font-size:11px;color:var(--text-2);display:flex;align-items:center;justify-content:flex-end;padding-right:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crk-cell{aspect-ratio:1 / 1;min-height:30px;border:1px solid var(--border);border-radius:6px;cursor:pointer;font-size:12px;font-weight:600;color:var(--text-2);display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--crk-c, var(--surface-3)) 16%,var(--surface-2));padding:0}.crk-cell:hover{border-color:var(--brand)}.crk-cell.on{outline:2px solid var(--brand);outline-offset:1px;color:var(--text)}.crk-cell:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.crk-axis{font-size:11px;color:var(--text-2);margin-top:4px}.crk-suggestion{border:1px dashed var(--border);border-radius:10px;padding:10px 12px;background:var(--surface-2)}.crk-suggestion+.crk-suggestion{margin-top:8px}.csc-advice{display:grid;gap:8px}.csc-line{display:flex;gap:8px;align-items:flex-start}.csc-win{border:1px solid var(--border);border-radius:8px;padding:8px 10px;background:var(--surface-2)}.ccal-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.ccal-toolbar .select{width:auto;flex:0 1 auto;min-width:130px;max-width:220px}.ccal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.ccal-dow{font-size:11px;font-weight:600;color:var(--text-2);text-align:center;padding:4px 0}.ccal-day{border:1px solid var(--border);border-radius:8px;background:var(--surface-2);min-height:84px;padding:4px;display:flex;flex-direction:column;gap:3px;min-width:0}.ccal-day.other{opacity:.55}.ccal-day.today{border-color:var(--brand)}.ccal-day.frozen{background:color-mix(in srgb,var(--danger) 8%,var(--surface-2))}.ccal-day.maint{background:color-mix(in srgb,var(--brand) 7%,var(--surface-2))}.ccal-n{font-size:11px;color:var(--text-2);font-weight:600}.ccal-ev{display:block;font-size:11px;line-height:1.25;border-radius:5px;padding:2px 5px;text-decoration:none;background:color-mix(in srgb,var(--ev-c, var(--brand)) 16%,transparent);color:var(--text);border-left:3px solid var(--ev-c, var(--brand));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ccal-ev.dim{opacity:.55;text-decoration:line-through}.ccal-tag{font-size:10px;border-radius:4px;padding:1px 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ccal-tag.freeze{background:color-mix(in srgb,var(--danger) 18%,transparent);color:var(--danger)}.ccal-tag.maint{background:color-mix(in srgb,var(--brand) 18%,transparent);color:var(--brand)}.ccal-week .ccal-day{min-height:200px}.ccal-agenda{display:none;padding:8px}.ccal-agenda-day{display:grid;grid-template-columns:96px minmax(0,1fr);gap:8px;padding:6px 0;border-top:1px solid var(--border)}.ccal-agenda-day:first-child{border-top:0}.ccal-agenda-date{font-size:12px;font-weight:600;color:var(--text-2)}.ccal-agenda .ccal-ev{white-space:normal;font-size:12px;padding:4px 6px}.ccal-legend{display:flex;flex-wrap:wrap;gap:10px;font-size:12px;color:var(--text-2)}@media(max-width:720px){.ccal-day{min-height:64px}.ccal-week .ccal-day{min-height:120px}.ccal-grid{gap:2px}.ccal-ev{font-size:10px;padding:1px 3px}.crk-matrix{grid-template-columns:minmax(28px,auto) repeat(5,minmax(0,1fr));gap:2px}.crk-cell{min-height:34px;font-size:11px}.ccal-toolbar .select{flex:1 1 140px;max-width:none}.ccal-grid-wrap{display:none}.ccal-agenda{display:block}}.chg-kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}.chg-kpi{border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:var(--surface-2);display:flex;flex-direction:column;gap:2px}.chg-kpi.off{border-color:var(--danger)}.chg-kpi.ok{border-color:var(--success)}.chg-kpi-value{font-size:26px;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums}.chg-kpi-unit{font-size:13px;font-weight:600;color:var(--text-2);margin-left:2px}.kpi-ok{color:var(--success);font-weight:600}.kpi-off{color:var(--danger);font-weight:600}.chg-import-drop{border:1px dashed var(--border-strong);border-radius:10px;padding:14px;background:var(--surface-2)}.chg-import-source{width:100%;min-height:150px;font-family:ui-monospace,Menlo,monospace;font-size:12px}.chg-issue{display:flex;gap:8px;align-items:flex-start;padding:3px 0}.chg-issue .lvl{flex:0 0 auto;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;min-width:46px}.chg-issue.block .lvl{color:var(--danger)}.chg-issue.warn .lvl{color:var(--warning, #b45309)}.chg-issue.skip .lvl{color:var(--text-2)}.chg-preflight-role{border:1px solid var(--border);border-radius:10px;padding:12px;background:var(--surface-2)}.chg-preflight-role+.chg-preflight-role{margin-top:10px}.chg-preflight-lost{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}@media(max-width:640px){.chg-issue{flex-direction:column;gap:0}.chg-kpis{grid-template-columns:1fr 1fr}.chg-kpi-value{font-size:22px}}.imp-statement{border:1px solid var(--border);border-left:4px solid var(--brand);border-radius:10px;padding:10px 12px;background:var(--surface-2)}.imp-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13.5px;line-height:1.5;max-height:9.5em;overflow:hidden;-webkit-mask-image:linear-gradient(to bottom,#000 70%,transparent);mask-image:linear-gradient(to bottom,#000 70%,transparent)}.imp-text.open{max-height:none;-webkit-mask-image:none;mask-image:none}.imp-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.imp-facts-col{min-width:0;border:1px solid var(--border);border-radius:10px;padding:10px 12px}.imp-facts-col h5{display:flex;align-items:center;gap:6px;margin:0 0 8px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-2)}.imp-facts-col ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.imp-facts-col li{display:grid;gap:2px;min-width:0;overflow-wrap:anywhere}.imp-cab{margin-top:6px}.imp-cab .imp-text{margin-top:6px;padding:8px 10px;border-radius:8px;background:var(--surface-2);border:1px solid var(--border)}:root{--vuln-critical: #b91c1c;--vuln-high: #ea580c;--vuln-medium: #ca8a04;--vuln-low: #2563eb;--vuln-info: #64748b}:root[data-theme=dark]{--vuln-critical: #f87171;--vuln-high: #fb923c;--vuln-medium: #facc15;--vuln-low: #60a5fa;--vuln-info: #94a3b8}.vuln-sev{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;white-space:nowrap;padding:2px 9px;border-radius:999px;color:var(--vuln-info);background:color-mix(in srgb,currentColor 12%,transparent)}.vuln-sev .dot{width:7px;height:7px;border-radius:2px;background:currentColor}.vuln-sev.critical{color:var(--vuln-critical)}.vuln-sev.high{color:var(--vuln-high)}.vuln-sev.medium{color:var(--vuln-medium)}.vuln-sev.low{color:var(--vuln-low)}.vuln-kev{display:inline-flex;align-items:center;gap:3px;font-size:10.5px;font-weight:700;letter-spacing:.03em;padding:1px 6px;border-radius:5px;color:#fff;background:var(--vuln-critical);white-space:nowrap}:root[data-theme=dark] .vuln-kev{color:#1a0505}.vuln-epss{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.vuln-epss .bar{width:44px;height:6px;border-radius:3px;background:var(--surface-3);overflow:hidden;display:inline-block}.vuln-epss .bar span{display:block;height:100%;background:var(--vuln-high)}.vuln-sevbar{display:flex;height:10px;border-radius:5px;overflow:hidden;gap:2px;background:var(--surface-3);min-width:60px}.vuln-sevbar.empty{opacity:.6}.vuln-sev-tiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.vuln-sev-tiles button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);cursor:pointer;color:var(--text);text-align:left;position:relative;overflow:hidden;min-width:0}.vuln-sev-tiles button:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--c)}.vuln-sev-tiles button:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.vuln-sev-tiles .n{font-size:24px;font-weight:800;line-height:1.1}.vuln-sev-tiles .l{font-size:12px;color:var(--text-2)}.vuln-list-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 16px;border-bottom:1px solid var(--border);color:var(--text);min-width:0}.vuln-list-row:last-child{border-bottom:0}.vuln-list-row:hover{background:var(--surface-2);text-decoration:none}.vuln-list-row .main{min-width:0;flex:1}.vuln-provider{display:flex;gap:12px;align-items:flex-start;padding:14px 0;border-bottom:1px solid var(--border)}.vuln-provider:last-child{border-bottom:0}.vuln-provider,.vuln-provider label,.vuln-provider .help,.vuln-provider .subtle{overflow-wrap:anywhere;min-width:0}.vuln-provider .ic{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:var(--surface-3);color:var(--text-2);flex-shrink:0}.vuln-rule{border:1px solid var(--border);border-radius:var(--radius);padding:14px;background:var(--surface-2)}.vuln-meter{height:8px;border-radius:4px;background:var(--surface-3);overflow:hidden}.vuln-meter>div{height:100%;background:var(--success)}.vuln-kpi-row .kpi .label{padding-right:24px}.vuln-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.vuln-mapping{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 16px}.vuln-pre{white-space:pre-wrap;margin:0;font-size:13px}.vuln-order li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);margin-bottom:6px}.vuln-order{list-style:none;padding:0;margin:0}@media(max-width:1100px){.vuln-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){.vuln-sev-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}.vuln-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.vuln-mapping{grid-template-columns:minmax(0,1fr)}}@media(max-width:480px){.vuln-sev-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.vuln-list-row{flex-wrap:wrap}.vuln-list-row .main{flex-basis:100%}.vuln-list-row .vuln-epss{display:none}}@media(max-width:640px){.filter-bar.vuln-filters .search-input{flex:1 1 100%}.filter-bar.vuln-filters .select{flex:1 1 140px;min-width:0}}@media(max-width:820px){.grid.cols-6.vuln-kpi-row{grid-template-columns:repeat(2,minmax(0,1fr))}}.cr-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.cr-track a{display:inline-flex;align-items:center;gap:3px}.cr-form-h{margin:6px 0 -4px}.cr-bulk{display:flex;align-items:center;gap:10px;padding:10px 14px;flex-wrap:wrap;border-color:var(--brand);background:var(--brand-50)}tr.cr-row-late td:first-child{box-shadow:inset 3px 0 0 var(--danger)}.cr-flow{display:flex;align-items:center;gap:0;overflow-x:auto}.cr-step{display:flex;align-items:center;gap:8px;flex:1;min-width:120px}.cr-step .dot{width:26px;height:26px;border-radius:13px;display:grid;place-items:center;font-size:12px;font-weight:700;background:var(--surface-3);color:var(--text-3);flex-shrink:0}.cr-step.done .dot{background:var(--brand);color:#fff}.cr-step .lbl{font-size:12.5px;color:var(--text-2);white-space:nowrap}.cr-step.current .lbl{font-weight:700;color:var(--text)}.cr-step .bar{flex:1;height:2px;background:var(--border);margin:0 8px;min-width:10px}.cr-step.done:not(.current) .bar{background:var(--brand)}.cr-board-wrap{min-width:0;max-width:100%}.cr-board .column{width:250px;min-width:250px;max-height:calc(100vh - 250px)}.cr-board .column.cr-over{border-color:var(--stage);box-shadow:0 0 0 2px color-mix(in srgb,var(--stage) 35%,transparent)}.cr-col-head{gap:8px}.cr-col-head .cr-dot{width:10px;height:10px;border-radius:50%;background:var(--stage);flex-shrink:0}.board .cr-card{border-left:3px solid var(--stage, var(--border))}.board .cr-card.late{border-left-color:var(--danger)}.cr-card[draggable=true]{cursor:grab}.cr-card:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.icon-btn.cr-mini{width:24px;height:24px}.cr-stages{display:flex;flex-wrap:wrap;gap:6px}.cr-stage{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text-2);font:inherit;font-size:12.5px;cursor:pointer}.cr-stage:hover{border-color:var(--stage)}.cr-stage.past{color:var(--text)}.cr-stage.past svg{color:var(--stage)}.cr-stage.now{background:var(--stage);border-color:var(--stage);color:#fff;font-weight:700;cursor:default}.cr-asset{padding:6px 0;border-bottom:1px dashed var(--border)}.cr-asset:last-of-type{border-bottom:0}.cr-mini-steps{display:flex;gap:3px}.cr-mini-steps span{flex:1;height:5px;border-radius:3px;background:var(--surface-3)}.cr-contents-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;border-bottom:1px solid var(--border)}.cr-parcel{border-bottom:1px solid var(--border)}.cr-parcel:last-child{border-bottom:0}.cr-parcel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 14px;background:var(--surface-2);flex-wrap:wrap}.cr-parcel-toggle{display:inline-flex;align-items:center;gap:6px;background:transparent;border:0;padding:0;font:inherit;color:var(--text);cursor:pointer}.cr-parcel-toggle:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.cr-parcel-empty{padding:10px 14px}.cr-expand{display:inline-flex;align-items:center;background:transparent;border:1px solid var(--border);border-radius:6px;padding:0 2px;cursor:pointer;color:var(--text-3);flex-shrink:0}.cr-expand:hover{color:var(--text);border-color:var(--brand)}.cr-expanded{margin-top:6px;border-left:2px solid var(--border);padding-left:8px}.cr-expanded-parcel{margin-bottom:6px}.cr-expanded-items{list-style:none;margin:3px 0 0;padding:0}.cr-expanded-items li{display:flex;align-items:center;gap:8px;font-size:12px;padding:2px 0}.cr-expanded-items li .truncate{max-width:220px}.cr-my-items{list-style:none;margin:10px 0 0;padding:0}.cr-my-items li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 0;border-top:1px dashed var(--border);font-size:13px}.cr-item-answer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 0;border-top:1px dashed var(--border);flex-wrap:wrap}.cr-portal.ask{border-color:var(--warning);box-shadow:0 0 0 1px var(--warning) inset}.cr-answer .btn{min-width:160px}.cr-preview table{min-width:520px}:root[data-theme=dark] .cr-preview{color:var(--text)}@media(max-width:640px){.cr-board .column{width:82vw;min-width:82vw}.cr-answer .btn{flex:1;min-width:0}.cr-step{min-width:96px}.cr-item-answer{align-items:flex-start;flex-direction:column;gap:6px}.cr-item-answer .btn-group{width:100%}.cr-expanded-items li .truncate{max-width:150px}}.cr-cond{display:flex;align-items:flex-start;gap:6px;flex-wrap:wrap;padding:8px;border:1px solid var(--border);border-radius:var(--radius, 8px);background:var(--surface-2, var(--surface))}.cr-cond .cr-cond-body{display:flex;align-items:center;gap:6px;flex-wrap:wrap;flex:1;min-width:0}.cr-cond .select.sm,.cr-cond .input.sm{min-width:130px}.cr-gate-why{margin:0;padding-left:18px}@media(max-width:640px){.cr-cond{flex-direction:column;align-items:stretch}.cr-cond .select.sm,.cr-cond .input.sm{min-width:0;width:100%}}.cr-rules .card .row{min-width:0}.cr-rules ul,.cr-trigger{overflow-wrap:anywhere}.rpt-builder{display:grid;grid-template-columns:340px minmax(0,1fr);gap:20px;align-items:start}.rpt-section{border-top:1px solid var(--border);padding:12px 0}.rpt-section:first-child{border-top:0;padding-top:0}.rpt-section h4{display:flex;justify-content:space-between;align-items:center;margin:0 0 8px;font-size:12.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3)}.rpt-pill-list{display:flex;flex-wrap:wrap;gap:6px}.rpt-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:center;padding:6px 0;border-bottom:1px dashed var(--border)}.rpt-row:last-child{border-bottom:0}.rpt-row .controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:6px}.rpt-filter{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 28px;gap:6px;align-items:center;padding:6px 0;border-bottom:1px dashed var(--border)}.rpt-filter>.val{grid-column:1 / -1;min-width:0}.rpt-filter>.val:empty{display:none}.rpt-filter:last-child{border-bottom:0}.rpt-table-wrap{max-height:560px;overflow:auto}.rpt-table-wrap .table th{position:sticky;top:0;background:var(--surface-2);z-index:1}.rpt-table-wrap .table td.num,.rpt-table-wrap .table th.num{text-align:right;font-variant-numeric:tabular-nums}.rpt-table-wrap .table tr.drill{cursor:pointer}.rpt-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.rpt-kpi{padding:14px 16px;border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--border)}.rpt-kpi .label{font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3)}.rpt-kpi .value{font-size:26px;font-weight:800;letter-spacing:-.02em;color:var(--brand);margin-top:4px}.rpt-dash{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:150px;gap:14px}.rpt-widget{display:flex;flex-direction:column;min-width:0;overflow:hidden}.rpt-widget .card-header{padding:10px 14px}.rpt-widget .card-header h3{font-size:13.5px}.rpt-widget .body{flex:1;min-height:0;padding:8px 12px 10px;overflow:auto}.rpt-widget.editing{outline:2px dashed var(--brand);outline-offset:-2px}.rpt-widget-tools{display:flex;gap:2px;flex-wrap:wrap}.rpt-widget-tools .icon-btn{width:26px;height:26px}.rpt-kiosk{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);z-index:200;padding:20px 24px;overflow:auto;display:flex;flex-direction:column;gap:14px}.rpt-kiosk .rpt-dash{grid-auto-rows:minmax(160px,1fr);flex:1}.rpt-kiosk-bar{display:flex;justify-content:space-between;align-items:center}.rpt-kiosk-bar h1{font-size:22px;margin:0}.rpt-dataset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.rpt-dataset{text-align:left;padding:12px 14px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);cursor:pointer}.rpt-dataset:hover,.rpt-dataset.on{border-color:var(--brand);background:var(--brand-50)}.rpt-dataset .n{font-size:11.5px;color:var(--text-3)}.rpt-folder{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:8px;cursor:pointer;color:var(--text-2)}.rpt-folder:hover,.rpt-folder.on{background:var(--surface-3);color:var(--text)}.split.rpt-view{grid-template-columns:minmax(0,1fr) 300px}.rpt-drill-link{color:var(--brand);text-decoration:none}@media(max-width:1100px){.split.rpt-view{grid-template-columns:minmax(0,1fr)}}@media(max-width:1000px){.rpt-builder{grid-template-columns:minmax(0,1fr)}.rpt-dash{grid-template-columns:repeat(2,minmax(0,1fr))}.rpt-dash .rpt-widget{grid-column:span 2!important}}@media(max-width:600px){.rpt-dash{grid-template-columns:minmax(0,1fr)}.rpt-dash .rpt-widget{grid-column:span 1!important}}.ait-card{border-color:color-mix(in srgb,var(--brand) 28%,var(--border))}.ait-card .card-header h3{display:flex;align-items:center;gap:6px}.ait-reading{margin:0 0 8px;font-size:13px;color:var(--text-2)}.ait-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px;color:var(--text-2)}.ait-line b{color:var(--text);font-weight:600}.ait-dropped{margin-top:8px;font-size:12px;color:var(--text-2)}.ait-dropped summary{cursor:pointer}.ait-dropped ul{margin:6px 0 0;padding-left:18px}.ait-chips{display:flex;flex-wrap:wrap;gap:4px;max-width:360px}.ait-chip{display:inline-flex;align-items:center;gap:4px;padding:1px 7px;border-radius:999px;font-size:11.5px;line-height:18px;background:var(--surface-2);border:1px solid var(--border);color:var(--text-2);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ait-chip.on{border-color:color-mix(in srgb,var(--brand) 45%,var(--border));color:var(--text)}.ait-chip.dup{border-style:dashed}.ait-cell-sub{font-size:11.5px;color:var(--text-2)}.ait-drawer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap;margin-bottom:10px}.ait-drawer-head .subject{font-weight:600;overflow-wrap:anywhere}.ait-desc{font-size:13px;color:var(--text-2);white-space:pre-wrap;overflow-wrap:anywhere;max-height:160px;overflow:auto;border:1px solid var(--border);border-radius:var(--radius, 10px);padding:8px 10px;background:var(--surface-2);margin-bottom:10px}.ait-stats{width:100%}.ait-meter{height:6px;border-radius:999px;background:var(--surface-3, var(--surface-2));overflow:hidden;min-width:80px}.ait-meter>span{display:block;height:100%;background:var(--brand)}@media(max-width:480px){.ait-chips{max-width:220px}}.kbw-diff{font:12.5px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:auto;max-height:520px;background:var(--surface)}.kbw-diff .ln{display:grid;grid-template-columns:22px minmax(0,1fr);padding:0 8px;white-space:pre-wrap;word-break:break-word}.kbw-diff .ln .m{color:var(--text-3);-webkit-user-select:none;user-select:none}.kbw-diff .ln.add{background:color-mix(in srgb,var(--success) 14%,transparent)}.kbw-diff .ln.del{background:color-mix(in srgb,var(--danger) 12%,transparent);text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--danger) 50%,transparent)}.kbw-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.kbw-side .prose{max-height:520px;overflow:auto;padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm)}.kbw-state{display:inline-flex;align-items:center;gap:6px}.kbw-steps{display:flex;gap:4px;flex-wrap:wrap}.kbw-steps .step{font-size:11px;padding:2px 8px;border-radius:999px;border:1px solid var(--border);color:var(--text-3)}.kbw-steps .step.done{background:var(--brand-100);color:var(--brand-600);border-color:transparent}.kbw-steps .step.now{background:var(--brand);color:#fff;border-color:var(--brand)}.kbw-checklist label{display:flex;gap:8px;align-items:flex-start;padding:6px 0;border-bottom:1px dashed var(--border);font-size:13px}.kbw-template{text-align:left;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer}.kbw-template:hover,.kbw-template.on{border-color:var(--brand);background:var(--brand-50)}.split.kbw-versions{grid-template-columns:320px minmax(0,1fr)}.split.kbw-two{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:800px){.kbw-side,.split.kbw-versions,.split.kbw-two{grid-template-columns:minmax(0,1fr)}}.ph-link{display:inline-flex;align-items:center;gap:5px;color:var(--brand);white-space:nowrap;font-variant-numeric:tabular-nums}.ph-link:hover{text-decoration:underline}.ph-mono{font-variant-numeric:tabular-nums}.ph-callbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:16px 18px;border-left:4px solid var(--brand)}.ph-callbar.unknown{border-left-color:var(--warning)}.ph-callbar.vip{border-left-color:var(--accent)}.ph-caller{display:flex;align-items:center;gap:14px;min-width:0}.ph-caller .who{min-width:0}.ph-caller h1{font-size:21px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ph-caller .sub{color:var(--text-2);font-size:13px}.ph-caller .meta{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;margin-top:6px;font-size:13px}.ph-avatar-unknown{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--warning-bg);color:var(--warning);flex-shrink:0}.ph-controls{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.ph-timer{display:inline-flex;align-items:center;gap:8px;font-size:22px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.ph-timer .live{width:9px;height:9px;border-radius:50%;background:var(--success);box-shadow:0 0 color-mix(in srgb,var(--success) 60%,transparent);animation:ph-pulse 1.6s infinite}.ph-timer.stopped .live{background:var(--text-3);animation:none}@keyframes ph-pulse{0%{box-shadow:0 0 color-mix(in srgb,var(--success) 55%,transparent)}70%{box-shadow:0 0 0 8px transparent}to{box-shadow:0 0 0 0 transparent}}@media(prefers-reduced-motion:reduce){.ph-timer .live{animation:none}}.ph-shortcuts{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12px;color:var(--text-3)}.ph-chips{display:flex;flex-wrap:wrap;gap:6px}.ph-chips .chip{font-weight:500}.ph-chips .chip .sw{width:8px;height:8px;border-radius:50%}.ph-mode{display:inline-flex;border:1px solid var(--border-strong);border-radius:10px;overflow:hidden}.ph-mode button{border:0;background:var(--surface);padding:7px 12px;font-weight:600;cursor:pointer;color:var(--text-2);display:inline-flex;align-items:center;gap:6px}.ph-mode button+button{border-left:1px solid var(--border-strong)}.ph-mode button.on{background:var(--brand-100);color:var(--brand-600)}.ph-kb{border:1px dashed var(--border-strong);border-radius:var(--radius-sm);padding:8px 10px;display:flex;flex-direction:column;gap:4px;background:var(--surface-2)}.ph-kb a{display:flex;gap:6px;align-items:baseline;min-width:0}.ph-list{display:flex;flex-direction:column}.ph-list>.ph-item{display:flex;gap:10px;align-items:flex-start;padding:9px 0;border-bottom:1px solid var(--border);min-width:0}.ph-list>.ph-item:last-child{border-bottom:0}.ph-item .grow{flex:1;min-width:0}.ph-alerts{display:flex;flex-direction:column;gap:8px}.ph-match{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;background:var(--surface);width:100%;text-align:left;color:var(--text)}.ph-match:hover{background:var(--surface-2)}.ph-match.on{border-color:var(--brand);background:var(--brand-50)}.ph-highlight{display:inline-flex;gap:4px;align-items:center;padding:2px 8px;border-radius:999px;background:var(--info-bg);color:var(--info);font-size:12px;font-weight:600}.ph-success{display:flex;gap:12px;align-items:center;padding:14px;border-radius:var(--radius-sm);background:var(--success-bg);color:var(--success)}.ph-success a{font-weight:700}.ph-pop-stack{position:fixed;right:18px;bottom:18px;z-index:60;display:flex;flex-direction:column;gap:10px;max-width:min(360px,calc(100vw - 24px))}.ph-pop{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--brand);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:12px 14px;display:flex;gap:12px;align-items:center;animation:ph-in .18s ease-out}.ph-pop.missed{border-left-color:var(--danger)}.ph-pop .grow{flex:1;min-width:0}@keyframes ph-in{0%{transform:translateY(8px);opacity:0}to{transform:none;opacity:1}}.ph-top,.ph-top-btn{position:relative}.ph-top-btn .ph-dot{position:absolute;right:7px;bottom:7px;width:8px;height:8px;border-radius:50%;border:2px solid var(--surface);background:var(--text-3)}.ph-top-btn .ph-dot.on{background:var(--success)}.ph-top-pop{position:absolute;right:0;top:calc(100% + 8px);width:320px;max-width:calc(100vw - 24px);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:14px;z-index:40;display:flex;flex-direction:column;gap:10px}.topbar-more .ph-top-pop{position:static;width:auto;box-shadow:none;border:0;padding:4px 0 0}.ph-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.ph-kpis .kpi{padding:14px}.ph-kpis .kpi .value{font-size:24px}.ph-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.ph-filters .input,.ph-filters .select{width:auto;min-width:0}.ph-xml{max-height:460px;overflow:auto;white-space:pre;font-size:12px;margin:0}.ph-order{display:flex;flex-direction:column;gap:6px}.ph-order>.row{padding:6px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}@media(max-width:1280px){.ph-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){.ph-callbar{grid-template-columns:minmax(0,1fr)}.ph-controls{align-items:stretch}.ph-controls .row{justify-content:flex-start}.ph-caller h1{font-size:18px}.ph-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.ph-filters>*{flex:1 1 140px}.ph-pop-stack{right:12px;left:12px;bottom:12px;max-width:none}}.ph-ticket{align-items:center}.howto-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.howto-panel{display:flex;flex-direction:column;gap:14px;min-width:0}.howto-ask{display:flex;align-items:flex-end;gap:8px;padding:8px 8px 8px 12px;border:1px solid var(--border-strong);border-radius:var(--radius-lg, 14px);background:var(--surface);box-shadow:var(--shadow-sm, none)}.howto-ask:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-50, transparent)}.howto-ask-icon{color:var(--brand);flex-shrink:0;align-self:center}.howto-ask textarea{flex:1;min-width:0;border:0;outline:none;resize:none;background:transparent;padding:6px 0;min-height:34px;max-height:140px;font:inherit;color:var(--text);box-shadow:none;field-sizing:content}.howto-ask textarea.textarea,.howto-ask textarea.textarea:focus{border:0;box-shadow:none;padding-left:0}.howto-intro{margin:0}.howto-section{display:flex;flex-direction:column;gap:6px}.howto-section-title{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3, var(--text-2))}.howto-chips{display:flex;flex-wrap:wrap;gap:6px}.howto-chip{border:1px solid var(--border);background:var(--surface-2);color:var(--text);border-radius:999px;padding:6px 12px;font:inherit;font-size:13px;cursor:pointer;text-align:left;max-width:100%}.howto-chip:hover,.howto-chip:focus-visible{border-color:var(--brand);color:var(--brand);background:var(--brand-50, var(--surface-2))}.howto-recent{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;border:0;border-radius:8px;background:transparent;color:var(--text);padding:7px 8px;font:inherit;font-size:13.5px;cursor:pointer;text-align:left;min-width:0}.howto-recent:hover,.howto-recent:focus-visible{background:var(--surface-2)}.howto-card{border:1px solid var(--border);border-radius:var(--radius-lg, 14px);background:var(--surface);padding:14px 16px;display:flex;flex-direction:column;gap:10px;min-width:0}.howto-card-head{gap:8px;flex-wrap:wrap}.howto-card .badge svg{margin-right:3px;vertical-align:-1px}.howto-q{margin:0;font-size:16px;line-height:1.35}.howto-answer{font-size:14px}.howto-conf{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text-2)}.howto-conf-bar{width:44px;height:6px;border-radius:4px;background:var(--surface-3);overflow:hidden;display:inline-block}.howto-conf-bar>span{display:block;height:100%;border-radius:4px;background:var(--brand)}.howto-conf.success .howto-conf-bar>span{background:var(--success)}.howto-conf.warning .howto-conf-bar>span{background:var(--warning)}.howto-conf.info .howto-conf-bar>span{background:var(--info)}.howto-skel{height:11px;border-radius:6px;background:linear-gradient(90deg,var(--surface-2),var(--surface-3),var(--surface-2));background-size:200% 100%;animation:howto-shimmer 1.2s linear infinite}@keyframes howto-shimmer{to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.howto-skel{animation:none}}.howto-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;counter-reset:none}.howto-steps>li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;padding:8px 4px;border-radius:10px;position:relative}.howto-steps>li+li:before{content:"";position:absolute;left:17px;top:-8px;height:14px;border-left:2px solid var(--border)}.howto-steps>li.blocked{opacity:.85}.howto-step-no{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:12.5px;font-weight:700;background:var(--brand-50, var(--surface-2));color:var(--brand);border:1px solid var(--brand-100, var(--border))}.howto-steps>li.blocked .howto-step-no{background:var(--warning-bg);color:var(--warning);border-color:transparent}.howto-step-body{min-width:0;font-size:14px}.howto-step-body .prose{color:var(--text-2);margin-top:2px}.howto-step-body .prose p{margin:0 0 4px}.howto-step-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px;align-items:center}.howto-page{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;padding:2px 8px;border-radius:999px;background:var(--surface-2);color:var(--text-2);border:1px solid var(--border);text-decoration:none;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}a.howto-page:hover{color:var(--brand);border-color:var(--brand)}.howto-actions{display:flex;flex-wrap:wrap;gap:8px}.howto-sources{display:flex;flex-direction:column;gap:2px;border-top:1px solid var(--border);padding-top:10px}.howto-src{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;color:var(--text);text-decoration:none;font:inherit;font-size:13px;border:0;background:transparent;cursor:pointer;text-align:left;width:100%;min-width:0}.howto-src.static{cursor:default}.howto-src:not(.static):hover,.howto-src:focus-visible{background:var(--surface-2)}.howto-src-path{max-width:42%}.howto-note{gap:6px}.howto-checks summary{cursor:pointer}.howto-checks ul{margin:6px 0 0;padding-left:18px;color:var(--text-2)}.howto-feedback{display:flex;align-items:center;gap:4px;border-top:1px solid var(--border);padding-top:10px;flex-wrap:wrap}.howto-feedback .icon-btn{width:32px;height:32px}.howto-admin .howto-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.howto-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.howto-filters>.input,.howto-filters>.select{width:auto;min-width:150px;flex:0 1 auto}.howto-filters>.input[type=search]{flex:1 1 220px}.howto-mono-cell{font-family:var(--mono, ui-monospace, monospace);font-size:12px;word-break:break-all}.howto-editor{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:16px;align-items:start}.howto-step-card{border:1px solid var(--border);border-radius:12px;background:var(--surface)}.howto-step-card.open{border-color:var(--brand-100, var(--border-strong));box-shadow:var(--shadow-sm, none)}.howto-step-card>header{display:flex;align-items:center;gap:8px;padding:8px 10px;cursor:pointer;min-width:0}.howto-step-card>header .grow{flex:1;min-width:0}.howto-step-card>.body{padding:4px 12px 12px;border-top:1px solid var(--border)}.howto-target{display:grid;grid-template-columns:140px minmax(0,1fr) auto;gap:6px;align-items:center}.howto-issue{font-size:12px;color:var(--warning);display:flex;gap:4px;align-items:flex-start}.howto-issue.ok{color:var(--success)}.howto-gap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:12px 14px;border-bottom:1px solid var(--border);align-items:center}.howto-gap:last-child{border-bottom:0}.howto-count{min-width:38px;text-align:center;font-weight:700;font-size:18px;color:var(--warning)}.howto-bars{display:flex;flex-direction:column;gap:6px}.howto-src-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}.howto-src-grid>div{border:1px solid var(--border);border-radius:10px;padding:8px 10px;background:var(--surface-2)}@media(max-width:900px){.howto-editor{grid-template-columns:minmax(0,1fr)}}@media(max-width:560px){.howto-target,.howto-gap{grid-template-columns:1fr}.howto-src-path{display:none}.howto-filters>.input,.howto-filters>.select{flex:1 1 100%}}.onb-missing-note{color:var(--warning);margin:0 0 6px}.onb-do{margin-top:8px}.pl-thumb{width:40px;height:40px;border-radius:8px;object-fit:cover;background:var(--surface-2);border:1px solid var(--border);flex:0 0 auto}.pl-thumb.ph{display:inline-flex;align-items:center;justify-content:center;color:var(--text-3)}.pl-name{display:flex;align-items:center;gap:10px;min-width:180px}.pl-name .n{font-weight:600}.pl-name .d{color:var(--text-2);font-size:12px;max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pl-price{display:inline-flex;align-items:center;gap:4px;justify-content:flex-end;min-width:92px}.pl-price button.pl-edit{background:transparent;border:1px dashed transparent;border-radius:6px;padding:2px 6px;font:inherit;font-weight:600;color:var(--text);cursor:text;font-variant-numeric:tabular-nums}.pl-price button.pl-edit:hover,.pl-price button.pl-edit:focus-visible{border-color:var(--border);background:var(--surface-2);outline:0}.pl-price input{width:96px;text-align:right;font-variant-numeric:tabular-nums}.pl-links{display:flex;flex-wrap:wrap;gap:2px 10px;margin-top:2px}.pl-link{display:inline-flex;align-items:center;gap:3px;color:var(--text-3);font-size:11.5px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pl-kind{text-transform:none}.pl-quick{display:flex;gap:6px;flex-wrap:wrap}.pl-import-box{min-height:160px;font-family:ui-monospace,Menlo,monospace;font-size:12px}.pl-import-results td.ok{color:var(--success, #16a34a)}.pl-import-results td.err{color:var(--danger, #dc2626)}.pl-history td{font-variant-numeric:tabular-nums}.pl-history .delta{white-space:nowrap}.pl-history .delta.up{color:var(--danger, #dc2626)}.pl-history .delta.down{color:var(--success, #16a34a)}.pl-requested .card-header h3{flex-wrap:wrap}.pl-requested-status{flex-wrap:wrap;align-items:center}.pl-img-preview{max-width:160px;max-height:120px;border-radius:8px;border:1px solid var(--border);object-fit:contain;background:var(--surface-2)}@media(max-width:640px){.pl-name .d{max-width:200px}.pl-name{min-width:160px}}.pl-lines{display:flex;flex-direction:column;font-size:13px;border:1px solid var(--border);border-radius:10px;overflow:hidden}.pl-lines-h,.pl-line{display:grid;grid-template-columns:minmax(160px,2fr) minmax(120px,1fr) 56px 110px 56px 110px;gap:8px;align-items:center;padding:7px 10px}.pl-lines-h{background:var(--surface-2);color:var(--text-3);font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.pl-line{border-top:1px solid var(--border)}.pl-line .n{font-weight:500;min-width:0;overflow-wrap:anywhere}.pl-line .mono{font-family:ui-monospace,Menlo,monospace;font-size:12px;color:var(--text-2)}.pl-lines .r{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.pl-line .lbl{display:none}.pl-totals{display:grid;grid-template-columns:1fr auto;gap:4px 16px;padding:8px 10px;border-top:1px solid var(--border);text-align:right;color:var(--text-2);font-variant-numeric:tabular-nums}.pl-totals b{color:var(--text);font-weight:500}.pl-totals .grand{color:var(--text);font-weight:700}@media(max-width:640px){.pl-lines-h{display:none}.pl-line{grid-template-columns:1fr auto;grid-template-areas:"n t" "s q" "u v";gap:2px 10px;padding:8px 10px}.pl-line .n{grid-area:n}.pl-line .s{grid-area:s}.pl-line .q{grid-area:q}.pl-line .u{grid-area:u;text-align:left}.pl-line .v{grid-area:v}.pl-line .t{grid-area:t;font-weight:600}.pl-line .lbl{display:inline;color:var(--text-3);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.pl-line .q,.pl-line .u,.pl-line .v{font-size:12px;color:var(--text-2)}}.ws-switcher{padding:4px 2px 8px}.ws-switch-btn{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#ffffff0f;color:#fff;font:600 12px var(--font);cursor:pointer;letter-spacing:.02em}.ws-switch-btn:hover{background:#ffffff1f}.ws-switch-btn span{flex:1;text-align:left}.app.collapsed .ws-switch-btn span,.app.collapsed .ws-editing-note,.app.collapsed .ws-item-tools{display:none}.ws-group{display:flex;flex-direction:column;gap:2px}.ws-item{position:relative;display:flex;align-items:center}.ws-item>.nav-item{flex:1;min-width:0}.ws-item>.nav-item span{overflow:hidden;text-overflow:ellipsis}.ws-item-tools{display:flex;gap:2px;padding-left:2px}.ws-item-tools button{display:grid;place-items:center;width:22px;height:22px;border:0;border-radius:6px;background:#ffffff14;color:var(--sidebar-text);cursor:pointer}.ws-item-tools button:hover{background:var(--brand);color:#fff}.ws-editing-note{margin:2px 2px 6px;padding:8px 10px;border-radius:10px;background:#ffffff14;color:var(--sidebar-text);font-size:11px;line-height:1.4}.ws-editing-note button{margin-left:6px;border:0;background:transparent;color:#fff;font-weight:600;text-decoration:underline;cursor:pointer;font-size:11px}.ws-admin-split{display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:16px;align-items:start}@media(max-width:900px){.ws-admin-split{grid-template-columns:minmax(0,1fr)}}.ws-menu-note{padding:2px 12px 8px;max-width:240px;color:var(--text-2);font-size:11px;line-height:1.45}.ws-more-btn{width:100%;border:0;cursor:pointer;font:inherit;text-align:left;position:sticky;bottom:0;background:var(--sidebar-bg);box-shadow:0 -8px 12px -8px #00000080;margin-top:6px}[data-sidebar] .ws-more-btn{background:var(--pd-sidebar, var(--sidebar-bg))}.ws-more{display:flex;flex-direction:column;gap:14px}.ws-search{display:flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);position:sticky;top:0;z-index:2}.ws-search input{flex:1;border:0;background:transparent;color:var(--text);font:14px var(--font);outline:none;min-width:0}.ws-more-head{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-2);margin-bottom:6px}.ws-more-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr));gap:4px}.ws-more-item{display:flex;align-items:center;gap:2px;border-radius:10px}.ws-more-item:hover{background:var(--surface-2)}.ws-more-item.is-hidden .ws-more-link{opacity:.55}.ws-more-link{display:flex;align-items:center;gap:10px;flex:1;min-width:0;padding:9px 10px;border-radius:10px;color:var(--text)}.ws-more-link:hover{text-decoration:none;color:var(--brand)}.ws-more-tools{display:flex;gap:2px;padding-right:6px}.ws-more-tools button{display:grid;place-items:center;width:26px;height:26px;border:0;border-radius:7px;background:transparent;color:var(--text-2);cursor:pointer}.ws-more-tools button:hover{background:var(--surface-3);color:var(--text)}.ws-more-tools button.on{color:var(--brand)}.ws-choices{display:grid;gap:8px}.ws-choice{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer}.ws-choice:hover{border-color:var(--brand)}.ws-choice.suggested{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand) inset}.ws-choice-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--surface-2);color:var(--text-2);flex-shrink:0}.ws-choice-body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.ws-admin-cols{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}.ws-admin-group{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin-bottom:10px}.ws-admin-group>header{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:8px 10px;border-bottom:1px solid var(--border)}.ws-admin-group>header input{flex:1;min-width:0}.ws-admin-list{padding:6px;display:flex;flex-direction:column;gap:4px;min-height:48px}.ws-admin-list.drop{outline:2px dashed var(--brand);outline-offset:-4px;border-radius:var(--radius)}.ws-row{display:flex;align-items:center;gap:8px;padding:7px 8px;border:1px solid var(--border);border-radius:9px;background:var(--surface-2);cursor:grab}.ws-row>.truncate{flex:1 1 auto;min-width:70px}.ws-row>.ws-row-key{flex:0 1 auto;max-width:45%}.ws-row.dragging{opacity:.4}.ws-row .ws-row-key{font:11px var(--mono, ui-monospace, monospace);color:var(--text-2)}.ws-row-tools{margin-left:auto;display:flex;gap:2px}.ws-row-tools button{display:grid;place-items:center;width:26px;height:26px;border:0;border-radius:7px;background:transparent;color:var(--text-2);cursor:pointer}.ws-row-tools button:hover{background:var(--surface-3);color:var(--text)}.ws-row-tools button.on{color:var(--brand)}.ws-catalogue{max-height:560px;overflow:auto;display:flex;flex-direction:column;gap:4px}.ws-preview-side{display:flex;flex-direction:column;gap:4px;background:var(--sidebar-bg);border-radius:var(--radius);padding:10px}.ws-preview-side .nav-section{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#64748b;padding:10px 10px 4px;font-weight:600}.ws-preview-side .nav-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:9px;color:#cbd5e1;font-size:13px}@media(min-width:1500px){.ws-admin-cols{grid-template-columns:minmax(0,1fr) minmax(0,340px)}}@media(max-width:560px){.ws-row>.ws-row-key{display:none}}@media(max-width:560px){.ws-more-grid{grid-template-columns:minmax(0,1fr)}}.ro-rows{display:flex;flex-direction:column}.ro-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border);align-items:start}.ro-rows .ro-row:last-child{border-bottom:0}.ro-row-main{min-width:0;display:flex;flex-direction:column;gap:3px}.ro-row-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ro-expand{display:inline-flex;align-items:center;gap:6px;background:none;border:0;padding:0;cursor:pointer;color:var(--text);font:inherit}.ro-expand:hover{color:var(--brand)}.ro-states{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius, 8px);overflow:hidden;background:var(--surface-2)}.ro-state{padding:6px 12px;border:0;background:transparent;color:var(--text-2);cursor:pointer;font:inherit;font-size:13px;border-right:1px solid var(--border)}.ro-state:last-child{border-right:0}.ro-state:hover:not(:disabled){background:color-mix(in srgb,var(--brand) 10%,transparent);color:var(--text)}.ro-state:disabled{cursor:not-allowed;opacity:.5}.ro-state.on{color:#fff;font-weight:600}.ro-state.on.off{background:var(--danger)}.ro-state.on.pilot{background:var(--warning)}.ro-state.on.live{background:var(--success)}.ro-row-detail{grid-column:1 / -1;border-top:1px dashed var(--border);padding-top:12px;margin-top:2px}.ro-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}.ro-paths{margin-top:8px;display:flex;flex-direction:column;gap:4px}.ro-path{background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:1px 6px;color:var(--text-2)}.ro-notes{margin:0;padding-left:18px;color:var(--text-2);font-size:13px;display:flex;flex-direction:column;gap:6px}.ro-preview{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px}.ro-preview-item{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius, 8px);background:var(--surface-2);min-width:0}.ro-preview-item.no{opacity:.75}.ro-preview-item.yes svg{color:var(--success)}.ro-preview-item.no svg{color:var(--text-3)}.ro-blocked{width:100%;max-width:560px;box-sizing:border-box;margin:24px auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px;padding:28px 20px;background:var(--surface);border:1px solid var(--border);border-radius:calc(var(--radius, 8px) * 1.5)}.ro-blocked-icon{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:color-mix(in srgb,var(--brand) 14%,transparent);color:var(--brand)}.ro-blocked h1{margin:0;font-size:22px}.ro-blocked p{margin:0}.ro-blocked-area{font-weight:600;color:var(--text-2)}.ro-blocked-desc{max-width:44ch}.ro-blocked-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:8px;max-width:100%}.ro-blocked-actions .btn{max-width:100%;white-space:normal;text-align:center}.ro-blocked-note{max-width:46ch;margin-top:4px}@media(max-width:720px){.ro-row,.ro-detail-grid{grid-template-columns:minmax(0,1fr)}.ro-states{width:100%}.ro-state{flex:1;text-align:center}.ro-blocked{margin:8px auto;padding:22px 16px}}:root{--brand: #0f766e;--brand-600: #0d6b63;--brand-100: #ccfbf1;--brand-50: #f0fdfa;--accent: #2563eb;--bg: #f5f7fa;--surface: #ffffff;--surface-2: #f8fafc;--surface-3: #f1f5f9;--border: #e5e9f0;--border-strong: #cbd5e1;--text: #0f172a;--text-2: #475569;--text-3: #94a3b8;--text-inverse: #ffffff;--sidebar-bg: #0b1220;--sidebar-text: #cbd5e1;--sidebar-active: rgba(255,255,255,.08);--danger: #dc2626;--danger-bg: #fef2f2;--warning: #d97706;--warning-bg: #fffbeb;--success: #16a34a;--success-bg: #f0fdf4;--info: #2563eb;--info-bg: #eff6ff;--radius: 12px;--radius-sm: 8px;--radius-lg: 18px;--shadow-sm: 0 1px 2px rgba(15,23,42,.05);--shadow: 0 4px 16px -4px rgba(15,23,42,.08), 0 1px 3px rgba(15,23,42,.05);--shadow-lg: 0 20px 50px -12px rgba(15,23,42,.25);--font: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--density: 1;--sidebar-w: 248px;--topbar-h: 60px;--nav-active-bg: var(--brand);--section-head: var(--nav-active-bg);--gap: 10px;--portal-max: 1440px;--chart-1: #0f766e;--chart-2: #2563eb;--chart-3: #f59e0b;--chart-4: #a855f7;--chart-5: #ef4444;--chart-6: #14b8a6;--chart-7: #64748b;color-scheme:light}:root[data-theme=dark]{--bg: #0b1220;--surface: #111a2b;--surface-2: #162036;--surface-3: #1c2740;--border: #24314b;--border-strong: #34425f;--text: #e5ecf6;--text-2: #a5b4cb;--text-3: #6b7a94;--brand-100: #134e4a;--brand-50: #0f2a28;--sidebar-bg: #070d18;--danger-bg: #3b1212;--warning-bg: #3a2a08;--success-bg: #0f2e19;--info-bg: #0f2140;--shadow: 0 4px 16px -4px rgba(0,0,0,.5), 0 1px 3px rgba(0,0,0,.4);--shadow-lg: 0 20px 50px -12px rgba(0,0,0,.7);--section-head: color-mix(in srgb, var(--nav-active-bg) 50%, #ffffff);color-scheme:dark}:root[data-density=compact]{--density: .8}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font);font-size:14px;line-height:1.5;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{margin:0;font-weight:700;letter-spacing:-.01em}h1{font-size:22px}h2{font-size:17px}h3{font-size:15px}h4{font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);font-weight:600}p{margin:0 0 .75em}button,input,select,textarea{font:inherit;color:inherit}::selection{background:var(--brand-100)}img{max-width:100%}code,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px}pre{background:var(--surface-3);padding:12px;border-radius:var(--radius-sm);overflow:auto}.app{display:grid;grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh}.app.collapsed{--sidebar-w: 72px}.sidebar{background:var(--sidebar-bg);color:var(--sidebar-text);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow:hidden auto;z-index:30;transition:width .2s}.sidebar .brand{display:flex;align-items:center;gap:12px;padding:16px 18px;color:#fff;font-weight:700;font-size:15px;border-bottom:1px solid rgba(255,255,255,.06);min-height:var(--topbar-h)}.sidebar .brand .logo{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,var(--brand),#14b8a6);display:grid;place-items:center;color:#fff;flex-shrink:0}.sidebar nav{padding:10px;display:flex;flex-direction:column;gap:2px;flex:1}.sidebar .nav-section{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#64748b;padding:14px 12px 6px;font-weight:600}.sidebar .nav-item{display:flex;align-items:center;gap:12px;padding:9px 12px;border-radius:10px;color:var(--sidebar-text);font-weight:500;transition:background .15s,color .15s;white-space:nowrap}.sidebar .nav-item:hover{background:var(--sidebar-active);color:#fff;text-decoration:none}.sidebar .nav-item.active{background:var(--nav-active-bg);color:#fff;box-shadow:0 6px 16px -6px var(--nav-active-bg)}.sidebar .nav-item .badge{margin-left:auto}.sidebar .nav-item svg{flex-shrink:0}.app.collapsed .sidebar .nav-item span,.app.collapsed .sidebar .nav-section,.app.collapsed .sidebar .brand span,.app.collapsed .nav-item .badge{display:none}.app.collapsed .sidebar .nav-item{justify-content:center;padding:11px}.sidebar .sidebar-footer{padding:12px;border-top:1px solid rgba(255,255,255,.06)}.main{display:flex;flex-direction:column;min-width:0}.topbar{height:var(--topbar-h);display:flex;align-items:center;gap:12px;padding:0 20px;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:20}.topbar .search{flex:1;max-width:560px;display:flex;align-items:center;gap:10px;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:8px 12px;color:var(--text-3);cursor:pointer}.topbar .search kbd{margin-left:auto;font:11px var(--font);background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:1px 6px;color:var(--text-3)}.content{padding:24px;flex:1;display:flex;flex-direction:column;gap:20px}.content.narrow{max-width:var(--portal-max);width:100%;margin:0 auto;padding-inline:clamp(16px,2.2vw,32px)}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.page-header .sub{color:var(--text-2);margin-top:2px}.page-header .actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;border:1px solid transparent;background:transparent;color:var(--text-2);cursor:pointer;position:relative}.icon-btn:hover{background:var(--surface-3);color:var(--text)}.icon-btn .dot{position:absolute;top:6px;right:6px;min-width:16px;height:16px;border-radius:8px;background:var(--danger);color:#fff;font-size:10px;font-weight:700;display:grid;place-items:center;padding:0 4px}.avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--brand),#14b8a6);color:#fff;display:inline-grid;place-items:center;font-weight:700;font-size:12px;flex-shrink:0;overflow:hidden}.avatar.sm{width:24px;height:24px;font-size:10px}.avatar.lg{width:56px;height:56px;font-size:20px}.avatar img{width:100%;height:100%;object-fit:cover}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.card.pad{padding:calc(20px * var(--density))}.card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--border)}.card-header h3{display:flex;align-items:center;gap:8px}.card-body{padding:18px}.card-body.tight{padding:10px 14px}.grid{display:grid;gap:16px}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid.cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid.auto{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.split{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:20px;align-items:start}.split.wide{grid-template-columns:minmax(0,1fr) 400px}.stack{display:flex;flex-direction:column;gap:12px}.row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.row.between{justify-content:space-between}.row.end{justify-content:flex-end}.row.nowrap{flex-wrap:nowrap}.muted{color:var(--text-2)}.subtle{color:var(--text-3)}.small{font-size:12.5px}.tiny{font-size:11.5px}.bold{font-weight:600}.mono{font-family:ui-monospace,Menlo,monospace}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.divider{height:1px;background:var(--border);margin:8px 0}.kpi{padding:18px;display:flex;flex-direction:column;gap:6px;position:relative;overflow:hidden}.kpi .label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);display:flex;align-items:center;gap:6px}.kpi .value{font-size:28px;font-weight:800;letter-spacing:-.02em;line-height:1.1}.kpi .delta{font-size:12px;color:var(--text-2)}.kpi.danger .value{color:var(--danger)}.kpi.warning .value{color:var(--warning)}.kpi.success .value{color:var(--success)}.kpi.brand .value{color:var(--brand)}.kpi .icon{position:absolute;right:14px;top:14px;color:var(--text-3);opacity:.5}.kpi.clickable{cursor:pointer;transition:transform .15s,box-shadow .15s}.kpi.clickable:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 14px;border-radius:10px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,transform .05s;line-height:1.2}.btn:hover{background:var(--surface-3);text-decoration:none}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.primary{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 4px 12px -4px var(--brand)}.btn.primary:hover{background:var(--brand-600)}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn.danger:hover{filter:brightness(.95)}.btn.ghost{border-color:transparent;background:transparent}.btn.ghost:hover{background:var(--surface-3)}.btn.subtle{background:var(--surface-2);border-color:transparent}.btn.sm{padding:5px 10px;font-size:12.5px;border-radius:8px}.btn.xs{padding:3px 8px;font-size:12px;border-radius:7px}.btn.ai{background:linear-gradient(135deg,#7c3aed,#2563eb);border:0;color:#fff;box-shadow:0 4px 14px -4px #7c3aed}.btn.ai:hover{filter:brightness(1.05)}.btn-group{display:inline-flex}.btn-group .btn{border-radius:0;margin-left:-1px}.btn-group .btn:first-child{border-radius:10px 0 0 10px;margin-left:0}.btn-group .btn:last-child{border-radius:0 10px 10px 0}.btn-group .btn.on{background:var(--brand-100);border-color:var(--brand);color:var(--brand-600);position:relative;z-index:1}:root[data-theme=dark] .btn-group .btn.on{color:#5eead4}.field{display:flex;flex-direction:column;gap:5px;min-width:0}.field>label{font-size:12.5px;font-weight:600;color:var(--text-2);display:flex;align-items:center;gap:6px}.field .req{color:var(--danger)}.field .help{font-size:12px;color:var(--text-3)}.field .err{font-size:12px;color:var(--danger)}.input,.select,.textarea{width:100%;padding:8px 11px;border:1px solid var(--border-strong);border-radius:10px;background:var(--surface);color:var(--text);outline:none;transition:border-color .15s,box-shadow .15s;min-height:38px;font-size:14px}.input:focus,.select:focus,.textarea:focus,.input:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 20%,transparent)}.input:disabled,.select:disabled,.textarea:disabled{background:var(--surface-2);color:var(--text-3)}.textarea{min-height:96px;resize:vertical;line-height:1.5}.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' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:32px}.input.sm,.select.sm{min-height:32px;padding:4px 9px;font-size:13px;border-radius:8px}.checkbox{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-weight:500}.checkbox input{width:16px;height:16px;accent-color:var(--brand)}.switch{position:relative;width:40px;height:22px;border-radius:11px;background:var(--border-strong);cursor:pointer;transition:background .2s;flex-shrink:0;border:0;padding:0}.switch:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .2s;box-shadow:0 1px 2px #0000004d}.switch.on{background:var(--brand)}.switch.on:after{transform:translate(18px)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}.form-grid .span-2{grid-column:span 2}.form-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid .span-3{grid-column:span 3}.inline-edit{cursor:pointer;border-radius:6px;padding:2px 6px;margin:-2px -6px}.inline-edit:hover{background:var(--surface-3)}.badge{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:600;line-height:1.6;background:var(--surface-3);color:var(--text-2);white-space:nowrap}.badge.dot:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.badge.danger{background:var(--danger-bg);color:var(--danger)}.badge.warning{background:var(--warning-bg);color:var(--warning)}.badge.success{background:var(--success-bg);color:var(--success)}.badge.info{background:var(--info-bg);color:var(--info)}.badge.brand{background:var(--brand-100);color:var(--brand-600)}.badge.outline{background:transparent;border:1px solid var(--border-strong)}.badge.lg{font-size:13px;padding:4px 12px}.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface);font-size:12.5px;cursor:pointer}.chip.on{background:var(--brand-100);border-color:var(--brand);color:var(--brand-600)}:root[data-theme=dark] .chip.on{color:#5eead4}.chip .x{opacity:.6}.chip .x:hover{opacity:1}.tag{display:inline-flex;padding:1px 8px;border-radius:6px;background:var(--surface-3);font-size:12px;color:var(--text-2)}.pill-status{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid transparent}.sla-bar{height:6px;border-radius:3px;background:var(--surface-3);overflow:hidden}.sla-bar>div{height:100%;border-radius:3px;background:var(--success)}.table-wrap{overflow:auto;border-radius:var(--radius)}table.table{width:100%;border-collapse:separate;border-spacing:0;font-size:13.5px}.table th{position:sticky;top:0;background:var(--surface-2);text-align:left;font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);font-weight:600;padding:10px 12px;border-bottom:1px solid var(--border);white-space:nowrap;z-index:1;-webkit-user-select:none;user-select:none}.table th.sortable{cursor:pointer}.table th.sortable:hover{color:var(--text)}.table td{padding:calc(10px * var(--density)) 12px;border-bottom:1px solid var(--border);vertical-align:middle}.table tbody tr{transition:background .1s}.table tbody tr:hover{background:var(--surface-2)}.table tbody tr.clickable{cursor:pointer}.table tbody tr.selected{background:var(--brand-50)}.table td.num,.table th.num{text-align:right;font-variant-numeric:tabular-nums}.table .primary-cell{font-weight:600;color:var(--text)}.table .primary-cell a{color:inherit}.pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;border-top:1px solid var(--border);font-size:13px;color:var(--text-2);flex-wrap:wrap}.filter-bar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.filter-bar .input,.filter-bar .select{width:auto;min-width:150px}.filter-bar .search-input{min-width:240px;flex:1;max-width:400px}.empty{padding:48px 20px;text-align:center;color:var(--text-3);display:flex;flex-direction:column;align-items:center;gap:10px}.empty svg{opacity:.4}.toolbar{display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--brand-50);border-bottom:1px solid var(--border);flex-wrap:wrap}:root[data-theme=dark] .toolbar{background:var(--surface-2)}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);overflow-x:auto}.tabs button{padding:10px 14px;border:0;background:transparent;color:var(--text-2);font-weight:600;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}.tabs button.active{color:var(--brand);border-bottom-color:var(--brand)}.tabs button .count{background:var(--surface-3);border-radius:999px;padding:0 7px;font-size:11px}.tabs.pills{border:0;gap:6px}.tabs.pills button{border:1px solid var(--border);border-radius:999px;padding:6px 12px;margin:0}.tabs.pills button.active{background:var(--brand);color:#fff;border-color:var(--brand)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0206178c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;animation:fade .15s}.modal{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:640px;max-height:calc(100vh - 40px);display:flex;flex-direction:column;animation:pop .18s}.modal.lg{max-width:900px}.modal.xl{max-width:1200px}.modal.sm{max-width:440px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--border)}.modal-body{padding:22px;overflow:auto;flex:1}.modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 22px;border-top:1px solid var(--border);background:var(--surface-2);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#02061766;z-index:100;animation:fade .15s}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(520px,100vw);background:var(--surface);box-shadow:var(--shadow-lg);z-index:101;display:flex;flex-direction:column;animation:slide .2s}.dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:220px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg);padding:6px;z-index:50;animation:pop .12s}.dropdown.left{right:auto;left:0}.dropdown .item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border-radius:8px;border:0;background:transparent;text-align:left;cursor:pointer;color:var(--text);font-weight:500}.dropdown .item:hover{background:var(--surface-3);text-decoration:none}.dropdown .item.danger{color:var(--danger)}.dropdown .sep{height:1px;background:var(--border);margin:6px 0}.dropdown .head{padding:6px 10px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);font-weight:600}.popover-anchor{position:relative;display:inline-block}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes pop{0%{opacity:0;transform:scale(.97) translateY(4px)}to{opacity:1;transform:none}}@keyframes slide{0%{transform:translate(30px);opacity:0}to{transform:none;opacity:1}}.palette{width:100%;max-width:680px;background:var(--surface);border-radius:16px;box-shadow:var(--shadow-lg);overflow:hidden;align-self:flex-start;margin-top:8vh;animation:pop .15s}.palette input{width:100%;border:0;outline:0;padding:18px 20px;font-size:16px;background:transparent;border-bottom:1px solid var(--border)}.palette .results{max-height:60vh;overflow:auto;padding:8px}.palette .group{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);padding:10px 12px 4px;font-weight:600}.palette .result{display:flex;align-items:center;gap:12px;padding:9px 12px;border-radius:10px;cursor:pointer;color:var(--text)}.palette .result:hover,.palette .result.active{background:var(--surface-3);text-decoration:none}.palette .result .code{font-family:ui-monospace,Menlo,monospace;font-size:12px;color:var(--text-3);min-width:80px}.thread{display:flex;flex-direction:column;gap:14px}.comment{display:flex;gap:12px}.comment .bubble{flex:1;min-width:0;border:1px solid var(--border);border-radius:14px;background:var(--surface);overflow:hidden}.comment.internal .bubble{background:var(--warning-bg);border-color:color-mix(in srgb,var(--warning) 35%,transparent)}.comment.system .bubble{background:var(--surface-2);border-style:dashed}.comment .meta{display:flex;align-items:center;gap:8px;padding:8px 14px;border-bottom:1px solid var(--border);font-size:12.5px;color:var(--text-2);flex-wrap:wrap}.comment.internal .meta{border-bottom-color:color-mix(in srgb,var(--warning) 25%,transparent)}.comment .body{padding:12px 14px}.comment .body .attachments{margin-top:8px;display:flex;gap:6px;flex-wrap:wrap}.prose{line-height:1.6;word-break:break-word}.prose p:last-child{margin-bottom:0}.prose img{border-radius:8px}.prose blockquote{border-left:3px solid var(--border-strong);margin:8px 0;padding:4px 12px;color:var(--text-2)}.prose pre{margin:8px 0}.prose table{border-collapse:collapse}.prose td,.prose th{border:1px solid var(--border);padding:4px 8px}.prose h1,.prose h2,.prose h3{margin:16px 0 8px}.prose ul,.prose ol{padding-left:22px}.composer{border:1px solid var(--border-strong);border-radius:14px;background:var(--surface);overflow:hidden}.composer.internal{border-color:var(--warning);background:var(--warning-bg)}.composer textarea{width:100%;border:0;outline:0;padding:14px;min-height:120px;resize:vertical;background:transparent;line-height:1.55}.composer .composer-bar{display:flex;align-items:center;gap:8px;padding:8px 12px;border-top:1px solid var(--border);flex-wrap:wrap;background:var(--surface-2)}.composer.internal .composer-bar{background:transparent}.history-item{display:flex;gap:10px;font-size:12.5px;color:var(--text-2);padding:6px 0;border-bottom:1px dashed var(--border)}.history-item .when{color:var(--text-3);white-space:nowrap;min-width:120px}.props{display:grid;grid-template-columns:120px 1fr;gap:10px 12px;font-size:13.5px;align-items:center}.props .k{color:var(--text-3);font-size:12.5px;font-weight:600}.props .v{min-width:0}.props.wide{grid-template-columns:160px 1fr}.side-section{padding:14px 18px;border-bottom:1px solid var(--border)}.side-section:last-child{border-bottom:0}.side-section h4{margin-bottom:10px;display:flex;align-items:center;justify-content:space-between}.attachment{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);font-size:12.5px;color:var(--text);max-width:260px}.attachment:hover{text-decoration:none;border-color:var(--brand)}.dropzone{border:2px dashed var(--border-strong);border-radius:12px;padding:16px;text-align:center;color:var(--text-3);cursor:pointer;transition:all .15s;font-size:13px}.dropzone:hover,.dropzone.over{border-color:var(--brand);background:var(--brand-50);color:var(--brand)}.task-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px dashed var(--border)}.task-row.done .title{text-decoration:line-through;color:var(--text-3)}.related-item{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px dashed var(--border);font-size:13px}.related-item:last-child{border-bottom:0}.related-item .type{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;padding:2px 6px;border-radius:5px;background:var(--surface-3);color:var(--text-2);font-weight:700;min-width:54px;text-align:center}.ai-panel{border:1px solid transparent;border-radius:14px;background:linear-gradient(var(--surface),var(--surface)) padding-box,linear-gradient(135deg,#7c3aed,#2563eb,#14b8a6) border-box}.ai-panel .card-header{border-bottom:1px solid var(--border)}.ai-gradient-text{background:linear-gradient(135deg,#7c3aed,#2563eb);-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:700}.ai-suggestion{background:color-mix(in srgb,#7c3aed 6%,var(--surface));border-radius:10px;padding:10px 12px;font-size:13px}.chat{display:flex;flex-direction:column;gap:10px}.chat .msg{max-width:85%;padding:10px 14px;border-radius:14px;line-height:1.5}.chat .msg.user{align-self:flex-end;background:var(--brand);color:#fff;border-bottom-right-radius:4px}.chat .msg.assistant{align-self:flex-start;background:var(--surface-3);border-bottom-left-radius:4px}.typing{display:inline-flex;gap:4px}.typing span{width:6px;height:6px;border-radius:50%;background:var(--text-3);animation:blink 1s infinite}.typing span:nth-child(2){animation-delay:.2s}.typing span:nth-child(3){animation-delay:.4s}@keyframes blink{0%,80%,to{opacity:.3}40%{opacity:1}}.board{display:flex;gap:14px;overflow-x:auto;padding-bottom:8px;align-items:flex-start}.board .column{min-width:280px;width:280px;background:var(--surface-2);border:1px solid var(--border);border-radius:14px;display:flex;flex-direction:column;max-height:calc(100vh - 260px)}.board .column-head{padding:12px 14px;font-weight:700;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--border);position:sticky;top:0}.board .column-body{padding:10px;display:flex;flex-direction:column;gap:8px;overflow:auto}.board .card-ticket{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:10px 12px;cursor:pointer;box-shadow:var(--shadow-sm)}.board .card-ticket:hover{border-color:var(--brand)}.toast-stack{position:fixed;bottom:20px;right:20px;display:flex;flex-direction:column;gap:8px;z-index:200}.toast{background:var(--text);color:var(--text-inverse);padding:12px 16px;border-radius:12px;box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:10px;animation:pop .2s;max-width:380px}:root[data-theme=dark] .toast{background:#f1f5f9;color:#0f172a}.toast.error{background:var(--danger);color:#fff}.toast.success{background:var(--success);color:#fff}.toast .toast-ref{color:inherit;font-weight:700;text-decoration:underline;text-underline-offset:2px}.toast .toast-ref:hover{text-decoration-thickness:2px}.spinner{width:18px;height:18px;border:2px solid var(--border-strong);border-top-color:var(--brand);border-radius:50%;animation:spin .7s linear infinite;display:inline-block}.spinner.lg{width:36px;height:36px;border-width:3px}@keyframes spin{to{transform:rotate(360deg)}}.loading-block{display:flex;align-items:center;justify-content:center;padding:60px;color:var(--text-3);gap:12px}.skeleton{background:linear-gradient(90deg,var(--surface-3) 25%,var(--surface-2) 50%,var(--surface-3) 75%);background-size:200% 100%;animation:shimmer 1.2s infinite;border-radius:8px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.alert{padding:12px 14px;border-radius:10px;display:flex;gap:10px;align-items:flex-start;font-size:13.5px;border:1px solid transparent}.alert.info{background:var(--info-bg);color:var(--info)}.alert.warning{background:var(--warning-bg);color:var(--warning)}.alert.danger{background:var(--danger-bg);color:var(--danger)}.alert.success{background:var(--success-bg);color:var(--success)}.alert.outage{background:var(--danger-bg);color:var(--danger);border-color:color-mix(in srgb,var(--danger) 30%,transparent)}.alert.maintenance{background:var(--info-bg);color:var(--info)}.alert.resolved{background:var(--success-bg);color:var(--success)}.timeline{position:relative;padding-left:22px}.timeline:before{content:"";position:absolute;left:7px;top:6px;bottom:6px;width:2px;background:var(--border)}.timeline .tl-item{position:relative;padding:6px 0 12px;font-size:13px}.timeline .tl-item:before{content:"";position:absolute;left:-19px;top:11px;width:8px;height:8px;border-radius:50%;background:var(--brand);border:2px solid var(--surface);box-shadow:0 0 0 1px var(--border)}.stat-list{display:flex;flex-direction:column;gap:6px}.stat-list .stat{display:flex;align-items:center;gap:10px;font-size:13px}.stat-list .stat .bar{flex:1;height:8px;border-radius:4px;background:var(--surface-3);overflow:hidden}.stat-list .stat .bar>div{height:100%;border-radius:4px;background:var(--brand)}.stat-list .stat .n{min-width:36px;text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.quick-actions{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.quick-action{display:flex;flex-direction:column;gap:8px;padding:16px;border-radius:14px;border:1px solid var(--border);background:var(--surface);color:var(--text);transition:all .15s}.quick-action:hover{border-color:var(--brand);transform:translateY(-2px);box-shadow:var(--shadow);text-decoration:none}.quick-action .qa-icon{width:40px;height:40px;border-radius:10px;background:var(--brand-50);color:var(--brand);display:grid;place-items:center}.quick-action .qa-title{font-weight:700}.quick-action .qa-sub{font-size:12.5px;color:var(--text-2)}.portal-hero{background:linear-gradient(135deg,var(--brand),#0e7490 60%,#2563eb);color:#fff;border-radius:20px;padding:36px 32px;display:flex;flex-direction:column;gap:14px;position:relative;overflow:hidden}.portal-hero:after{content:"";position:absolute;right:-60px;top:-60px;width:260px;height:260px;border-radius:50%;background:#ffffff14}.portal-hero h1{font-size:28px;color:#fff}.portal-hero p{color:#ffffffd9;max-width:600px}.portal-hero .search{background:#fff;border-radius:12px;padding:12px 16px;display:flex;gap:10px;align-items:center;color:var(--text-3);max-width:600px;cursor:text}.portal-hero .search input{border:0;outline:0;flex:1;font-size:15px;color:#0f172a;background:transparent}.catalogue-card{display:flex;gap:14px;padding:16px;border-radius:14px;border:1px solid var(--border);background:var(--surface);color:var(--text);transition:all .15s;align-items:flex-start}.catalogue-card:hover{border-color:var(--brand);box-shadow:var(--shadow);text-decoration:none;transform:translateY(-1px)}.catalogue-card .ci-icon{width:44px;height:44px;border-radius:12px;background:var(--brand-50);color:var(--brand);display:grid;place-items:center;flex-shrink:0}.kb-card{padding:16px;border-radius:14px;border:1px solid var(--border);background:var(--surface);color:var(--text);display:block}.kb-card:hover{border-color:var(--brand);text-decoration:none}.step-dots{display:flex;gap:6px}.step-dots span{width:8px;height:8px;border-radius:50%;background:var(--border-strong)}.step-dots span.on{background:var(--brand)}.mobile-only{display:none}.rating{display:flex;gap:6px}.rating button{font-size:26px;background:transparent;border:0;cursor:pointer;opacity:.4;transition:transform .1s}.rating button.on,.rating button:hover{opacity:1;transform:scale(1.15)}.color-swatch{width:28px;height:28px;border-radius:8px;border:1px solid var(--border-strong);padding:0;cursor:pointer}.matrix{display:grid;grid-template-columns:100px repeat(3,1fr);gap:6px}.matrix .cell{padding:10px;border-radius:8px;text-align:center;font-weight:600}.matrix .hd{font-size:12px;color:var(--text-3);text-transform:uppercase;display:flex;align-items:center;justify-content:center}.rule-box{border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:var(--surface-2);display:flex;gap:8px;align-items:center;flex-wrap:wrap}.kv{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px dashed var(--border);font-size:13px}.kv:last-child{border:0}.kv .k{color:var(--text-2)}.progress{height:8px;border-radius:4px;background:var(--surface-3);overflow:hidden}.progress>div{height:100%;background:var(--brand);border-radius:4px;transition:width .3s}.line-editor td{padding:4px 6px}.line-editor .input,.line-editor .select{min-height:32px;padding:4px 8px;font-size:13px}.print-label{width:62mm;padding:4mm;border:1px dashed var(--border-strong);display:flex;gap:4mm;align-items:center;background:#fff;color:#000}.sticky-side{position:sticky;top:calc(var(--topbar-h) + 20px)}.notif{display:flex;gap:10px;padding:10px 12px;border-radius:10px;cursor:pointer}.notif:hover{background:var(--surface-3)}.notif.unread{background:var(--brand-50)}.notif .t{font-weight:600;font-size:13px}.notif .b{font-size:12.5px;color:var(--text-2)}.recharts-default-tooltip{background:var(--surface)!important;border:1px solid var(--border)!important;border-radius:10px!important;box-shadow:var(--shadow)!important;color:var(--text)!important}.recharts-tooltip-label{color:var(--text)!important}.recharts-cartesian-grid line{stroke:var(--border)}.recharts-text{fill:var(--text-3);font-size:11px}.md-toolbar{display:flex;gap:4px;padding:6px 8px;border-bottom:1px solid var(--border);background:var(--surface-2);flex-wrap:wrap}.md-toolbar button{border:0;background:transparent;padding:4px 7px;border-radius:6px;cursor:pointer;color:var(--text-2);font-size:12.5px;font-weight:600}.md-toolbar button:hover{background:var(--surface-3);color:var(--text)}.setting-row{display:grid;grid-template-columns:1fr 320px;gap:24px;padding:16px 0;border-bottom:1px solid var(--border);align-items:start}.setting-row:last-child{border:0}.setting-row .desc{font-size:12.5px;color:var(--text-2);margin-top:2px}.nav-tabs-vertical{display:flex;flex-direction:column;gap:2px}.nav-tabs-vertical button,.nav-tabs-vertical a{text-align:left;padding:8px 12px;border-radius:8px;border:0;background:transparent;cursor:pointer;font-weight:500;color:var(--text-2);display:flex;align-items:center;gap:10px}.nav-tabs-vertical .active{background:var(--brand-50);color:var(--brand-600);font-weight:600}.nav-tabs-vertical a:hover{text-decoration:none;background:var(--surface-3)}:root[data-theme=dark] .nav-tabs-vertical .active{color:#5eead4}.number-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:6px}.number-grid .num{padding:6px 8px;border-radius:8px;border:1px solid var(--border);font-family:ui-monospace,Menlo,monospace;font-size:12px;text-align:center;background:var(--success-bg);color:var(--success)}.number-grid .num.used{background:var(--surface-3);color:var(--text-2);border-color:var(--border-strong)}.login{min-height:100vh;display:grid;place-items:center;background:radial-gradient(1200px 600px at 20% -10%,#ccfbf1,transparent),radial-gradient(900px 500px at 100% 100%,#dbeafe,transparent),var(--bg);padding:20px}.login .box{background:var(--surface);border-radius:24px;padding:44px 40px;max-width:440px;width:100%;box-shadow:var(--shadow-lg);text-align:center;display:flex;flex-direction:column;gap:18px;align-items:center}@media print{.sidebar,.topbar,.no-print{display:none!important}.app{display:block}.content{padding:0}}@media(max-width:1100px){.split,.split.wide{grid-template-columns:minmax(0,1fr)}.grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-6{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}.setting-row{grid-template-columns:1fr}}@media(max-width:820px){.app{grid-template-columns:minmax(0,1fr)}.app.collapsed{--sidebar-w: 248px}.sidebar{position:fixed;left:0;top:0;width:var(--sidebar-w);transform:translate(-100%);transition:transform .2s}.app.nav-open .sidebar{transform:none;box-shadow:var(--shadow-lg)}.app.collapsed .sidebar .nav-item span,.app.collapsed .sidebar .nav-section,.app.collapsed .sidebar .brand span,.app.collapsed .nav-item .badge{display:initial}.app.collapsed .sidebar .nav-item{justify-content:flex-start;padding:9px 12px}.mobile-only{display:inline-flex}.desktop-only{display:none!important}.content{padding:14px;gap:14px}.topbar{padding:0 12px}.topbar .search kbd{display:none}.grid.cols-2,.grid.cols-3,.grid.cols-4,.grid.cols-6{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid,.form-grid.cols-3{grid-template-columns:minmax(0,1fr)}.form-grid .span-2,.form-grid .span-3{grid-column:auto}.props{grid-template-columns:100px 1fr}.modal{max-height:100vh;border-radius:14px}.overlay{padding:8px}.input,.select,.textarea{font-size:16px}.btn{min-height:40px}.table td{padding:12px 10px}.portal-hero{padding:26px 20px}.portal-hero h1{font-size:22px}.filter-bar .search-input{min-width:0;max-width:none;width:100%}.sticky-side{position:static}.nav-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:29}}@media(max-width:480px){.grid.cols-2,.grid.cols-3,.grid.cols-4,.grid.cols-6{grid-template-columns:minmax(0,1fr)}}.card-header{flex-wrap:wrap}.card-header h3{min-width:0}.ai-panel .card-header h3{white-space:nowrap}.stat-list .stat>span:first-child{flex:0 0 150px}.topbar .search,.topbar .search span{min-width:0}.ai-panel .card-header>.row{justify-content:flex-end}@media(max-width:820px){.topbar{gap:4px}.topbar>div[style*="flex: 1"]{display:none}.topbar .search{flex:1 1 auto;padding:8px 10px}.topbar .icon-btn{width:34px}.stat-list .stat>span:first-child{flex-basis:110px}h1{font-size:20px}}.pill-status,.table .mono{white-space:nowrap}.pagination .select{width:auto}.cf-section-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);padding-top:4px;border-top:1px solid var(--border);margin-top:4px}.cf-editor>.cf-section-title:first-child{border-top:0;margin-top:0;padding-top:0}.module-widgets:empty{display:none}.topbar{min-width:0}.topbar-more{display:flex;flex-direction:column;gap:6px;padding:8px;min-width:220px}.topbar-more>*{justify-content:flex-start}.topbar{overflow:visible;z-index:25}.topbar>*{min-width:0}.topbar>.popover-anchor,.topbar>button,.topbar>.icon-btn{flex-shrink:0}.topbar .dropdown{z-index:60;max-width:calc(100vw - 24px)}.route-page{display:flex;flex-direction:column;gap:inherit;min-width:0}.portal-page{display:flex;flex-direction:column;gap:16px;min-width:0}.pn,.pn-group{display:flex;flex-direction:column;gap:2px}.pn-group+.pn-group{margin-top:4px}.pn-items{display:flex;flex-direction:column;gap:2px}.sidebar .pn-head{display:flex;align-items:center;gap:8px;width:100%;background:transparent;border:0;cursor:pointer;text-align:left;border-radius:8px;padding:12px 12px 6px;font-family:inherit}.sidebar .pn-head:hover{color:var(--sidebar-text)}.sidebar .pn-head:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.pn-head .pn-chev{margin-left:auto;flex-shrink:0;transition:transform .15s;opacity:.8}.pn-group.is-closed .pn-chev{transform:rotate(-90deg)}.pn-count{font-size:10.5px;font-weight:700;letter-spacing:0;background:#ffffff24;color:#fff;border-radius:999px;padding:0 6px;line-height:17px}.app.collapsed .sidebar .pn-head{display:none}@media(max-width:820px){.app.collapsed .sidebar .pn-head{display:flex}}.content.narrow .card-header h3,.content.narrow .section-head,.content.narrow .section-head b,.content.narrow .pd-featured>.row b{color:var(--section-head)}.content.narrow .card-header h3 svg,.content.narrow .section-head svg{color:currentColor}.portal-home{display:flex;flex-direction:column;gap:var(--gap);min-width:0}.portal-home .portal-hero{padding:30px 32px}.ph-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:var(--gap);align-items:start}.ph-main,.ph-rail{display:flex;flex-direction:column;gap:var(--gap);min-width:0}.ph-main .quick-actions{gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.ph-featured{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--gap)}.ph-featured .catalogue-card{min-width:0}.ph-clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media(max-width:900px){.ph-layout{grid-template-columns:minmax(0,1fr)}}.portal-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}@media(max-width:480px){.portal-cards{grid-template-columns:minmax(0,1fr)}}.kb-page .kb-search{margin-bottom:4px}.kb-topics{margin-bottom:8px}.kb-topics .tabs{flex-wrap:wrap;row-gap:8px;padding-bottom:2px}.kb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:14px}.kb-grid .kb-card{padding:18px 20px;display:flex;flex-direction:column;gap:6px;min-width:0}.kb-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.kb-card-head .badge{flex-shrink:0}@media(max-width:480px){.kb-grid{grid-template-columns:minmax(0,1fr)}.kb-card-head{flex-wrap:wrap}}
