body{padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);font-family:system-ui,-apple-system,"Segoe UI",sans-serif;background:linear-gradient(180deg,#f8f1eb,#efe0d6);min-height:100vh;color:#292524}
.serif{font-family:Georgia,"Times New Roman",serif}
.inp{width:100%;border:1px solid #eaddd4;border-radius:12px;padding:10px 12px;background:#fff;font:inherit;color:inherit}
textarea.inp{min-height:76px;resize:vertical}
.lbl{display:block;font-size:12px;font-weight:600;color:#78716c;margin:10px 0 4px}
.card{background:#fff;border:1px solid #eaddd4;border-radius:20px;padding:18px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:999px;padding:10px 18px;font-weight:600;font-size:14px;background:#b08672;color:#fff;border:1px solid #b08672;cursor:pointer}
.btn.sec{background:transparent;color:#b08672}
.btn.dark{background:#1f1a1a;border-color:#1f1a1a;color:#fff}
.btn.sm{padding:6px 12px;font-size:12px}
.btn:disabled{opacity:.45;cursor:not-allowed}
.pill{display:inline-block;border-radius:999px;padding:2px 10px;font-size:11px;font-weight:600;background:#f4e6dc;color:#7c5a49}
.tab{border-radius:999px;padding:8px 14px;font-size:14px;white-space:nowrap;border:1px solid #eaddd4;background:#fff}
.tab.on{background:#1f1a1a;color:#fff;border-color:#1f1a1a}
.slot{border:1px solid #eaddd4;border-radius:12px;padding:8px 0;background:#fff;font-weight:600;font-size:14px}
.slot.on{background:#b08672;color:#fff;border-color:#b08672}
.muted{color:#78716c}
.nav a{padding:6px 10px;border-radius:999px;font-size:13px;white-space:nowrap}
.nav a.on{background:#1f1a1a;color:#fff}
button,a{transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease,background-color .2s ease}
button:not(:disabled):active{transform:scale(.97)}
:focus-visible{outline:2px solid #b08672;outline-offset:2px}
main>section,.fade{animation:fin .3s ease both}@keyframes fin{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
html[data-theme=dark] body{background:linear-gradient(180deg,#1a1514,#110d0d);color:#f3e9e3}
html[data-theme=dark] .card,html[data-theme=dark] .tab:not(.on),html[data-theme=dark] .slot:not(.on),html[data-theme=dark] .bg-white{background:#231d1d!important;border-color:#3a2f2f!important;color:#f3e9e3}
html[data-theme=dark] .inp{background:#1b1616;border-color:#3a2f2f;color:#f3e9e3}
html[data-theme=dark] .muted,html[data-theme=dark] .lbl{color:#a89a92}
html[data-theme=dark] .pill{background:#2c2322;color:#e0b8a3}
html[data-theme=dark] .nav a.on,html[data-theme=dark] .tab.on,html[data-theme=dark] .btn.dark{background:#b08672;border-color:#b08672}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
@media print{header,.no-print,#toast{display:none!important}body{background:#fff!important;color:#000!important}.card{border:1px solid #ccc!important;background:#fff!important;color:#000!important;break-inside:avoid}}
