:root{
  --ink:#17211f;--muted:#66736f;--line:#d9e0de;--line-strong:#bbc8c4;
  --paper:#fff;--surface:#f4f7f6;--surface-2:#eaf0ee;--primary:#17695f;
  --primary-dark:#0f5149;--accent:#d5a94a;--danger:#9f3f43;--success:#27724b;
  --shadow:0 16px 42px rgba(23,33,31,.08);--radius:7px;
}
*{box-sizing:border-box}
html{font-size:16px;background:var(--surface)}
body{margin:0;color:var(--ink);background:var(--surface);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;letter-spacing:0;line-height:1.45}
button,input,select,textarea{font:inherit;letter-spacing:0}
a{color:inherit}
.topbar{position:sticky;z-index:30;top:0;border-bottom:1px solid var(--line);background:rgba(255,255,255,.96);backdrop-filter:saturate(130%) blur(12px)}
.topbar__inner{width:min(1160px,100%);min-height:72px;margin:auto;padding:10px 24px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.brand-lockup{display:flex;align-items:center;gap:14px;text-decoration:none;min-width:0}
.brand-lockup h1{font-size:25px;line-height:1.1;margin:2px 0 0}.brand-lockup strong{display:block;font-size:16px}.brand-lockup small{display:block;color:var(--muted);font-size:12px;margin-top:1px}
.brand-logo{width:58px;height:48px;object-fit:contain;object-position:left center}.brand-logo--small{width:44px;height:38px}
.eyebrow{display:block;color:var(--primary);font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.08em}
.topbar__actions{display:flex;align-items:center;gap:18px;flex:0 0 auto}.link{font-size:13px;font-weight:700;text-decoration:none}.link:hover{color:var(--primary)}
.main{width:min(1160px,100%);margin:auto;padding:38px 24px 70px}
.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:0 0 28px;padding:0 2px}
.page-heading h1{font-size:32px;line-height:1.1;margin:5px 0 6px}.page-heading p{margin:0;color:var(--muted)}
.document-badge{min-width:245px;border-left:3px solid var(--accent);padding:5px 0 5px 14px}.document-badge span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;font-weight:800}.document-badge strong{font:700 13px ui-monospace,SFMono-Regular,Menlo,monospace}
.case-form{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow)}
.form-section{padding:30px 34px;border-bottom:1px solid var(--line)}
.form-section:last-child{border-bottom:0}.form-section--confidential{background:#fcfbf8}.form-section--actions{background:#f7faf9;display:flex;align-items:flex-end;justify-content:space-between;gap:32px}
.section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 22px}
.section-heading>div:first-child{display:flex;align-items:center;gap:12px;min-width:0}.section-heading h2{font-size:18px;line-height:1.2;margin:0}.section-number{color:var(--primary);font:800 11px ui-monospace,SFMono-Regular,Menlo,monospace;border-right:1px solid var(--line-strong);padding-right:12px}
.section-status{color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase}
.form-grid{display:grid;gap:18px 20px}.form-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}.form-grid--journal{grid-template-columns:150px minmax(0,1fr)}
.field{display:flex;flex-direction:column;gap:7px;min-width:0}.field--full{grid-column:1/-1}.field--span-2{grid-column:span 2}
.label,.label-row{font-size:12px;font-weight:720;color:#35423f}.label-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.field-state{color:#87928f;font-size:10px;font-weight:650}
.input,.textarea,.select{display:block;width:100%;max-width:100%;min-width:0;border:1px solid var(--line-strong);border-radius:5px;background:#fff;color:var(--ink);padding:11px 12px;outline:none;transition:border-color .15s,box-shadow .15s,background .15s}
.input,.select{min-height:44px}.textarea{min-height:116px;line-height:1.52;resize:vertical}
.input:hover,.textarea:hover,.select:hover{border-color:#91a39e}.input:focus,.textarea:focus,.select:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(23,105,95,.13)}
.textarea[data-voice-field]{padding-bottom:12px}
.voice-recorder{display:flex;align-items:center;gap:9px;margin-top:-1px;padding:8px;border:1px solid #cfe0dc;border-radius:5px;background:#f5faf8}
.voice-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:36px;border:1px solid #a8c7c0;border-radius:4px;background:#fff;color:var(--primary-dark);padding:7px 11px;font-size:12px;font-weight:750;cursor:pointer;touch-action:manipulation}
.voice-button:before{content:"";width:8px;height:8px;border-radius:50%;background:#a14347}.voice-button:hover{background:#edf6f3}.voice-status{color:var(--muted);font-size:11px}
.voice-recorder[data-state="recording"]{border-color:#deb9bb;background:#fbf2f2}.voice-recorder[data-state="recording"] .voice-button{background:#9f3f43;border-color:#9f3f43;color:#fff}.voice-recorder[data-state="recording"] .voice-button:before{background:#fff;animation:pulse 1s infinite}
.voice-recorder[data-state="uploading"]{background:#eef6f4}.voice-recorder[data-state="success"]{border-color:#b9d8c5;background:#f1f8f3}.voice-recorder[data-state="error"]{border-color:#e2bfc1;background:#fcf3f3}.voice-recorder[data-state="error"] .voice-status{color:#7d3034}
@keyframes pulse{50%{opacity:.3;transform:scale(.8)}}
.journal-list,.credential-list{display:grid;gap:14px}.journal-entry{display:grid;grid-template-columns:42px minmax(0,1fr);border-top:1px solid var(--line);padding-top:18px}.journal-entry:first-child{border-top:0;padding-top:0}
.journal-entry__rail span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--primary);color:#fff;font:750 11px ui-monospace,SFMono-Regular,Menlo,monospace}.journal-entry__body{min-width:0}.journal-entry__head,.credential-entry__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px;font-size:13px}
.credential-entry{border-left:3px solid var(--accent);padding:18px 18px 20px;background:#fff;border-top:1px solid #e6dfcf;border-right:1px solid #e6dfcf;border-bottom:1px solid #e6dfcf}
.icon-button{width:32px;height:32px;border:1px solid var(--line);border-radius:4px;background:#fff;font-size:20px;line-height:1;cursor:pointer}.icon-button--danger{color:var(--danger);border-color:#e2c5c6}.icon-button:hover{background:#f8eeee}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid transparent;border-radius:5px;padding:10px 16px;font-weight:750;font-size:13px;text-decoration:none;cursor:pointer;touch-action:manipulation;transition:background .15s,border-color .15s,transform .15s}.btn:active{transform:translateY(1px)}
.btn--primary{color:#fff;background:var(--primary);border-color:var(--primary)}.btn--primary:hover{background:var(--primary-dark)}.btn--secondary{color:var(--ink);background:#fff;border-color:var(--line-strong)}.btn--secondary:hover{border-color:var(--primary);color:var(--primary-dark)}.btn--small{min-height:36px;padding:7px 11px;font-size:12px}.btn--wide{width:100%}
.switch{display:flex;align-items:center;gap:9px;font-size:12px;cursor:pointer}.switch input{position:absolute;opacity:0}.switch__track{width:39px;height:22px;border:1px solid #aebbb7;border-radius:12px;background:#dfe6e4;padding:2px;transition:.15s}.switch__track span{display:block;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.15);transition:.15s}.switch input:checked+.switch__track{background:var(--primary);border-color:var(--primary)}.switch input:checked+.switch__track span{transform:translateX(17px)}
.confidential-intro{display:flex;align-items:center;gap:12px;border:1px solid #ded4bb;background:#fffdf8;padding:12px 14px;color:#5f5848;font-size:12px}.confidential-intro strong{color:#7f6325;font-size:10px;letter-spacing:.08em}.credential-content{margin-top:16px}.credential-content>.btn{margin-top:14px}
.sensitive-confirm{display:flex;align-items:flex-start;gap:10px;margin-top:18px;padding:13px 14px;border:1px solid #ddbfc0;background:#fff6f6;color:#653b3d;font-size:12px;font-weight:650}.sensitive-confirm input{width:18px;height:18px;margin:0;accent-color:var(--danger);flex:0 0 auto}
.password-control{display:flex;position:relative;min-width:0}.password-control .input{padding-right:76px}.password-toggle{position:absolute;right:5px;top:5px;height:34px;border:0;background:transparent;color:var(--primary);font-size:11px;font-weight:750;cursor:pointer}
.action-summary h2{font-size:20px;margin:4px 0}.action-summary p{margin:0;color:var(--muted);font-size:13px}.action-bar{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}
.alert{margin:0 0 16px;border:1px solid;padding:12px 14px;font-size:13px}.alert--success{border-color:#b9d8c5;background:#f1f8f3;color:#225c3c}.alert--error{border-color:#e0babc;background:#fcf1f1;color:#743236}.alert--info{border-color:#b8d2cd;background:#f1f7f6;color:#285d56}
.auth-page{min-height:100vh;background:#eef3f1}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:min(470px,100%);background:#fff;border:1px solid var(--line);padding:34px;box-shadow:var(--shadow)}.auth-intro{color:var(--muted);margin:22px 0}.stack{display:grid;gap:16px}
.result-page{min-height:100vh;display:grid;place-items:center;padding:24px}.result-card{width:min(680px,100%);border:1px solid var(--line);background:#fff;box-shadow:var(--shadow);padding:38px}.result-card h1{font-size:26px;margin:10px 0}.result-meta{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);margin:24px 0}.result-meta>div{background:#fff;padding:14px}.result-meta span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;font-weight:750}.result-meta strong{display:block;margin-top:3px;font-size:13px}.result-actions{display:flex;gap:10px;flex-wrap:wrap}
@media (max-width:900px){.form-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}.form-section--actions{align-items:flex-start;flex-direction:column}.action-bar{justify-content:flex-start}}
@media (max-width:680px){
  .topbar__inner{min-height:64px;padding:9px 15px}.brand-lockup--compact small{max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar__actions{gap:12px}.main{padding:22px 12px 44px}.page-heading{align-items:flex-start;flex-direction:column;margin-bottom:18px}.page-heading h1{font-size:26px}.document-badge{min-width:0;width:100%}
  .case-form{border-left:0;border-right:0;margin-left:-12px;margin-right:-12px}.form-section{padding:24px 16px}.section-heading{align-items:flex-start}.section-heading:has(.btn){flex-direction:column}.section-status{display:none}
  .form-grid--2,.form-grid--4,.form-grid--journal{grid-template-columns:minmax(0,1fr)}.field--span-2{grid-column:auto}.input,.select{min-height:48px}.textarea{min-height:130px}
  input[type="date"],input[type="time"]{display:block;inline-size:100%;min-inline-size:0;max-inline-size:100%;-webkit-appearance:none;appearance:none}
  .journal-entry{grid-template-columns:32px minmax(0,1fr)}.journal-entry__rail span{width:24px;height:24px}.voice-recorder{align-items:stretch;flex-direction:column}.voice-button{min-height:44px}.voice-status{text-align:center}
  .section-heading .switch{margin-top:1px}.confidential-intro{align-items:flex-start;flex-direction:column}.credential-entry{padding:16px 12px}.action-bar{display:grid;width:100%;grid-template-columns:1fr}.action-bar .btn{width:100%}.result-meta{grid-template-columns:1fr}.auth-card,.result-card{padding:26px 20px}.brand-logo{width:50px;height:43px}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.voice-recorder[data-state="recording"] .voice-button:before{animation:none}}
