@charset "UTF-8";
:root{color-scheme:dark;--bg:#141917;--panel:#1c2420;--panel2:#222c26;--ink:#eee9de;--muted:#b0b7a8;--gold:#d9b779;--gold-dark:#b28b4f;--line:#354037;--green:#b5cfaf;--red:#e8a899;--radius:15px;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);line-height:1.55;min-height:100vh}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.43}a{color:var(--gold);text-underline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:4px}button,input,select,textarea{border-radius:8px}button{touch-action:manipulation}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.15;letter-spacing:-.035em}h1{font-size:clamp(2.4rem,5vw,4.8rem);margin-bottom:24px}h2{font-size:2.1rem;margin-bottom:12px}h3{font-size:1rem;font-weight:650;line-height:1.5;margin-bottom:10px}small{font-size:.78rem}.muted{color:var(--muted)}.eyebrow{color:var(--gold);font-size:.7rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;margin-bottom:18px}.page-grain{position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 90% 0,#3c43322b,transparent 55%),radial-gradient(ellipse at 0 80%,#4c392b18,transparent 60%)}.app-shell{width:min(1160px,100% - 64px);margin:auto}.masthead{height:103px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:16px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);font-size:1.05rem;letter-spacing:.09em;font-weight:720}.brand-light{font-weight:350;color:var(--gold)}.brand small{display:block;font-size:.51rem;letter-spacing:.15em;color:var(--muted);margin-top:3px;font-weight:450}.connection{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.76rem}.connection i{height:6px;width:6px;border-radius:50%;background:#b2c1a9;box-shadow:0 0 0 4px #b2c1a910}.connection.offline i{background:var(--red)}.connection.offline{color:var(--red)}.sessionbar{display:flex;justify-content:space-between;align-items:center;padding:25px 0 18px;gap:16px}.sessionbar[hidden]{display:none}.session-title{font-family:Georgia,serif;font-size:1.5rem}.session-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:.78rem;color:var(--muted)}.session-clock{font-variant-numeric:tabular-nums;white-space:nowrap}.badge{display:inline-block;border:1px solid #536349;border-radius:5px;color:#c5d8bb;padding:4px 8px;font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;vertical-align:middle}.badge.amber{border-color:#806944;color:var(--gold)}.badge.neutral{border-color:var(--line);color:var(--muted)}.tabs{display:flex;gap:25px;border-bottom:1px solid var(--line);margin-bottom:34px;overflow-x:auto;scrollbar-width:none}.tabs[hidden]{display:none}.tab{white-space:nowrap;border:0;background:none;color:var(--muted);border-radius:0;padding:16px 2px 15px;position:relative;font-size:.87rem}.tab[aria-current="page"]{color:var(--gold)}.tab[aria-current="page"]:after{content:"";height:2px;bottom:0;left:0;right:0;background:var(--gold);position:absolute}.tab-count{display:inline-block;margin-left:6px;border-radius:10px;padding:0 5px;min-width:19px;background:#34402f;font-size:.7rem;color:#d0ddc5}main{min-height:480px;outline:none}.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;padding:65px 0 70px;align-items:center}.hero-copy{position:relative}.hero p.lead{font-size:1rem;color:var(--muted);max-width:430px;line-height:1.85}.hero h1 em{font-weight:400;color:var(--gold);font-style:italic}.mountain-art{width:100%;max-width:430px;height:155px;opacity:.8;margin:17px 0 8px}.small-rule{height:1px;width:44px;background:var(--gold);margin:27px 0}.login-card{padding:34px;background:linear-gradient(150deg,#273128,#1c2420 80%);border:1px solid #3d483c;border-radius:var(--radius);box-shadow:0 18px 80px #0002}.login-card h2{font-size:1.9rem;margin-bottom:8px}.login-card .muted{font-size:.87rem}.fields{display:grid;gap:18px;margin-top:27px}label{display:block;font-size:.8rem;color:#d4d9cc;font-weight:550;margin-bottom:7px}.field-hint{color:var(--muted);font-size:.73rem;margin:7px 0 0}input,select,textarea{width:100%;background:#121915;color:var(--ink);border:1px solid #455042;padding:12px 13px;min-height:46px;transition:border-color .15s}input::placeholder,textarea::placeholder{color:#828d80}input:focus,select:focus,textarea:focus{border-color:var(--gold);outline:none}textarea{min-height:110px;resize:vertical;line-height:1.6}input.code-input{font-family:ui-monospace,Consolas,monospace;letter-spacing:.12em;text-transform:uppercase}.btn{display:inline-flex;justify-content:center;align-items:center;gap:9px;min-height:45px;padding:11px 18px;background:var(--gold);border:1px solid var(--gold);color:#20241c;font-size:.84rem;font-weight:680;text-decoration:none;transition:background .15s}.btn:hover:not(:disabled){background:#e7c88e}.btn.secondary{background:transparent;border-color:#56634e;color:var(--ink)}.btn.secondary:hover:not(:disabled){background:#2d392c}.btn.danger{border-color:#885a50;background:transparent;color:var(--red)}.btn.small{min-height:35px;padding:7px 11px;font-size:.76rem}.btn.full{width:100%}.text-button{border:0;background:none;color:var(--gold);padding:4px 0;font-size:.76rem;text-decoration:underline;text-underline-offset:4px}.entry-note{display:flex;align-items:flex-start;gap:11px;font-size:.75rem;color:var(--muted);padding:20px 0 0}.entry-note span:first-child{color:var(--gold);font-size:1rem}.footer{margin-top:60px;padding:25px 0 30px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;color:#949f8f;font-size:.7rem}.footer>span:first-child{letter-spacing:.11em;text-transform:uppercase;color:var(--gold);font-size:.62rem}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin:10px 0 26px}.page-heading p{font-size:.86rem;color:var(--muted);margin:8px 0 0;max-width:610px}.page-heading h1{font-size:2.6rem;margin:0}.page-heading .eyebrow{margin-bottom:10px}.grid{display:grid;grid-template-columns:1.3fr 1fr;gap:20px}.stack{display:grid;gap:20px;align-content:start}.card{border:1px solid var(--line);background:var(--panel);padding:25px;border-radius:var(--radius)}.card.warm{background:linear-gradient(120deg,#302e24,#24271f);border-color:#5a513a}.card.secret{border:1px solid #68563e;background:linear-gradient(110deg,#2f2b21,#25281f)}.card .eyebrow{margin-bottom:12px}.card p:last-child{margin-bottom:0}.card .copy{font-size:.9rem;line-height:1.85;white-space:pre-line;overflow-wrap:anywhere}.section-label{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:17px}.section-label h3{margin:0}.card-number{font-family:Georgia,serif;color:var(--gold);font-size:2.6rem;line-height:1}.secret summary{cursor:pointer;color:var(--gold);font-size:.88rem;font-weight:620;padding:0 0 2px;list-style-position:inside}.secret[open] summary{margin-bottom:16px}.secret-hint{font-size:.72rem;color:var(--muted);margin-top:14px}.items{list-style:none;padding:0;margin:0}.items li{padding:13px 0;border-top:1px solid var(--line);font-size:.87rem;line-height:1.6}.items li:first-child{border-top:0;padding-top:0}.items li:last-child{padding-bottom:0}.objectives li{display:flex;gap:11px}.check{color:var(--gold);flex-shrink:0}.check.done{color:var(--green)}.relation-name{font-size:.82rem;color:var(--gold);margin-bottom:3px;font-weight:600}.mini-label{font-size:.7rem;color:var(--muted)}.actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px}.form-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.form-row label{margin-bottom:7px}.empty{padding:35px;text-align:center;border:1px dashed #485442;border-radius:var(--radius);color:var(--muted);font-size:.9rem}.empty strong{display:block;color:var(--ink);font-weight:500;font-size:1rem;margin-bottom:8px}.evidence-list{display:grid;gap:17px;margin-top:22px}.evidence-card header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:15px}.evidence-card header h3{margin:0;font-family:Georgia,serif;font-size:1.35rem;font-weight:400}.evidence-controls{border-top:1px solid var(--line);margin-top:20px;padding-top:20px;display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.evidence-controls .actions{margin:0}.notice,.pending{padding:13px 17px;margin:18px 0;border-radius:9px;font-size:.81rem;border:1px solid #655941;background:#312d20;color:#e7d5b3}.notice.error{border-color:#704e42;background:#30231f;color:#f0c3b6}.notice[hidden],.pending[hidden],.toast[hidden]{display:none}.pending{border-color:#4d6550;background:#222e25;color:#d0dfca}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#e3d4b3;color:#25291f;box-shadow:0 10px 40px #0005;padding:14px 22px;border-radius:10px;z-index:20;max-width:min(560px,calc(100% - 35px));font-size:.84rem}.journal{display:grid;gap:15px}.journal-item{display:grid;grid-template-columns:36px 1fr;gap:17px;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}.journal-index{font-family:Georgia,serif;font-size:1.4rem;color:var(--gold);border-right:1px solid var(--line)}.journal-item p{margin:0;white-space:pre-line;font-size:.9rem;line-height:1.8}.journal-item .eyebrow{margin-bottom:8px}.hint-block{font-size:.78rem;color:var(--muted);padding:14px 0}.people{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.person{padding:19px;border:1px solid var(--line);border-radius:11px;background:var(--panel)}.person-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.person h3{margin:0 0 3px}.person .mini-label{margin-bottom:12px}.person .actions{margin-top:12px}.status-dot{width:7px;height:7px;display:inline-block;border-radius:50%;background:#778170;margin-right:6px}.status-dot.on{background:#b3cd9d}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:22px}.stat{background:var(--panel);border:1px solid var(--line);padding:21px;border-radius:12px}.stat strong{display:block;color:var(--gold);font-family:Georgia,serif;font-size:2rem;font-weight:400;line-height:1.2;margin-bottom:8px}.stat span{font-size:.75rem;color:var(--muted)}.admin-controls{display:flex;flex-wrap:wrap;gap:9px}.invitations{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.invitation{padding:21px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.invitation h3{font-size:.94rem;margin-bottom:7px}.invitation-code{display:block;font-family:ui-monospace,Consolas,monospace;color:var(--gold);font-size:.9rem;letter-spacing:.05em;overflow-wrap:anywhere;padding:12px 0}.invitation .actions{margin-top:8px}.log-list{list-style:none;padding:0;margin:0}.log-list li{display:flex;gap:16px;padding:14px 0;border-bottom:1px solid var(--line);font-size:.81rem}.log-list time{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:20px}.divider{height:1px;background:var(--line);margin:22px 0}.print-only{display:none}.skip-link{position:absolute;top:-100px;left:10px;z-index:99;background:var(--gold);color:var(--bg);padding:12px}.skip-link:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.waiting-stripe{margin-bottom:24px;padding:14px 18px;background:#242d24;border-left:2px solid var(--gold);font-size:.84rem;color:#cad4c2}.debrief-list{display:grid;gap:16px}.debrief-person{border-top:1px solid var(--line);padding-top:18px}.debrief-person:first-child{border-top:0;padding-top:0}.debrief-person h3{margin-bottom:8px}.debrief-person p{font-size:.82rem;color:var(--muted);white-space:pre-line}.inline-note{font-size:.76rem;color:var(--muted);margin-top:10px}.rsvp{font-size:.73rem;color:var(--gold)}
@media(min-width:1400px){.hero{padding-top:85px;padding-bottom:85px}}@media(max-width:900px){.hero{gap:35px}.grid{grid-template-columns:1fr 1fr}.invitations{grid-template-columns:repeat(2,1fr)}.stats{grid-template-columns:repeat(2,1fr)}.evidence-controls{grid-template-columns:1fr}.login-card{padding:26px}.app-shell{width:calc(100% - 40px)}}@media(max-width:650px){.app-shell{width:calc(100% - 32px)}.masthead{height:82px}.brand{font-size:.92rem;gap:9px}.brand img{width:31px;height:31px}.brand small{font-size:.43rem}.connection{font-size:.65rem;max-width:105px}.hero{grid-template-columns:1fr;gap:25px;padding:38px 0 10px}.hero h1{font-size:2.7rem;margin-bottom:16px}.hero-copy p.lead{font-size:.9rem;line-height:1.7;margin-bottom:0}.mountain-art{display:none}.small-rule{margin:19px 0}.hero .eyebrow{margin-bottom:16px}.login-card{padding:25px 21px}.sessionbar{align-items:flex-start;padding-top:21px}.session-title{font-size:1.18rem}.session-meta{font-size:.67rem;gap:7px}.session-clock{font-size:.75rem}.tabs{gap:24px;margin-bottom:26px;margin-right:-16px;padding-right:16px}.tab{padding-top:9px;font-size:.82rem}.page-heading{margin-bottom:22px;gap:12px}.page-heading h1{font-size:2.15rem}.page-heading p{font-size:.81rem}.page-heading .btn{font-size:.73rem;padding:9px 10px}.grid,.two-cols{grid-template-columns:1fr;gap:16px}.stack{gap:16px}.card{padding:21px}.card .copy{font-size:.88rem}.people{grid-template-columns:1fr}.invitations{grid-template-columns:1fr}.stats{gap:10px}.stat{padding:16px}.stat strong{font-size:1.8rem}.journal-item{padding:19px;gap:12px;grid-template-columns:28px 1fr}.journal-item p{font-size:.84rem}.journal-index{font-size:1.2rem}.footer{margin-top:38px;align-items:flex-start;flex-wrap:wrap;gap:12px;font-size:.64rem}.footer>span:nth-child(2){max-width:180px;text-align:right;margin-left:auto}.footer .text-button{flex-basis:100%;text-align:left}.form-row{grid-template-columns:1fr}.form-row .btn{width:100%}.evidence-card header{align-items:flex-start}.evidence-card header h3{font-size:1.2rem}.evidence-controls .actions{flex-wrap:wrap}.notice,.pending{font-size:.77rem}.toast{bottom:calc(17px + env(safe-area-inset-bottom))}.entry-note{font-size:.72rem}.sessionbar>div:last-child{text-align:right}input,select,textarea{font-size:16px}.rsvp{font-size:.7rem}}
.small-copy{font-size:.75rem}.no-margin{margin:0!important}.no-bottom{margin-bottom:0!important}.no-top{margin-top:0!important}.toast.error{background:#efc2b5}.scanner-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:10px}.photo-button{cursor:pointer;margin:0}.photo-button:has(input:disabled){opacity:.43;cursor:not-allowed}.scanner-dialog{width:min(550px,calc(100% - 32px));padding:26px;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:15px;box-shadow:0 30px 100px #0008}.scanner-dialog::backdrop{background:#08100bd9}.scanner-dialog h2{font-size:1.8rem}.scanner-dialog p{color:var(--muted);font-size:.84rem}.scanner-dialog video{width:100%;max-height:55vh;object-fit:contain;background:#080c09;border-radius:10px;display:block;margin-bottom:20px}.scanner-dialog button{width:100%;min-height:44px;background:var(--gold);color:#20241c;font-weight:600;border:1px solid var(--gold);padding:10px 16px}
.confirmation-dialog{width:min(500px,calc(100% - 32px));padding:30px;background:var(--panel);color:var(--ink);border:1px solid #61563e;border-radius:15px;box-shadow:0 30px 100px #0008}.confirmation-dialog::backdrop{background:#08100bdd}.confirmation-dialog h2{font-size:1.9rem}.confirmation-dialog>p:not(.eyebrow){color:var(--muted);font-size:.9rem;line-height:1.8}.confirmation-dialog .actions{justify-content:flex-end;gap:12px;margin-top:26px}.confirmation-dialog textarea{font: .83rem/1.8 ui-monospace,Consolas,monospace;min-height:160px}.confirmation-dialog .eyebrow{margin-bottom:14px}
@media(max-width:500px){.confirmation-dialog{padding:24px}.confirmation-dialog .actions{flex-direction:column-reverse}.confirmation-dialog .btn{width:100%}}
.evidence-linked,.original-controls{border-top:1px solid var(--line);padding-top:20px;margin-top:22px}.evidence-linked .eyebrow,.original-controls .eyebrow{margin-bottom:10px}.evidence-linked .actions{margin-top:0}.original-controls .form-row{margin-top:16px}.original-controls .inline-note{margin-top:0}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.session-tools{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 20px;margin-bottom:26px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}.session-tools p{font-size:.8rem;color:var(--muted);margin:0;max-width:570px}.session-tools .btn{flex-shrink:0}.saved-sessions,.recovery-panel{margin-top:24px}.saved-sessions li{display:flex;align-items:center;justify-content:space-between;gap:18px}.saved-sessions .inline-note{margin:0 0 20px}.recovery-panel summary,.debrief-secret summary{cursor:pointer;color:var(--gold);font-size:.88rem;line-height:1.6}.recovery-panel .fields{max-width:520px}.debrief-secret{margin:16px 0}.debrief-secret .copy{font-size:.84rem}.debrief-person>.badge{margin:0 0 8px}.debrief-person .objectives{margin-top:18px}
@media(max-width:650px){.session-tools{align-items:stretch;flex-direction:column;padding:17px}.saved-sessions li{align-items:flex-start;flex-direction:column;gap:10px}}
@media print{@page{size:A4;margin:12mm}body{background:white;color:black}.app-shell,.page-grain,.toast{display:none!important}.print-only{display:block!important;font:12pt Georgia,serif}.print-head{margin-bottom:12mm;font-size:18pt}.print-cards{display:grid;grid-template-columns:1fr 1fr;gap:8mm}.print-card{break-inside:avoid;border:1px dashed #777;padding:8mm;min-height:50mm}.print-card h2{font-size:16pt;letter-spacing:0}.print-card p{font-size:10pt;margin:4mm 0}.print-card code{font:bold 11pt monospace;overflow-wrap:anywhere}.print-card .print-code{font-size:14pt}.print-card small{font-size:9pt}}
.alliance-alert{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:45;width:min(420px,calc(100vw - 36px));max-height:70dvh;overflow:auto;padding:22px;background:#27382f;border:1px solid var(--gold);border-radius:16px;box-shadow:0 15px 60px #0009;color:var(--ink)}
.alliance-alert[hidden]{display:none}.alliance-alert h2{font-size:1.15rem;margin:0 0 10px}.alliance-alert p{font-size:.9rem;line-height:1.55;margin:0 0 14px}.alliance-alert .alliance-alert-terms{font-size:.8rem;border-top:1px solid var(--line);padding-top:12px}.alliance-alert .actions{gap:10px}.alliance-alert .text-button{padding:10px}
@media print{.alliance-alert{display:none!important}}
.invitation-dialog{text-align:center}.invitation-qr{display:block;background:white;max-width:100%;height:auto;margin:14px auto}.invitation-dialog p{max-width:370px;margin:14px auto}.invitation-codes{border:1px solid var(--line);padding:14px;border-radius:10px}.invitation-codes summary,.invitation summary{color:var(--muted);cursor:pointer;font-size:.8rem}.invitation-codes>div{margin-top:16px}.invitation details{margin-top:15px}
@media print{.print-card .invitation-qr{width:48mm;height:48mm;margin:4mm auto}}
.workshop{max-width:1050px;margin:0 auto;padding:35px 22px}.workshop header{max-width:750px;margin-bottom:30px}.workshop header p{line-height:1.65;color:var(--muted)}.workshop-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:20px}.workshop-card{border:1px dashed var(--line);border-radius:12px;padding:22px;text-align:center;break-inside:avoid}.workshop-qr{max-width:230px;margin:auto;background:white}.workshop-qr svg{display:block;width:100%;height:auto}.workshop-code{font:bold 22px ui-monospace,monospace;letter-spacing:.1em;color:var(--gold)}.workshop-card>p:last-child{font-size:.87rem;line-height:1.5}.workshop-card h2{font-size:1.7rem}
@media print{.workshop{padding:0}.workshop header>p:not(.eyebrow),#print-workshop,.no-print{display:none}.workshop header{margin-bottom:5mm}.workshop h1{font-size:20pt}.workshop-cards{display:grid;grid-template-columns:1fr 1fr;gap:8mm}.workshop-card{border-color:#777;padding:7mm;color:black}.workshop-code{color:black}.workshop-qr{width:42mm}.workshop-card h2{font-size:16pt}}
