:root{--bg:#050202;--fg:#8a4a30;--dim:#5a2e1e;--line:#2e150e;--card:#0c0504}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;background:#000;color:var(--fg);font:17px/1.35 system-ui,sans-serif;min-height:100%}
button,select,input{font:inherit;color:inherit}
h1{font-weight:300;letter-spacing:.2em;text-transform:uppercase;font-size:20px;margin:0 0 16px;color:var(--dim)}
#home{max-width:640px;margin:0 auto;padding:20px 16px 40px;background:var(--bg);min-height:100vh}
button{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px 16px;cursor:pointer}
button.big{width:100%;min-height:76px;font-size:22px;color:#a35a38;border-color:#40200f;background:#140804}
#settings{margin:16px 0;border:1px solid var(--line);border-radius:14px;padding:6px 14px}
#settings summary{min-height:48px;display:flex;align-items:center;cursor:pointer}
#settings label{display:block;margin:10px 0 16px}
#settings output{float:right;color:var(--dim)}
input[type=range]{display:block;width:100%;height:44px;accent-color:#6a3420;background:transparent}
select{width:100%;min-height:48px;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:0 10px;margin-top:6px}
#modes{list-style:none;margin:0;padding:0;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
#modes li{background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden}
#modes li.sel{border-color:#4a2412}
#modes li>button{display:block;width:100%;min-height:76px;text-align:left;border:0;border-radius:0;background:none}
#modes b{display:block;font-weight:500;color:#a05a38;margin-bottom:2px}
#modes span{color:var(--dim);font-size:14px}
#modes .note{display:block;margin-top:4px;font-size:13px;color:#4a2618}
#modes label.opt{display:flex;align-items:center;gap:10px;min-height:48px;padding:0 16px;border-top:1px solid var(--line);font-size:14px}
#modes label.opt input{width:22px;height:22px;accent-color:#6a3420}
.foot{color:#3a1c12;font-size:13px;text-align:center;margin-top:20px}
#warn{position:fixed;inset:0;background:#000;display:flex;align-items:center;justify-content:center;padding:20px;z-index:20;overflow:auto}
#warn[hidden],#home[hidden],#session[hidden],#overlay[hidden]{display:none}
#warn .box{max-width:520px}
#warn h2{font-weight:400;color:#a05a38}
#warn button+button{width:100%;margin-top:12px;min-height:56px}
#session{position:fixed;inset:0;background:#000;cursor:none;z-index:10;touch-action:manipulation;user-select:none}
#cv{position:absolute;inset:0;width:100%;height:100%;display:block;background:#000;opacity:0}
#overlay{position:absolute;left:0;right:0;bottom:0;padding:20px 20px 36px;background:rgba(0,0,0,.88);cursor:default;color:#7a3a26}
#overlay .row{max-width:480px;margin:0 auto 12px;text-align:center}
#overlay button{background:#100604}
