  :root{--accent:#1e3a5f;--accent-soft:#eef4fb;--accent-dark:#152a45;--gold:#ca8a04;--rose:#be123c}
  body{background:linear-gradient(180deg,#eef4fb 0%,#f8fafc 45%,#fefce8 100%);background-attachment:fixed}
  .ds-wrap{max-width:900px;margin:0 auto;padding:0 22px 90px}
  .ds-card{background:linear-gradient(155deg,#ffffff 0%,#f5f8fc 100%);border:1px solid var(--line);border-left:5px solid var(--accent);border-radius:var(--radius);box-shadow:0 10px 28px -14px rgba(30,58,95,.22),var(--shadow);padding:28px 26px;margin-bottom:22px}
  .ds-card#stepDraft{border-left-color:var(--gold);background:linear-gradient(155deg,#ffffff 0%,#fffdf5 100%)}
  .ds-card#stepStress{border-left-color:var(--rose);background:linear-gradient(155deg,#ffffff 0%,#fff5f7 100%)}
  .page-head{background:linear-gradient(120deg,var(--accent-soft),#fef9c3)}
  .ds-step-label{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-dark);margin-bottom:10px;display:block}
  textarea, input[type=text]{width:100%;font-family:var(--font-body);font-size:.95rem;padding:11px 13px;border:1px solid var(--line);border-radius:10px;background:#fbfbfd;color:var(--ink)}
  textarea{resize:vertical;min-height:80px}
  label.field-label{display:block;font-size:.8rem;font-weight:700;color:var(--ink);margin-bottom:7px}
  .ds-note{font-size:.82rem;color:var(--muted);font-style:italic}
  .ds-btn{font-family:var(--font-body);font-weight:700;font-size:.9rem;background:var(--accent);color:#fff;border:none;border-radius:10px;padding:12px 22px;cursor:pointer}
  .ds-btn:hover{background:var(--accent-dark)}
  .ds-btn:disabled{opacity:.5;cursor:not-allowed}
  .ds-btn.ghost{background:transparent;color:var(--accent-dark);border:1.5px solid var(--accent-dark)}
  .ds-btn.sm{padding:7px 13px;font-size:.8rem;border-radius:8px}
  .ds-field-block{margin-bottom:18px}
  .ds-panel{border:1px solid var(--line);border-radius:12px;padding:16px 18px;margin-top:14px;background:#fbfbfd}
  .ds-panel h5{font-family:var(--font-head);font-size:.95rem;margin-bottom:8px;color:var(--accent-dark)}
  .ds-policy-section{border:1px solid var(--line);border-radius:12px;padding:16px 18px;margin-bottom:16px;background:#fff}
  .ds-policy-section h4{font-family:var(--font-head);font-size:1.02rem;margin-bottom:4px;color:var(--accent-dark)}
  .ds-policy-section .sub{font-size:.78rem;color:var(--muted);margin-bottom:10px}
  .ds-policy-section textarea{min-height:120px;font-size:.9rem;line-height:1.55}
  .ds-flag-note{background:#fff1f2;border:1px solid #fda4af;color:#9f1239;border-radius:8px;padding:10px 14px;font-size:.85rem;margin-top:8px}
  .ds-good-note{background:#f0fdf4;border:1px solid #86efac;color:#166534;border-radius:8px;padding:10px 14px;font-size:.85rem;margin-top:8px}
  .ds-check-row{display:flex;align-items:flex-start;gap:10px;margin-top:8px;font-size:.88rem}
  .ds-check-row input{margin-top:3px}
  pre.ds-pre{white-space:pre-wrap;font-family:ui-monospace,monospace;font-size:.8rem;background:#fff;border:1px solid var(--line);border-radius:8px;padding:12px;max-height:320px;overflow-y:auto}
  #keyOverlay{position:fixed;inset:0;background:rgba(15,23,42,.55);display:flex;align-items:center;justify-content:center;z-index:50;padding:20px}
  #keyOverlay[hidden]{display:none}
  #keyOverlay .box{background:#fff;border-radius:14px;padding:26px 24px;max-width:420px;width:100%}
  #keyOverlay .box h3{font-family:var(--font-head);margin-bottom:8px}
  #keyOverlay .box p{font-size:.85rem;color:var(--muted);margin-bottom:14px}
  #keyErr{color:var(--rose);font-size:.8rem;margin-top:8px;min-height:1em}
  .ds-history-row{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:8px 0;font-size:.85rem}
  select.ds-select{width:auto;font-family:var(--font-body);font-size:.85rem;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fbfbfd;color:var(--ink)}
  input[type=file]{font-size:.82rem;color:var(--muted)}