:root{color-scheme:dark;--bg:#110e10;--surface:#221b1e;--surface2:#302326;--border:#463638;--ink:#f5ebe4;--muted:#baa9a5;--gold:#d9b978;--red:#b74249;--green:#6bb49b;--shadow:0 12px 40px #0007;--radius:17px;font-family:Inter,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}html{height:100%;scroll-behavior:smooth}body{margin:0;min-height:100%;background:radial-gradient(ellipse at 50% -200px,#54232955,transparent 550px),var(--bg);color:var(--ink)}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.4;cursor:not-allowed}a{color:var(--gold)}h1,h2,h3,h4,p{margin:0}h1,h2,h3{font-family:Cinzel,Georgia,serif}h1{font-size:clamp(25px,6vw,37px);line-height:1.1;letter-spacing:.055em}h2{font-size:20px;color:var(--gold);margin-bottom:12px}h3{font-size:16px;color:#e9d7c0;margin-bottom:10px}p{line-height:1.5}small,.muted{color:var(--muted)}small{font-size:12px}.boot{height:100dvh;display:grid;align-content:center;justify-content:center;text-align:center;gap:15px}.crest{font-size:58px;color:var(--gold);text-shadow:0 0 28px #b8424988}.shell{max-width:1100px;margin:0 auto;padding:18px 16px 100px}.header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 0 18px;border-bottom:1px solid #634d4b66}.brand{display:flex;gap:11px;align-items:center}.brand .crest{font-size:39px}.eyebrow{font-size:10px;letter-spacing:.26em;color:var(--gold);font-weight:800;text-transform:uppercase}.titlebar{font-family:Cinzel,serif;font-size:clamp(18px,4vw,27px);font-weight:700}.header-actions{display:flex;align-items:center;gap:8px}.status{border:1px solid #735653;border-radius:99px;padding:6px 10px;font-size:11px;color:var(--gold);white-space:nowrap}.button,.ghost,.danger{border:1px solid #70514b;padding:11px 15px;border-radius:10px;background:linear-gradient(130deg,#a64a4e,#733039);color:#fff;font-weight:700;transition:transform .1s,opacity .1s}.button:active,.ghost:active{transform:scale(.98)}.ghost{background:#38282a;color:var(--ink)}.danger{background:#752b32;border-color:#a34a50}.button.gold{background:linear-gradient(135deg,#e2c48a,#a9874b);border-color:#c4a368;color:#271913}.mini{padding:8px 10px;font-size:12px}.tabnav{position:sticky;top:0;z-index:10;background:#191214f2;backdrop-filter:blur(12px);display:flex;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid #604447;margin:0 -16px 19px;padding:10px 14px;gap:7px}.tabnav::-webkit-scrollbar{display:none}.tabnav button{border:0;background:transparent;color:var(--muted);font-weight:700;white-space:nowrap;padding:11px 13px;border-radius:11px}.tabnav button.selected{background:#6a313a;color:#fff;box-shadow:inset 0 0 0 1px #9f5257}.panel{background:linear-gradient(155deg,#302225,#211a1d);border:1px solid #614349;border-radius:var(--radius);padding:19px;box-shadow:var(--shadow);margin-bottom:15px}.panel.soft{background:#21191b;border-color:#3d2d30}.panel.primary{background:linear-gradient(120deg,#462328,#2a1b20);border-color:#86574d}.hero{padding:25px 21px;margin:20px 0 16px;border:1px solid #966f57;border-radius:var(--radius);text-align:center;background:radial-gradient(ellipse at top,#6b3437a8,#22191c 72%);box-shadow:0 12px 50px #0008}.hero .crest{display:block;font-size:65px;margin-bottom:9px}.hero h1{color:#f4dfbd}.hero p{color:var(--muted);margin:13px 0}.center{text-align:center}.section-label{font-size:11px;text-transform:uppercase;letter-spacing:.16em;font-weight:800;color:var(--gold);margin-bottom:12px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.stack{display:grid;gap:13px}.row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.between{justify-content:space-between}.pill{border:1px solid #74525a;background:#3b262b;color:#f0cfaa;font-size:11px;border-radius:100px;padding:5px 9px;font-weight:800;white-space:nowrap}.pill.red{background:#6e2632;border-color:#9b414a;color:#ffccd0}.pill.green{background:#23483d;border-color:#346b59;color:#c6f9df}.pill.grey{background:#393033;border-color:#5a4d4d;color:#c0b5ae}.stat{background:#1a1518;border:1px solid #46383a;border-radius:12px;padding:15px}.stat strong{display:block;color:var(--gold);font-size:24px;font-family:Cinzel,serif}.stat span{font-size:11px;color:var(--muted)}label{font-size:12px;color:#d7c0b6;font-weight:700;display:block;margin:9px 0 7px}input,textarea,select{width:100%;border:1px solid #634d4d;border-radius:11px;background:#161114;color:var(--ink);padding:12px;outline:none;min-width:0}input:focus,textarea:focus,select:focus{border-color:var(--gold);box-shadow:0 0 0 2px #d6b87524}textarea{min-height:93px;resize:vertical}input[type=checkbox]{width:auto;accent-color:var(--red);margin:0 6px 0 0}input[type=file]{padding:10px}form{margin:0}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.formgrid>*{min-width:0}.form-actions{margin-top:12px}.divider{height:1px;background:#5c4648;margin:18px 0}.roster{display:grid;gap:8px}.person{border:1px solid #503e42;border-radius:11px;background:#21191d;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:8px}.person strong{font-size:13px}.person small{display:block;margin-top:2px}.events{display:grid;gap:9px}.event{border-left:3px solid var(--gold);padding:9px 12px;background:#191416;border-radius:5px 10px 10px 5px;font-size:13px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.event.private{border-color:var(--red)}.event small{display:block;margin:3px 0 0}.chatlog{height:360px;overflow-y:auto;display:flex;flex-direction:column;gap:12px;padding:14px;background:#141012;border:1px solid #49373a;border-radius:12px}.chatmsg{max-width:90%;align-self:flex-start;background:#3a292d;border-radius:3px 12px 12px 12px;padding:9px 12px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px}.chatmsg.mine{align-self:flex-end;background:#633038;border-radius:12px 3px 12px 12px}.chatmsg b{color:var(--gold);display:block;margin-bottom:4px}.chatmsg small{font-size:10px;display:block;text-align:right;margin-top:5px}.chatbox{display:flex;gap:8px;margin-top:11px}.chatbox input{flex:1}.chatbox button{flex:0 0 auto}.choices{display:grid;gap:7px;margin-top:11px}.choice{width:100%;text-align:left;border:1px solid #594448;background:#221a1d;color:var(--ink);border-radius:10px;padding:12px 13px;display:flex;justify-content:space-between;align-items:center;gap:8px}.choice.chosen{border-color:var(--gold);background:#504033}.choice .votes{font-size:11px;color:var(--gold);white-space:nowrap}.brief{line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;color:#f0e2d6}.subtitle{font-family:Cinzel,serif;color:var(--gold);font-weight:700}.mission-entry{border-radius:9px;background:#151215;padding:12px;margin-bottom:6px;border:1px solid #483538;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px}.mission-entry small{display:block;margin-bottom:5px}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(125px,1fr));gap:10px}.photo-card img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;border:1px solid #5b4348}.photo-card small{display:block}.notice{font-size:12px;color:#eecfbd;background:#473036;border-left:3px solid var(--red);padding:12px;border-radius:7px;line-height:1.55;margin:12px 0}.positive{border-color:var(--green);background:#234138}.login{max-width:460px;margin:auto;padding:40px 18px}.login .panel{margin-top:17px}.login .crest{display:block;text-align:center}.login h1{text-align:center;margin:15px 0;color:#e9d0ae}.login p{text-align:center;color:var(--muted);font-size:13px}.login .tabs{display:flex;gap:10px;margin:20px 0}.login .tabs button{flex:1}.empty{font-size:13px;color:var(--muted);padding:15px;text-align:center}.secret{padding:18px;border:1px solid #b5867e;background:#5a2934;border-radius:14px;margin:10px 0;white-space:pre-wrap;font-weight:700;line-height:1.7}.linkbox{font-family:monospace;font-size:12px;word-break:break-all;line-height:1.7;color:#e0c699;padding:10px;background:#131011;border-radius:8px;margin:10px 0}.kicker{color:var(--gold);text-transform:uppercase;font-size:11px;letter-spacing:.15em;font-weight:700}.footer{font-size:11px;color:#847674;text-align:center;margin-top:32px}.segment{display:flex;gap:7px;flex-wrap:wrap}.segment button{flex:1}.hidden{display:none!important}#toast{position:fixed;z-index:100;bottom:22px;left:50%;transform:translateX(-50%) translateY(100px);opacity:0;transition:.25s;max-width:min(92vw,500px);width:max-content;text-align:center;background:#d4b577;color:#24181a;border-radius:12px;padding:14px 20px;box-shadow:var(--shadow);font-weight:800;font-size:13px;pointer-events:none}#toast.show{transform:translateX(-50%) translateY(0);opacity:1}#toast.error{background:#e48d91}.modal-backdrop{position:fixed;inset:0;background:#000d;z-index:100;display:flex;align-items:center;justify-content:center;padding:18px}.modal{background:#36232a;border:1px solid var(--gold);border-radius:18px;max-width:480px;padding:26px;width:100%;box-shadow:0 30px 80px #0009}.modal h2{margin-bottom:16px}@media(min-width:730px){.content-columns{display:grid;grid-template-columns:1.05fr .95fr;gap:17px}.content-columns>div{min-width:0}.shell{padding:24px 28px 70px}.tabnav{margin:0 -28px 20px;padding:10px 27px}.hero{padding:38px}}@media(max-width:390px){.grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.header .status{display:none}.panel{padding:14px}.tabnav button{padding:10px}.formgrid{grid-template-columns:1fr}}

.invitation-code { margin-top: 10px; }
.invitation-code code { display:block; overflow-wrap:anywhere; user-select:all; margin:5px 0 9px; color:var(--gold, #e0c48d); }
.person { flex-wrap:wrap; gap:10px; }
.runtime-dialog{color:var(--ink);background:var(--surface);border:1px solid var(--gold);border-radius:16px;width:min(900px,94vw);max-height:88dvh;padding:22px;overflow:auto}.runtime-dialog::backdrop{background:#000c}.runtime-dialog header{display:flex;justify-content:space-between;gap:20px;position:sticky;top:-22px;background:var(--surface);padding:12px 0;z-index:2}.runtime-dialog button{color:var(--ink);background:var(--surface2);padding:10px;border:1px solid var(--border);border-radius:8px}.rules-text{white-space:pre-wrap}pre{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.6 monospace;max-height:60vh;overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}td,th{text-align:left;padding:10px;border-bottom:1px solid var(--border)}label{display:block;margin:12px 0}input[type=checkbox]{width:auto;display:inline-block;margin-right:8px}input,textarea,select{max-width:100%}textarea[name=package]{min-height:280px;font-family:monospace}.photo-grid img,.chatmsg img{max-width:100%;max-height:260px;object-fit:contain}button{max-width:100%;overflow-wrap:anywhere}.row{flex-wrap:wrap;gap:8px}.tabnav{overflow-x:auto}.panel{overflow-wrap:anywhere;min-width:0}form>.button{margin-top:12px}summary{cursor:pointer;color:var(--gold);padding:12px 0}.photo-card{min-width:0}code{overflow-wrap:anywhere}@media(max-width:600px){.runtime-dialog{padding:14px}.runtime-dialog header{top:-14px}.shell{padding:14px 12px 70px}.header{align-items:flex-start;gap:12px}.header h1{font-size:25px}.photo-grid{grid-template-columns:1fr}.tabnav button{flex:none}td,th{padding:6px}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.stat strong{font-size:19px}}
.runtime-dialog{color:var(--ink);background:var(--surface);border:1px solid var(--gold);border-radius:16px;width:min(900px,94vw);max-height:88dvh;padding:22px;overflow:auto}.runtime-dialog::backdrop{background:#000c}.runtime-dialog header{display:flex;justify-content:space-between;gap:20px;position:sticky;top:-22px;background:var(--surface);padding:12px 0;z-index:2}.runtime-dialog button{color:var(--ink);background:var(--surface2);padding:10px;border:1px solid var(--border);border-radius:8px}.rules-text{white-space:pre-wrap}pre{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.6 monospace;max-height:60vh;overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}td,th{text-align:left;padding:10px;border-bottom:1px solid var(--border)}label{display:block;margin:12px 0}input[type=checkbox]{width:auto;display:inline-block;margin-right:8px}input,textarea,select{max-width:100%}textarea[name=package]{min-height:280px;font-family:monospace}.photo-grid img,.chatmsg img{max-width:100%;max-height:260px;object-fit:contain}button{max-width:100%;overflow-wrap:anywhere}.row{flex-wrap:wrap;gap:8px}.tabnav{overflow-x:auto}.panel{overflow-wrap:anywhere;min-width:0}form>.button{margin-top:12px}summary{cursor:pointer;color:var(--gold);padding:12px 0}.photo-card{min-width:0}code{overflow-wrap:anywhere}@media(max-width:600px){.runtime-dialog{padding:14px}.runtime-dialog header{top:-14px}.shell{padding:14px 12px 70px}.header{align-items:flex-start;gap:12px}.header h1{font-size:25px}.photo-grid{grid-template-columns:1fr}.tabnav button{flex:none}td,th{padding:6px}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.stat strong{font-size:19px}}
