:root{color-scheme:dark;--bg:#090f18;--panel:#111b2a;--panel2:#172334;--border:#29394e;--muted:#91a3b6;--white:#eaf3f9;--cyan:#78e0da;--gold:#e8c995;--red:#e89ab1;--shadow:rgba(0,0,0,.33)}
*{box-sizing:border-box}html{height:100%;-webkit-text-size-adjust:100%}body{margin:0;min-height:100%;font-family:system-ui,-apple-system,'Noto Sans KR',sans-serif;background:var(--bg);color:var(--white);font-size:14px}button,input,textarea,select{font:inherit}button{cursor:pointer;color:inherit}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.hidden{display:none!important}.aurora{pointer-events:none;position:fixed;inset:0;background:radial-gradient(circle at 55% -10%,#21486077,transparent 40%),radial-gradient(circle at 90% 65%,#2a29452b,transparent 36%);z-index:-1}.layout{max-width:550px;margin:0 auto;padding:22px 22px 60px}.home-top{font-size:10px;letter-spacing:2px;color:#83a3b9;display:flex;gap:8px;align-items:center}.tiny-dot{width:6px;height:6px;background:#83dbc6;border-radius:50%;box-shadow:0 0 12px #78e0da}.version{margin-left:auto;border:1px solid #375063;border-radius:4px;padding:4px 6px;font-size:8px}.logo{margin-top:27px;font-weight:800;letter-spacing:4px;font-size:10px;color:#b6dee2}.logo-mark{font-size:21px;color:#88e7e5;vertical-align:middle;margin-right:7px}.hero-art{height:190px;display:grid;place-items:center;overflow:hidden;position:relative}.hero-art:after{content:"";position:absolute;bottom:0;width:70%;height:28px;background:#04090fb0;filter:blur(12px)}.portal{width:142px;height:175px;border:7px solid #304358;box-shadow:0 0 0 3px #1b3042,0 0 24px #4ca6aa55,inset 0 0 36px #5fddc544;border-radius:76px 76px 5px 5px;display:grid;place-items:center;position:relative;background:radial-gradient(ellipse,#0b5c6366,#07151e 70%)}.portal:before{content:"";position:absolute;inset:10px;border:1px solid #75b5ba66;border-radius:70px 70px 2px 2px}.portal-core{font-size:49px;color:#c6f5ed;text-shadow:0 0 27px #88e3e6;transform:rotate(45deg)}.portal-label{position:absolute;bottom:14px;font-size:7px;letter-spacing:2px;color:#87d3d3}.eyebrow{margin:0;color:var(--cyan);font-size:11px;letter-spacing:2px;text-align:center}.home h1{font-family:Georgia,serif;font-size:76px;line-height:1.04;text-align:center;letter-spacing:-5px;margin:14px 0 13px;font-weight:700}.home h1 em{font-style:normal;color:var(--cyan)}.lead{text-align:center;line-height:1.8;color:#9caebf;font-size:13px;margin:0 0 29px}.home-cards{display:grid;gap:16px}.card{border:1px solid #3b61707a;background:linear-gradient(145deg,#142536e6,#0d1623);padding:22px;border-radius:14px;box-shadow:0 12px 32px #0002}.card.muted{border-color:#263b4b;background:#111b28b8}.card-h{display:flex;align-items:center;gap:12px;margin-bottom:18px;font-size:16px;font-weight:700}.card-h b{font-size:11px;border:1px solid #467e83;color:#82dcce;padding:6px;border-radius:5px}.card label,.modal label{display:block;color:#a9bacb;font-size:11px;letter-spacing:.4px;margin:11px 0 7px}input,textarea,select{width:100%;color:#ecf8fa;border:1px solid #33465c;background:#0c1420;border-radius:8px;padding:12px 13px;outline:none}textarea{resize:vertical;min-height:56px}.role-select{display:grid;grid-template-columns:1fr 1fr;gap:9px}.role-choice{border:1px solid #2f4358;border-radius:9px;background:#0d1623;padding:12px 5px;color:#95a7b7}.role-choice.active{color:#d9fffb;background:#1d3a42;border-color:#66b9b8}.primary,.secondary{border:0;width:100%;border-radius:9px;padding:14px;margin-top:16px;font-weight:800}.primary{background:linear-gradient(90deg,#80d5ca,#b5e4cf);color:#092127;display:flex;justify-content:center;gap:15px}.primary span{margin-left:auto}.secondary{background:#182a3a;border:1px solid #355063;color:#cae0e7}.hint{color:#889cae;font-size:12px;line-height:1.7}.footer-note{color:#658293;text-align:center;margin-top:24px;font-size:11px}.saved{padding:10px 2px}.saved-title{color:#a8bfd3;margin:15px 0}.saved button{display:block;width:100%;text-align:left;padding:12px;border:1px solid var(--border);border-radius:8px;margin:6px 0;background:#142033}
.game{width:100%;max-width:780px;height:100dvh;margin:0 auto;display:flex;flex-direction:column;background:linear-gradient(#0d1825,#0a111b);border-left:1px solid #1c3240;border-right:1px solid #1c3240}.topbar{height:67px;display:flex;gap:12px;align-items:center;border-bottom:1px solid #263448;padding:10px 15px;flex-shrink:0}.top-title{flex:1;min-width:0}.top-title small{display:block;font-size:9px;letter-spacing:2px;color:#7ecdc8}.top-title strong{display:block;font-size:17px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.square-btn{width:34px;height:36px;border:1px solid #2e4455;background:#182738;border-radius:8px;font-size:20px}.mode-pill{font-size:10px;border:1px solid #3b6f6e;padding:6px 8px;border-radius:20px;color:#88dcda}.game-main{display:flex;flex-direction:column;min-height:0;flex:1}.status-strip{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:13px 15px;color:#9cb0c0;font-size:11px;border-bottom:1px solid #1b2e40}.status-strip b{color:#d4e4ec;font-weight:500}.status-strip .round{font-size:10px;color:#eacb8f;font-weight:800;white-space:nowrap}.tabbar{display:flex;background:#101b2a;padding:4px 10px;border-bottom:1px solid #2b3e52;gap:3px}.tab{flex:1;background:transparent;border:0;border-bottom:2px solid transparent;padding:12px 3px 9px;font-size:12px;color:#7f94a9}.tab.active{color:#9ce8df;border-bottom-color:#88e3d9}.panel{overflow-y:auto;min-height:0;flex:1;padding:18px 16px 23px}.feed{display:flex;flex-direction:column;gap:14px}.event{border-left:2px solid #476378;padding:14px 16px;background:linear-gradient(110deg,#142338d9,#12203090);border-radius:0 9px 9px 0;line-height:1.95;white-space:pre-wrap;word-break:break-word;color:#dbe8ef}.event .event-caption{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1px;color:#8ba7bb;margin-bottom:9px;line-height:1.2}.event.scene{border-color:#65c6be}.event.system{background:transparent;border-color:#293c4c;color:#9aaabd}.event.checkpoint{border-color:#d8bd8b;background:#2c271d;color:#dfcdaa}.event.secret{border-color:#d995a6;background:#312130;color:#f4c9d8}.event.action{border-color:#5c8299;background:#142239;color:#c9dfef}.event img{display:block;width:100%;border-radius:7px;margin-top:8px}.event.reality{border-color:#bca1db}.event .role-name{font-size:11px;color:var(--cyan);display:block;margin-bottom:6px}.feed-empty{color:var(--muted)}.composer{border-top:1px solid #2c4253;background:#111d2ce9;padding:12px 15px max(13px,env(safe-area-inset-bottom));flex-shrink:0}.waiting{font-size:11px;color:#c8d9e4;margin-bottom:7px;min-height:16px}.composer-tools{display:flex;align-items:center;gap:7px;margin-bottom:9px}.tool-button{border:1px solid #32495e;background:#17283b;color:#a9c0cf;border-radius:20px;padding:7px 9px;font-size:11px}.actor{margin-left:auto;font-size:11px;color:#9bdad4;white-space:nowrap}.input-row{display:flex;gap:8px;align-items:stretch}.input-row textarea{flex:1;resize:none;font-size:14px;line-height:1.45;max-height:120px}.send{width:55px;background:#82d8ce;color:#082426;border:0;border-radius:9px;font-weight:900;font-size:24px}.composer-caption{display:block;text-align:center;font-size:10px;color:#748ca1;margin-top:9px}.panel h3{margin:3px 0 13px;color:#d5f3ee;font-size:17px}.stat-card{border:1px solid #293e51;border-radius:11px;background:#131f2f;padding:15px;margin-bottom:12px}.stat-card h4{margin:0 0 11px;font-size:13px}.stat-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #223449;font-size:12px}.stat-row:last-child{border:0}.stat-row span{color:#8ea5b8}.stat-row b{font-weight:500;text-align:right;max-width:65%;word-break:break-word}.list-item{padding:11px 12px;border-bottom:1px solid #273a4d;font-size:13px;line-height:1.5;color:#c7dce8}.map-visual{padding:20px 13px;font-family:monospace;text-align:center;white-space:pre-wrap;line-height:2;background:#101e2a;border:1px dashed #486475;border-radius:10px;color:#b7dfdc}.map-note{margin-top:15px;color:#92a9bb;font-size:12px;line-height:1.8}.overlay{position:fixed;inset:0;background:#081019f2;display:grid;place-items:center;padding:16px;z-index:10;overflow-y:auto}.modal{width:min(100%,440px);background:#142232;border:1px solid #365168;border-radius:18px;padding:22px;box-shadow:0 30px 90px #0009}.modal-heading{display:flex;justify-content:space-between;align-items:center}.modal h2{margin:0}.close-x{border:0;background:transparent;font-size:20px;color:#afc5d4}.modal label{margin-top:19px}.code-box{display:flex;align-items:center;justify-content:space-between;background:#0c1521;padding:9px 13px;border:1px solid #344b5c;border-radius:9px}.code-box strong{font-size:21px;letter-spacing:3px;color:#82e2d4}.code-box button{padding:8px;border:0;background:#1c3e49;border-radius:7px}.toggle{display:flex!important;align-items:center;gap:12px}.toggle input{width:auto}.small-stats{display:flex;gap:15px;margin-top:15px;font-size:12px;color:#acc1d0}.small-stats b{color:#d6eeeb}.secret-page{width:min(100%,560px);min-height:min(97dvh,700px);max-height:97dvh;display:flex;flex-direction:column;padding:24px;background:radial-gradient(circle at 70% 15%,#49334666,transparent 48%),#171321;border:1px solid #775067;border-radius:18px}.secret-page header{display:flex;align-items:center;justify-content:space-between;color:#c99eae;letter-spacing:2px;font-size:10px}.secret-icon{font-size:56px;text-align:center;color:#f2b5c9;margin:18px 0 2px}.secret-title{text-align:center;font-size:27px;line-height:1.25;font-weight:800}.secret-title em{color:#e4a9bf;font-style:normal}.notice{text-align:center;color:#cbadbc;font-size:12px;padding:14px;border:1px solid #614b65;background:#32283b;margin:18px 0;border-radius:8px}.secret-feed{flex:1;overflow:auto;display:flex;flex-direction:column;gap:10px;min-height:130px}.secret-feed .event{background:#312535;border-color:#ba819d;font-size:13px}.secret-compose textarea{border-color:#79516b;background:#201a2a}.secret-compose .primary{background:linear-gradient(100deg,#e4aac5,#d4b4e9);color:#3e1532}.link-btn{margin-top:13px;border:0;background:transparent;color:#bfc9db;padding:11px;width:100%;text-decoration:underline;text-decoration-color:#72879a}.handoff{background:#131f2f;border:1px solid #3d596e;border-radius:18px;padding:40px 28px;text-align:center;width:min(100%,410px)}.handoff-symbol{font-size:67px;color:#a2e7de}.handoff h2{font-size:27px}.handoff p{color:#b2c7d5;line-height:1.9}.toast{position:fixed;bottom:22%;left:50%;transform:translateX(-50%);background:#c5efdf;color:#0b2e2c;border-radius:9px;padding:12px 18px;z-index:30;box-shadow:0 7px 25px #0008;min-width:190px;text-align:center;font-weight:700}@media(min-width:720px){.home{padding-top:36px}.home-cards{grid-template-columns:1fr 1fr}.home.layout{max-width:780px}.hero-art{height:165px}.home h1{font-size:68px}.card{min-height:355px}}@media(max-width:390px){.home h1{font-size:63px}.tool-button{font-size:10px;padding:7px}.actor{font-size:10px}.top-title strong{font-size:15px}}

.story-mode{margin-top:7px}.story-mode .role-choice{font-size:12px}#customStory{margin:10px 0 4px;padding:10px 12px 14px;border:1px solid #315365;border-radius:10px;background:#0c1b2a}#customStory textarea{min-height:68px}
