:root{--black:#090b09;--ink:#f8f5dc;--muted:#afb7a4;--lime:#caed39;--acid:#e5f44d;--green:#194a36;--deep:#10271d;--red:#e95d43;--paper:#edf0d8;--line:#7f8c5e}*{box-sizing:border-box}body{margin:0;background:#020302;color:var(--ink);font-family:Arial,"Hiragino Sans","Yu Gothic",sans-serif}.shell{max-width:700px;min-height:100vh;margin:auto;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% -12%,#2b694b 0,transparent 44%),linear-gradient(155deg,#0c1710 0%,#08110c 48%,#162c1e 100%)}.shell:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.18;background:repeating-linear-gradient(130deg,transparent 0 23px,#d6f66d 24px 25px,transparent 26px 58px),radial-gradient(circle at 15% 76%,#caf443 0 1px,transparent 2px);background-size:auto,17px 17px}header,.content,.bottom-nav{position:relative;z-index:1}header{padding:calc(17px + env(safe-area-inset-top)) 20px 13px;display:flex;align-items:center;justify-content:space-between;border-bottom:3px solid var(--lime);background:#090d0aef}.brand{display:flex;align-items:center;gap:8px;font-family:Impact,"Arial Black",Arial,sans-serif;font-size:23px;letter-spacing:-.04em;color:#fff;text-transform:uppercase}.brand small{font:800 8px Arial,sans-serif;letter-spacing:.15em;color:var(--lime);align-self:center}.brand-crest{display:grid;place-items:center;width:30px;height:30px;background:var(--lime);clip-path:polygon(50% 0,100% 18%,78% 100%,22% 100%,0 18%);color:#0b130d;font-size:15px;text-shadow:1px 1px #fff8}.profile{width:36px;height:36px;border:2px solid var(--lime);border-radius:3px;background:#101a11;color:var(--lime);font-weight:900}.content{padding:13px 15px 108px}.eyebrow{font:800 10px Arial,sans-serif;letter-spacing:.12em;color:var(--lime);margin:5px 2px 6px}h1{margin:0 1px 18px;font-family:Impact,"Arial Black",Arial,sans-serif;font-size:33px;letter-spacing:.025em;line-height:1;color:#fff;text-transform:uppercase;text-shadow:4px 4px 0 #123a28}h2{margin:30px 1px 2px;font-family:Impact,"Arial Black",Arial,sans-serif;font-size:22px;letter-spacing:.04em;text-transform:uppercase;color:#fff}h2 span{color:var(--lime);margin-right:5px}.section-note{margin:0 2px 11px;color:var(--muted);font-size:12px}.hero{position:relative;overflow:hidden;border:2px solid var(--lime);border-radius:2px;background:linear-gradient(145deg,#182d20,#112018 56%,#316142);padding:15px 16px 12px;box-shadow:8px 8px 0 #050605}.hero:before{content:"";position:absolute;inset:0;opacity:.4;background:repeating-linear-gradient(-48deg,transparent 0 29px,#d7f66712 30px 33px,transparent 34px 60px)}.hero:after{content:"CLASSIFIED";position:absolute;right:-20px;bottom:14px;transform:rotate(-24deg);font:900 15px Impact,"Arial Black",sans-serif;letter-spacing:.11em;color:#d7f34f1c}.hero-stars{position:absolute;top:8px;right:11px;color:var(--lime);font-family:Impact,sans-serif;font-size:14px;letter-spacing:4px}.adventurer{position:relative;display:flex;align-items:center;gap:10px}.avatar{display:grid;place-items:center;width:48px;height:48px;border:2px solid var(--lime);border-radius:50%;background:#090c09;color:var(--lime);font-size:22px;box-shadow:0 0 0 5px #cbed3926}.adventurer small,.adventurer strong,.adventurer span{display:block}.adventurer small{font-size:9px;letter-spacing:.12em;color:var(--lime);font-weight:900}.adventurer strong{margin:2px 0;font-family:Impact,"Arial Black",sans-serif;font-size:19px;letter-spacing:.04em}.adventurer span{font-size:11px;color:#d7dccd}.level{margin-left:auto;width:52px;height:52px;display:grid;place-content:center;text-align:center;border:2px solid var(--acid);transform:rotate(8deg);background:#111;color:var(--acid);box-shadow:4px 4px 0 #000}.level b{font:900 8px Arial,sans-serif;letter-spacing:.1em}.level em{font:900 24px Impact,"Arial Black",sans-serif;font-style:normal;line-height:.9}.hero-rule{position:relative;height:4px;margin:14px 0 10px;background:repeating-linear-gradient(-45deg,var(--lime) 0 7px,#101910 8px 14px)}.progress-label{position:relative;display:flex;justify-content:space-between;font:900 10px Arial,sans-serif;letter-spacing:.08em;color:#f3ffd1}.progress{position:relative;height:9px;margin-top:6px;background:#050705;border:1px solid #86a62d;overflow:hidden}.progress i{display:block;height:100%;background:repeating-linear-gradient(-45deg,#d9f941 0 7px,#94bd29 8px 14px);box-shadow:0 0 14px #d8ff41}.hero-footer{position:relative;margin:10px 0 0;font-size:11px;color:#d7dfca}.hero-footer b{color:var(--lime);font-size:14px}.notice{display:flex;gap:10px;align-items:flex-start;margin-bottom:13px;padding:12px;border-left:5px solid var(--lime);background:#263022;color:#edffd5;font-size:13px;line-height:1.5}.notice button{margin-left:auto;border:0;background:none;color:var(--lime);font:inherit;text-decoration:underline;white-space:nowrap}.task-list{display:grid;gap:10px}.task{width:100%;border:2px solid #dce5bd;border-radius:2px;background:linear-gradient(105deg,#f1f3db 0%,#e5ead0 70%,#cbd7ac 100%);padding:10px;color:#10170f;text-align:left;font-family:Arial,"Hiragino Sans","Yu Gothic",sans-serif;box-shadow:5px 5px 0 #030403}.quest-card{display:flex;align-items:center;gap:10px}.task:active{transform:translate(2px,2px);box-shadow:2px 2px 0 #030403}.quest-card.high{border-left:7px solid var(--red)}.quest-card.medium{border-left:7px solid #f2c733}.quest-card.low{border-left:7px solid #62bd86}.quest-rank{flex:none;display:grid;place-items:center;width:34px;height:34px;clip-path:polygon(50% 0,100% 22%,83% 100%,17% 100%,0 22%);background:#101d12;color:var(--lime);font:900 20px Impact,"Arial Black",sans-serif;transform:rotate(-4deg)}.task-main{min-width:0;flex:1}.task-top,.meta{display:flex;align-items:center;gap:7px}.task-top{justify-content:space-between}.priority{font:900 9px Arial,sans-serif;letter-spacing:.09em;padding:3px 5px;color:#fff}.priority.high{background:var(--red)}.priority.medium{background:#b38614}.priority.low{background:#31825b}.reward{font:900 10px Arial,sans-serif;color:#445c18;white-space:nowrap}.task h3{margin:6px 0;font-family:Impact,"Arial Black",Arial,sans-serif;font-size:17px;letter-spacing:.015em;line-height:1.18}.meta{font-size:11px;color:#4b5546;flex-wrap:wrap}.dot:before{content:"·";font-weight:bold;margin-right:6px}.chevron{font:900 29px Impact,"Arial Black",sans-serif;color:#365924}.empty{padding:31px 20px;border:2px dashed var(--lime);background:#142117;color:#e8f7cc;text-align:center;font-weight:bold}.bottom-nav{position:fixed;z-index:3;bottom:0;left:0;right:0;max-width:700px;margin:auto;padding:8px 29px calc(9px + env(safe-area-inset-bottom));display:flex;justify-content:space-around;background:#090d0af3;border-top:3px solid var(--lime);box-shadow:0 -8px 22px #0009}.bottom-nav button{border:0;background:none;color:#a9b3a1;font:900 10px Arial,sans-serif;padding:4px 19px;letter-spacing:.03em}.bottom-nav button.active{color:var(--lime)}.bottom-nav span{display:block;font:900 20px Impact,"Arial Black",sans-serif;margin-bottom:2px}.back{border:0;background:none;color:var(--lime);font:900 13px Arial,sans-serif;padding:4px 0}.detail-title{margin:15px 0;font-family:Impact,"Arial Black",Arial,sans-serif;font-size:28px;letter-spacing:.02em;line-height:1.2;color:#fff}.detail-meta{font-size:13px;line-height:1.7;color:var(--muted)}.panel{border:2px solid #dce5bd;border-left:7px solid var(--lime);border-radius:2px;padding:14px;margin:13px 0;background:var(--paper);color:#152014;box-shadow:4px 4px 0 #030403}.panel h2{margin:0 0 8px;font-family:Impact,"Arial Black",Arial,sans-serif;font-size:14px;color:#294a21}.panel p{margin:0;font-size:14px;line-height:1.65}.message{border-left:3px solid #9caf4d;padding-left:11px;color:#495344}.actions{display:grid;gap:10px;margin-top:22px}.button{display:block;border:2px solid transparent;border-radius:2px;padding:14px;font:900 15px Arial,"Hiragino Sans","Yu Gothic",sans-serif;text-align:center;cursor:pointer;text-decoration:none}.button.primary{border-color:#efff94;background:var(--lime);color:#0d150d;box-shadow:5px 5px 0 #000}.button.secondary{border-color:#dbe6b9;background:#303c2b;color:#efffd1}.admin-card{border:2px solid #99b547;background:#142218;padding:17px;margin:12px 0;box-shadow:5px 5px 0 #020402}.admin-card h2{margin:0 0 8px;font-size:20px}.admin-card p{color:var(--muted);font-size:14px;line-height:1.55}.status{font-size:13px;font-weight:900}.status.yes{color:var(--lime)}.status.no{color:#f2d15c}.setup{padding-top:23px}.setup .brand-mark{display:grid;place-items:center;width:54px;height:54px;background:var(--lime);clip-path:polygon(50% 0,100% 22%,83% 100%,17% 100%,0 22%);color:#0c150d;font:900 26px Impact,"Arial Black",sans-serif;box-shadow:5px 5px 0 #000}.setup h1{margin-top:18px}.checklist{list-style:none;padding:0;margin:24px 0}.checklist li{padding:12px 0;border-bottom:1px solid #a4bf5140;font-size:14px;line-height:1.5}.checklist li:before{content:"×";color:var(--lime);font:900 18px Impact,"Arial Black",sans-serif;margin-right:10px}.toast{position:fixed;z-index:5;left:50%;bottom:87px;transform:translateX(-50%) rotate(-2deg);border:2px solid #efff94;background:var(--lime);color:#0e170e;padding:12px 18px;font:900 13px Arial,sans-serif;white-space:nowrap;box-shadow:5px 5px 0 #000}@media(min-width:701px){body{background:#020302}.shell{box-shadow:0 0 50px #000}}
.invite-form{display:grid;gap:16px;margin:20px 0}.invite-form label{display:grid;gap:8px;font-size:14px;line-height:1.6}.invite-form input:not([type=checkbox]),.invite-form select,.invite-form textarea{width:100%;min-height:44px;padding:10px;border:1px solid #a5bc73;border-radius:3px;background:#f6f8e9;color:#132013;font:inherit}.invite-form textarea{min-height:80px}.invite-form fieldset{min-width:0;display:grid;gap:10px;padding:14px;border:1px solid #91ab4d}.panel .detail-meta{color:#45513d}.panel .button{margin-top:12px}.review-label{font-weight:bold;color:#566921}.invite-link code{display:block;overflow-wrap:anywhere}.toast{white-space:normal;max-width:90vw;width:max-content}.button:disabled{opacity:.5;cursor:wait}.hero .meta{color:#e7edda}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #ffc857;outline-offset:3px}
/* Shared overview: compact rows, Slack as the editing surface. */
.team-overview{padding-top:20px}.overview-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:9px}.overview-heading h1{margin:0;font-size:29px;line-height:1.2}.team-overview>.section-note{line-height:1.7;margin-bottom:16px}.refresh-board{flex:none;border:1px solid #a0b965;background:#14251a;color:var(--lime);font:700 12px inherit;padding:10px;border-radius:3px;cursor:pointer}.attention-strip{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;background:linear-gradient(120deg,#263a1e,#163320);border:1px solid var(--lime);border-left:5px solid var(--lime);box-shadow:5px 5px 0 #000}.attention-strip small{display:block;color:var(--lime);font-size:9px;letter-spacing:.18em;font-weight:900}.attention-strip strong{display:block;font-size:19px;margin-top:3px}.attention-strip b{font:900 37px Impact,Arial,sans-serif;color:var(--lime);padding:0 5px}.attention-strip strong span{font-size:12px}.attention-strip p{font-size:11px;line-height:1.7;color:#c9d4b8;margin:0}.board-filters{display:flex;flex-wrap:wrap;gap:6px;margin:18px 0 12px}.board-filters button{display:flex;align-items:center;gap:8px;border:1px solid #577342;border-radius:3px;padding:8px 9px;background:#101c13;color:#c4ccb8;font-weight:700;font-size:11px;cursor:pointer}.board-filters b{font-size:12px;color:#f1f5e2}.board-filters button.active{background:var(--lime);border-color:var(--lime);color:#172014}.board-filters button.active b{color:#172014}.sync-status{display:flex;justify-content:space-between;flex-wrap:wrap;gap:5px;font-size:10px;color:#aebca2;margin:10px 0}.sync-warning{border-left:3px solid #d0aa3c;padding:10px 12px;background:#3c342044;font-size:11px;color:#edd89e;line-height:1.6;margin:10px 0 17px}.sync-warning summary{cursor:pointer;font-weight:700}.sync-warning p{margin:5px 0 0}.project-stack{display:grid;gap:13px;margin-top:16px}.project-card{border:1px solid #648b50;background:#0f2016;box-shadow:4px 4px 0 #000;min-width:0}.project-card>summary{display:flex;align-items:center;gap:11px;list-style:none;cursor:pointer;padding:16px 13px;background:linear-gradient(115deg,#1c3b25,#12271c)}.project-card>summary::-webkit-details-marker{display:none}.project-number{font:900 20px Impact,Arial,sans-serif;color:#afce49;border-bottom:3px solid #afce49;padding-bottom:3px}.project-name{min-width:0;flex:1}.project-name strong{display:block;font-size:16px;line-height:1.5;overflow-wrap:anywhere}.project-name small{display:block;font-size:10px;color:#b3c29d;margin-top:4px}.project-expand{font-size:19px;color:var(--lime)}.project-card[open] .project-expand{transform:rotate(45deg)}.project-task-list{background:#edf0dd;color:#172416}.team-task-row{padding:16px 14px;border-top:1px solid #c4ceb1}.team-task-row:nth-child(even){background:#e1e8ce}.row-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.row-heading h3{font-size:15px;line-height:1.5;margin:0;font-weight:800;overflow-wrap:anywhere}.report-status{flex:none;padding:4px 6px;background:#d5ddc5;font-size:10px;line-height:1.5;font-weight:700;border-radius:2px;color:#566044}.status-working{background:#d9e6aa;color:#415511}.status-blocked{background:#f2d2b9;color:#953c19}.status-done{background:#c6dec7;color:#215b2c}.row-source{font-size:10px;color:#626e52;margin:4px 0 12px}.assignment-line{display:grid;grid-template-columns:minmax(70px,1fr) 2fr;gap:3px 10px;font-size:12px;line-height:1.5;padding:6px 0;border-top:1px solid #c6cfb4}.assignment-line strong{overflow-wrap:anywhere}.assignment-line>span{overflow-wrap:anywhere}.assignment-report{grid-column:2;color:#637344;font-size:11px}.row-unknown{font-size:11px;color:#6e785f;margin:7px 0}.row-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:9px;margin-top:12px;font-size:11px;color:#48523c}.slack-thread-link{color:#173d20;border:1px solid #708a59;padding:7px 10px;font-size:11px;font-weight:800;text-decoration:none;background:#f8faed;border-radius:2px}.is-overdue{color:#a63b28;font-weight:800}.report-caption{font-size:9px;line-height:1.6;color:#6b795b;margin:10px 0 0}.report-evidence{font-size:11px;margin-top:8px;color:#485b38}.report-evidence summary{cursor:pointer}.report-evidence blockquote{margin:6px 0;padding:6px 9px;border-left:2px solid #97ad6a;white-space:pre-wrap;overflow-wrap:anywhere}.link-project-button{background:none;border:0;border-bottom:1px dashed #7d9060;padding:4px 0;margin-top:10px;color:#526840;font-size:10px;cursor:pointer;text-align:left}.board-footnote{font-size:10px;line-height:1.8;color:#a9ba97;margin:18px 0}.bottom-nav{padding-left:8px;padding-right:8px}.bottom-nav button{padding:4px 12px}.project-link-dialog{width:min(94vw,520px);max-height:85vh;overflow:auto;background:#10271d;color:#f1f5e5;border:2px solid var(--lime);padding:20px;border-radius:3px;box-shadow:8px 8px 0 #0009}.project-link-dialog::backdrop{background:#000a}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.dialog-heading h2{margin:0;font-size:20px}.dialog-heading button{background:none;border:0;color:var(--lime);font-size:26px;cursor:pointer}.project-link-dialog p{font-size:12px;line-height:1.7;color:#c1cbb3}.link-task-options{margin:16px 0;padding:10px;border:1px solid #708a51;max-height:230px;overflow:auto}.link-task-options legend{font-size:12px}.link-task-options label{display:flex;align-items:flex-start;gap:9px;font-size:12px;line-height:1.6;padding:8px 0;border-bottom:1px solid #4d694033}.link-task-options input{margin-top:5px;accent-color:var(--lime)}.link-task-options small{display:block;font-size:10px;color:#adc097}.link-field{display:grid;gap:7px;margin:12px 0;font-size:12px}.link-field[hidden]{display:none}.link-field input,.link-field select{min-width:0;width:100%;padding:11px;color:#152311;background:#edf2dc;border:1px solid #90a56b;font:inherit}.project-link-dialog .link-result{color:#ffd395}summary:focus-visible{outline:3px solid #ffc857;outline-offset:3px}@media(max-width:380px){.overview-heading h1{font-size:25px}.brand{font-size:20px}.attention-strip{padding:12px}.report-status{font-size:9px}.row-heading{gap:5px}.team-task-row{padding:13px 10px}.bottom-nav button{padding:4px 8px}}
