:root{--text-xs: clamp(.75rem, .7rem + .25vw, .875rem);--text-sm: clamp(.875rem, .8rem + .35vw, 1rem);--text-base: clamp(1rem, .95rem + .25vw, 1.125rem);--text-lg: clamp(1.125rem, 1rem + .75vw, 1.5rem);--text-xl: clamp(1.5rem, 1.2rem + 1.25vw, 2.25rem);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--bg: #F6F1E8;--surface: #FBF8F2;--surface-2: #FFFDF9;--offset: #EEE7DA;--border: #DDD4C4;--divider: #E7DFD1;--text: #2F2F2D;--charcoal: #484846;--muted: #6E6B64;--faint: #A8A296;--primary: #2E5E5A;--primary-hover: #234A47;--primary-soft: #DCE7E3;--ok: #3C6E47;--ok-soft: #DDEBDD;--warn: #8A5A12;--warn-soft: #F5E6C8;--bad: #9A3328;--bad-soft: #F4DAD5;--info: #3D5A80;--info-soft: #DEE5EF;--radius: 10px;--radius-sm: 6px;--shadow: 0 1px 2px rgba(60,50,30,.06), 0 4px 14px rgba(60,50,30,.05);--font-display: "Zodiak", Georgia, serif;--font-body: "Satoshi", system-ui, sans-serif}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:var(--text-base);line-height:1.5;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) var(--space-6);background:var(--charcoal);color:#f6f1e8;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.logo{display:block;height:34px;width:auto}.wordmark{font-family:var(--font-display);font-weight:700;font-size:var(--text-lg);letter-spacing:.01em}.tag{font-size:var(--text-xs);color:#d8d0c0;border:1px solid #6a6a66;border-radius:999px;padding:1px var(--space-2)}.mode{display:inline-flex;background:#3a3a38;border-radius:999px;padding:3px}.mode-btn{border:0;background:transparent;color:#e6dfd2;padding:var(--space-1) var(--space-4);border-radius:999px;font-size:var(--text-sm);font-weight:500}.mode-btn.active{background:#f6f1e8;color:var(--charcoal)}.shell{display:grid;grid-template-columns:230px 1fr;min-height:calc(100vh - 56px)}.sidenav{border-right:1px solid var(--border);padding:var(--space-6) var(--space-3);display:flex;flex-direction:column;gap:var(--space-1);background:var(--surface)}.sidenav .who{padding:0 var(--space-3) var(--space-4);margin-bottom:var(--space-2);border-bottom:1px solid var(--divider)}.sidenav .who strong{display:block;font-size:var(--text-sm)}.sidenav .who span{font-size:var(--text-xs);color:var(--muted)}.nav-btn{text-align:left;border:0;background:transparent;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--muted);display:flex;justify-content:space-between;align-items:center;gap:var(--space-2)}.nav-btn:hover{background:var(--offset);color:var(--text)}.nav-btn.active{background:var(--primary-soft);color:var(--primary-hover);font-weight:700}.nav-count{font-size:var(--text-xs);background:var(--warn-soft);color:var(--warn);border-radius:999px;padding:0 var(--space-2);font-weight:700}main{padding:var(--space-8) clamp(var(--space-4),4vw,var(--space-12));max-width:1180px;width:100%}main:focus{outline:none}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-6);flex-wrap:wrap}h1{font-family:var(--font-display);font-weight:700;font-size:var(--text-xl);line-height:1.15;margin:0}h2{font-size:var(--text-lg);margin:0 0 var(--space-3);font-weight:700}h3{font-size:var(--text-base);margin:0 0 var(--space-2);font-weight:700}.sub{color:var(--muted);margin:var(--space-1) 0 0;font-size:var(--text-sm);max-width:62ch}p{margin:0 0 var(--space-3)}.small{font-size:var(--text-xs);color:var(--muted)}.mono{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:var(--text-xs)}.grid{display:grid;gap:var(--space-4)}.g-4{grid-template-columns:repeat(4,minmax(0,1fr))}.g-3{grid-template-columns:repeat(3,minmax(0,1fr))}.g-2{grid-template-columns:repeat(2,minmax(0,1fr))}.span-2{grid-column:span 2}.card{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-5);box-shadow:var(--shadow);min-width:0}.card+.card{margin-top:0}.stack>*+*{margin-top:var(--space-4)}.kpi .label{font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:700}.kpi .value{font-size:var(--text-xl);font-weight:700;font-variant-numeric:tabular-nums;line-height:1.2;margin-top:var(--space-1)}.kpi .hint{font-size:var(--text-xs);color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border:1px solid transparent;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:700;background:var(--primary);color:#fff;transition:background .15s;white-space:nowrap}.btn:hover{background:var(--primary-hover)}.btn:disabled{background:var(--faint);cursor:not-allowed}.btn.ghost{background:transparent;color:var(--primary);border-color:var(--border)}.btn.ghost:hover{background:var(--offset)}.btn.sm{padding:var(--space-1) var(--space-3);font-size:var(--text-xs)}.row{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap}.between{justify-content:space-between}.pill{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-xs);font-weight:700;padding:2px var(--space-2);border-radius:999px;white-space:nowrap}.pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.ok{background:var(--ok-soft);color:var(--ok)}.warn{background:var(--warn-soft);color:var(--warn)}.bad{background:var(--bad-soft);color:var(--bad)}.info{background:var(--info-soft);color:var(--info)}.neutral{background:var(--offset);color:var(--muted)}.progress{height:8px;background:var(--offset);border-radius:999px;overflow:hidden}.progress>span{display:block;height:100%;background:var(--primary);border-radius:999px;transition:width .4s}table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}th{text-align:left;font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-weight:700;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border)}td{padding:var(--space-3);border-bottom:1px solid var(--divider);vertical-align:top}tr:last-child td{border-bottom:0}tr.clickable{cursor:pointer}tr.clickable:hover td{background:var(--offset)}.table-wrap{overflow-x:auto;margin:0 calc(var(--space-5) * -1);padding:0 var(--space-5)}.list{list-style:none;margin:0;padding:0}.list li{display:flex;justify-content:space-between;gap:var(--space-3);align-items:flex-start;padding:var(--space-3) 0;border-bottom:1px solid var(--divider)}.list li:last-child{border-bottom:0}.list .meta{font-size:var(--text-xs);color:var(--muted)}.field{display:flex;flex-direction:column;gap:var(--space-1)}.field label{font-size:var(--text-xs);font-weight:700;color:var(--muted)}.input,select.input{border:1px solid var(--border);background:#fff;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);width:100%}.check{display:flex;gap:var(--space-2);align-items:flex-start;font-size:var(--text-sm);padding:var(--space-2) 0}.check input{margin-top:4px;accent-color:var(--primary)}.drop{border:2px dashed var(--border);border-radius:var(--radius);padding:var(--space-8);text-align:center;background:var(--surface);transition:border-color .15s,background .15s}.drop.over{border-color:var(--primary);background:var(--primary-soft)}.drop strong{display:block;margin-bottom:var(--space-1)}.callout{border-left:3px solid var(--info);background:var(--info-soft);padding:var(--space-3) var(--space-4);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-size:var(--text-sm)}.callout.warn{border-color:var(--warn)}.callout.bad{border-color:var(--bad)}.callout.ok{border-color:var(--ok)}.callout p:last-child{margin-bottom:0}.src{display:grid;grid-template-columns:1.3fr 1fr 1fr auto;gap:var(--space-3);align-items:center;padding:var(--space-3) 0;border-bottom:1px solid var(--divider);font-size:var(--text-sm)}.src:last-child{border-bottom:0}.src .name{font-weight:700}pre.code{background:#2f2f2d;color:#ede6d8;padding:var(--space-4);border-radius:var(--radius-sm);overflow:auto;font-size:var(--text-xs);line-height:1.55;max-height:360px;margin:0}.tabs{display:flex;gap:var(--space-1);border-bottom:1px solid var(--border);margin-bottom:var(--space-3)}.tab{border:0;background:transparent;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px}.tab.active{color:var(--primary);border-color:var(--primary);font-weight:700}.steps{list-style:none;padding:0;margin:0;counter-reset:s}.steps li{counter-increment:s;position:relative;padding:0 0 var(--space-4) var(--space-10)}.steps li:before{content:counter(s);position:absolute;left:0;top:0;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:var(--text-xs);font-weight:700;background:var(--offset);color:var(--muted)}.steps li.done:before{content:"✓";background:var(--ok-soft);color:var(--ok)}.steps li.now:before{background:var(--primary);color:#fff}.toast{position:fixed;bottom:var(--space-6);left:50%;transform:translate(-50%) translateY(20px);background:var(--charcoal);color:#f6f1e8;padding:var(--space-3) var(--space-5);border-radius:var(--radius-sm);font-size:var(--text-sm);opacity:0;pointer-events:none;transition:all .25s;z-index:50;max-width:calc(100vw - 2rem)}.toast.show{opacity:1;transform:translate(-50%) translateY(0)}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#28262273;display:grid;place-items:center;z-index:40;padding:var(--space-4)}.modal-back[hidden]{display:none}.modal{background:var(--surface-2);border-radius:var(--radius);padding:var(--space-6);max-width:560px;width:100%;max-height:90vh;overflow:auto;box-shadow:0 20px 50px #0003}.evidence{border:1px solid var(--border);border-radius:var(--radius-sm);background:#fff;padding:var(--space-4);font-size:var(--text-sm)}.evidence .bar{display:flex;gap:6px;margin-bottom:var(--space-3)}.evidence .bar i{width:10px;height:10px;border-radius:50%;background:var(--border);display:block}.stamp{display:inline-block;border:2px solid var(--ok);color:var(--ok);font-weight:700;padding:var(--space-1) var(--space-3);border-radius:4px;transform:rotate(-3deg);font-size:var(--text-xs);letter-spacing:.08em}@media (max-width: 1000px){.g-4{grid-template-columns:repeat(2,minmax(0,1fr))}.g-3{grid-template-columns:1fr}}@media (max-width: 760px){.shell{grid-template-columns:1fr}.sidenav{flex-direction:row;overflow-x:auto;border-right:0;border-bottom:1px solid var(--border);padding:var(--space-2) var(--space-3);position:sticky;top:0}.sidenav .who{display:none}.nav-btn{white-space:nowrap}.g-2{grid-template-columns:1fr}.g-4{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.g-4 .kpi .label{font-size:11px}.span-2{grid-column:auto}.src{grid-template-columns:1fr 1fr}.topbar{padding:var(--space-3) var(--space-4)}main{padding:var(--space-6) var(--space-4)}}.center-wrap{min-height:calc(100vh - 60px);display:grid;place-items:start center;padding:var(--space-10) var(--space-4)}.auth-card{width:100%;max-width:480px;padding:var(--space-8)}.auth-card h1{margin-bottom:var(--space-1)}.auth-card .sub,.auth-card .tabs{margin-bottom:var(--space-5)}.test-note{margin-top:var(--space-5)}.btn.full{width:100%;padding:var(--space-3) var(--space-4)}.btn.danger{background:var(--bad)}.btn.danger:hover{background:#7f281f}.btn.on-dark{color:#f6f1e8;border-color:#6a6a66}.btn.on-dark:hover{background:#3a3a38}.code-input{font-size:var(--text-lg);letter-spacing:.3em;text-align:center;font-variant-numeric:tabular-nums}.qr{display:block;background:#fff;border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-2);margin:var(--space-2) 0}.setup-key{word-break:break-all;background:var(--offset);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);margin-top:var(--space-2)}.steps h3{margin-bottom:2px}.steps .btn{margin-top:var(--space-2)}.mt{margin-top:var(--space-4)}.err{color:var(--bad)}.empty{text-align:center;padding:var(--space-8) var(--space-4)}.empty .btn{margin-top:var(--space-3)}.row.center{justify-content:center;margin-top:var(--space-3)}.row.nowrap{flex-wrap:nowrap;gap:var(--space-2)}.actions{white-space:nowrap;text-align:right}.actions .btn+.btn{margin-left:var(--space-2)}.file-chip{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);padding:var(--space-3) var(--space-4)}.file-chip strong,.file-name{word-break:break-word}.doc-meta{min-width:0}.vault-grid{align-items:start}.modal-head{margin-bottom:var(--space-4)}.modal-head h2{margin:0}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.skeleton{height:110px;background:linear-gradient(90deg,var(--surface) 0%,var(--offset) 50%,var(--surface) 100%);background-size:200% 100%;animation:sh 1.2s infinite}@keyframes sh{to{background-position:-200% 0}}@media (max-width: 760px){.auth-card{padding:var(--space-6) var(--space-5)}.center-wrap{padding:var(--space-6) var(--space-3)}.list li{flex-direction:column}.row.nowrap{flex-wrap:wrap}}.tag-short{display:none}@media (max-width: 760px){.topbar{position:relative;flex-wrap:nowrap}.shell{grid-template-rows:auto 1fr;align-content:start}.brand{flex-wrap:nowrap;gap:var(--space-2)}.tag-long{display:none}.tag-short{display:inline}.sidenav{z-index:15;background:var(--surface)}.cred-table thead{display:none}.cred-table,.cred-table tbody,.cred-table tr,.cred-table td{display:block;width:100%}.cred-table tr{padding:var(--space-3) 0;border-bottom:1px solid var(--divider)}.cred-table tr:last-child{border-bottom:0}.cred-table td{border:0;padding:2px 0}.cred-table td.actions{text-align:left;padding-top:var(--space-2)}}.row-between{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap}.row-between h2{margin-bottom:0}.card>.row-between+p{margin-top:var(--space-2)}.muted{color:var(--muted)}.fieldset{border:0;padding:0;margin:0}.fieldset.mt{margin-top:var(--space-5)}.fieldset legend{font-size:var(--text-xs);font-weight:700;color:var(--muted);margin-bottom:var(--space-1)}.check-row{display:flex;flex-wrap:wrap;gap:0 var(--space-5)}.mt-xs{margin-top:var(--space-1);margin-bottom:var(--space-2)}textarea.input{resize:vertical;min-height:80px}.compare td:first-child{white-space:nowrap}@media (max-width: 760px){.compare td:first-child{white-space:normal}.compare td:empty{display:none}}@media (max-width: 760px){.compare td[data-label]:before{content:attr(data-label) ": ";color:var(--muted);font-size:var(--text-xs);font-weight:700}}.pick-list{display:flex;flex-direction:column;max-height:260px;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-3);margin-bottom:var(--space-2);background:#fff}.pick-list .check{border-bottom:1px solid var(--divider)}.pick-list .check:last-child{border-bottom:0}.list li.share-item{flex-direction:column;align-items:stretch;gap:var(--space-2)}.share-top{display:flex;justify-content:space-between;gap:var(--space-3);align-items:flex-start}.activity{background:var(--offset);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4)}.list.compact li{padding:var(--space-1) 0}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-xs)}.code-big{font-size:var(--text-lg);letter-spacing:.15em;font-variant-numeric:tabular-nums}.eyebrow{font-size:var(--text-xs);font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--space-1)}.shared-wrap{width:100%;max-width:860px}.shared-wrap .auth-card{margin:0 auto}@media (max-width: 760px){.share-top{flex-direction:column}}.activity .list li,.activity .list li span{font-size:var(--text-sm)}.code-big{color:var(--text)}a.btn{text-decoration:none}.send-box{border-top:1px solid var(--divider);padding-top:var(--space-3)}
