:root{--bg:#1a1510;--bg-panel:#241d15;--bg-card:#2d241a;--border:#4a3c28;--border-accent:#6b5638;--gold:#d4a84b;--gold-bright:#e8b04b;--text:#d4b896;--text-dim:#8a7560;--text-bright:#f0dcb4;--red:#c85450;--blue:#6d7db8;--green:#5a9b7e;--purple:#7a5fa3;--font-head:"Cinzel","Trajan Pro",Georgia,serif;--font-body:"Crimson Pro","EB Garamond",Georgia,serif;--font-hand:"Caveat",cursive}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior:none}h1,h2,h3,h4{font-family:var(--font-head);color:var(--text-bright);margin:0;letter-spacing:.02em}button,input,textarea{font-family:inherit}.app-bg{min-height:100vh;background:radial-gradient(ellipse at top,#2a2015 0,var(--bg) 60%);position:relative}.noise-overlay{position:fixed;inset:0;pointer-events:none;opacity:.03;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9'/></filter><rect width='200' height='200' filter='url(%23n)'/></svg>");z-index:0}.parchment-panel{background:linear-gradient(145deg,var(--bg-panel) 0,var(--bg-card) 100%);border:1px solid var(--border);border-radius:6px;box-shadow:inset 0 1px 0 rgba(212,168,75,.08),0 4px 20px rgba(0,0,0,.4)}.btn{cursor:pointer;transition:all .15s ease;font-family:var(--font-head);letter-spacing:.05em;border:none;background:none}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:linear-gradient(180deg,var(--gold) 0,#b8892e 100%);color:#1a1510;padding:10px 18px;border-radius:4px;font-weight:600;box-shadow:0 2px 0 #8a6420,inset 0 1px 0 hsla(0,0%,100%,.25);text-transform:uppercase;font-size:13px}.btn-primary:hover:not(:disabled){background:linear-gradient(180deg,var(--gold-bright) 0,#c9982e 100%)}.btn-ghost{color:var(--text-dim);padding:8px 14px;border:1px solid var(--border);border-radius:4px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;background:transparent}.btn-ghost:hover:not(:disabled){color:var(--gold);border-color:var(--border-accent)}.btn-ghost.active{color:var(--gold);border-color:var(--gold);background:rgba(212,168,75,.08)}.input-field{width:100%;padding:12px 14px;background:#14100a;border:1px solid var(--border);border-radius:4px;color:var(--text-bright);font-size:15px;outline:none;transition:border-color .2s}.input-field:focus{border-color:var(--gold)}.input-field::placeholder{color:var(--text-dim)}.stat-bar-bg{background:#14100a;border:1px solid var(--border);border-radius:3px;height:10px;overflow:hidden;position:relative}.checkbox-item{transition:background-color .2s ease;cursor:pointer}.checkbox-item:hover{background:rgba(212,168,75,.05)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .5s ease}@keyframes slow-fade{0%{opacity:0}to{opacity:1}}.slow-fade{animation:slow-fade 1.2s ease}.sync-indicator{position:fixed;top:12px;right:12px;font-size:10px;color:var(--text-dim);font-family:var(--font-head);letter-spacing:.15em;display:flex;align-items:center;gap:4px;z-index:10}.sync-dot{width:6px;height:6px;border-radius:50%;background:var(--green)}.sync-dot.syncing{background:var(--gold);animation:pulse 1s infinite}.sync-dot.error{background:var(--red)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.sig-canvas{touch-action:none;background:#f2e8d0;border:2px dashed var(--border-accent);border-radius:4px;cursor:crosshair;display:block;width:100%}