
:root{--ink:#17223b;--muted:#667085;--line:#e4e9f1;--surface:#fff;--bg:#f5f7fb;--navy:#14233e;--navy-2:#1e3154;--blue:#2768e5;--blue-soft:#eaf1ff;--green:#159455;--green-soft:#e9f8f0;--gold:#b7791f;--gold-soft:#fff7e4;--danger:#c2414b;--shadow:0 18px 50px rgba(20,35,62,.08)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font:15px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink)}
button,input,textarea,select{font:inherit}
button,a{touch-action:manipulation}
a{color:var(--blue)}
.hidden{display:none!important}
.mobile-only{display:none!important}
.muted{color:var(--muted)}
.public-header{height:76px;padding:0 clamp(22px,5vw,72px);display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line)}
.brand{display:flex;gap:10px;align-items:center;color:var(--ink);text-decoration:none}
.brand-mark{width:42px;height:42px;display:grid;place-items:center;background:var(--navy);border-radius:13px;box-shadow:0 7px 18px rgba(20,35,62,.2)}
.brand-mark svg{width:27px;height:27px;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.brand>span:last-child{display:flex;flex-direction:column;line-height:1}
.brand b{font-size:19px;letter-spacing:-.4px}.brand small{font-size:9px;letter-spacing:2.4px;color:var(--blue);font-weight:800;margin-top:5px}
.auth-main{min-height:calc(100vh - 76px);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(390px,.85fr);gap:clamp(40px,7vw,100px);align-items:center;max-width:1240px;margin:auto;padding:64px 40px}
.auth-intro{max-width:650px}.eyebrow{font-size:11px;font-weight:850;letter-spacing:1.7px;color:var(--blue)}
.auth-intro h1{font-size:clamp(42px,5.3vw,72px);line-height:1.03;letter-spacing:-3.6px;margin:18px 0 24px}
.auth-intro>p{font-size:18px;color:var(--muted);max-width:600px}
.trust-list{display:flex;flex-wrap:wrap;gap:12px 24px;margin:32px 0;color:#34415a;font-size:14px;font-weight:700}.trust-list span::first-letter{color:var(--green)}
.product-bridge{display:flex;gap:15px;align-items:center;margin-top:36px;padding:18px 20px;border:1px solid #cedbf8;background:linear-gradient(135deg,#f7faff,#edf3ff);border-radius:16px}
.bridge-icon,.termilex-dot{width:42px;height:42px;flex:0 0 42px;border-radius:12px;background:var(--blue);color:#fff;display:grid;place-items:center;font-weight:900}
.product-bridge p{margin:3px 0 0;color:var(--muted);font-size:13px}
.login-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:38px;box-shadow:var(--shadow)}
.login-card h2{font-size:30px;letter-spacing:-.8px;margin:20px 0 6px}.login-card>p{margin:0 0 25px}
.badge{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:800}.badge.live{background:var(--green-soft);color:var(--green)}.badge.live::before{content:"";width:7px;height:7px;background:#26c26d;border-radius:50%;margin-right:7px}.badge.mock{background:var(--gold-soft);color:var(--gold)}.badge.soft{background:var(--blue-soft);color:var(--blue)}.badge.warning{background:var(--gold-soft);color:var(--gold)}
label{display:block;font-weight:760;font-size:13px;margin:0 0 7px}label span{font-weight:500;color:#98a2b3;margin-left:4px}
input,textarea,select{width:100%;border:1px solid #cfd7e4;border-radius:10px;background:#fff;color:var(--ink);padding:12px 13px;outline:0;transition:.18s border,.18s box-shadow}
input:focus,textarea:focus,select:focus{border-color:#7ba6f5;box-shadow:0 0 0 4px rgba(39,104,229,.1)}
textarea{resize:vertical}
.input-icon{position:relative}.input-icon span{position:absolute;left:14px;top:12px;color:#98a2b3;font-weight:800}.input-icon input{padding-left:38px}
.button{border:0;border-radius:10px;min-height:42px;padding:10px 16px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:9px;text-decoration:none;transition:.18s transform,.18s background,.18s box-shadow}
.button:hover{transform:translateY(-1px)}.button.primary{background:var(--navy);color:#fff;box-shadow:0 7px 16px rgba(20,35,62,.15)}.button.primary:hover{background:var(--navy-2)}.button.secondary{background:#edf1f7;color:var(--ink)}.button.ghost{background:transparent;color:#59657a;border:1px solid var(--line)}.button.link{background:transparent;color:var(--blue);padding:7px}.button.small{min-height:34px;padding:6px 11px}.button.wide{width:100%;margin-top:7px}.button:disabled{opacity:.5;cursor:not-allowed;transform:none}
.form-message{min-height:21px;margin:12px 0 0;color:var(--muted);font-size:13px}.form-message.error{color:var(--danger)}.form-message.success{color:var(--green)}
.secure-note{display:flex;gap:12px;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:24px;padding:18px 0}.secure-note>span{color:var(--green)}.secure-note div{display:flex;flex-direction:column}.secure-note small{color:var(--muted);margin-top:2px}.legal-note{font-size:11px!important;color:#8b95a7!important;margin:20px 0 0!important}.dev{margin-top:18px}
.app-shell{min-height:100vh;display:grid;grid-template-columns:268px minmax(0,1fr)}
.sidebar{position:fixed;left:0;top:0;bottom:0;width:268px;background:var(--navy);color:#d9e1ef;padding:22px 16px;display:flex;flex-direction:column;z-index:30}.sidebar .brand{color:#fff}.sidebar .brand small{color:#79a6ff}.sidebar .brand-mark{background:rgba(255,255,255,.11);box-shadow:none;border:1px solid rgba(255,255,255,.13)}
.side-brand{padding:0 10px 24px;display:flex;justify-content:space-between;align-items:center}
.sidebar nav{overflow:auto;padding-right:2px}.nav-label{font-size:10px;letter-spacing:1.5px;font-weight:850;color:#74839d;margin:24px 12px 8px}.nav-item{width:100%;border:0;background:transparent;color:#c8d2e3;text-align:left;display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:9px;cursor:pointer;margin:2px 0;font-weight:680}.nav-item>span{width:22px;text-align:center;font-size:17px}.nav-item small{margin-left:auto;font-size:9px;padding:3px 6px;background:rgba(255,255,255,.1);border-radius:999px}.nav-item:hover,.nav-item.active{background:rgba(255,255,255,.095);color:#fff}.nav-item.active{box-shadow:inset 3px 0 0 #79a6ff}.nav-item.disabled{opacity:.48;cursor:not-allowed}
.side-footer{margin-top:auto;padding-top:18px}.side-footer>a{display:flex;align-items:center;gap:11px;background:rgba(255,255,255,.07);padding:13px;border:1px solid rgba(255,255,255,.08);border-radius:12px;color:#fff;text-decoration:none}.side-footer>a>span:nth-child(2){display:flex;flex-direction:column;flex:1}.side-footer small{color:#9ba9bf}.side-footer p{font-size:10px;color:#74839d;text-align:center}.termilex-dot{width:34px;height:34px;flex-basis:34px;border-radius:9px}
.workspace-main{grid-column:2;min-width:0}.topbar{height:78px;position:sticky;top:0;z-index:20;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 34px}.topbar h2{font-size:19px;margin:-1px 0 0}.top-eyebrow{font-size:9px;letter-spacing:1.6px;color:#8b95a7;font-weight:850;margin:0}.top-actions{display:flex;align-items:center;gap:13px}.wallet{border:1px solid var(--line);background:#fff;border-radius:10px;padding:7px 12px;display:flex;gap:8px;align-items:center;color:var(--muted);cursor:pointer}.wallet b{color:var(--ink);font-size:17px}.avatar{width:39px;height:39px;background:var(--navy);color:#fff;border-radius:11px;display:grid;place-items:center;font-weight:850}
.content{max-width:1220px;margin:auto;padding:34px}.view{animation:fade .18s ease}.active-view{display:block}@keyframes fade{from{opacity:.25;transform:translateY(3px)}}
.welcome,.page-head{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:25px}.welcome h1,.page-head h1{font-size:32px;letter-spacing:-1px;margin:4px 0}.welcome p,.page-head p{margin:0;color:var(--muted)}
.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:20px;display:flex;gap:15px;align-items:center}.stat-card.accent{border-color:#cbdafa;background:linear-gradient(135deg,#fff,#f2f6ff)}.stat-card div{display:flex;flex-direction:column}.stat-card small{color:var(--muted);font-weight:700}.stat-card b{font-size:27px;line-height:1.2}.stat-card p{font-size:11px;color:#98a2b3;margin:2px 0 0}.stat-icon{width:45px;height:45px;border-radius:12px;background:var(--blue-soft);color:var(--blue);display:grid;place-items:center;font-size:19px}.stat-icon.green{background:var(--green-soft);color:var(--green)}.stat-icon.gold{background:var(--gold-soft);color:var(--gold)}
.panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;margin-bottom:20px;box-shadow:0 6px 22px rgba(20,35,62,.035)}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}.panel h3{font-size:18px;margin:0}.panel-head p{font-size:13px;color:var(--muted);margin:3px 0 0}
.template-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.template-card{min-height:78px;border:1px solid var(--line);background:#fff;border-radius:12px;padding:14px;display:flex;gap:12px;align-items:center;text-align:left;color:var(--ink);cursor:pointer}.template-card:hover{border-color:#9dbbf5;background:#f8faff}.template-card.featured{border-color:#a9c3f7;background:var(--blue-soft)}.template-card div{display:flex;flex-direction:column;flex:1}.template-card small{color:var(--muted);font-size:11px;margin-top:2px}.template-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:9px;background:#eef2f8;color:var(--blue);font-weight:900}.featured .template-icon{background:#fff}
.integration-banner{display:flex;gap:15px;align-items:center;background:var(--navy);color:#fff;border-radius:16px;padding:20px 22px}.integration-banner div:nth-child(2){flex:1}.integration-banner p{color:#aebbd0;margin:3px 0 0;font-size:13px}.integration-banner .button{background:#fff}.integration-banner .bridge-icon{background:var(--blue)}
.flow-steps{display:flex;align-items:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 20px;margin-bottom:20px}.flow-step{display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto;column-gap:10px;color:#9aa4b5;min-width:120px}.flow-step>span{grid-row:1/3;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#eef2f7;font-weight:850}.flow-step b{font-size:12px}.flow-step small{font-size:10px}.flow-step.active{color:var(--ink)}.flow-step.active>span,.flow-step.done>span{background:var(--blue);color:#fff}.flow-step.done>span{background:var(--green)}.flow-line{height:1px;background:var(--line);flex:1;margin:0 11px}
.form-panel{max-width:1030px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid.three{grid-template-columns:1.1fr 1fr 1fr}.form-panel input,.form-panel textarea,.form-panel select{margin-bottom:15px}.legal-helper,.notice{display:flex;gap:12px;border-radius:11px;padding:13px 15px;background:#f1f5fb;color:#4f5e74;margin:2px 0 17px}.legal-helper>span,.notice>span{width:22px;height:22px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;font-weight:850;flex:0 0 22px}.legal-helper p,.notice p{margin:0;font-size:12px}.notice.warning{background:var(--gold-soft)}.notice.warning>span{background:var(--gold)}
.form-actions{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-top:18px}.inline-action{display:flex;gap:10px}.inline-action input{margin-bottom:0;flex:1}.field-hint{font-size:11px;color:#7c879a;margin:8px 0 13px}.chip-list{display:flex;flex-wrap:wrap;gap:7px}.chip{background:var(--blue-soft);color:#34517f;border-radius:999px;padding:5px 10px;font-size:11px}.upload-box{position:relative;border:1px dashed #aeb9ca;border-radius:12px;padding:18px;display:flex;gap:14px;align-items:center}.upload-box input{position:absolute;inset:0;opacity:0;cursor:pointer;margin:0}.upload-box div{display:flex;flex-direction:column;flex:1}.upload-box small{color:var(--muted)}.upload-box .button{pointer-events:none}.file-list{margin-top:10px}.file-item{display:flex;justify-content:space-between;padding:9px 11px;background:#f7f9fc;border-radius:8px;font-size:12px}.file-item small{font-family:ui-monospace,monospace;color:var(--muted)}hr{border:0;border-top:1px solid var(--line);margin:22px 0}
.evidence-summary{display:grid;grid-template-columns:170px 1fr;gap:9px 15px;background:#f8fafc;padding:18px;border-radius:12px}.evidence-summary dt{font-weight:800}.evidence-summary dd{margin:0}.mono,.hash{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;word-break:break-all;font-size:12px}.consent{display:flex;align-items:flex-start;gap:10px;background:#f8fafc;border:1px solid var(--line);border-radius:10px;padding:13px;margin-top:17px}.consent input{width:auto;margin:3px 0 0}.success-hero{display:flex;align-items:center;gap:16px;padding:8px}.success-hero>span{width:52px;height:52px;border-radius:50%;background:var(--green-soft);color:var(--green);display:grid;place-items:center;font-size:24px}.success-hero h3{font-size:22px}.success-hero p{margin:3px 0;color:var(--muted)}
.communication-list{display:flex;flex-direction:column}.communication-row{display:grid;grid-template-columns:minmax(230px,1.5fr) minmax(120px,.7fr) minmax(130px,.8fr) 120px auto;gap:14px;align-items:center;padding:14px 5px;border-top:1px solid var(--line)}.communication-row:first-child{border-top:0}.communication-main{display:flex;gap:11px;min-width:0}.comm-icon{width:39px;height:39px;border-radius:10px;background:#eef2f8;color:var(--blue);display:grid;place-items:center;flex:0 0 39px}.communication-main div{min-width:0}.communication-main b,.communication-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.communication-main small,.comm-meta small{color:var(--muted);font-size:11px}.comm-meta b{font-size:12px}.status{justify-self:start;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:850;background:#eef2f7;color:#5a6679}.status.delivered{background:var(--green-soft);color:var(--green)}.status.sent,.status.partially_delivered{background:var(--blue-soft);color:var(--blue)}.status.failed{background:#fff0f1;color:var(--danger)}.status.draft{background:var(--gold-soft);color:var(--gold)}.row-action{border:0;background:transparent;color:var(--blue);cursor:pointer;font-weight:750}.empty-state{text-align:center;padding:48px 20px;color:var(--muted)}.empty-state.compact{padding:25px}
.toolbar{display:grid;grid-template-columns:1fr 220px auto;gap:10px;margin-bottom:12px}.search-box{display:flex;align-items:center;border:1px solid #cfd7e4;border-radius:10px;padding-left:12px;color:#8b95a7}.search-box input{border:0;box-shadow:none;margin:0}.toolbar select{margin:0}
.verify-card{max-width:740px;text-align:center;margin:30px auto}.verify-shield{width:62px;height:62px;border-radius:18px;background:var(--green-soft);color:var(--green);display:grid;place-items:center;margin:0 auto 16px;font-size:28px;font-weight:900}.verify-card p{color:var(--muted);max-width:580px;margin:8px auto 24px}.verify-card form{text-align:left}.faq{max-width:900px}.faq details{border-top:1px solid var(--line);padding:16px 2px}.faq details:first-child{border-top:0}.faq summary{font-weight:800;cursor:pointer}.faq p{color:var(--muted);margin-bottom:0}
.icon-button{border:0;background:transparent;font-size:23px;color:inherit;cursor:pointer}.menu-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.45);z-index:25}
.session{display:flex;align-items:center;gap:10px}
.verifier{background:#fff}.verifier .public-header{position:static}.verifier main{max-width:820px;margin:55px auto;padding:0 25px}.verifier .verify-shield{margin-left:0}.verifier pre{white-space:pre-wrap;overflow:auto;background:#f5f7fb;padding:20px;border-radius:13px;border:1px solid var(--line)}
.report{background:#eef2f7}.report main{max-width:1040px;margin:35px auto;padding:0 22px}.report .report-cover{background:linear-gradient(135deg,var(--navy),#253f6d);color:#fff;border-radius:18px;padding:30px;margin-bottom:18px}.report .report-cover h1{font-size:29px;margin:8px 0}.report .report-cover p{color:#bdc9dc}.report .report-id{display:inline-flex;background:rgba(255,255,255,.13);padding:9px 12px;border-radius:9px;font-weight:900;letter-spacing:.4px}.report .card{box-shadow:none;margin:0 0 16px}.report table{width:100%;border-collapse:collapse}.report th,.report td{text-align:left;vertical-align:top;padding:10px;border-bottom:1px solid var(--line)}.report th{font-size:11px;letter-spacing:.4px;color:var(--muted)}.report dl{display:grid;grid-template-columns:230px 1fr;gap:9px 18px}.report dt{font-weight:800}.report dd{margin:0}.report .message-copy{white-space:pre-wrap;background:#f8fafc;border:1px solid var(--line);padding:18px;border-radius:10px}.report .timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.report .timeline-item{border-left:3px solid var(--blue);padding:10px;background:#f8fafc}.report .timeline-item.delivered{border-color:var(--green)}.report .disclaimer{border-left:4px solid var(--gold)}.report .print-note{text-align:center;color:var(--muted)}
@media(max-width:980px){.auth-main{grid-template-columns:1fr;max-width:720px}.auth-intro{display:none}.template-grid{grid-template-columns:1fr 1fr}.stat-grid{grid-template-columns:1fr}.communication-row{grid-template-columns:1.5fr .8fr .8fr auto}.communication-row .comm-date{display:none}.form-grid.three{grid-template-columns:1fr 1fr}.flow-step small{display:none}}
@media(max-width:760px){.mobile-only{display:inline-flex!important}.public-header{height:68px;padding:0 18px}.auth-main{min-height:calc(100vh - 68px);padding:24px 16px}.login-card{padding:25px 20px;border-radius:18px}.app-shell{display:block}.sidebar{transform:translateX(-105%);transition:.2s transform}.sidebar.open{transform:translateX(0)}.workspace-main{min-height:100vh}.topbar{height:68px;padding:0 16px;gap:10px}.topbar>div:first-of-type{flex:1}.top-actions{gap:8px}.wallet span{display:none}.content{padding:22px 14px}.welcome,.page-head{align-items:flex-start}.welcome .button,.page-head>.button{white-space:nowrap}.welcome h1,.page-head h1{font-size:27px}.template-grid{grid-template-columns:1fr}.flow-steps{overflow:auto;padding:12px}.flow-step{min-width:95px;grid-template-columns:28px 1fr}.flow-step>span{width:28px;height:28px}.flow-line{min-width:20px}.form-grid,.form-grid.three{grid-template-columns:1fr}.panel{padding:17px}.panel-head{display:block}.panel-head .badge{margin-top:10px}.inline-action{align-items:stretch}.communication-row{grid-template-columns:minmax(0,1fr) auto}.communication-row .comm-meta,.communication-row .comm-date{display:none}.integration-banner{align-items:flex-start;flex-wrap:wrap}.integration-banner div:nth-child(2){min-width:calc(100% - 60px)}.integration-banner .button{width:100%}.toolbar{grid-template-columns:1fr}.form-actions .button{flex:1}.evidence-summary{grid-template-columns:1fr}.evidence-summary dt{margin-top:6px}.report main{margin:15px auto;padding:0 10px}.report dl{grid-template-columns:1fr}.report .timeline{grid-template-columns:1fr}.report table{font-size:11px}.report .table-wrap{overflow:auto}}
@media print{body{background:#fff}.report main{max-width:none;margin:0;padding:0}.report .card,.report .report-cover{break-inside:avoid}.report .print-note{display:none}.report .report-cover{border-radius:0}.public-header{display:none}}
