:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f7fb;--card:#fff;--card-2:#f8fafc;--flag:#fffbe6;--ink:#0f172a;--ink-2:#334155;--muted:#64748b;--line:#e2e8f0;--line-2:#cbd5e1;--brand:#2c3093;--brand-2:#4347b8;--brand-soft:#eef2ff;--amber:#d97706;--amber-soft:#fef3c7;--red:#dc2626;--red-soft:#fee2e2;--green:#16a34a;--green-soft:#dcfce7;--blue-soft:#e0ecff;--blue:#1d4ed8;--purple:#7c3aed;--purple-soft:#f3e8ff;--side:232px;--radius:12px;--shadow:0 1px 2px #14193c0d, 0 8px 24px -12px #14193c1f;color:var(--ink);background:var(--bg);font-family:Plus Jakarta Sans,Inter,system-ui,Segoe UI,sans-serif;font-size:14.5px}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;margin:0}a{color:inherit;text-decoration:none}h1{letter-spacing:-.01em;margin:0;font-size:1.45rem;font-weight:800}h2{margin:1.2rem 0 .5rem;font-size:1.05rem;font-weight:700}h3{margin:0 0 .4rem;font-size:.95rem;font-weight:700}.muted{color:var(--muted)}.small{font-size:.8rem}.mono{font-variant-numeric:tabular-nums}.shell{grid-template-columns:var(--side) 1fr;min-height:100vh;display:grid}.side{background:color-mix(in srgb, var(--brand) 5%, var(--card));border-right:1px solid var(--line);flex-direction:column;height:100vh;padding:1rem .8rem;display:flex;position:sticky;top:0}.side .logo{letter-spacing:-.01em;align-items:center;gap:.55rem;padding:.2rem .5rem .9rem;font-size:1.05rem;font-weight:800;display:flex}.side .logo img{width:auto;height:32px}.logo-d,:root[data-theme=dark] .logo-l{display:none}:root[data-theme=dark] .logo-d{display:inline}.side .tenant{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;padding:0 .5rem .6rem;font-size:.7rem;font-weight:600}.side nav{flex-direction:column;gap:.15rem;display:flex}.side nav a{color:var(--ink-2);border-radius:9px;align-items:center;gap:.6rem;padding:.55rem .65rem;font-size:.92rem;font-weight:600;display:flex}.side nav a svg{width:18px;height:18px;color:var(--muted)}.side nav a:hover{background:var(--bg)}.side nav a.active{background:var(--brand-soft);color:var(--brand)}.side nav a.active svg{color:var(--brand)}.side .grow{flex:1}.side .me{border-top:1px solid var(--line);align-items:center;gap:.6rem;padding-top:.8rem;display:flex}.avatar{background:var(--brand);color:#fff;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:.85rem;font-weight:700;display:grid;position:relative;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.demo-btn{flex-direction:row;align-items:center;gap:.7rem}.demo-btn .demo-avatar{object-fit:cover;background:var(--brand-soft);border-radius:50%;flex:none;width:44px;height:44px}.demo-btn .demo-txt{flex-direction:column;gap:.1rem;display:flex}.me .who{flex:1;min-width:0}.me .who b{white-space:nowrap;text-overflow:ellipsis;font-size:.88rem;display:block;overflow:hidden}.me .who span{color:var(--muted);font-size:.75rem}.icon-btn{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;padding:.35rem;display:grid}.icon-btn:hover{background:var(--bg);color:var(--ink)}.icon-btn svg{width:18px;height:18px}.main{min-width:0}.content{max-width:1500px;padding:1.4rem 1.6rem 3rem}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1rem;display:flex}.page-head p{color:var(--muted);margin:.25rem 0 0}button,.btn{font:inherit;background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:9px;align-items:center;gap:.4rem;padding:.55rem .95rem;font-size:.9rem;font-weight:600;display:inline-flex}button:hover,.btn:hover{background:var(--brand-2)}button:disabled{opacity:.55;cursor:default}button.ghost,.btn.ghost{background:var(--card);color:var(--ink-2);border:1px solid var(--line-2)}button.ghost:hover{background:var(--bg)}button.danger{background:var(--red)}input,select,textarea{font:inherit;border:1px solid var(--line-2);background:var(--card);color:var(--ink);border-radius:9px;padding:.5rem .65rem;font-size:.9rem}input:focus,select:focus{outline:2px solid var(--brand-soft);border-color:var(--brand-2)}label{color:var(--muted);flex-direction:column;gap:.3rem;font-size:.8rem;font-weight:600;display:flex}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:.7rem;padding:1rem 1.1rem;display:flex}.error{background:var(--red-soft);color:#991b1b;border:1px solid #fecaca;border-radius:9px;padding:.6rem .8rem;font-size:.9rem}.ok{background:var(--green-soft);color:#14532d;border:1px solid #bbf7d0;border-radius:9px;margin:.5rem 0;padding:.55rem .8rem;font-size:.9rem}.empty{text-align:center;color:var(--muted);background:var(--card);border:1px dashed var(--line-2);border-radius:var(--radius);padding:2.2rem}.center{place-items:center;gap:1rem;min-height:60vh;display:grid}.badge{background:var(--brand-soft);color:var(--brand);white-space:nowrap;border-radius:999px;align-items:center;gap:.25rem;padding:.12rem .55rem;font-size:.74rem;font-weight:700;display:inline-flex}.badge.warn{background:var(--amber-soft);color:#b45309}.badge.purple{background:var(--purple-soft);color:var(--purple)}.badge.red{background:var(--red-soft);color:#b91c1c}.badge.green{background:var(--green-soft);color:#166534}.badge.gray{color:#4b5563;background:#f1f2f6}.badge.st-malzeme_bekliyor{background:var(--amber-soft);color:#b45309}.badge.st-kesimde,.badge.st-dikimde{background:var(--blue-soft);color:var(--blue)}.badge.st-kalite_paket{background:var(--purple-soft);color:var(--purple)}.badge.st-yuklenebilir{background:var(--green-soft);color:#166534}.badge.st-yuklendi,.badge.st-kapandi{color:#4b5563;background:#f1f2f6}.light{border-radius:50%;width:.7rem;height:.7rem;display:inline-block;box-shadow:0 0 0 3px #0000000a}.light.green{background:var(--green)}.light.amber{background:var(--amber)}.light.red{background:var(--red)}.kpis{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.7rem;margin:.4rem 0 1.1rem;display:grid}.kpi{background:var(--card);color:var(--ink);border:1px solid var(--line);border-left:4px solid var(--brand);text-align:left;box-shadow:var(--shadow);border-radius:12px;flex-direction:column;align-items:flex-start;gap:.15rem;padding:.7rem .9rem;display:flex}.kpi:hover{background:var(--card);border-color:var(--brand-2)}.kpi.on{outline:2px solid var(--brand-soft);border-left-color:var(--amber)}.kpi.red{border-left-color:var(--red)}.kpi.amber{border-left-color:var(--amber)}.kpi.green{border-left-color:var(--green)}.kpi.blue{border-left-color:var(--blue)}.kpi-n{letter-spacing:-.02em;font-size:1.6rem;font-weight:800;line-height:1.1}.kpi-l{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:700}.table-wrap{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:auto}.grid{border-collapse:separate;border-spacing:0;width:100%;font-size:.875rem}.grid th{z-index:1;background:var(--card-2);color:var(--muted);text-transform:uppercase;letter-spacing:.05em;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:.6rem .7rem;font-size:.72rem;font-weight:700;position:sticky;top:0}.grid th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.grid th.sortable:hover{color:var(--ink)}.grid th .dir{color:var(--brand);margin-left:.2rem}.grid td{border-bottom:1px solid var(--line);vertical-align:middle;white-space:nowrap;padding:.5rem .7rem}.grid tbody tr:hover td{background:var(--card-2)}.grid tr.sel td{background:var(--brand-soft)}.grid tr.flag td{background:var(--flag)}.grid td.num{text-align:right;font-variant-numeric:tabular-nums}.grid th.num{text-align:right}.grid a{color:var(--brand);font-weight:700}.grid.compact th,.grid.compact td{padding:.38rem .55rem;font-size:.83rem}.grid td select,.grid td input{background:0 0;border:1px solid #0000;border-radius:6px;padding:.25rem .4rem;font-size:.84rem}.grid td select:hover,.grid td input:hover{border-color:var(--line-2);background:#fff}.grid td input.w-num{text-align:right;width:84px}.grid td input.w-txt{width:160px}.grid td .badge{margin-right:.3rem}.star{cursor:pointer;color:#c7cad6;background:0 0;border:0;padding:0;display:inline-flex}.star:hover{color:var(--amber);background:0 0}.star.on{color:var(--amber)}.star svg{width:17px;height:17px}.row-between{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.filters{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.2rem 0 .9rem;display:flex}.filters input{flex:260px}.detail-grid{grid-template-columns:repeat(auto-fit,minmax(440px,1fr));align-items:start;gap:1rem;margin-top:1rem;display:grid}.inline-form{flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.4rem;display:flex}.inline-form input{width:130px}.inline-form button{padding:.45rem .8rem;font-size:.85rem}.form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.8rem;width:100%;display:grid}.form-grid .span-all{grid-column:1/-1}.stepper{flex-wrap:wrap;gap:.35rem;margin:.3rem 0 .8rem;display:flex}.step{border:1px solid var(--line);background:#fafbfe;border-radius:10px;flex-direction:column;gap:.15rem;min-width:96px;padding:.45rem .6rem;font-size:.74rem;display:flex}.step b{font-size:.78rem}.step.done{background:var(--green-soft);border-color:#bbf7d0}.step.late{background:var(--red-soft);border-color:#fecaca}.step.open{background:var(--amber-soft);border-color:#fde68a}.login{background:radial-gradient(1200px 600px at 20% -10%, #e9ebff 0%, var(--bg) 55%);place-items:center;min-height:100vh;padding:1rem;display:grid}.login-wrap{grid-template-columns:minmax(0,400px) minmax(0,440px);justify-content:center;align-items:start;gap:1.2rem;width:100%;display:grid}.login .card{width:100%;padding:1.6rem}.login .logo{align-items:center;gap:.6rem;font-size:1.25rem;font-weight:800;display:flex}.login .logo img{width:auto;height:40px}.demo-title{font-weight:800}.demo-btn{background:var(--card-2);color:var(--ink);border:1px solid var(--line);text-align:left;flex-direction:column;align-items:flex-start;gap:.1rem;padding:.6rem .8rem;display:flex}.demo-btn:hover,.demo-btn.on{border-color:var(--brand);background:var(--brand-soft)}.demo-label{font-weight:700}.quick{max-width:560px;margin:0 auto}.big{border:1px solid var(--line-2);background:#fff;border-radius:10px;width:100%;margin:.35rem 0;padding:.8rem .9rem;font-size:1.15rem}button.big{background:var(--brand);color:#fff;border:0;justify-content:center;font-weight:800}.hits{flex-direction:column;gap:.35rem;margin-top:.4rem;display:flex}.hit{text-align:left;background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:.6rem .8rem;font-size:.95rem;display:block}.quick-form{margin-top:.6rem}.stages{grid-template-columns:repeat(4,1fr);gap:.4rem;display:grid}.stage{background:var(--card-2);color:var(--ink);border:1px solid var(--line);justify-content:center;padding:.7rem .3rem;font-weight:700}.stage.on{background:var(--brand);color:#fff;border-color:var(--brand)}@media (width<=900px){.login-wrap{grid-template-columns:minmax(0,440px)}.shell{grid-template-columns:1fr}.side{flex-direction:row;align-items:center;gap:.5rem;height:auto;padding:.5rem .6rem;position:static;overflow-x:auto}.side .logo{padding:0 .3rem}.side .logo .txt,.side .tenant{display:none}.side nav{flex-direction:row}.side nav a span{display:none}.side .me{border:0;padding:0}.me .who{display:none}.content{padding:1rem}}.cards{flex-direction:column;gap:.5rem;display:flex}.row-card{gap:.35rem;padding:.7rem .8rem}.row-card .row-between{align-items:center}.model-meta{flex-direction:column;gap:.2rem;display:flex}.thumbs{gap:.3rem;display:flex}.thumbs img{object-fit:cover;border:1px solid var(--line);cursor:zoom-in;border-radius:6px;width:34px;height:34px}.lightbox{z-index:50;cursor:zoom-out;background:#0f1220bf;place-items:center;display:grid;position:fixed;inset:0}.lightbox img{background:#fff;border-radius:12px;max-width:90vw;max-height:90vh}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b0f19;--card:#111827;--card-2:#1a2234;--flag:#2a2510;--ink:#f8fafc;--ink-2:#cbd5e1;--muted:#94a3b8;--line:#1f2937;--line-2:#2b3648;--brand:#6366f1;--brand-2:#818cf8;--brand-soft:#1e1b4b;--amber:#fbbf24;--amber-soft:#451a03;--red:#f87171;--red-soft:#450a0a;--green:#4ade80;--green-soft:#052e16;--blue-soft:#1a2a4d;--blue:#7aa2ff;--purple:#c084fc;--purple-soft:#3b0764;--shadow:0 1px 2px #0006, 0 8px 24px -12px #0009}:root[data-theme=dark] .badge.warn{color:#fcd34d}:root[data-theme=dark] .badge.purple{color:#d8b4fe}:root[data-theme=dark] .badge.red{color:#fca5a5}:root[data-theme=dark] .badge.green{color:#86efac}:root[data-theme=dark] .badge.gray{color:#c3c7d6;background:#262b42}:root[data-theme=dark] .badge.st-malzeme_bekliyor{color:#fcd34d}:root[data-theme=dark] .badge.st-kalite_paket{color:#d8b4fe;background:#2e1f4a}:root[data-theme=dark] .badge.st-yuklenebilir{color:#86efac}:root[data-theme=dark] .badge.st-yuklendi,:root[data-theme=dark] .badge.st-kapandi{color:#c3c7d6;background:#262b42}:root[data-theme=dark] .ok{color:#bbf7d0;background:#132;border-color:#1f5a37}:root[data-theme=dark] .error{color:#fecaca;background:#3f1d1d;border-color:#7f1d1d}:root[data-theme=dark] .login{background:radial-gradient(1200px 600px at 20% -10%, #1b1f4a 0%, var(--bg) 55%)}.theme-seg{border:1px solid var(--line-2);border-radius:9px;display:inline-flex;overflow:hidden}.theme-seg button{background:var(--card);color:var(--ink-2);border:0;border-radius:0;padding:.45rem .8rem;font-size:.85rem}.theme-seg button.on{background:var(--brand);color:#fff}:root[data-accent=mavi]{--brand:#1d4ed8;--brand-2:#2563eb;--brand-soft:#dbeafe}:root[data-accent=mavi][data-theme=dark]{--brand:#60a5fa;--brand-2:#93c5fd;--brand-soft:#172554}:root[data-accent=yesil]{--brand:#047857;--brand-2:#059669;--brand-soft:#d1fae5}:root[data-accent=yesil][data-theme=dark]{--brand:#34d399;--brand-2:#6ee7b7;--brand-soft:#052e16}:root[data-accent=camgobegi]{--brand:#0e7490;--brand-2:#0891b2;--brand-soft:#cffafe}:root[data-accent=camgobegi][data-theme=dark]{--brand:#22d3ee;--brand-2:#67e8f9;--brand-soft:#083344}:root[data-accent=gri]{--brand:#334155;--brand-2:#475569;--brand-soft:#e2e8f0}:root[data-accent=gri][data-theme=dark]{--brand:#94a3b8;--brand-2:#cbd5e1;--brand-soft:#1e293b}:root[data-accent=bordo]{--brand:#9f1239;--brand-2:#be123c;--brand-soft:#ffe4e6}:root[data-accent=bordo][data-theme=dark]{--brand:#fb7185;--brand-2:#fda4af;--brand-soft:#4c0519}:root[data-theme=dark] :is(button:not([class]),button[class=""],button.big,button.danger,.btn:not(.ghost),.avatar,.theme-seg button.on){color:#0b0f19}.swatches{flex-wrap:wrap;gap:.5rem;display:flex}.swatch{cursor:pointer;width:30px;height:30px;box-shadow:0 0 0 1px var(--line-2) inset;border:2px solid #0000;border-radius:50%;padding:0}.swatch.on{border-color:var(--ink);box-shadow:0 0 0 2px var(--card) inset}label.chk{color:var(--ink-2);flex-direction:row;align-items:center;gap:.35rem;font-size:.85rem}label.chk input{width:auto}select{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background-color:var(--card);color:var(--ink)}select option{color:#0f172a;background:#fff}:root[data-theme=dark] select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=dark] select option{color:#e8eaf3;background:#171b2e}:root[data-theme=dark] .grid td select{background-color:#0000}:root[data-theme=dark] .star{color:#6b7190}:root[data-theme=dark] .star.on,:root[data-theme=dark] .star:hover{color:#fbbf24}.profile-hero{border-bottom:1px solid var(--line);align-items:center;gap:1rem;margin-bottom:.4rem;padding-bottom:.6rem;display:flex}.avatar.big{width:104px;height:104px;box-shadow:0 0 0 4px var(--brand-soft);font-size:2rem}.hero-name{letter-spacing:-.01em;font-size:1.25rem;font-weight:800}.kv{gap:.5rem;display:grid}.kv label input,.kv label textarea{width:100%}.kv-ro{grid-template-columns:110px 1fr;align-items:baseline;gap:.3rem .8rem;display:grid}.cert-list{flex-direction:column;gap:.4rem;display:flex}.cert{align-items:center;gap:.6rem;display:flex}.cert button{padding:.2rem .5rem;font-size:.75rem}.cap-bars{flex-direction:column;gap:.35rem;display:flex}.cap-row{grid-template-columns:46px 1fr 150px;align-items:center;gap:.6rem;display:grid}.bar{background:var(--line);border-radius:999px;height:10px;overflow:hidden}.bar .fill{border-radius:999px;height:100%}.bar .fill.green{background:var(--green)}.bar .fill.amber{background:var(--amber)}.bar .fill.red{background:var(--red)}.logo-mark{background:var(--brand);flex:none;width:32px;height:32px;display:inline-block;-webkit-mask:url(/mark.svg) 50%/contain no-repeat;mask:url(/mark.svg) 50%/contain no-repeat}.side .logo .logo-l,.side .logo .logo-d{width:auto;height:22px}.login .logo .logo-mark{width:40px;height:40px}.login .logo .logo-l,.login .logo .logo-d{width:auto;height:26px}:root[data-theme=dark] .side{background:color-mix(in srgb, var(--brand) 9%, var(--card))}.side a.logo{cursor:pointer}.side a.logo:hover .logo-mark{opacity:.85}.topbar{z-index:20;background:color-mix(in srgb, var(--card) 88%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);align-items:center;gap:.5rem;padding:.55rem 1.6rem;display:flex;position:sticky;top:0}.topbar .grow{flex:1}.search{background:var(--card);border:1px solid var(--line-2);width:min(520px,100%);color:var(--muted);border-radius:10px;align-items:center;gap:.5rem;padding:.35rem .7rem;display:flex}.search input{color:var(--ink);background:0 0;border:0;flex:1;padding:.15rem 0;font-size:.9rem}.search input:focus{outline:none}.search:focus-within{border-color:var(--brand-2);box-shadow:0 0 0 3px var(--brand-soft)}.tb-btn{gap:.4rem;padding:.4rem .7rem;font-size:.85rem}.tb-btn.on,.icon-btn.on{background:var(--brand-soft);color:var(--brand)}.pill{color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 .35rem;font-size:.7rem;font-weight:800;display:inline-flex}.pill.red{background:var(--red)}.pill.amber{background:var(--amber)}.help-wrap{position:relative}.popover{background:var(--card);border:1px solid var(--line);width:340px;box-shadow:var(--shadow);z-index:30;border-radius:12px;padding:.8rem .9rem;font-size:.88rem;position:absolute;top:calc(100% + 6px);right:0}.popover ul{gap:.3rem;margin:.4rem 0 .5rem;padding-left:1.1rem;display:grid}.drawer{background:var(--card);border-left:1px solid var(--line);z-index:40;flex-direction:column;gap:.8rem;width:min(380px,100%);height:100vh;padding:1rem 1.1rem;display:flex;position:fixed;top:0;right:0;overflow:auto;box-shadow:-8px 0 32px #0000001f}.drawer-head{align-items:center;gap:.6rem;display:flex}.drawer-head .muted{flex:1}.sug-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.sug-list a{border:1px solid var(--line);background:var(--card-2);border-radius:10px;align-items:flex-start;gap:.6rem;padding:.6rem .7rem;display:flex}.sug-list a:hover{border-color:var(--brand-2)}.sug-list a>span:last-child{display:grid}.sug-list .light{margin-top:.35rem}@media (width<=900px){.topbar{padding:.5rem 1rem}.tb-btn span:not(.pill){display:none}}.toasts{z-index:60;flex-direction:column;gap:.5rem;display:flex;position:fixed;bottom:1rem;right:1rem}.toast{background:var(--ink);color:var(--card);box-shadow:var(--shadow);border-radius:12px;align-items:center;gap:.6rem;padding:.6rem .8rem .6rem 1rem;font-size:.9rem;animation:.18s ease-out toast-in;display:flex}.toast.err{background:var(--red);color:#fff}.toast button.ghost{color:inherit;background:0 0;border-color:#ffffff59;padding:.3rem .6rem;font-size:.8rem}.toast .icon-btn{color:inherit;opacity:.7}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.skeleton{background:var(--line);border-radius:8px;min-height:1em;position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--card) 60%, transparent), transparent);animation:1.2s infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes shimmer{to{transform:translate(100%)}}.sk-page{gap:.8rem;display:grid}.sk-page .sk-title{width:260px;height:28px}.sk-page .sk-row{height:72px}.icon-btn .dot{background:var(--red);border-radius:50%;width:8px;height:8px;position:absolute;top:4px;right:4px}.icon-btn{position:relative}.empty-state{text-align:center;background:var(--card);border:1px dashed var(--line-2);border-radius:var(--radius);color:var(--brand);flex-direction:column;align-items:center;gap:.3rem;padding:2.2rem 1rem;display:flex}.empty-state .illus{opacity:.9;background:currentColor;width:150px;height:120px;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.empty-state.is-ok{color:var(--green)}.empty-state.is-err{color:var(--red)}.empty-title{color:var(--ink);margin-top:.3rem;font-weight:700}.fupo{background:var(--brand);flex:none;width:28px;height:28px;-webkit-mask:url(/illus/fupo.svg) 50%/contain no-repeat;mask:url(/illus/fupo.svg) 50%/contain no-repeat}.callout{border:1px solid var(--line);background:color-mix(in srgb, var(--brand) 7%, var(--card));border-radius:12px;align-items:center;gap:.7rem;margin:.2rem 0 .9rem;padding:.6rem .9rem;display:flex}.callout .txt{flex:1;min-width:0}.callout b{display:block}.callout .muted{font-size:.82rem}.callout.red{border-color:color-mix(in srgb, var(--red) 40%, var(--line));background:color-mix(in srgb, var(--red) 8%, var(--card))}.model-link{color:var(--brand);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:700;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.model-link:hover{color:var(--brand-2);background:0 0}.modal-bg{z-index:55;background:#0a0c188c;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.modal{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;gap:.7rem;width:min(860px,100%);max-height:90vh;padding:1rem 1.1rem;display:flex;overflow:auto}.light-bar{background:var(--line);border-radius:999px;height:22px;margin:.3rem 0;display:flex;overflow:hidden}.light-bar .seg{color:#fff;place-items:center;font-size:.75rem;font-weight:800;display:grid}.light-bar .seg.green{background:var(--green)}.light-bar .seg.amber{background:var(--amber)}.light-bar .seg.red{background:var(--red)}.status-list{gap:.35rem;display:grid}.status-row{grid-template-columns:130px 1fr 36px;align-items:center;gap:.6rem;display:grid}.status-row .bar{background:var(--line);border-radius:999px;height:10px;overflow:hidden}.status-row .fill{background:var(--brand);border-radius:999px;height:100%}td.late{color:var(--red);font-weight:700}.swatch-group{margin:.25rem 0 .1rem}.swatch-group .muted{letter-spacing:.04em;text-transform:uppercase;margin-bottom:.25rem;font-size:.68rem;font-weight:700}.accent-info{border:1px solid var(--line-2);background:var(--brand-soft);color:var(--ink);border-radius:10px;margin-top:.5rem;padding:.5rem .7rem;font-size:.85rem}@media print{:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fff;--card:#fff;--card-2:#f8fafc;--ink:#0f172a;--ink-2:#334155;--muted:#64748b;--line:#cbd5e1;--line-2:#94a3b8;--shadow:none}.side,.topbar,.toasts,.drawer,.popover,.callout,.no-print,button,.filters,.demo{display:none!important}.shell{display:block}.main{min-width:0}.content{max-width:none;padding:0}.card,.table-wrap,.kpi{box-shadow:none;break-inside:avoid;border-color:#cbd5e1}.grid{font-size:11px}.grid th,.grid td{padding:4px 6px}a{color:inherit;text-decoration:none}h1{font-size:18px}h2{font-size:14px}h3{font-size:12px}@page{margin:12mm}}.login{align-content:center}.login-hero{justify-items:start;gap:.6rem;width:min(860px,100%);margin:0 auto 1.2rem;display:grid}.login-hero h1{letter-spacing:-.02em;margin:0;font-size:clamp(1.5rem,3.2vw,2.2rem);line-height:1.15}.login-hero p{max-width:60ch;margin:0}.login-hero ul{gap:.25rem;margin:.2rem 0;padding-left:1.1rem;font-size:.95rem;font-weight:600;display:grid}@media (width<=900px){.login-hero{gap:.4rem}.login-hero ul{font-size:.9rem}}.spark{opacity:.9;margin-top:.25rem}.spark path{stroke:var(--muted)}.spark circle{fill:var(--muted)}.kpi.red .spark.up path,.kpi.amber .spark.up path{stroke:var(--red)}.kpi.red .spark.up circle,.kpi.amber .spark.up circle{fill:var(--red)}.kpi .spark.down path{stroke:var(--green)}.kpi .spark.down circle{fill:var(--green)}.model-gallery{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.5rem;display:grid}.model-gallery img{aspect-ratio:3/4;object-fit:cover;border:1px solid var(--line);cursor:zoom-in;background:#fff;border-radius:10px;width:100%}.lightbox{flex-direction:column;gap:.5rem}.lightbox>img{cursor:e-resize;background:#fff;border-radius:12px;max-width:min(92vw,1100px);max-height:84vh}.lb-nav{color:#fff;background:#ffffff24;border:1px solid #ffffff4d;border-radius:50%;place-items:center;width:52px;height:52px;font-size:2rem;line-height:1;display:grid;position:fixed;top:50%;transform:translateY(-50%)}.lb-nav:hover{background:#ffffff47}.lb-nav.prev{left:18px}.lb-nav.next{right:18px}.lb-bar{color:#fff;background:#00000073;border-radius:999px;align-items:center;gap:1rem;padding:.35rem .8rem;display:flex}.lb-bar .muted{color:#ffffffb3}.lb-bar .icon-btn{color:#fff}@media (width<=700px){.lb-nav{width:40px;height:40px;font-size:1.5rem}.lb-nav.prev{left:6px}.lb-nav.next{right:6px}}.tna-timeline,.funnel{width:100%;height:auto;margin:.4rem 0 .6rem;font-family:inherit;display:block}.tna-timeline .lbl,.funnel .lbl{fill:var(--muted);font-size:10.5px}.tna-timeline .lbl.name,.funnel .lbl.name{fill:var(--ink-2);font-weight:600}.funnel .lbl.val{fill:var(--ink);font-weight:700}.funnel .muted{fill:var(--muted);font-weight:500}.tna-timeline .grid{stroke:var(--line);stroke-width:1px}.tna-timeline .row{stroke:var(--line);stroke-width:1px;stroke-dasharray:2 3}.tna-timeline .today{stroke:var(--brand);stroke-width:1.5px}.tna-timeline .lbl.today{fill:var(--brand);font-weight:700}.tna-timeline .due{stroke:var(--red);stroke-width:1.5px;stroke-dasharray:4 3}.tna-timeline .lbl.due{fill:var(--red);font-weight:700}.tna-timeline .plan{fill:var(--card);stroke:var(--muted);stroke-width:2px}.tna-timeline .rev{fill:var(--amber);stroke:var(--card);stroke-width:1.5px}.tna-timeline .act{fill:var(--green);stroke:var(--card);stroke-width:1.5px}.tna-timeline .act.late{fill:var(--red)}.tna-timeline .waiting{fill:var(--red);opacity:.55}.tna-timeline .shift{stroke:var(--amber);stroke-width:3px;opacity:.6}.tna-timeline .ok{stroke:var(--green);stroke-width:3px;opacity:.5}.tna-timeline .slip{stroke:var(--red);stroke-width:3px;opacity:.6}.funnel .track{fill:var(--line)}.funnel .bar.plan{fill:var(--muted);opacity:.55}.funnel .bar.s1{fill:var(--blue)}.funnel .bar.s2{fill:color-mix(in srgb, var(--blue) 70%, var(--green))}.funnel .bar.s3{fill:var(--brand)}.funnel .bar.s4{fill:var(--green)}.funnel .bar.over{stroke:var(--red);stroke-width:1.5px}.model-card{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;gap:.55rem;width:min(420px,100%);padding:.7rem .8rem .8rem;display:flex}.model-card.big{width:100%}.model-head{justify-content:space-between;align-items:flex-start;gap:.6rem;display:flex}.model-mosaic{aspect-ratio:4/3.4;grid-template-rows:1fr 1fr .62fr;grid-template-columns:2fr 1fr 1fr;gap:.4rem;display:grid}.model-mosaic .tile{border:1px solid var(--line);cursor:zoom-in;background:#fff;border-radius:10px;min-width:0;min-height:0;padding:0;position:relative;overflow:hidden}.model-mosaic .tile img{object-fit:cover;width:100%;height:100%;transition:transform .25s;display:block;position:absolute;inset:0}.model-mosaic .tile:hover img{transform:scale(1.04)}.model-mosaic .t1{grid-area:1/1/span 2}.model-mosaic .t2{grid-area:1/2}.model-mosaic .t3{grid-area:1/3}.model-mosaic .t4{grid-area:2/2/auto/span 2}.model-mosaic .t5{grid-area:3/1}.model-mosaic .t6{grid-area:3/2/auto/span 2}.model-mosaic .more{color:#fff;background:#0a0c188c;place-items:center;font-size:1.1rem;font-weight:800;display:grid;position:absolute;inset:0}.model-card.big .model-mosaic{aspect-ratio:16/10;grid-template-rows:1fr 1fr .7fr}.model-card.big .model-gallery{margin-top:.2rem}@media (width<=900px){.model-card{width:100%}}.ss{display:inline-block;position:relative}.ss-trigger{cursor:pointer;font:inherit;border:0;gap:.3rem;padding:.2rem .55rem;font-size:.78rem;font-weight:700}.ss-trigger:disabled{cursor:default;opacity:.7}.ss-menu{z-index:45;background:var(--card);border:1px solid var(--line-2);min-width:260px;box-shadow:var(--shadow);border-radius:12px;gap:.1rem;padding:.35rem;display:grid;position:absolute;top:calc(100% + 4px);left:0}.ss-head{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:.35rem .5rem .15rem;font-size:.66rem;font-weight:800}.ss-item{text-align:left;width:100%;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:.55rem;padding:.4rem .5rem;display:flex}.ss-item:hover{background:var(--card-2)}.ss-item.on{background:var(--brand-soft)}.ss-item .badge{border-radius:8px;justify-content:center;width:26px;height:26px;padding:0}.ss-txt{flex:1;line-height:1.15;display:grid}.ss-sug{color:var(--brand);align-items:center;gap:.2rem;font-size:.7rem;font-weight:700;display:inline-flex}:root[data-theme=dark] .ss-item{color:var(--ink)}.capcell-td{vertical-align:middle;min-width:118px;padding:.35rem .45rem!important}.capcell{background:var(--card-2);border-radius:9px;gap:.22rem;padding:.35rem .45rem;display:grid}.capcell.green{background:var(--green-soft)}.capcell.amber{background:var(--amber-soft)}.capcell.red{background:var(--red-soft)}.capcell-nums{white-space:nowrap;font-variant-numeric:tabular-nums;justify-content:flex-end;align-items:baseline;gap:.3rem;display:flex}.capcell-cap{color:var(--ink-2);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:5px;align-items:center;gap:.2rem;padding:0 .1rem;font-size:.85rem;display:inline-flex}.capcell-cap:disabled{cursor:default;color:var(--ink-2)}.capcell-cap svg{opacity:0;transition:opacity .15s}.capcell:hover .capcell-cap:not(:disabled) svg{opacity:.7}.capcell-cap:not(:disabled):hover{background:var(--card);color:var(--brand)}.capcell-input{text-align:right;border-radius:6px;width:74px;padding:.1rem .3rem;font-size:.85rem}.capcell-bar{background:color-mix(in srgb, var(--ink) 10%, transparent);border-radius:999px;height:6px;position:relative;overflow:hidden}.capcell-bar .fill{background:var(--green);border-radius:999px;height:100%}.capcell.amber .fill{background:var(--amber)}.capcell.red .fill{background:var(--red)}.capcell-bar .over{background:var(--red);width:4px;height:100%;position:absolute;top:0;right:0}.capcell-pct{text-align:right;color:var(--muted);font-size:.74rem;font-weight:800}.capcell.green .capcell-pct{color:#15803d}.capcell.amber .capcell-pct{color:#b45309}.capcell.red .capcell-pct{color:#b91c1c}:root[data-theme=dark] .capcell.green .capcell-pct{color:#86efac}:root[data-theme=dark] .capcell.amber .capcell-pct{color:#fcd34d}:root[data-theme=dark] .capcell.red .capcell-pct{color:#fca5a5}.tour{z-index:90;pointer-events:none;position:fixed;inset:0}.tour-spot{box-shadow:0 0 0 9999px #080a1494, 0 0 0 2px var(--brand);border-radius:10px;transition:top .2s,left .2s,width .2s,height .2s;position:fixed}.tour-dim{background:#080a1494;position:fixed;inset:0}.tour-card{background:var(--card);width:340px;max-width:calc(100vw - 24px);color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow);pointer-events:auto;border-radius:14px;padding:.8rem .9rem;position:fixed}.tour-card b{margin:.1rem 0 .25rem;font-size:1rem;display:block}.tour-card p{margin:0 0 .7rem;font-size:.88rem;line-height:1.4}.tour-step{color:var(--muted);letter-spacing:.04em;font-size:.72rem}.tour-actions{align-items:center;gap:.4rem;display:flex}.tour-actions button{padding:.4rem .75rem;font-size:.84rem}.help-foot{gap:.4rem;margin-top:.5rem;display:flex}.help-foot button{padding:.3rem .6rem;font-size:.8rem}.faq{border-top:1px solid var(--line);max-height:46vh;margin-top:.5rem;padding-top:.4rem;overflow:auto}.faq details{border-bottom:1px solid var(--line);padding:.25rem 0}.faq summary{cursor:pointer;font-size:.84rem;font-weight:600}.faq p{color:var(--muted);margin:.3rem 0 .2rem;font-size:.82rem;line-height:1.4}.err-card{border-color:var(--red);max-width:560px}.err-card code{background:var(--bg);word-break:break-word;border-radius:8px;margin-top:.4rem;padding:.4rem .5rem;display:block}.map-wrap{margin-top:.6rem}.map-table{margin-top:.3rem}.map-table select{min-width:190px}.map-table tr.muted td{opacity:.7}.pager{flex-wrap:wrap;align-items:center;gap:.35rem;margin:.6rem 0;display:flex}.pager button{padding:.3rem .6rem}.pager select{margin-left:auto}.lang-row{margin-top:.9rem}.lang-row button{padding:.3rem .7rem;font-size:.78rem}.capcell-td.droppable{outline:1px dashed var(--brand);outline-offset:-3px}.capcell-td.open{vertical-align:top}.whatif .capcell{box-shadow:inset 0 0 0 2px var(--brand)}.cell-lines{width:100%;color:var(--muted);cursor:pointer;text-align:right;background:0 0;border:0;margin-top:.25rem;padding:.1rem 0;font-size:.72rem;display:block}.cell-lines:hover{color:var(--ink)}.chips{gap:.25rem;max-height:220px;margin-top:.3rem;display:grid;overflow:auto}.chip{border:1px solid var(--line);background:var(--card);cursor:grab;white-space:nowrap;border-radius:8px;align-items:center;gap:.35rem;padding:.25rem .4rem;font-size:.76rem;display:flex}.chip:active{cursor:grabbing}.chip.moved{border-color:var(--brand);background:var(--brand-soft)}.chip b{font-variant-numeric:tabular-nums;margin-left:auto}.chip-move{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 .15rem;font-size:.9rem}.chip-move:hover{color:var(--brand)}.whatif-panel{border-color:var(--brand);margin-top:.8rem}.modal-bg{z-index:80;background:#080a1480;place-items:center;display:grid;position:fixed;inset:0}.modal{min-width:320px;max-width:calc(100vw - 24px)}.cost-card{border-color:var(--purple)}.cost-card .kpis{margin:.5rem 0 .6rem}
