:root{--bg:#f6f7f9;--surface:#fff;--surface-soft:#f1f3f6;--ink:#0f1418;--ink-muted:#59636e;--line:#e2e6ea;--line-strong:#cfd6dd;--accent:#1d4ed8;--accent-soft:#e8edfd;--accent-ink:#fff;--radius-sm:8px;--radius:12px;--radius-lg:20px;--shadow-1:0 1px 2px #0f14180f, 0 1px 3px #0f14180a;--shadow-2:0 12px 32px -12px #0f14182e, 0 2px 6px #0f14180f;--space-section:clamp(2.25rem, 1.4rem + 3vw, 4rem);--gutter:clamp(1rem, 4vw, 2.5rem);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI Variable Text,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0d1013;--surface:#161a1f;--surface-soft:#1d2228;--ink:#eef1f4;--ink-muted:#a4aeb8;--line:#262c33;--line-strong:#333b44;--accent:#8fb0ff;--accent-soft:#1a2437;--accent-ink:#0b0f14;--shadow-1:0 1px 2px #0006;--shadow-2:0 16px 40px -16px #000000b3}}*,:before,:after{box-sizing:border-box}body{background:var(--bg);min-height:100vh;color:var(--ink);flex-direction:column;margin:0;display:flex}h1,h2,h3{margin:0 0 .5rem;line-height:1.2}h1{font-size:clamp(1.75rem,1.2rem + 2vw,2.5rem)}h2{margin-top:2.5rem;font-size:1.25rem}h3{font-size:1rem}p{margin:0 0 .75rem}:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:4px}.skip-link{z-index:10;background:var(--accent);color:var(--accent-ink);border-radius:var(--radius);padding:.5rem .75rem;text-decoration:none;transition:top .12s ease-in;position:absolute;top:-3rem;left:.5rem}.skip-link:focus{top:.5rem}.site-header,.site-footer{padding:.9rem var(--gutter)}.site-header{z-index:5;border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.25rem;display:flex;position:sticky;top:0}.wordmark{letter-spacing:-.01em;align-items:center;gap:.55rem;margin:0;font-size:1.02rem;font-weight:700;display:inline-flex}.wordmark:before{content:"DS";background:var(--accent);width:1.9rem;height:1.9rem;color:var(--accent-ink);letter-spacing:.02em;border-radius:9px;place-items:center;font-size:.72rem;font-weight:800;display:grid}.wordmark-accent{color:var(--accent)}.privacy-badge{border:1px solid var(--line);background:var(--surface-soft);color:var(--ink-muted);white-space:nowrap;border-radius:999px;align-items:center;gap:.4rem;margin:0;padding:.28rem .7rem;font-size:.8rem;display:inline-flex}.privacy-badge:before{content:"";background:#1a9c5b;border-radius:999px;width:.45rem;height:.45rem;box-shadow:0 0 0 3px #1a9c5b2e}.surface{width:100%;max-width:68rem;padding:0 var(--gutter) var(--space-section);flex:1;margin:0 auto}.hero{max-width:46rem;padding-block:clamp(2.5rem,1.5rem + 4vw,5rem) clamp(1.5rem,1rem + 2vw,2.5rem)}.eyebrow{background:var(--accent-soft);color:var(--accent);letter-spacing:.01em;border-radius:999px;align-items:center;gap:.45rem;margin:0 0 1rem;padding:.3rem .75rem;font-size:.78rem;font-weight:650;display:inline-flex}.surface h1{letter-spacing:-.03em;margin:0 0 .9rem;font-size:clamp(2.1rem,1.5rem + 3.2vw,3.5rem);line-height:1.05}.hero .lede{max-width:52ch;font-size:clamp(1.02rem,.95rem + .4vw,1.2rem)}.trust-row{flex-wrap:wrap;gap:.4rem .5rem;margin:1.25rem 0 0;padding:0;list-style:none;display:flex}.trust-row li{border:1px solid var(--line);background:var(--surface);color:var(--ink-muted);border-radius:999px;padding:.3rem .65rem;font-size:.82rem}.section-heading{margin:var(--space-section) 0 .35rem;letter-spacing:-.02em;font-size:clamp(1.3rem,1.1rem + .8vw,1.7rem)}.section-sub{max-width:62ch;color:var(--ink-muted);margin:0 0 1.25rem}.lede{color:var(--ink-muted);max-width:60ch;font-size:1.05rem}.card-list,.number-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.number-list{counter-reset:step}.number-list li{counter-increment:step;grid-template-columns:2rem 1fr;align-items:start;gap:.5rem;display:grid}.number-list li:before{content:counter(step);color:var(--accent);font-weight:700}.card-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr))}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);padding:1.35rem 1.4rem}.card h3{letter-spacing:-.01em;margin:0 0 .4rem;font-size:1rem}.card p{color:var(--ink-muted);margin:0;font-size:.92rem}.step-card .step-number{background:var(--accent-soft);width:1.75rem;height:1.75rem;color:var(--accent);border-radius:999px;place-items:center;margin-bottom:.7rem;font-size:.8rem;font-weight:750;display:inline-grid}.site-footer{border-top:1px solid var(--line);background:var(--surface);color:var(--ink-muted);font-size:.85rem}.site-footer nav{flex-wrap:wrap;gap:1rem;display:flex}.site-footer a{color:var(--ink-muted)}.site-footer p{margin:0}.error-detail{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:.75rem;font-size:.85rem;overflow-x:auto}button{font:inherit;border-radius:var(--radius);border:1px solid var(--line);background:var(--accent);color:var(--accent-ink);cursor:pointer;padding:.5rem .9rem}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.wizard{margin-top:1.5rem}.dropzone{border:1.5px dashed var(--line-strong);border-radius:var(--radius-lg);background:radial-gradient(circle at 50% 0%, var(--accent-soft), transparent 70%), var(--surface);cursor:pointer;text-align:center;justify-items:center;gap:.4rem;padding:clamp(1.75rem,1rem + 4vw,3rem) 1.25rem;transition:border-color .12s,background-color .12s;display:grid}.dropzone-active,.dropzone:focus-within,.dropzone:hover{border-color:var(--accent)}.dropzone-title{letter-spacing:-.01em;font-size:1.05rem;font-weight:650}.dropzone-sub{color:var(--ink-muted);font-size:.9rem}.dropzone-input{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.dropzone{position:relative}.dropzone-icon{background:var(--accent-soft);width:3rem;height:3rem;color:var(--accent);border-radius:999px;place-items:center;margin-bottom:.5rem;display:grid}.dropzone-cta{background:var(--accent);color:var(--accent-ink);box-shadow:var(--shadow-1);border-radius:999px;margin-top:.9rem;padding:.5rem 1.1rem;font-size:.92rem;font-weight:650}.dropzone:hover .dropzone-cta,.dropzone:focus-within .dropzone-cta{box-shadow:var(--shadow-2)}.dropzone:focus-within{outline:3px solid var(--accent);outline-offset:3px}.control-row{flex-wrap:wrap;align-items:end;gap:1rem;margin:1rem 0;display:flex}.control{gap:.25rem;margin:0 0 .75rem;display:grid}.control label{color:var(--ink-muted);font-size:.85rem;font-weight:600}select,input[type=number],input[type=password]{font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:8px;max-width:28rem;padding:.4rem .5rem}.table-scroll{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.92rem}caption{text-align:left;color:var(--ink-muted);padding:.6rem .75rem;font-size:.85rem}th,td{text-align:left;border-top:1px solid var(--line);vertical-align:top;padding:.55rem .75rem}thead th{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted);border-top:0;font-size:.8rem}.cell-header{font-weight:600;display:block}.cell-sample{color:var(--ink-muted);font-size:.8rem;font-weight:400;display:block}.field-select{width:100%;max-width:22rem}.hint{color:var(--ink-muted);max-width:60ch;margin:.35rem 0 0;font-size:.82rem}.actions{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.button-primary,.button-secondary{font:inherit;border:1px solid var(--line-strong);cursor:pointer;border-radius:999px;padding:.55rem 1.05rem;font-size:.92rem;transition:transform 80ms,background-color .12s,border-color .12s}.button-primary{background:var(--accent);color:var(--accent-ink);box-shadow:var(--shadow-1);border-color:#0000;font-weight:650}.button-primary:hover:not(:disabled){box-shadow:var(--shadow-2);transform:translateY(-1px)}.button-primary:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.button-secondary{background:var(--surface);color:var(--ink)}.button-secondary:hover:not(:disabled){background:var(--surface-soft);border-color:var(--accent)}@media (prefers-reduced-motion:reduce){.button-primary,.button-secondary,.dropzone{transition:none}.button-primary:hover:not(:disabled){transform:none}}.notice{border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--radius);background:var(--surface);margin:1rem 0;padding:.75rem 1rem}.notice ul{margin:.35rem 0 0;padding-left:1.25rem}.error{border-radius:var(--radius);background:color-mix(in srgb, #b42318 8%, var(--surface));border:1px solid #b42318;border-left-width:3px;margin:1rem 0;padding:.75rem 1rem}.error-title{font-weight:600}.vault{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin:1.25rem 0;padding:.9rem 1rem}.vault legend{padding:0 .35rem;font-weight:600}.checkbox{align-items:start;gap:.5rem;font-weight:500;display:flex}.vault-fields{flex-wrap:wrap;gap:1rem;margin-top:.75rem;display:flex}.preview{margin-top:1.5rem}.summary{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.75rem;margin:1rem 0;display:grid}.summary div{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:.6rem .8rem}.summary dt{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted);font-size:.8rem}.summary dd{margin:.2rem 0 0;font-size:1.15rem;font-weight:600}.about{border-top:1px solid var(--line);margin-top:3rem;padding-top:1rem}.about ul{color:var(--ink-muted);margin:0;padding-left:1.25rem}.audience-control{margin-inline-start:auto}.audience-banner{background:#fff4d6;border-block:1px solid #e0c169;margin:0;padding:.6rem 1.25rem;font-weight:600}.datasets,.grid-section,.restore{margin-block-start:2.5rem}.grid-controls{flex-wrap:wrap;align-items:center;gap:.75rem;margin-block:.75rem;display:flex}.grid-table{border:1px solid #d6d9de;border-radius:6px;overflow:hidden}.grid-head-row,.grid-row{align-items:center;display:flex}.grid-head-row{background:#f4f6f8;border-block-end:1px solid #d6d9de}.grid-head-cell{text-align:start;padding:.4rem .6rem;font-weight:600}.grid-head-cell.numeric,.grid-cell.numeric{text-align:end;font-variant-numeric:tabular-nums}.grid-scroll{max-height:60vh;overflow:auto}.grid-cell{white-space:nowrap;text-overflow:ellipsis;padding:.4rem .6rem;overflow:hidden}.grid-row:nth-child(2n){background:#fafbfc}.sort-button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.sort-button:focus-visible,.column-picker summary:focus-visible{outline-offset:2px;outline:2px solid #1f4e9c}.column-picker{position:relative}.column-picker fieldset{z-index:2;background:#fff;border:1px solid #d6d9de;border-radius:6px;gap:.35rem;min-width:14rem;padding:.6rem;display:grid;position:absolute}.settings{border:1px solid #d6d9de;border-radius:6px;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;margin-block:1rem;padding:.75rem 1rem;display:flex}.settings legend{padding-inline:.35rem;font-weight:600}.charts{gap:1.5rem;margin-block-start:1.5rem;display:grid}.chart-canvas{max-width:720px;height:260px;position:relative}.chart-fallback{max-width:720px}.matrix,.tiers{margin-block-start:2rem}.matrix table,.tiers table{border-collapse:collapse;width:100%}.matrix th,.matrix td,.tiers th,.tiers td{text-align:start;border:1px solid #d6d9de;padding:.35rem .5rem}.matrix thead th,.tiers thead th{background:#f4f6f8}.matrix td.numeric,.matrix th.numeric,.tiers td.numeric,.tiers th.numeric{text-align:end;font-variant-numeric:tabular-nums}.tier-counts{gap:1.25rem;margin-block:.75rem;padding:0;list-style:none;display:flex}.dashboard{margin-block-start:2rem}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:start;gap:1rem;display:grid}.dashboard-card{border:1px solid #d6d9de;border-radius:6px;padding:.75rem 1rem;overflow-x:auto}.dashboard-card h4{margin-block:0 .5rem}.dashboard-card table{border-collapse:collapse;width:100%}.dashboard-card th,.dashboard-card td{text-align:start;border-block-end:1px solid #eceef1;padding:.25rem .4rem}.dashboard-card .numeric{text-align:end;font-variant-numeric:tabular-nums}.dashboard-card.kpi .kpi-value{margin:0;font-size:2rem;font-weight:700}.ai-settings{margin-block-start:2.5rem}.ai-key-row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.ai-key-row input[type=password],.ai-key-row input[type=text]{min-width:16rem}.ai-design{margin-block-start:2.5rem}.ai-design-controls textarea{width:100%;max-width:46rem;font:inherit;padding:.4rem .5rem}.ai-design-controls .actions{margin-block-start:.5rem}.insights{margin-block-start:2rem}.insight-list{gap:.75rem;max-width:60rem;padding:0;list-style:none;display:grid}.insight{border:1px solid #d6d9de;border-inline-start:4px solid #6b7b8c;border-radius:4px;padding:.6rem .8rem}.insight.attention{border-inline-start-color:#b25c00}.insight-text{margin:0 0 .35rem;font-weight:600}.insight-disclaimer{margin-block-end:0}.report{margin-block-start:2rem}.report-unlock{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.report-picker{align-items:center;gap:.75rem;margin-block-end:1rem;display:flex}.report-page{border:1px solid #d6d9de;border-radius:6px;max-width:40rem;padding:1rem 1.25rem}.report-page table{border-collapse:collapse;width:100%;margin-block:.75rem}.report-page th,.report-page td{text-align:start;border-block-end:1px solid #eceef1;padding:.35rem .5rem}@media print{body *{visibility:hidden}.report-page,.report-page *{visibility:visible}.report-page{border:0;max-width:none;position:absolute;inset:0}.no-print{display:none!important}}.gallery{margin-block-start:2.5rem}.gallery-controls{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.gallery-list{gap:.75rem;max-width:60rem;padding:0;list-style:none;display:grid}.gallery-list li{border:1px solid #d6d9de;border-radius:6px;padding:.6rem .8rem}.gallery-title{margin:0;font-weight:600}input[type=text],input[type=search],input[type=password],input[type=number],input[type=email],textarea,select{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);min-height:2.5rem;padding:.5rem .7rem;font-size:.95rem;transition:border-color .12s,box-shadow .12s}input[type=text]:focus-visible,input[type=search]:focus-visible,input[type=password]:focus-visible,input[type=number]:focus-visible,textarea:focus-visible,select:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}input[type=range]{accent-color:var(--accent);min-height:2rem}label.field{color:var(--ink-muted);letter-spacing:.01em;margin-block:.9rem .3rem;font-size:.85rem;font-weight:600;display:block}.hint{max-width:62ch;color:var(--ink-muted);font-size:.88rem}.file-picker{border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;border-radius:999px;align-items:center;gap:.5rem;padding:.5rem .9rem;font-size:.9rem;display:inline-flex}.file-picker:hover{border-color:var(--accent)}.file-picker input[type=file]{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.file-picker:focus-within{outline:3px solid var(--accent);outline-offset:2px}.ai-key-row{grid-template-columns:minmax(0,1fr);gap:0;max-width:32rem;display:grid}.ai-key-row .field{margin-block:.6rem .3rem}.ai-key-row .actions-row,.ai-key-row button{grid-column:1/-1;justify-self:start}.surface h2{margin:var(--space-section) 0 .4rem;letter-spacing:-.02em;font-size:clamp(1.28rem,1.1rem + .7vw,1.6rem)}.dropzone{max-width:44rem;padding-block:clamp(1.5rem,1rem + 2.5vw,2.25rem)}.restore label.field,.ai-settings label.field{max-width:46rem}
