:root{--ink:#191b34;--blue:#6e79ed;--red:#f07072;--yellow:#f5dc76}*{box-sizing:border-box}html{-webkit-tap-highlight-color:transparent}body{margin:0;min-height:100vh;color:#fff;background:radial-gradient(circle at 75% 12%,#353d71 0,#191b34 34%,#101120 100%);font-family:ui-rounded,"SF Pro Rounded","PingFang SC",system-ui,sans-serif}.stars{position:fixed;inset:0;opacity:.4;pointer-events:none;background-image:radial-gradient(#fff 1px,transparent 1px);background-size:57px 57px}.app{position:relative;width:min(980px,calc(100% - 24px));margin:auto;padding:24px 0 65px}header{display:flex;justify-content:space-between;align-items:center}header span{color:#9ca8ff;font-size:9px;font-weight:900;letter-spacing:.18em}h1{margin:3px 0 0;font:700 34px Georgia,"Songti SC",serif}header button{padding:10px 13px;border:1px solid rgba(255,255,255,.17);border-radius:12px;color:#fff;background:rgba(255,255,255,.06);font-weight:800;cursor:pointer}.alert{display:flex;align-items:center;gap:12px;margin-top:20px;padding:13px 16px;border:1px solid rgba(240,112,114,.4);border-radius:16px;background:rgba(240,112,114,.1)}.alert>i{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--red);font-weight:900;font-style:normal}.alert small,.alert strong{display:block}.alert small{color:#e9a7a9;font-size:8px}.alert strong{font-size:12px}.alert>span{margin-left:auto;color:var(--yellow);font:800 14px monospace}.dashboard{display:grid;grid-template-columns:1.25fr .75fr;gap:13px;margin-top:14px}.ship,.casefile,.clues,.meeting{border:1px solid rgba(255,255,255,.1);border-radius:21px;background:rgba(255,255,255,.055);backdrop-filter:blur(10px)}.ship{padding:17px}.ship-title{display:flex;justify-content:space-between}.ship-title small,.ship-title strong{display:block}.ship-title small,.casefile>small,.meeting small{color:#8f9ae6;font-size:8px;font-weight:900;letter-spacing:.12em}.ship-title strong{margin-top:2px}.ship-title>span{color:#b8c0f1;font-size:11px}.rooms{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:14px}.room{min-height:130px;padding:14px;border:1px solid rgba(255,255,255,.11);border-radius:15px;color:#fff;background:rgba(255,255,255,.05);text-align:left;cursor:pointer}.room.done{border-color:#5ecb8b;background:rgba(94,203,139,.11)}.room i{display:grid;width:34px;height:34px;place-items:center;border-radius:10px;background:rgba(255,255,255,.09);font-style:normal;font-size:18px}.room strong,.room span{display:block}.room strong{margin-top:13px;font-size:12px}.room span{margin-top:4px;color:#9b9eb7;font-size:9px;line-height:1.5}.casefile{padding:17px}.casefile h2,.meeting h2{margin:4px 0 9px;font:700 23px Georgia,serif}.casefile p{min-height:48px;margin:13px 0 0;color:#aaadc0;font-size:10px;line-height:1.65}.progress{height:6px;overflow:hidden;border-radius:99px;background:rgba(255,255,255,.08)}.progress i{display:block;width:0;height:100%;background:#62d494;transition:.3s}.clues{min-height:175px;margin-top:13px;padding:15px}.clue{padding:10px;border-left:3px solid var(--yellow);background:rgba(245,220,118,.07);font-size:9px;line-height:1.55}.clue+.clue{margin-top:7px}.empty-clue{color:#777b96;text-align:center;font-size:10px;margin-top:60px}.meeting{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:13px;padding:20px}.meeting p{max-width:420px;margin:0;color:#9fa2b7;font-size:10px}.suspects{display:flex;gap:8px}.suspect{min-width:75px;padding:10px 6px;border:1px solid rgba(255,255,255,.1);border-radius:14px;color:#fff;background:rgba(255,255,255,.06);cursor:pointer}.suspect:disabled{opacity:.35}.crew{position:relative;width:29px;height:39px;margin:auto;border-radius:45% 45% 10px 10px;background:var(--crew);box-shadow:inset -6px 0 rgba(0,0,0,.16)}.crew:after{content:"";position:absolute;width:18px;height:11px;right:-5px;top:8px;border:2px solid #d6f5ff;border-radius:7px;background:#6e9fb4}.suspect span{display:block;margin-top:7px;font-size:9px}.modal{position:fixed;z-index:5;inset:0;display:grid;place-items:center;padding:20px;background:rgba(7,8,18,.76);backdrop-filter:blur(8px)}.hidden{display:none}.modal>div{width:min(360px,100%);padding:30px;border-radius:25px;color:var(--ink);background:#fff;text-align:center}.modal>div>span{width:60px;height:60px;display:grid;place-items:center;margin:auto;border-radius:50%;color:#fff;background:#67c98c;font-size:29px}.modal small{display:block;margin-top:13px;color:#8e8c9b;font-size:8px;letter-spacing:.13em}.modal h2{margin:6px 0;font:700 28px Georgia,serif}.modal p{color:#727281;font-size:11px;line-height:1.7}.modal button{width:100%;padding:13px;border:0;border-radius:13px;color:#fff;background:var(--blue);font-weight:900;cursor:pointer}@media(max-width:700px){.app{padding-top:17px}.dashboard{grid-template-columns:1fr}.clues{min-height:110px}.empty-clue{margin-top:30px}.meeting{display:block}.suspects{display:grid;grid-template-columns:repeat(4,1fr);margin-top:16px}.suspect{min-width:0;padding-inline:3px}.meeting p{font-size:9px}}@media(max-width:380px){.rooms{gap:6px}.room{padding:10px}.suspects{gap:5px}}
