.agp-launcher{position:fixed;z-index:240;width:54px;height:54px;color:#f8fafc;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1;pointer-events:none}.agp-launcher *,.agp-launcher *:before,.agp-launcher *:after{box-sizing:border-box}.agp-launcher__button,.agp-launcher__item{margin:0;padding:0;border:0;font:inherit;-webkit-tap-highlight-color:transparent}.agp-launcher__button{position:relative;display:grid;width:54px;min-width:54px;height:54px;min-height:54px;place-items:center;overflow:visible;border:1px solid rgba(255,221,156,.58);border-radius:16px;background:#192238;box-shadow:0 12px 28px #0307126b,0 0 0 1px #070c18b8;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;pointer-events:auto;transition:box-shadow .16s ease,transform .16s ease,border-color .16s ease}.agp-launcher__button:after{content:"";position:absolute;right:-2px;bottom:-2px;width:12px;height:12px;border:2px solid #192238;border-radius:999px;background:#e7b760;box-shadow:0 0 10px #e7b7609e}.agp-launcher--registered .agp-launcher__button:after{background:#8ed4ff;box-shadow:0 0 10px #8ed4ffb8}.agp-launcher--dragging .agp-launcher__button{cursor:grabbing;transform:scale(1.045)}.agp-launcher--open .agp-launcher__button{border-color:#ffdea0f0;box-shadow:0 16px 36px #03071280,0 0 0 4px #e7b7601f}.agp-launcher__button:focus-visible,.agp-launcher__item:focus-visible{outline:3px solid #8ed4ff;outline-offset:3px}.agp-launcher__logo{display:block;width:48px;height:48px;border-radius:14px;object-fit:cover;pointer-events:none}.agp-launcher__menu{position:absolute;inset:0;width:54px;height:54px;pointer-events:none}.agp-launcher__item{--agp-x: 0px;--agp-y: 0px;--agp-delay: 0ms;position:absolute;left:calc(50% + var(--agp-x));top:calc(50% + var(--agp-y));display:grid;width:43px;min-width:43px;height:43px;min-height:43px;place-items:center;border:1px solid rgba(255,222,160,.54);border-radius:999px;background:#202b43;color:#ffe0a1;box-shadow:0 10px 24px #0307126b;cursor:pointer;pointer-events:auto;transform:translate(-50%,-50%);animation:agp-fan-in .21s cubic-bezier(.2,.85,.28,1.12) var(--agp-delay) both}.agp-launcher__item:hover,.agp-launcher__item:active{border-color:#ffe0a1;background:#2a3855}.agp-launcher__item svg{width:19px;height:19px;stroke-width:1.8}.agp-launcher__label{position:absolute;top:50%;display:block;min-width:max-content;padding:6px 9px;border:1px solid rgba(255,255,255,.13);border-radius:8px;background:#0d1320f5;color:#f8fafc;box-shadow:0 8px 22px #03071257;font-size:12px;font-weight:650;letter-spacing:.02em;line-height:1;white-space:nowrap;transform:translateY(-50%);pointer-events:none}.agp-launcher__item--fan-left .agp-launcher__label{right:calc(100% + 7px)}.agp-launcher__item--fan-right .agp-launcher__label{left:calc(100% + 7px)}.agp-launcher__item--fan-end.agp-launcher__item--fan-down .agp-launcher__label{top:calc(100% + 7px);right:auto;left:50%;transform:translate(-50%)}.agp-launcher__item--fan-end.agp-launcher__item--fan-up .agp-launcher__label{top:auto;right:auto;bottom:calc(100% + 7px);left:50%;transform:translate(-50%)}@keyframes agp-fan-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.58)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@media(prefers-reduced-motion:reduce){.agp-launcher__button{transition:none}.agp-launcher__item{animation:none}}:root{font-family:"Noto Serif SC",Songti SC,SimSun,serif;color:#30251b;background:#100a08;font-synthesis:none;--paper: #f2e7d4;--red: #80251e;--gold: #c8a66d;--ink: #332318;--muted: #82715c}*{box-sizing:border-box}html,body,#root{margin:0;width:100%;height:100%;min-height:100%;overflow:hidden}button,input,textarea,select{font:inherit}button{cursor:pointer;color:inherit;touch-action:manipulation}button:disabled{cursor:default;opacity:.48}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #bf6d35;outline-offset:3px}button{border:1px solid #baa184;background:#eee2cf;min-height:40px;border-radius:4px;padding:7px 10px}button:active:not(:disabled){transform:translateY(1px)}svg{flex-shrink:0}input,textarea,select{min-width:0;border:1px solid #d4c4af;border-radius:3px;background:#f7f0e5;color:#332318;padding:9px;max-width:100%}input,textarea{font-size:16px}small{font-size:12px;line-height:1.5}p{line-height:1.8;margin:10px 0}h3{font-size:20px;margin:10px 0}h2{font-weight:600;font-size:26px;letter-spacing:.18em;margin:0 0 16px;text-align:center}h2:before,h2:after{content:"⟡";font-size:17px;color:#9d8158;display:inline-block;margin:0 16px}h1,h2,h3,.seal-button{font-family:STKaiti,KaiTi,"FangSong",SimSun,serif}h1{margin:0;font-size:42px;font-weight:600;letter-spacing:6px;line-height:1.3;text-shadow:0 2px 8px #000}::-webkit-scrollbar{width:0;height:0}*{scrollbar-width:none}.app-shell{max-width:760px;margin:auto;height:100%;position:relative;isolation:isolate;background:#110b08}.ambient{position:absolute;inset:0;z-index:-3}.stage{display:block;width:100%;height:100%;background:#1b0e08}.vignette{position:absolute;inset:0;z-index:-2;background:linear-gradient(#060403bb,transparent 30%,#05030244 80%,#050302e0);pointer-events:none}.game-fieldset{border:0;min-width:0;padding:0;margin:0;width:100%;height:100vh;height:100dvh;display:flex;flex-direction:column}.top{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:6px;color:#efd69d;padding:18px 20px 11px;padding-top:max(18px,env(safe-area-inset-top))}.top>div{text-align:center}.top>button{background:transparent;border:0;padding:6px;color:#e9d8aa;width:36px;min-width:36px}.top p{font-size:14px;letter-spacing:3px;margin:8px 0 0}.tabs{display:flex;flex-shrink:0;background:linear-gradient(100deg,#26140dcc,#150b09ed);border:1px solid #d2b37e;border-radius:22px 7px;margin:0 22px 14px;padding:4px;box-shadow:0 0 0 3px #1d120c,0 0 0 4px #6a5334}.tabs button{flex:1;font-size:21px;letter-spacing:4px;color:#e4c995;background:none;border:0;position:relative}.tabs button+button:before{content:"";position:absolute;left:0;top:20%;height:60%;border-left:1px solid #816b48}.tabs button.active,.subnav button.active,.steps .active{background:radial-gradient(ellipse at bottom,#a63223,#491410);box-shadow:inset 0 0 0 1px #dfbd7d,inset 0 0 12px #b46b3280;color:#fff1c9;border-radius:10px 3px}.tabs button.active:after{content:"";position:absolute;top:-8px;left:50%;width:9px;height:9px;border-radius:50%;background:#cb4938;border:1px solid #ffddb2}.main{min-height:0;flex:1;overflow:auto;overscroll-behavior:contain;padding:3px 20px 0;scroll-behavior:smooth}.paper{position:relative;padding:22px 22px 18px;margin:0 0 15px;border:1px solid #b39361;border-radius:13px 3px;background:radial-gradient(ellipse at 0 0,#fffaf0aa,transparent 55%),radial-gradient(ellipse at 100% 100%,#b6874030,transparent 65%),repeating-linear-gradient(90deg,#7a643407 0,#7a643407 1px,transparent 1px,transparent 5px),var(--paper);box-shadow:inset 0 0 0 3px #f7ecd8,inset 0 0 0 4px #bc9f7180,0 4px 10px #0007}.paper:before,.paper:after{content:"❧";position:absolute;color:#ad9062;pointer-events:none;font-size:22px}.paper:before{left:6px;top:0}.paper:after{right:6px;bottom:0;transform:rotate(180deg)}.identity{display:flex;gap:22px;align-items:center;border-block:1px solid #bd9c6840;padding:9px 0 18px}.identity>div{min-width:0;flex:1}.identity h3{font-size:30px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.identity p{font-size:15px;margin:7px 0;display:flex;align-items:center;gap:8px}.portrait{display:inline-block;flex-shrink:0;width:60px;height:60px;border-radius:50%;background-size:cover;background-position:center;border:2px solid #c6aa75;box-shadow:0 0 0 2px #fff5e3,inset 0 0 9px #321b11;vertical-align:middle}.portrait.large{width:142px;height:158px;border-radius:50%}.tag{font:14px SimSun,serif;display:inline-block;background:#d7b47750;color:#75512c;padding:5px 10px;border-radius:3px;white-space:normal}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:18px 0;gap:18px 24px}.stat b{display:flex;align-items:center;gap:8px;font-size:19px}.stat svg{color:#8c754a}.stat-value{text-align:right;font-size:14px;margin:9px 0 3px}.bar{height:6px;background:#ad977441;border-radius:9px;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,#7c5329,#b59652);border-radius:inherit;transition:width .7s}.stat:nth-child(2) .bar i,.stat:nth-child(4) .bar i,.person-card .bar i{background:#6c8453}.stat:nth-child(3) .bar i{background:#638392}.stat:nth-child(5) .bar i{background:#628b76}.stat:nth-child(6) .bar i{background:#b77c81}.stat small{display:block;text-align:center;color:#6e774f;margin-top:6px}.ornament{display:flex;gap:15px;align-items:center;justify-content:center;font-size:23px;letter-spacing:3px;margin:19px 0 13px}.ornament:before,.ornament:after{content:"";height:1px;background:linear-gradient(90deg,transparent,#b59b73);width:22%}.ornament:after{transform:rotate(180deg)}.situation{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.situation>button,.situation>div{border:1px solid #ccb69480;background:#ecdfcb6b;border-radius:5px;padding:12px 8px;min-width:0;text-align:left}.situation b{display:flex;align-items:center;gap:4px;font-size:16px}.situation svg{width:18px;height:18px;color:#7d643a}.situation p{font-size:13px;line-height:1.65;color:#796958;margin:7px 0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.situation small{display:block;text-align:center;background:#dbc39b55;padding:3px;color:#8a513d}.actions{display:grid;gap:8px}.actions.four{grid-template-columns:repeat(4,minmax(0,1fr))}.actions button{background:linear-gradient(120deg,#963426,#511812);border:1px solid #d5b580;box-shadow:inset 0 0 0 3px #4d160a,inset 0 0 0 4px #b48454;color:wheat;padding:13px 5px;text-align:center;font-size:17px;min-width:0;border-radius:9px 3px}.actions button:nth-child(2){background:linear-gradient(120deg,#937749,#4c3b20)}.actions button:nth-child(3){background:linear-gradient(120deg,#385967,#253846)}.actions button:nth-child(4){background:linear-gradient(120deg,#655171,#39243e)}.actions svg{width:25px;height:25px;display:block;margin:0 auto 6px}.actions small{display:block;font-size:11px;margin-top:4px;opacity:.72}.notice{text-align:center;font-size:14px;background:#dbc7a46b;padding:9px 4px;margin:12px 0}.seal-button{display:block;width:94%;margin:15px auto 5px;background:radial-gradient(ellipse at 50% 20%,#a43626,#65140f 90%);border:2px solid #cfb075;border-radius:34px 9px;box-shadow:0 0 0 2px #452719,0 0 0 3px #d4b98a,inset 0 0 0 3px #693420,inset 0 0 0 4px #dab88680,inset 0 -10px 20px #36060370;color:#f7ddab;min-height:58px;letter-spacing:5px;font-size:28px;text-shadow:0 2px 4px #400800}.seal-button:before,.seal-button:after{content:"❧";font-size:26px;margin:0 14px;color:#cdaf70}.text-button{border:0;background:none;display:inline-flex;align-items:center;justify-content:center;gap:5px;color:#896240;font-size:13px}.center{text-align:center}.muted{color:var(--muted);font-size:13px}.between{display:flex;align-items:center;justify-content:space-between;gap:12px}.between>p{flex:1}.between>button{flex-shrink:0;display:flex;align-items:center}.narrative{font-size:16px}.narrative p{white-space:pre-wrap;line-height:1.95}.date-line{color:#9b7954}.deltas{display:flex;gap:7px;flex-wrap:wrap;margin:13px 0}.deltas span{background:#e2d3b9;color:#735432;font-size:12px;padding:5px 9px;border-radius:3px}.offline-note{color:#8b806c}.people-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.person-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;text-align:left;background:#f1e5d280;border-color:#d1b89b;padding:10px 8px;min-width:0}.person-card .portrait{width:52px;height:60px}.person-card b,.person-card strong{display:block;font-weight:500;font-size:16px;overflow-wrap:anywhere}.person-card strong{font-size:15px;margin:4px 0}.person-card small{font-size:12px;display:block;color:#796852}.person-card .tag{grid-column:1/-1;text-align:center;font-size:13px}.subnav{display:flex;gap:2px;margin-bottom:15px;background:#271610db;border:1px solid #b39562;border-radius:7px;padding:4px}.subnav button{flex:1;min-width:0;padding:9px 2px;font-size:14px;border:0;color:#dbc197;background:transparent}.steps{display:flex;justify-content:space-around;background:#29160dd9;color:#e4cfa4;border:1px solid #b29361;border-radius:20px;padding:9px;margin-bottom:16px;gap:3px}.steps>span,.steps>button{display:flex;align-items:center;justify-content:center;gap:7px;flex:1;padding:8px 4px;background:none;border:0;color:inherit;font-size:17px}.steps b{display:inline-grid;place-items:center;border:1px solid #c8af76;border-radius:50%;width:29px;height:29px;font-weight:400}.petition-intro{display:flex;gap:18px;align-items:center}.petition-intro>svg{color:#917444}.petition-intro p{font-size:15px}.risk{color:#8c4637;font-size:14px}.opinions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.opinions button{text-align:center;background:#eee0c9}.opinions .portrait{margin-bottom:8px}.opinions b{display:block;line-height:1.6;font-weight:500}.opinions p{font-size:14px;text-align:left;line-height:1.7}.decisions{display:grid;gap:9px}.decisions button{display:flex;align-items:center;gap:14px;text-align:left;background:#f4eadb;padding:10px}.decisions button>span{background:#684322;border:2px solid #bda076;outline:1px solid #74532c;border-radius:8px 2px;color:#f5e4b7;font-size:24px;width:34px;height:34px;text-align:center;flex-shrink:0}.decisions button.selected{background:#ecd7b7;border-color:#8d3424;box-shadow:inset 0 0 0 1px #973d26}.decisions small{display:block;color:#92765b;margin-top:3px}.impact{text-align:center;color:#7c3925;background:#ddc59e44;padding:10px;font-size:14px}.character-scene{display:grid;grid-template-columns:98px minmax(0,1fr);gap:12px;height:420px}.character-scene aside{overflow:auto;display:flex;flex-direction:column;gap:8px}.character-scene aside button{padding:6px 2px;text-align:center;background:#dfceb25c;border-color:#c4ac8760;flex-shrink:0}.character-scene aside button.active{background:#fff4df;border-color:#9b593a}.character-scene aside b,.character-scene aside small{display:block;margin-top:3px}.character-scene aside b{font-size:14px}.character-scene aside .portrait{width:48px;height:48px}.character-scene aside small{font-size:10px;color:#8a6d48}.hero-character{position:relative;min-width:0;border:1px solid #c6a46c;overflow:hidden}.vertical-name{position:absolute;right:9px;top:18px;display:flex;gap:9px;flex-direction:row-reverse;color:#f8e6b7;text-shadow:0 2px 8px #000}.vertical-name b{writing-mode:vertical-rl;font-size:29px;letter-spacing:7px;background:#2714088c;padding:12px 5px;border:1px solid #cbb07b}.vertical-name span{writing-mode:vertical-rl;font-size:16px;padding:10px 5px;background:#79261fcc;height:max-content;border:1px solid #cdab76}.character-caption{position:absolute;bottom:0;left:0;right:0;text-align:center;background:linear-gradient(transparent,#1e0e08e6);padding:25px 10px 13px;color:#f3dca5;letter-spacing:3px}.relationship{display:flex;align-items:center;gap:10px;font-size:13px;padding:15px 0;border-bottom:1px solid #d2baa0}.relationship .bar{flex:1}.relationship button{font-size:11px;padding:4px;min-height:30px}.scene-prose{font-size:14px;color:#77634f}.palace-tools{display:flex;justify-content:space-around;color:#e2c798;background:#22130edf;border:1px solid #9d7b46;margin-bottom:15px;padding:6px}.palace-tools button{background:none;border:0;color:inherit;font-size:13px}.palace-tools svg{display:block;margin:0 auto 4px;width:19px}.event,.journal-entry{padding:12px 0;border-bottom:1px solid #cdbb9e}.event h3{font-size:20px}.journal-entry p{white-space:pre-wrap}.gift-row{display:flex;align-items:center;gap:14px;width:100%;margin:12px 0;padding:18px 12px;background:#efdfc6;text-align:left}.gift-row>div{flex:1}.gift-row small{display:block;color:#897057;margin-top:6px}.gift-row>span{margin-left:auto}.schedule{display:flex;flex-direction:column}.schedule>div{display:flex;gap:15px;align-items:center;padding:12px 0;border-bottom:1px solid #c4a87c50}.schedule>div>div{flex:1;min-width:0}.schedule b{font-size:21px}.schedule small{display:block;color:#8a7256}.schedule button{font-size:13px;background:#e4cfab}.time-pill{display:block;text-align:center;min-width:80px;background:#76261c;color:#fae8bd;padding:7px;border:3px double #d5b277;border-radius:8px}.time-pill small{color:#f0d1a3;font-size:11px}.schedule .current{background:#ead8b86b}.form-row{display:flex;gap:12px;align-items:center;border-bottom:1px solid #c5ad8940;padding:13px 0}.form-row>span{width:92px;flex-shrink:0;font-size:18px}.form-row>input{flex:1}.form-row>button{background:none;border:0}.chips{display:flex;flex-wrap:wrap;gap:7px;flex:1;min-width:0}.chips button{font-size:14px;padding:7px 12px;min-height:35px;background:#eee1cc;border:1px solid #c2aa88}.chips button.selected{background:#852a21;color:#f3dcad;border-color:#b38950;box-shadow:inset 0 0 0 2px #dbc69266}.chips input{width:135px;font-size:13px;padding:7px}.stepper{display:flex;align-items:center;gap:22px;background:#ebdecb;padding:2px}.stepper button{background:none;border:0;font-size:24px;min-height:30px}.stepper strong{font-weight:400;font-size:20px}.create-avatar{display:flex;gap:15px;align-items:center;justify-content:center;margin-bottom:8px}.previews{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:18px 0}.previews>div{background:#27170e;color:#e6cd9d;border:3px double #8f784e;padding:12px 6px;text-align:center;border-radius:5px}.previews svg{width:25px;height:25px;margin-bottom:5px}.previews b,.previews small{display:block}.previews b{font-weight:400;font-size:17px}.previews small{font-size:11px;opacity:.65;margin-top:5px}.command{flex-shrink:0;display:flex;align-items:center;gap:7px;margin:7px 16px 12px;margin-bottom:max(12px,env(safe-area-inset-bottom));padding:7px;border:1px solid #ab8d595b;border-radius:40px;background:#130f0bea;box-shadow:0 0 14px #000a}.command>button{border:0;background:transparent;color:#d5b576;padding:8px;display:grid;place-items:center}.command .command-seal{border-radius:50%;border:1px solid #b4945c;width:45px;min-width:45px;height:45px;background:#352211}.command textarea{flex:1;width:0;border-radius:28px;resize:none;line-height:24px;max-height:96px;background:#332b22d9;border-color:#58432d;color:#f3dbaf;padding:10px 12px}.command textarea::placeholder{color:#aaa092}.bottom-space{height:14px}.room-stage{height:260px;border:1px solid #bb9864;margin-top:10px}.cover-main{padding:0}.cover{height:100%;min-height:600px;position:relative;display:flex;align-items:center;flex-direction:column;justify-content:flex-end;padding:30px 0 45px}.cover-stage{position:absolute;inset:0;z-index:-1;height:100%;opacity:.8}.cover-verse{position:absolute;top:10%;right:12%;display:flex;gap:18px;flex-direction:row-reverse;color:#edce8a;text-shadow:0 3px 10px #000}.cover-verse span{writing-mode:vertical-rl;font-size:25px;letter-spacing:11px}.cover-verse span:last-child{padding-top:60px;opacity:.72}.cover-menu{width:78%;max-width:420px;text-align:center;background:linear-gradient(transparent,#0b0703ce);padding:20px 10px}.seal-mark{display:inline-block;writing-mode:vertical-rl;letter-spacing:3px;font:18px KaiTi,serif;background:#8c291e;color:#f2d392;border:3px double #b86943;padding:8px 4px;margin:0 0 20px;box-shadow:0 0 15px #000}.continue{width:94%;margin-top:15px;min-height:50px;background:#24170eda;border:1px solid #a88a59;color:#e0c191;font-size:21px;letter-spacing:3px}.continue small{display:block;font-size:11px;letter-spacing:1px}.cover-tools{display:flex;gap:10px;justify-content:center;margin-top:22px}.cover-tools button{display:flex;gap:5px;align-items:center;background:none;border:0;color:#c4aa79;font-size:12px;padding:4px}.message{position:absolute;bottom:95px;left:5%;right:5%;background:#42251cef;border:1px solid #c1995a;color:#f3ddb3;padding:12px;z-index:40;font-size:13px;display:flex;align-items:center;gap:10px;box-shadow:0 3px 20px #0008}.message>span{flex:1}.message button{background:none;border:0;color:inherit}.busy-overlay{position:absolute;inset:0;background:#100905d9;z-index:70;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#efd6a4;gap:20px;backdrop-filter:blur(3px)}.busy-overlay b{letter-spacing:3px}.busy-overlay small{opacity:.6}.busy-seal{display:grid;place-items:center;font:45px KaiTi,serif;border:4px double #d7a75f;color:#edc884;background:#832820;width:76px;height:85px;animation:seal-breathe 2s infinite}.modal-backdrop{position:absolute;inset:0;background:#0b0503b8;z-index:60;display:grid;place-items:center;padding:22px;backdrop-filter:blur(5px)}.modal{width:100%;max-height:86vh;max-height:86dvh;display:flex;flex-direction:column;padding:18px;min-height:0;margin:0}.modal>header{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;gap:5px;border-bottom:1px solid #b59c744f;padding-bottom:10px}.modal header h2{font-size:24px;margin:0;letter-spacing:2px}.modal h2:before,.modal h2:after{content:none}.modal header>button{background:none;border:0;font-size:24px}.modal-scroll{min-height:0;overflow:auto;padding:10px 3px 5px}.modal-scroll label{display:flex;align-items:center;gap:15px}.modal-scroll select{flex:1}.settings-list{display:flex;flex-direction:column;gap:15px}.settings-list label{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.import input{width:100%;font-size:13px}.wide{display:block;width:100%;margin:14px 0 5px}.decree-text{font-size:23px;padding:12px;color:#812c20;line-height:1.8}.imperial-warning{border:1px solid #aa6950;color:#812f22;padding:12px;font-size:14px}.ink-writing{animation:seal-breathe 2s infinite}@keyframes seal-breathe{50%{opacity:.5;transform:translateY(-3px)}}@media(min-width:850px){.app-shell{box-shadow:0 0 90px #000}.top{padding-top:20px}body{background:radial-gradient(ellipse at center,#392213,#080605)}.cover{min-height:540px}}@media(max-width:520px){.top{padding:13px 9px 12px;padding-top:max(13px,env(safe-area-inset-top))}.top h1{font-size:31px;letter-spacing:4px}.top p{font-size:10px;letter-spacing:2px;margin-top:5px}.top>button{width:27px;min-width:27px;padding:2px}.top>button svg{width:20px}.tabs{margin:0 12px 13px;padding:3px}.tabs button{font-size:17px;letter-spacing:2px;min-height:38px;padding:5px}.main{padding:3px 11px 0}.paper{padding:16px 12px 13px;margin-bottom:12px}h2{font-size:23px;letter-spacing:2px;margin-bottom:13px}h2:before,h2:after{margin:0 12px;font-size:14px}.identity{gap:13px;padding:5px 0 13px}.identity .portrait.large{width:89px;height:105px}.identity h3{font-size:23px;gap:8px;margin:5px 0}.identity .tag{font-size:10px;padding:4px 6px}.identity p{font-size:12px;margin:5px 0;gap:5px}.identity small{font-size:11px}.stats{gap:14px 14px;margin:15px 0}.stat b{font-size:16px;gap:5px}.stat b svg{width:18px}.stat-value{font-size:11px;margin:6px 0 3px}.bar{height:5px}.stat small{font-size:11px}.ornament{font-size:20px;margin:16px 0 10px;gap:8px}.situation{gap:5px}.situation>button,.situation>div{padding:9px 6px}.situation b{display:block;font-size:13px;line-height:1.6}.situation b svg{width:15px;vertical-align:middle;display:inline;margin-right:3px}.situation p{font-size:11px;margin:5px 0;line-height:1.6}.situation small{font-size:11px}.actions.four{gap:5px}.actions button{font-size:14px;padding:11px 3px}.actions svg{width:22px;height:22px;margin-bottom:5px}.actions small{font-size:9px}.notice{font-size:11px;padding:8px 3px}.seal-button{font-size:24px;letter-spacing:2px;min-height:51px;margin-top:13px}.seal-button:before,.seal-button:after{font-size:20px;margin:0 7px}.narrative{font-size:14px}.narrative p{line-height:1.9}.date-line{font-size:10px}.people-grid{gap:6px;grid-template-columns:repeat(2,minmax(0,1fr))}.person-card{gap:7px;padding:9px 7px}.person-card .portrait{width:49px;height:59px}.person-card b,.person-card strong{font-size:14px}.person-card small{font-size:11px}.person-card .tag{font-size:12px;padding:3px}.subnav{padding:3px;margin-bottom:12px}.subnav button{font-size:12px;min-height:35px}.steps{padding:7px 4px;margin-bottom:13px}.steps>span,.steps>button{font-size:14px;gap:5px;padding:5px 3px}.steps b{width:23px;height:23px}.form-row{gap:8px;padding:12px 0}.form-row>span{width:66px;font-size:15px}.form-row input{padding:7px}.chips{gap:5px}.chips button{font-size:12px;padding:5px 8px;min-height:33px}.chips input{font-size:12px;width:118px}.previews>div{padding:10px 3px}.previews b{font-size:14px}.previews small{font-size:9px}.petition-intro{gap:12px}.petition-intro svg{width:35px}.petition-intro p{font-size:13px}.paper>h3{font-size:19px}.paper>p{font-size:13px}.opinions{gap:6px}.opinions button{padding:9px 6px}.opinions .portrait{width:48px;height:48px}.opinions b{font-size:13px}.opinions p{font-size:12px}.opinions .tag{font-size:11px;padding:4px}.decisions button{font-size:13px;gap:10px;padding:9px}.decisions small{font-size:10px}.decisions button>span{width:27px;height:29px;font-size:20px}.impact{font-size:12px}.character-scene{grid-template-columns:76px minmax(0,1fr);height:328px;gap:8px}.character-scene aside .portrait{width:43px;height:43px}.character-scene aside b{font-size:12px}.character-scene aside small{font-size:9px}.vertical-name{right:7px;top:12px;gap:5px}.vertical-name b{font-size:22px;letter-spacing:4px;padding:8px 3px}.vertical-name span{font-size:12px;padding:7px 3px}.character-caption{font-size:12px;letter-spacing:2px}.relationship{gap:6px;font-size:11px}.relationship button{font-size:10px}.scene-prose{font-size:12px}.schedule>div{gap:10px;padding:11px 0}.schedule b{font-size:18px}.schedule small{font-size:11px}.time-pill{min-width:66px;font-size:16px}.schedule button{font-size:12px;min-height:34px}.command{margin:5px 9px 9px;margin-bottom:max(9px,env(safe-area-inset-bottom));gap:4px;padding:5px}.command>button{padding:5px}.command .command-seal{min-width:36px;width:36px;height:36px;min-height:36px}.command .command-seal svg{width:23px}.command textarea{font-size:14px;padding:7px 8px;line-height:24px}.command>button svg{width:19px}.command>button:last-child{display:none}.cover{min-height:570px;padding-bottom:38px}.cover-menu{width:83%}.cover-verse{right:12%;top:9%;gap:13px}.cover-verse span{font-size:22px;letter-spacing:8px}.cover-tools{gap:7px}.cover-tools button{font-size:11px}.modal-backdrop{padding:14px}.modal{padding:16px 12px}.modal h2{font-size:22px}.modal-scroll{font-size:14px}.modal .between{gap:7px;flex-wrap:wrap}.modal .between button{font-size:12px}.gift-row{padding:14px 8px;gap:10px}.gift-row small{font-size:11px}.decree-text{font-size:21px}.message{bottom:77px;font-size:12px}.cover-main{padding:0}.event p{font-size:13px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.message{z-index:65}@media(max-width:520px){.situation b svg{display:block;margin:0 0 4px;width:17px;height:17px}.situation b{font-size:12px}.identity .portrait.large{width:88px;height:105px}}.portrait{overflow:hidden;aspect-ratio:1;height:auto!important;min-height:0;flex-shrink:0;align-self:center}.portrait img{display:block;width:100%;height:100%;aspect-ratio:1;object-fit:cover;object-position:center 18%}.portrait.large{height:auto!important;aspect-ratio:1}.command{position:static;margin:16px 0;border-radius:12px;box-shadow:none;flex-wrap:nowrap;width:100%;box-sizing:border-box}.command textarea{min-height:68px;border-radius:8px}.command .command-seal{width:34px;min-width:34px;height:34px}.steps>button{flex:1;border:0;background:transparent;color:inherit;display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 4px}.steps>button.active{background:#7b211a;color:#ffe4ac}.wizard-actions{display:flex;gap:12px;align-items:center;margin:14px 0 28px}.wizard-actions>.seal-button{flex:1}.setup-background{display:block;line-height:2}.setup-background textarea{display:block;width:100%;box-sizing:border-box;resize:vertical}.setup-summary{padding:15px;border:1px solid #c6aa75;line-height:1.8;margin-top:12px}.recruit-header{display:flex;gap:15px;align-items:center}.recruit-actions,.management{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.recruit-actions button,.management button{padding:10px 14px;border:1px solid #ac8555;background:#efe1c8;color:#6b211a;border-radius:5px}.candidate-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.candidate{border:1px solid #b49770;padding:12px;min-width:0}.candidate h3{font-size:22px;margin:12px 0}.candidate-art{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:top}.candidate p{font-size:14px}.recruitment details{border-top:1px solid #b49770;margin-top:15px;padding-top:12px}.recruitment summary{cursor:pointer}@media(max-width:600px){.candidate-grid{grid-template-columns:1fr}.candidate{display:grid;grid-template-columns:90px minmax(0,1fr);gap:0 12px}.candidate-art{grid-row:1/5}.candidate h3{font-size:19px}.candidate b{font-size:13px}.candidate .recruit-actions{grid-column:2;gap:6px}.candidate .recruit-actions button{padding:8px}.command{margin:12px 0;padding:6px}.command>.command-seal{display:none}.command textarea{font-size:14px;min-height:70px}.steps>button{gap:5px}}.roster-count{text-align:center;font-size:13px;color:#806341;margin-top:-8px}.ornament{word-break:keep-all}.setup-presets{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.setup-presets button{flex:1;padding:12px 10px;border:1px solid #b89056;color:#ffe2a0;background:#71251d;border-radius:6px;white-space:nowrap}
