.sfd-scope{color-scheme:light;--bg:#F2F0E9;--surface:#FFFFFF;--rail:#FAF9F5;--border:#E3DFD4;--divider:#EDEAE1;--text:#1C1A15;--muted:#6B675C;--accent:#1B3A6B;--accent-ink:#1B3A6B;--accent-fill:#1B3A6B;--accent-contrast:#FFFFFF;--accent-soft:rgba(27,58,107,.09);--support:#C9A227;--support-soft:rgba(201,162,39,.16);--positive:#177446;--positive-soft:rgba(23,116,70,.11);--negative:#A33D2E;--negative-soft:rgba(163,61,46,.10);--warn-ink:#7A5F15;--warn-soft:#FBF4E0;--chart-1:#1B3A6B;--chart-2:#C9A227;--chart-3:#5B7B6A;--chart-4:#7C4A52;--chart-5:#3E5C76;--radius:10px;--gap:14px;--grid-dot:rgba(28,26,21,.10);--shadow:0 1px 2px rgba(40,35,25,.05);--shadow-pop:0 18px 50px -18px rgba(35,30,20,.35);--font-display:"Fraunces",Georgia,"Times New Roman",serif;--font-ui:"Inter",system-ui,-apple-system,"Segoe UI",Helvetica,Arial,sans-serif}.sfd-scope[data-mode=night]{color-scheme:dark;--bg:#111319;--surface:#191C24;--rail:#14161D;--border:#2A2D38;--divider:#222530;--text:#ECE9E1;--muted:#A09B8E;--accent-contrast:#FFFFFF;--positive:#54B586;--positive-soft:rgba(84,181,134,.14);--negative:#DF7A64;--negative-soft:rgba(223,122,100,.13);--warn-ink:#D9B45A;--warn-soft:rgba(217,180,90,.13);--grid-dot:rgba(236,233,225,.08);--shadow:0 1px 2px rgba(0,0,0,.25);--shadow-pop:0 18px 50px -18px rgba(0,0,0,.6)}.sfd-scope,.sfd-scope *{margin:0;padding:0;box-sizing:border-box}.sfd-scope{height:100%;overflow:hidden;background:var(--bg);color:var(--text);font:400 14px/1.5 var(--font-ui);-webkit-font-smoothing:antialiased;transition:background .35s,color .35s}.sfd-scope button{font-family:inherit;color:inherit}.sfd-scope :focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px;border-radius:4px}.sfd-scope .mono-num,.sfd-scope .num{font-variant-numeric:tabular-nums}.sfd-scope ::-webkit-scrollbar{width:10px;height:10px}.sfd-scope ::-webkit-scrollbar-thumb{background:var(--border);border-radius:6px;border:2px solid transparent;background-clip:content-box}.sfd-scope ::-webkit-scrollbar-track{background:transparent}.sfd-scope .app{height:100%;display:grid;grid-template-rows:58px 1fr}.sfd-scope .topbar{display:flex;align-items:center;gap:14px;padding:0 18px;background:var(--rail);border-bottom:1px solid var(--border)}.sfd-scope .mark{display:flex;align-items:center;gap:11px}.sfd-scope .mark-logo{width:34px;height:34px;border-radius:9px;flex:none;display:grid;place-items:center;background:var(--accent-fill);color:var(--accent-contrast);font:600 12px var(--font-display);overflow:hidden}.sfd-scope .mark-logo img{width:100%;height:100%;object-fit:contain}.sfd-scope .mark-name{font:600 15px var(--font-display);letter-spacing:-.01em;white-space:nowrap}.sfd-scope .mark-sub{display:block;font:500 10.5px var(--font-ui);letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.sfd-scope .top-spacer{flex:1}.sfd-scope .crumb{font:500 12.5px var(--font-ui);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sfd-scope .crumb strong{color:var(--text);font-weight:600}.sfd-scope .btn{display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 14px;border:1px solid var(--border);border-radius:9px;background:var(--surface);font:600 12.5px var(--font-ui);cursor:pointer;white-space:nowrap;transition:border-color .15s,background .15s,transform .15s,color .15s}.sfd-scope .btn:hover{border-color:var(--accent-ink)}.sfd-scope .btn:active{transform:translateY(1px)}.sfd-scope .btn svg{width:15px;height:15px;flex:none}.sfd-scope .btn.primary{background:var(--accent-fill);border-color:transparent;color:var(--accent-contrast)}.sfd-scope .btn.primary:hover{filter:brightness(1.08)}.sfd-scope .btn.ghost{background:transparent}.sfd-scope .btn.danger:hover{border-color:var(--negative);color:var(--negative)}.sfd-scope .btn[disabled]{opacity:.5;cursor:not-allowed}.sfd-scope .icon-btn{width:32px;height:32px;border:1px solid var(--border);border-radius:8px;background:var(--surface);display:grid;place-items:center;cursor:pointer;color:var(--muted);transition:color .15s,border-color .15s;flex:none}.sfd-scope .icon-btn:hover{color:var(--text);border-color:var(--accent-ink)}.sfd-scope .icon-btn svg{width:14px;height:14px}.sfd-scope .mode-toggle{display:inline-flex;align-items:center;gap:0;border:1px solid var(--border);border-radius:999px;background:var(--surface);padding:3px}.sfd-scope .mode-toggle button{border:0;background:none;width:34px;height:28px;border-radius:999px;display:grid;place-items:center;cursor:pointer;color:var(--muted);transition:background .2s,color .2s}.sfd-scope .mode-toggle button.active{background:var(--accent-fill);color:var(--accent-contrast)}.sfd-scope .mode-toggle svg{width:14px;height:14px}.sfd-scope .shell{display:grid;grid-template-columns:312px 1fr;min-height:0}.sfd-scope .shell.preview{grid-template-columns:0 1fr}.sfd-scope .shell.preview .rail{opacity:0;pointer-events:none}.sfd-scope .rail{background:var(--rail);border-right:1px solid var(--border);overflow-y:auto;padding:18px 16px 28px;min-width:0;transition:opacity .25s}.sfd-scope .rail-sec{margin-bottom:24px}.sfd-scope .rail-label{display:flex;align-items:center;justify-content:space-between;font:700 10.5px var(--font-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:11px}.sfd-scope .rail-label .count{background:var(--accent-soft);color:var(--accent-ink);border-radius:999px;padding:2px 8px;font-size:10px}.sfd-scope .field{margin-bottom:12px}.sfd-scope .field label{display:block;font:600 11.5px var(--font-ui);color:var(--muted);margin-bottom:5px}.sfd-scope .input{width:100%;height:36px;padding:0 11px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font:500 13px var(--font-ui)}.sfd-scope .input::placeholder{color:var(--muted)}.sfd-scope textarea.input{height:auto;min-height:86px;padding:9px 11px;resize:vertical;line-height:1.5}.sfd-scope .logo-row{display:flex;align-items:center;gap:10px}.sfd-scope .logo-slot{width:44px;height:44px;border-radius:11px;border:1px solid var(--border);background:var(--surface);display:grid;place-items:center;overflow:hidden;flex:none}.sfd-scope .logo-slot img{width:100%;height:100%;object-fit:contain}.sfd-scope .logo-slot .mono{font:600 15px var(--font-display);color:var(--accent-ink)}.sfd-scope .file-btn{position:relative;overflow:hidden}.sfd-scope .file-btn input{position:absolute;inset:0;opacity:0;cursor:pointer}.sfd-scope .palette{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.sfd-scope .pal-chip{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:4px 11px 4px 5px;font:600 10.5px var(--font-ui);cursor:pointer;transition:border-color .15s}.sfd-scope .pal-chip:hover{border-color:var(--accent-ink)}.sfd-scope .pal-chip i{width:17px;height:17px;border-radius:50%;display:block;background:var(--sw);border:1px solid rgba(0,0,0,.1)}.sfd-scope .pal-chip .role{color:var(--muted);font-weight:500}.sfd-scope .pal-note{font:400 11.5px var(--font-ui);color:var(--muted);margin-top:8px;line-height:1.5}.sfd-scope .contrast-line{margin-top:10px;border:1px solid var(--positive);background:var(--positive-soft);color:var(--positive);border-radius:8px;padding:7px 10px;font:600 11.5px var(--font-ui)}.sfd-scope .contrast-line.warn{border-color:var(--warn-ink);background:var(--warn-soft);color:var(--warn-ink)}.sfd-scope .swatches{display:grid;grid-template-columns:1fr 1fr;gap:7px}.sfd-scope .swatch{display:flex;align-items:center;gap:8px;border:1.5px solid var(--border);background:var(--surface);border-radius:9px;padding:8px 9px;font:600 12px var(--font-ui);cursor:pointer;transition:border-color .15s}.sfd-scope .swatch.active,.sfd-scope .swatch:hover{border-color:var(--accent-ink)}.sfd-scope .swatch .dot{width:18px;height:18px;border-radius:6px;flex:none;background:linear-gradient(135deg,var(--a) 55%,var(--b) 55%)}.sfd-scope .lib-search{margin-bottom:9px}.sfd-scope .cat-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:11px}.sfd-scope .cat-row button{border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:4px 11px;font:600 11px var(--font-ui);color:var(--muted);cursor:pointer;transition:all .15s}.sfd-scope .cat-row button.active{background:var(--accent-fill);border-color:transparent;color:var(--accent-contrast)}.sfd-scope .lib-list{display:flex;flex-direction:column;gap:8px}.sfd-scope .lib-chip{display:flex;align-items:center;gap:11px;padding:10px 11px;border:1px solid var(--border);border-radius:11px;background:var(--surface);cursor:grab;transition:border-color .15s,transform .15s,box-shadow .15s}.sfd-scope .lib-chip:hover{border-color:var(--accent-ink);transform:translateX(2px);box-shadow:var(--shadow)}.sfd-scope .lib-chip:active{cursor:grabbing}.sfd-scope .lib-ico{width:34px;height:34px;border-radius:9px;flex:none;display:grid;place-items:center;background:var(--tint,var(--accent-soft));color:var(--accent-ink)}.sfd-scope .lib-ico svg{width:17px;height:17px}.sfd-scope .lib-info{flex:1;min-width:0}.sfd-scope .lib-name{font:600 12.5px var(--font-ui);display:flex;align-items:center;gap:6px}.sfd-scope .lib-desc{font:400 11px var(--font-ui);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sfd-scope .lib-add{width:26px;height:26px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--accent-ink);display:grid;place-items:center;cursor:pointer;flex:none;transition:all .15s}.sfd-scope .lib-add:hover{background:var(--accent-fill);border-color:transparent;color:var(--accent-contrast)}.sfd-scope .lib-add svg{width:13px;height:13px}.sfd-scope .tag{display:inline-flex;padding:2px 7px;border-radius:999px;font:700 8.5px var(--font-ui);letter-spacing:.07em;text-transform:uppercase}.sfd-scope .tag.soon{background:var(--support-soft);color:var(--warn-ink)}.sfd-scope .tag.guarded{background:var(--negative-soft);color:var(--negative)}.sfd-scope .state-seg{display:flex;flex-wrap:wrap;gap:6px}.sfd-scope .state-seg button{border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:5px 11px;font:600 11px var(--font-ui);color:var(--muted);cursor:pointer;transition:all .15s}.sfd-scope .state-seg button.active{background:var(--text);border-color:transparent;color:var(--bg)}.sfd-scope .stage{overflow-y:auto;min-width:0;position:relative;background-image:radial-gradient(var(--grid-dot) 1.3px,transparent 1.3px);background-size:23px 23px;background-position:-4px -4px}.sfd-scope .stage-in{max-width:1380px;margin:0 auto;padding:22px 26px 60px}.sfd-scope .ws-head{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:4px}.sfd-scope .ws-eyebrow{font:700 10.5px var(--font-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--accent-ink)}.sfd-scope .ws-title{font:550 30px/1.1 var(--font-display);letter-spacing:-.01em}.sfd-scope .ws-meta{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}.sfd-scope .meta-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:5px 12px;font:600 11px var(--font-ui);color:var(--muted)}.sfd-scope .meta-chip .dot{width:7px;height:7px;border-radius:50%;background:var(--positive)}.sfd-scope .summary{position:relative;overflow:hidden;border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:14px 18px;margin:12px 0 18px;box-shadow:var(--shadow)}.sfd-scope .summary:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,var(--chart-1),var(--chart-2),var(--chart-3))}.sfd-scope .summary-line{font:400 16px var(--font-display)}.sfd-scope .summary-line strong{font-weight:600}.sfd-scope .summary-line .sep{margin:0 10px;color:var(--muted)}.sfd-scope .summary-date{font:500 11.5px var(--font-ui);color:var(--muted);margin-top:2px}.sfd-scope .canvas{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--gap);grid-auto-flow:dense}.sfd-scope .span-3{grid-column:span 3}.sfd-scope .span-4{grid-column:span 4}.sfd-scope .span-5{grid-column:span 5}.sfd-scope .span-6{grid-column:span 6}.sfd-scope .span-8{grid-column:span 8}.sfd-scope .span-12{grid-column:span 12}.sfd-scope .card{position:relative;min-width:0;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:15px 16px 14px;transition:transform .18s,box-shadow .18s,border-color .18s,background .35s}.sfd-scope .card:hover{transform:translateY(-1px);box-shadow:0 4px 14px -6px rgba(35,30,20,.18)}.sfd-scope[data-mode=night] .card:hover{box-shadow:0 4px 14px -6px rgba(0,0,0,.5)}.sfd-scope[data-mode=night] .ava,.sfd-scope[data-mode=night] .dz-ico,.sfd-scope[data-mode=night] .lib-ico,.sfd-scope[data-mode=night] .wx-ic{color:var(--text)}.sfd-scope .card.enter{animation:sfd-rise .4s ease both}@keyframes sfd-rise{0%{opacity:0;transform:translateY(8px)}}.sfd-scope .card-head{display:flex;align-items:baseline;gap:9px;margin-bottom:10px;padding-right:86px}.sfd-scope .card-title{font:600 15px var(--font-display);letter-spacing:-.005em;cursor:pointer}.sfd-scope .card-title:hover{color:var(--accent-ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.sfd-scope .card-sub{font:500 10.5px var(--font-ui);letter-spacing:.05em;text-transform:uppercase;color:var(--muted);white-space:nowrap}.sfd-scope .card-badge{font:700 8.5px var(--font-ui);letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--support);color:var(--warn-ink);border-radius:999px;padding:2px 8px}.sfd-scope .card-body{flex:1;min-height:0;display:flex;flex-direction:column}.sfd-scope .card-tools{position:absolute;top:11px;right:12px;display:flex;gap:5px;opacity:0;transition:opacity .15s}.sfd-scope .card:focus-within .card-tools,.sfd-scope .card:hover .card-tools{opacity:1}.sfd-scope .tool{width:24px;height:24px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--muted);display:grid;place-items:center;cursor:pointer;font:700 9.5px var(--font-ui);transition:all .15s}.sfd-scope .tool:hover{color:var(--accent-ink);border-color:var(--accent-ink)}.sfd-scope .tool.remove:hover{color:var(--negative);border-color:var(--negative)}.sfd-scope .tool svg{width:12px;height:12px}.sfd-scope .card.dragging{opacity:.4;outline:2px dashed var(--accent-ink);outline-offset:3px}.sfd-scope.canvas-drag .card{cursor:grabbing}.sfd-scope .kpi-num{font:600 38px/1 var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;display:flex;align-items:baseline;gap:7px}.sfd-scope .kpi-unit{font:600 15px var(--font-ui);color:var(--muted)}.sfd-scope .delta{display:inline-flex;align-items:center;gap:5px;font:600 12px var(--font-ui);margin-top:7px}.sfd-scope .delta.up{color:var(--positive)}.sfd-scope .delta.down{color:var(--negative)}.sfd-scope .delta svg{width:12px;height:12px}.sfd-scope .delta .vs{color:var(--muted);font-weight:500}.sfd-scope .kpi-tintbar{height:3px;border-radius:2px;margin-bottom:12px;width:42px;background:var(--tint-solid,var(--accent-fill))}.sfd-scope .spark-wrap{margin-top:auto;height:44px}.sfd-scope .chart-wrap svg,.sfd-scope .spark-wrap svg{width:100%;height:100%;display:block}.sfd-scope .chart-wrap{flex:1;min-height:150px}.sfd-scope .axis{display:flex;justify-content:space-between;font:500 10.5px var(--font-ui);color:var(--muted);margin-top:6px}.sfd-scope .legend{display:flex;flex-direction:column;gap:7px}.sfd-scope .lg{display:flex;align-items:center;gap:8px;font:500 12.5px var(--font-ui)}.sfd-scope .lg i{width:9px;height:9px;border-radius:3px;flex:none}.sfd-scope .lg .lv{margin-left:auto;font-weight:700;font-variant-numeric:tabular-nums}.sfd-scope .donut-row{flex:1;display:flex;align-items:center;gap:18px}.sfd-scope .donut-fig{position:relative;width:120px;height:120px;flex:none}.sfd-scope .donut-center{position:absolute;inset:0;display:grid;place-content:center;text-align:center}.sfd-scope .donut-total{font:600 24px var(--font-display);font-variant-numeric:tabular-nums}.sfd-scope .donut-cap{font:500 10px var(--font-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.sfd-scope .tbl{width:100%;border-collapse:collapse;font-size:12.5px}.sfd-scope .tbl th{text-align:left;font:700 10px var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:5px 8px 7px;border-bottom:1px solid var(--border);white-space:nowrap}.sfd-scope .tbl td{padding:8px;border-bottom:1px solid var(--divider);white-space:nowrap}.sfd-scope .tbl tr:last-child td{border-bottom:0}.sfd-scope .tbl .t-num{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.sfd-scope .tbl .t-dim{color:var(--muted)}.sfd-scope .status{display:inline-flex;align-items:center;gap:6px;font:600 11.5px var(--font-ui)}.sfd-scope .status i{width:7px;height:7px;border-radius:50%}.sfd-scope .status.ok i{background:var(--positive)}.sfd-scope .status.ok{color:var(--positive)}.sfd-scope .status.warn i{background:var(--support)}.sfd-scope .status.warn{color:var(--warn-ink)}.sfd-scope .status.bad i{background:var(--negative)}.sfd-scope .status.bad{color:var(--negative)}.sfd-scope .list{display:flex;flex-direction:column}.sfd-scope .row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--divider)}.sfd-scope .row:last-child{border-bottom:0}.sfd-scope .ava{width:30px;height:30px;border-radius:9px;flex:none;display:grid;place-items:center;font:600 11px var(--font-display);background:var(--tint,var(--accent-soft));color:var(--accent-ink)}.sfd-scope .row-main{flex:1;min-width:0}.sfd-scope .row-title{font:600 12.5px var(--font-ui)}.sfd-scope .row-sub,.sfd-scope .row-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sfd-scope .row-sub{font:400 11px var(--font-ui);color:var(--muted)}.sfd-scope .row-side{flex:none;text-align:right;font:500 11px var(--font-ui);color:var(--muted);font-variant-numeric:tabular-nums}.sfd-scope .mini-bar{height:6px;border-radius:4px;background:var(--divider);overflow:hidden}.sfd-scope .mini-bar i{display:block;height:100%;border-radius:4px;background:var(--accent-fill)}.sfd-scope .chip-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:999px;background:var(--surface);padding:5px 12px;font:600 11.5px var(--font-ui);cursor:pointer;transition:all .15s}.sfd-scope .chip-btn:hover{border-color:var(--accent-ink);color:var(--accent-ink)}.sfd-scope .chip-btn svg{width:12px;height:12px}.sfd-scope .note{font:400 11.5px/1.5 var(--font-ui);color:var(--muted)}.sfd-scope .foot-row{margin-top:auto;padding-top:10px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sfd-scope .state-pill{display:inline-flex;padding:2px 9px;border-radius:999px;font:700 9.5px var(--font-ui);letter-spacing:.07em;text-transform:uppercase}.sfd-scope .state-pill.warn{background:var(--warn-soft);color:var(--warn-ink);border:1px solid var(--support)}.sfd-scope .state-pill.bad{background:var(--negative-soft);color:var(--negative);border:1px solid var(--negative)}.sfd-scope .skel{flex:1;display:flex;flex-direction:column;gap:11px;justify-content:center;min-height:110px}.sfd-scope .skel i{display:block;height:12px;border-radius:5px;background:linear-gradient(90deg,var(--divider) 25%,var(--border) 50%,var(--divider) 75%);background-size:200% 100%;animation:sfd-shimmer 1.4s linear infinite}.sfd-scope .skel i:first-child{width:55%}.sfd-scope .skel i:nth-child(2){width:85%}.sfd-scope .skel i:nth-child(3){width:70%;height:32px}@keyframes sfd-shimmer{to{background-position:-200% 0}}.sfd-scope .state-card{flex:1;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:7px;min-height:110px}.sfd-scope .state-card strong{font:550 15px var(--font-display)}.sfd-scope .state-card p{font:400 12.5px/1.5 var(--font-ui);color:var(--muted);max-width:40ch}.sfd-scope .wx-row2{display:flex;align-items:center;gap:11px;padding:7px 0;border-bottom:1px solid var(--divider);position:relative}.sfd-scope .wx-row2:last-of-type{border-bottom:0}.sfd-scope .wx-ic{width:36px;height:36px;border-radius:10px;flex:none;display:grid;place-items:center;background:var(--tint,var(--accent-soft));color:var(--accent-ink)}.sfd-scope .wx-ic svg{width:19px;height:19px}.sfd-scope .wx-temp{font:600 22px var(--font-display);font-variant-numeric:tabular-nums}.sfd-scope .wx-x{position:absolute;right:0;top:8px;width:18px;height:18px;border:0;background:none;color:var(--muted);cursor:pointer;opacity:0;transition:opacity .15s;display:grid;place-items:center}.sfd-scope .wx-row2:hover .wx-x{opacity:1}.sfd-scope .wx-x:hover{color:var(--negative)}.sfd-scope .wx-x svg{width:10px;height:10px}.sfd-scope .wx-pop{position:absolute;bottom:calc(100% + 8px);left:0;z-index:8;min-width:170px;max-height:180px;overflow:auto;padding:6px;border-radius:10px;border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-pop)}.sfd-scope .wx-pop button{display:block;width:100%;text-align:left;border:0;background:none;padding:8px 10px;border-radius:7px;font:500 12.5px var(--font-ui);cursor:pointer}.sfd-scope .wx-pop button:hover{background:var(--accent-soft);color:var(--accent-ink)}.sfd-scope .detail{position:absolute;inset:0;z-index:30;display:none;flex-direction:column;background:var(--bg);background-image:radial-gradient(var(--grid-dot) 1.3px,transparent 1.3px);background-size:23px 23px;background-position:-4px -4px}.sfd-scope .stage.dopen{overflow:hidden}.sfd-scope .stage.dopen .stage-in{display:none}.sfd-scope .detail.open{display:flex;animation:sfd-fadeUp .25s ease}@keyframes sfd-fadeUp{0%{opacity:0;transform:translateY(10px)}}.sfd-scope .detail-bar{display:flex;align-items:center;gap:13px;padding:14px 26px;border-bottom:1px solid var(--border);background:var(--rail)}.sfd-scope .detail-title{font:550 21px var(--font-display);letter-spacing:-.01em}.sfd-scope .detail-sub{font:500 11px var(--font-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.sfd-scope .detail-body{flex:1;overflow-y:auto}.sfd-scope .detail-in{max-width:1180px;margin:0 auto;padding:24px 26px 70px}.sfd-scope .d-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--gap)}.sfd-scope .panel-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px 18px;min-width:0}.sfd-scope .panel-card h3{font:600 15px var(--font-display);margin-bottom:12px;display:flex;align-items:baseline;gap:9px}.sfd-scope .panel-card h3 .hint{font:500 10.5px var(--font-ui);letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.sfd-scope .stat-strip{display:flex;flex-wrap:wrap;gap:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);margin-bottom:var(--gap);overflow:hidden}.sfd-scope .stat-cell{flex:1;min-width:130px;padding:14px 18px;border-right:1px solid var(--divider)}.sfd-scope .stat-cell:last-child{border-right:0}.sfd-scope .stat-cell .k{font:600 24px var(--font-display);font-variant-numeric:tabular-nums}.sfd-scope .stat-cell .l{font:500 10.5px var(--font-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:2px}.sfd-scope .range-chips{display:flex;gap:6px}.sfd-scope .range-chips button{border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:4px 12px;font:600 11px var(--font-ui);color:var(--muted);cursor:pointer}.sfd-scope .range-chips button.active{background:var(--accent-fill);border-color:transparent;color:var(--accent-contrast)}.sfd-scope .banner{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--support);background:var(--warn-soft);border-radius:10px;padding:11px 14px;font:400 12.5px/1.5 var(--font-ui);color:var(--text);margin-bottom:var(--gap)}.sfd-scope .banner.guard{border-color:var(--negative);background:var(--negative-soft)}.sfd-scope .banner svg{width:15px;height:15px;flex:none;margin-top:2px;color:var(--warn-ink)}.sfd-scope .banner.guard svg{color:var(--negative)}.sfd-scope .banner b{font-weight:700}.sfd-scope .dropzone{border:1.5px dashed var(--border);border-radius:12px;padding:26px 18px;text-align:center;cursor:pointer;transition:all .2s;background:var(--surface);position:relative}.sfd-scope .dropzone.over,.sfd-scope .dropzone:hover{border-color:var(--accent-ink);background:var(--accent-soft)}.sfd-scope .dropzone input{position:absolute;inset:0;opacity:0;cursor:pointer}.sfd-scope .dropzone .dz-ico{width:40px;height:40px;margin:0 auto 9px;border-radius:11px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-ink)}.sfd-scope .dropzone .dz-ico svg{width:19px;height:19px}.sfd-scope .dz-title{font:600 13.5px var(--font-ui)}.sfd-scope .dz-sub{font:400 11.5px var(--font-ui);color:var(--muted);margin-top:3px}.sfd-scope .progress{height:7px;border-radius:5px;background:var(--divider);overflow:hidden}.sfd-scope .progress i{display:block;height:100%;border-radius:5px;background:var(--accent-fill);transition:width .25s}.sfd-scope .steps{display:flex;gap:6px;margin-bottom:16px;flex-wrap:wrap}.sfd-scope .step{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--border);border-radius:999px;padding:5px 13px;font:600 11.5px var(--font-ui);color:var(--muted)}.sfd-scope .step.active{border-color:var(--accent-ink);color:var(--accent-ink);background:var(--accent-soft)}.sfd-scope .step.done{color:var(--positive);border-color:var(--positive)}.sfd-scope .step .n{width:16px;height:16px;border-radius:50%;background:var(--divider);display:grid;place-items:center;font-size:9.5px}.sfd-scope .step.active .n{background:var(--accent-fill);color:var(--accent-contrast)}.sfd-scope .step.done .n{background:var(--positive);color:#fff}.sfd-scope .map-row{display:grid;grid-template-columns:1fr 24px 1fr 90px;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--divider)}.sfd-scope .map-row:last-child{border-bottom:0}.sfd-scope .map-src{font:600 12.5px var(--font-ui)}.sfd-scope .map-src small{display:block;font:400 10.5px var(--font-ui);color:var(--muted);font-weight:400}.sfd-scope .map-arrow{color:var(--muted);text-align:center}.sfd-scope .select{height:34px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font:500 12.5px var(--font-ui);padding:0 8px;width:100%}.sfd-scope .map-conf{font:600 10.5px var(--font-ui);color:var(--positive);text-align:right}.sfd-scope .report{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}.sfd-scope .report .cellr{border:1px solid var(--border);border-radius:10px;padding:12px 14px;background:var(--surface)}.sfd-scope .report .cellr .k{font:600 22px var(--font-display);font-variant-numeric:tabular-nums}.sfd-scope .report .cellr .l{font:500 10.5px var(--font-ui);color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-top:2px}.sfd-scope .radio-row{display:flex;gap:14px;align-items:center;font:500 12.5px var(--font-ui)}.sfd-scope .radio-row label{display:inline-flex;gap:7px;align-items:center;cursor:pointer}.sfd-scope .post{padding:12px 0;border-bottom:1px solid var(--divider);display:flex;gap:11px}.sfd-scope .post:last-child{border-bottom:0}.sfd-scope .post.pinned{background:var(--accent-soft);margin:0 -18px;padding:12px 18px;border-radius:8px;border-bottom:0}.sfd-scope .post-body{flex:1;min-width:0}.sfd-scope .post-title{font:600 13px var(--font-ui);display:flex;align-items:center;gap:7px}.sfd-scope .post-title .pin{color:var(--accent-ink);display:inline-flex}.sfd-scope .post-title .pin svg{width:11px;height:11px}.sfd-scope .post-text{font:400 12.5px/1.55 var(--font-ui);color:var(--text);margin-top:3px}.sfd-scope .post-meta{display:flex;gap:11px;font:500 11px var(--font-ui);color:var(--muted);margin-top:6px}.sfd-scope .composer{display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--border);padding-top:14px;margin-top:6px}.sfd-scope .funnel{display:flex;flex-direction:column;gap:9px}.sfd-scope .fun-row{display:grid;grid-template-columns:110px 1fr 110px;align-items:center;gap:12px;font:500 12px var(--font-ui)}.sfd-scope .fun-row .fl{color:var(--muted);font-weight:600}.sfd-scope .fun-bar{height:22px;border-radius:6px;background:var(--divider);overflow:hidden}.sfd-scope .fun-bar i{display:block;height:100%;border-radius:6px}.sfd-scope .fun-row .fv{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.sfd-scope .scrim{position:fixed;inset:0;z-index:60;background:rgba(20,17,12,.35);opacity:0;pointer-events:none;transition:opacity .25s}.sfd-scope[data-mode=night] .scrim{background:rgba(0,0,0,.5)}.sfd-scope .scrim.show{opacity:1;pointer-events:auto}.sfd-scope .slide{position:fixed;top:0;right:0;bottom:0;z-index:70;width:min(430px,94vw);background:var(--surface);border-left:1px solid var(--border);transform:translateX(105%);transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column}.sfd-scope .slide.open{transform:none;box-shadow:var(--shadow-pop)}.sfd-scope .slide-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:17px 20px 13px;border-bottom:1px solid var(--border)}.sfd-scope .slide-title{font:550 18px var(--font-display)}.sfd-scope .slide-sub{font:400 12px var(--font-ui);color:var(--muted);margin-top:2px}.sfd-scope .slide-body{flex:1;overflow-y:auto;padding:17px 20px 26px}.sfd-scope .pub-verdict{display:inline-flex;align-items:center;padding:7px 15px;border-radius:999px;font:600 12px var(--font-ui);border:1px solid var(--positive);color:var(--positive);background:var(--positive-soft)}.sfd-scope .pub-verdict.blocked{border-color:var(--negative);color:var(--negative);background:var(--negative-soft)}.sfd-scope .pub-verdict.review{border-color:var(--support);color:var(--warn-ink);background:var(--warn-soft)}.sfd-scope .pub-list{list-style:none;display:flex;flex-direction:column;gap:9px;margin-top:14px}.sfd-scope .pub-item{display:flex;gap:10px;padding:11px 13px;border:1px solid var(--border);border-radius:10px;background:var(--rail)}.sfd-scope .pub-dot{width:8px;height:8px;border-radius:50%;flex:none;margin-top:5px}.sfd-scope .pub-item[data-kind=pass] .pub-dot{background:var(--positive)}.sfd-scope .pub-item[data-kind=soon] .pub-dot,.sfd-scope .pub-item[data-kind=warning] .pub-dot{background:var(--support)}.sfd-scope .pub-item[data-kind=blocked] .pub-dot{background:var(--negative)}.sfd-scope .pub-item strong{display:block;font:600 13px var(--font-ui)}.sfd-scope .pub-item span span{display:block;font:400 12px/1.5 var(--font-ui);color:var(--muted);margin-top:2px}.sfd-scope .slide-foot{border-top:1px solid var(--border);padding:13px 20px;display:flex;gap:9px;justify-content:flex-end}.sfd-scope .roll-opt{display:flex;gap:12px;border:1.5px solid var(--border);border-radius:12px;padding:14px;cursor:pointer;transition:border-color .15s;margin-bottom:10px}.sfd-scope .roll-opt.active,.sfd-scope .roll-opt:hover{border-color:var(--accent-ink)}.sfd-scope .roll-opt input{margin-top:3px;accent-color:var(--accent-fill)}.sfd-scope .roll-opt .ro-t{font:600 13.5px var(--font-ui)}.sfd-scope .roll-opt .ro-d{font:400 12px/1.5 var(--font-ui);color:var(--muted);margin-top:2px}.sfd-scope .roll-opt .ro-p{margin-left:auto;font:600 14px var(--font-display);white-space:nowrap}.sfd-scope .order{border:1px solid var(--border);border-radius:12px;overflow:hidden;margin-top:4px}.sfd-scope .order-row{display:flex;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--divider);font:500 12.5px var(--font-ui)}.sfd-scope .order-row:last-child{border-bottom:0;background:var(--rail);font-weight:700}.sfd-scope .invite-card{border:1px solid var(--border);border-radius:12px;padding:16px;background:var(--rail);margin-top:4px}.sfd-scope .invite-card .from{font:500 11px var(--font-ui);color:var(--muted)}.sfd-scope .invite-card .subj{font:600 14px var(--font-display);margin:7px 0}.sfd-scope .invite-card .body{font:400 12.5px/1.6 var(--font-ui);color:var(--text)}.sfd-scope .invite-card .link{display:inline-block;margin-top:9px;padding:8px 14px;border-radius:8px;background:var(--accent-fill);color:var(--accent-contrast);font:600 12px var(--font-ui)}.sfd-scope .success-mark{width:52px;height:52px;border-radius:50%;background:var(--positive-soft);color:var(--positive);display:grid;place-items:center;margin-bottom:12px}.sfd-scope .success-mark svg{width:24px;height:24px}.sfd-scope .modal{position:fixed;inset:0;z-index:80;display:none;place-items:center;padding:20px}.sfd-scope .modal.open{display:grid}.sfd-scope .modal-card{width:min(680px,96vw);max-height:90vh;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-pop);padding:20px 22px;animation:sfd-fadeUp .22s ease}.sfd-scope .modal-title{font:550 19px var(--font-display);margin-bottom:3px}.sfd-scope .modal-sub{font:400 12.5px var(--font-ui);color:var(--muted);margin-bottom:15px}.sfd-scope .to-chip{display:inline-flex;align-items:center;gap:7px;background:var(--accent-soft);color:var(--accent-ink);border-radius:999px;padding:6px 13px;font:600 12px var(--font-ui)}.sfd-scope .merge-chips{display:flex;gap:6px;flex-wrap:wrap;margin:7px 0 3px}.sfd-scope .merge-chips button{border:1px dashed var(--border);background:var(--rail);border-radius:7px;padding:3px 9px;font:600 11px var(--font-ui);color:var(--accent-ink);cursor:pointer}.sfd-scope .merge-chips button:hover{border-color:var(--accent-ink)}.sfd-scope .preview-pane{border:1px solid var(--border);border-radius:10px;background:var(--rail);padding:13px 15px;font:400 12.5px/1.6 var(--font-ui)}.sfd-scope .preview-pane .pv-subj{font:600 13.5px var(--font-display);margin-bottom:6px}.sfd-scope .send-note{font:400 11px/1.5 var(--font-ui);color:var(--muted)}.sfd-scope #toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%,16px);z-index:99;background:var(--text);color:var(--bg);padding:10px 19px;border-radius:999px;font:600 12.5px var(--font-ui);opacity:0;pointer-events:none;transition:all .25s;box-shadow:var(--shadow-pop);max-width:90vw}.sfd-scope #toast.show{opacity:1;transform:translate(-50%)}@media (max-width:1120px){.sfd-scope .shell{grid-template-columns:1fr}.sfd-scope .rail{position:fixed;inset:58px auto 0 0;width:min(330px,90vw);z-index:50;transform:translateX(-105%);transition:transform .3s;box-shadow:var(--shadow-pop)}.sfd-scope .rail.open{transform:none}.sfd-scope .span-3,.sfd-scope .span-4,.sfd-scope .span-5{grid-column:span 6}.sfd-scope .span-6,.sfd-scope .span-8{grid-column:span 12}}.sfd-scope .prov-chip{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap;font:500 10.5px var(--font-ui);color:var(--muted)}.sfd-scope .prov-chip .prov-src{color:var(--accent-ink);font-weight:600;text-decoration:none}.sfd-scope .prov-chip a.prov-src:focus-visible,.sfd-scope .prov-chip a.prov-src:hover{text-decoration:underline}.sfd-scope .prov-chip .prov-part{display:inline-flex;align-items:center;gap:4px}.sfd-scope .prov-chip .prov-part:before{content:"·";margin-right:3px;color:var(--muted)}.sfd-scope .prov-chip .prov-conf i{width:7px;height:7px;border-radius:50%;background:var(--muted);display:inline-block}.sfd-scope .prov-chip .conf-high i{background:var(--positive)}.sfd-scope .prov-chip .conf-medium i{background:var(--warn-ink)}.sfd-scope .prov-chip .conf-low i{background:var(--negative)}.sfd-scope .dt-wrap{flex:1;overflow:auto;margin:0 -4px;min-height:0}.sfd-scope .dt-wrap .dt{width:100%}.sfd-scope .dt thead th{position:sticky;top:0;background:var(--surface);z-index:1;padding:0}.sfd-scope .dt-sort{appearance:none;border:0;background:none;width:100%;text-align:inherit;cursor:pointer;padding:6px 8px 7px 0;font:600 10.5px var(--font-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--border)}.sfd-scope .dt-sort:focus-visible,.sfd-scope .dt-sort:hover{color:var(--accent-ink)}.sfd-scope .dt tbody td{padding:7px 8px 7px 0;border-bottom:1px solid var(--divider);font:400 12.5px var(--font-ui);white-space:nowrap}.sfd-scope .dt tbody tr:last-child td{border-bottom:0}.sfd-scope .score-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;flex:1;align-content:start}.sfd-scope .score-cell{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border:1px solid var(--divider);border-radius:calc(var(--radius) - 3px);background:var(--surface);min-width:0}.sfd-scope .score-label{font:600 10px var(--font-ui);letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.sfd-scope .score-value{font:600 22px var(--font-display);color:var(--text);font-variant-numeric:tabular-nums;line-height:1.15;overflow-wrap:anywhere}.sfd-scope .score-value.sm{font-size:16px}.sfd-scope .geo-wrap{flex:1;display:flex;align-items:center;min-height:0}.sfd-scope .geo-wrap svg{max-height:100%}@media (max-width:720px){.sfd-scope .span-3,.sfd-scope .span-4,.sfd-scope .span-5,.sfd-scope .span-6{grid-column:span 12}.sfd-scope .ws-title{font-size:24px}.sfd-scope .topbar{gap:8px;padding:0 12px}.sfd-scope .btn .btxt,.sfd-scope .crumb{display:none}}@media (prefers-reduced-motion:reduce){.sfd-scope,.sfd-scope *,.sfd-scope :after,.sfd-scope :before,.sfd-scope:after,.sfd-scope:before{animation-duration:.01ms!important;transition-duration:.01ms!important}.sfd-scope .skel i{animation:none}}.sfd-scope .topbar{min-width:0;overflow:hidden}.sfd-scope .mark{flex:1 1 260px;min-width:0}.sfd-scope .mark>span:not(.mark-logo){display:block;min-width:0}.sfd-scope .mark-name,.sfd-scope .mark-sub{max-width:100%;overflow-wrap:anywhere}.sfd-scope .crumb{flex:1 1 220px;min-width:0}.sfd-scope .top-spacer{flex:0 1 24px;min-width:0}.sfd-scope .card-head{flex-wrap:wrap;align-items:flex-start;min-width:0}.sfd-scope .card-sub,.sfd-scope .card-title{min-width:0;max-width:100%;overflow-wrap:anywhere}.sfd-scope .card-sub{white-space:normal}.sfd-scope .card-badge,.sfd-scope .card-head .tag{max-width:100%;white-space:normal}.sfd-scope .dt-wrap{margin-left:0;margin-right:0;max-width:100%}.sfd-scope .role-layouts{display:grid;gap:8px}.sfd-scope .role-preset{display:grid;gap:3px;width:100%;min-height:44px;border:1px solid var(--border);border-radius:10px;background:var(--surface);padding:10px 11px;text-align:left;cursor:pointer;transition:border-color .15s,background .15s,transform .15s}.sfd-scope .role-preset:focus-visible,.sfd-scope .role-preset:hover{border-color:var(--accent-ink);background:var(--accent-soft)}.sfd-scope .role-preset:active{transform:translateY(1px)}.sfd-scope .role-preset-name{font:700 12.5px var(--font-ui)}.sfd-scope .role-preset-audience,.sfd-scope .role-preset-detail{color:var(--muted);overflow-wrap:anywhere}.sfd-scope .role-preset-audience{font:600 10.5px var(--font-ui);letter-spacing:.06em;text-transform:uppercase}.sfd-scope .role-preset-detail{font:400 11.5px/1.45 var(--font-ui)}@media (max-width:980px){.sfd-scope .topbar{gap:10px;padding:0 14px}.sfd-scope .btn .btxt,.sfd-scope .crumb{display:none}.sfd-scope .btn{width:38px;padding:0;justify-content:center}}@media (max-width:720px){.sfd-scope{overflow:auto}.sfd-scope .app{min-width:0;grid-template-rows:auto 1fr}.sfd-scope .topbar{min-height:58px;overflow:hidden;scrollbar-width:none}.sfd-scope .topbar::-webkit-scrollbar{display:none}.sfd-scope .top-spacer{flex:0 1 4px}.sfd-scope .mark{flex-basis:126px;gap:8px}.sfd-scope .mark-name{white-space:normal;line-height:1.05}.sfd-scope .mark-sub{line-height:1.2}.sfd-scope .stage-in{padding:18px 14px 44px;overflow-x:hidden}.sfd-scope .ws-title{overflow-wrap:anywhere}.sfd-scope .ws-meta{width:100%;margin-left:0;flex-wrap:wrap;overflow:visible}.sfd-scope .meta-chip{min-width:0;white-space:normal}.sfd-scope .summary{overflow:visible;padding:14px}.sfd-scope .summary-line{display:flex;flex-wrap:wrap;gap:7px 10px;line-height:1.25}.sfd-scope .summary-line .sep{display:none}.sfd-scope .summary-line strong{display:inline-flex;flex-wrap:wrap;gap:4px}.sfd-scope .note,.sfd-scope .prov-chip,.sfd-scope .summary-date{overflow-wrap:anywhere}.sfd-scope .card{overflow:hidden;padding:14px}.sfd-scope .card-head{display:grid;grid-template-columns:minmax(0,1fr);gap:5px;padding-right:0}.sfd-scope .card-sub,.sfd-scope .card-title{overflow-wrap:anywhere;white-space:normal}.sfd-scope .card-badge{justify-self:start}.sfd-scope .card-tools{opacity:1;top:8px;right:8px}.sfd-scope .kpi-num{font-size:clamp(30px,12vw,38px);flex-wrap:wrap}.sfd-scope .score-grid{grid-template-columns:minmax(0,1fr)}.sfd-scope .dt-wrap{max-width:100%}}