@font-face{font-family:"STS2 Chinese";src:url("/shared-ui/NotoSansMonoCJKsc-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:block}
.paper-menu-root{--paper-gold:#efc851;--paper-cream:#fff6e2;--paper-ink:#3d2f20;--paper-ease:cubic-bezier(.215,.61,.355,1);position:fixed;inset:0;z-index:10;pointer-events:none;font:400 20px/1.5 "STS2 Chinese",sans-serif;font-synthesis:none;color:var(--paper-cream)}
.paper-menu-root *{box-sizing:border-box}
.paper-menu-root [hidden]{display:none!important}
.paper-menu-root :is(button,input,select,a){font:inherit;letter-spacing:0}
.paper-menu-root button{cursor:pointer;border-radius:0;box-shadow:none;appearance:none}
.paper-menu-root button:disabled{cursor:wait;opacity:.5}
.paper-menu-root .visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.paper-menu-overlay{position:absolute;inset:0;overflow:auto;overscroll-behavior:contain;pointer-events:auto;padding:24px 40px;display:flex}
.paper-menu-panel{width:min(1120px,100%);margin:auto;flex:none}
.paper-menu-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.paper-menu-root .text-action{appearance:none;display:inline-block;border:0;background:none;padding:7px 9px;color:#e3d9c7;text-decoration:none;font-size:18px;line-height:1.4;text-shadow:1px 2px 2px #0008}
.paper-menu-root .text-action:hover{color:#ffe080;background:none}
.paper-menu-heading{text-align:center;margin:0 0 28px}
.paper-menu-heading p{margin:0;color:#cbb991;font-size:15px;line-height:1.6}
.paper-menu-root .game-title{font-family:"STS2 Chinese",sans-serif;font-weight:400;letter-spacing:0;color:var(--paper-gold);-webkit-text-stroke:.095em var(--paper-ink);paint-order:stroke fill;text-shadow:.08em .07em 0 #0008;line-height:1.35}
.paper-menu-heading h1{margin:7px 0 10px;font-size:44px}
.paper-menu-heading h1:focus{outline:none}
.paper-menu-heading .heading-description{color:#d0c9be;font-size:18px}
.paper-menu-form{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr);grid-template-areas:"modes settings" "actions settings" "status settings";column-gap:56px;max-width:940px;margin:auto}
.mode-papers{grid-area:modes}.settings-paper{grid-area:settings}.mode-actions{grid-area:actions}.menu-status{grid-area:status}
.mode-papers{display:grid;grid-template-columns:1fr 1fr;gap:24px;border:0;margin:0;padding:0}
.mode-paper{position:relative;isolation:isolate;display:flex;min-width:0;height:340px;margin:0;flex-direction:column;align-items:center;text-align:center;cursor:pointer;padding:76px 18px 28px;transition:transform 200ms var(--paper-ease)}
.mode-paper input{appearance:auto;position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.mode-paper-surface{position:absolute;z-index:-1;inset:0;background:url("assets/paper-tall.png") center/100% 100% no-repeat;filter:brightness(.83);transition:filter 200ms var(--paper-ease);pointer-events:none}
.cool-paper .mode-paper-surface{filter:grayscale(1) sepia(.35) hue-rotate(157deg) saturate(1.4) brightness(.69)}
.mode-paper:has(:checked) .mode-paper-surface{filter:brightness(.97)}
.cool-paper:has(:checked) .mode-paper-surface{filter:grayscale(1) sepia(.35) hue-rotate(157deg) saturate(1.4) brightness(.87)}
.paper-selection-mark{position:absolute;top:22px;left:calc(50% - 23px);width:46px;height:46px;object-fit:contain;filter:brightness(.65) sepia(1) saturate(2);opacity:0;pointer-events:none}
.mode-paper:has(:checked) .paper-selection-mark{opacity:1}
.mode-paper .game-title{font-size:42px;pointer-events:none}
.mode-description{display:block;margin-top:32px;font-size:21px;line-height:1.65;color:var(--paper-cream);text-shadow:1.5px 2px 1px #0009;pointer-events:none}
.mode-footnote{font-size:16px;color:#f2e1bb;margin-top:auto;text-shadow:1px 2px 1px #0007;pointer-events:none}
.mode-actions{display:flex;justify-content:center;gap:16px;margin-top:18px}
.paper-menu-root .paper-button{--button-paper-brightness:.88;position:relative;isolation:isolate;border:0;background:transparent;color:var(--paper-gold);-webkit-text-stroke:.07em var(--paper-ink);paint-order:stroke fill;text-shadow:.06em .06em 0 #0005;min-height:68px;padding:10px 26px;font-size:30px;line-height:1.3;transition:transform 160ms var(--paper-ease),color 160ms var(--paper-ease)}
.paper-menu-root .paper-button::before,.paper-menu-root .button-paper{position:absolute;inset:0;z-index:-1;width:100%;height:100%;pointer-events:none;filter:sepia(.35) saturate(1.8) brightness(var(--button-paper-brightness));transition:filter 160ms var(--paper-ease)}
.paper-menu-root .paper-button::before{content:"";background:url("assets/paper-short.png") center/100% 100% no-repeat}
.paper-menu-root .button-paper{display:none}
.paper-menu-root .paper-button[data-paper-ready]::before{display:none}
.paper-menu-root .paper-button[data-paper-ready] .button-paper{display:block;position:absolute;inset:0}
.paper-menu-root .paper-button span{display:block;scale:.95;translate:0 -.05em}
.menu-start{width:80%}
.paper-menu-root[data-entered=true] .mode-actions>*{width:50%;font-size:25px;padding-inline:12px}
.paper-menu-root[data-entered=true] .menu-start{--button-paper-brightness:.66;color:#f4e8cb}
.menu-status{margin:9px 0 0;min-height:22px;text-align:center;color:#d4cbbb;font-size:14px;line-height:1.6}
.settings-paper{align-self:start;position:relative;isolation:isolate;min-height:360px;padding:35px 28px 30px;margin:10px 0 0;border:0;background:none}
.settings-surface{position:absolute;z-index:-1;inset:0;background:url("assets/paper-short.png") center/100% 100% no-repeat;filter:brightness(.81);pointer-events:none}
.settings-paper h2{font-size:30px;text-align:center;margin:0 0 28px}
.pool-field{display:block;color:var(--paper-cream);font-size:17px;margin:0 0 9px;text-shadow:1px 2px 1px #0006}
.paper-menu-root #paper-pool{display:block;width:100%;height:49px;margin:0;border:1px solid #d4ba7a;border-radius:0;background:#243039;color:#fff6e2;padding:0 10px;font-size:17px;appearance:auto;cursor:pointer}
.pool-count{margin:10px 0 24px;font-size:14px;line-height:1.5;color:#fff0d3;text-shadow:1px 1px 1px #0008}
.rules-summary p{margin:0 0 10px;font-size:17px;color:#fff6e2;text-shadow:1px 2px 1px #0008;line-height:1.7}
.rules-summary p:first-child{font-size:20px}
.paper-menu-root .inline-rules{font-size:15px;padding:8px 0 2px;text-decoration:underline;text-underline-offset:5px;color:#ffedbf}
.entry-summary{font-size:14px;line-height:1.6;color:#fff0cf;margin:20px 0 0;border-top:1px solid #dbbf8350;padding-top:12px}
.paper-menu-footer{max-width:940px;margin:26px auto 0;display:flex;justify-content:space-between;gap:18px;color:#bdb9af;font-size:14px;line-height:1.6}
.paper-menu-footer label{display:flex;gap:8px;align-items:center;white-space:nowrap;margin:0;font-size:14px}
.paper-menu-root .motion-checkbox{appearance:auto;accent-color:#d5b366;min-width:16px;min-height:16px;margin:0}
.paper-menu-root[data-open=false] .paper-menu-overlay{visibility:hidden;pointer-events:none}
.paper-menu-root .scene-menu-button{position:absolute;top:24px;left:28px;pointer-events:auto;background:#111922c7;padding:11px 16px;min-height:44px}
.scene-menu-button kbd{font:14px "STS2 Chinese",sans-serif;margin-left:14px;color:#b5b3a7}
.scene-preview-note{position:absolute;bottom:18px;right:24px;margin:0;color:#afb5b5;font-size:13px;text-shadow:1px 2px 2px #000}
.paper-menu-root .paper-rules{position:fixed;inset:0;width:min(530px,calc(100vw - 32px));height:max-content;max-height:calc(100svh - 32px);margin:auto;padding:44px 44px 36px;isolation:isolate;border:0;background:none;color:var(--paper-cream);font:400 20px/1.6 "STS2 Chinese",sans-serif;pointer-events:auto;overflow:auto}
.paper-rules::backdrop{background:#05070bbb}
.rules-surface{position:absolute;z-index:-1;inset:0;background:url("assets/paper-short.png") center/100% 100% no-repeat;filter:brightness(.77);pointer-events:none}
.paper-rules h2{margin:0 0 26px;text-align:center;font-size:34px}
.paper-rules p,.paper-rules ol{font-size:19px;line-height:1.7;color:var(--paper-cream);text-shadow:1px 2px 1px #0008;margin:0 0 20px}
.paper-rules ol{padding-left:26px}
.paper-rules li{margin:10px 0}
.paper-rules .rules-mode-note{font-size:16px;color:#f4e4c6}
.paper-menu-root .rules-close{display:block;width:80%;margin:26px auto 0;font-size:27px}
.paper-menu-root :is(button,input,select,a):focus-visible,.mode-paper:has(input:focus-visible){outline:2px solid #ffe099;outline-offset:5px}
@media(hover:hover){.mode-paper:hover{transform:scale(1.025)}.warm-paper:hover .mode-paper-surface{filter:brightness(1.06)}.cool-paper:hover .mode-paper-surface{filter:grayscale(1) sepia(.35) hue-rotate(157deg) saturate(1.4) brightness(.94)}.paper-menu-root .paper-button:hover:not(:disabled){--button-paper-brightness:1.012;color:#ffe65d;transform:scale(1.025)}}
.paper-menu-root .paper-button:active:not(:disabled){transform:scale(.98)}
.paper-layout-preview[data-menu-reduced=true] .paper-menu-root *{transition:none!important}
.paper-layout-preview[data-menu-reduced=true] .paper-menu-root :is(.mode-paper:hover,.paper-button:hover,.paper-button:active){transform:none!important}
@media(min-width:761px) and (max-height:780px){.paper-menu-overlay{padding:16px 36px}.paper-menu-nav{margin-bottom:0}.paper-menu-heading{margin-bottom:22px}.paper-menu-heading h1{font-size:38px;margin-block:4px 7px}.paper-menu-heading .heading-description{font-size:16px}.mode-paper{height:305px;padding-top:66px;padding-bottom:24px}.mode-paper .game-title{font-size:38px}.paper-selection-mark{top:15px;width:40px;height:40px;left:calc(50% - 20px)}.mode-description{margin-top:23px;font-size:20px}.settings-paper{min-height:325px;margin-top:0;padding:27px 27px 24px}.settings-paper h2{margin-bottom:20px}.pool-count{margin-bottom:18px}.paper-menu-root .paper-button{min-height:60px;font-size:28px}.paper-menu-footer{margin-top:14px}.mode-actions{margin-top:15px}}
@media(max-width:1000px) and (min-width:761px){.paper-menu-form{column-gap:30px;grid-template-columns:1.7fr 1fr}.mode-papers{gap:16px}.mode-paper{padding-inline:10px}.mode-description{font-size:18px}.settings-paper{padding-inline:22px}.paper-menu-root #paper-pool{font-size:16px}}
@media(max-width:760px){.paper-menu-overlay{padding:18px 18px 26px}.paper-menu-panel{margin:0 auto}.paper-menu-nav{margin-bottom:16px}.paper-menu-root .text-action{font-size:16px}.paper-menu-heading{margin-bottom:24px}.paper-menu-heading h1{font-size:34px}.paper-menu-heading p{font-size:13px}.paper-menu-heading .heading-description{font-size:15px}.paper-menu-form{display:flex;flex-direction:column;gap:22px;max-width:480px}.mode-actions{margin-top:0}.menu-status{margin-top:-14px;min-height:0}.mode-papers{gap:12px}.mode-paper{height:280px;padding:69px 10px 25px}.mode-paper .game-title{font-size:33px}.mode-description{font-size:17px;line-height:1.7;margin-top:22px}.mode-footnote{font-size:14px}.paper-selection-mark{top:21px;width:36px;height:36px;left:calc(50% - 18px)}.paper-menu-root .paper-button{font-size:25px;min-height:60px}.menu-start{width:86%}.settings-paper{width:100%;min-height:0;padding:30px 28px;margin:0}.settings-paper h2{margin-bottom:23px}.rules-summary{display:block}.paper-menu-footer{flex-direction:column;align-items:center;margin-top:23px;font-size:13px}.paper-menu-root[data-entered=true] .mode-actions>*{font-size:20px}.paper-menu-root .paper-rules{padding:35px 27px 30px}.paper-rules p,.paper-rules ol{font-size:17px}.paper-menu-root .scene-menu-button{top:16px;left:16px}}
@media(prefers-reduced-motion:reduce){.paper-menu-root *{transition:none!important}.paper-menu-root :is(.mode-paper:hover,.paper-button:hover,.paper-button:active){transform:none!important}}

/* Independent rules, one paper carrier + a fixed example. Motion amplitudes
   are web_candidate; the flame is the game's ascension-panel icon. */
.paper-menu-form{max-width:920px;grid-template-columns:minmax(460px,1.65fr) minmax(250px,1fr);grid-template-areas:"rules preview" "summary preview" "entry preview" "actions preview" "status status";column-gap:58px}
.rules-paper{grid-area:rules;position:relative;isolation:isolate;padding:28px 35px 25px}
.rules-paper .settings-surface{filter:brightness(.84)}
.rules-paper h2{font-size:28px;text-align:center;margin:0 0 12px}
.rule-row{display:grid;grid-template-columns:118px minmax(0,1fr);align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid #d6be823b}
.rule-label{font-size:17px;color:#fff1d2;text-shadow:1px 1px 1px #302415}
.rule-label small{display:block;margin-top:4px;font-size:11px;line-height:1.55;color:#e4d4b4}
.rule-pair{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.rule-option{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;min-height:43px;margin:0;cursor:pointer;padding:7px 19px;color:#dcd6c6;white-space:nowrap;font-size:17px;text-shadow:1px 2px 1px #0008}
.rule-option input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;z-index:3}
.option-plate{position:absolute;inset:0;z-index:-1;background:#27373d;border:1px solid #8d957f;box-shadow:inset 0 1px 0 #c1ccaa35;clip-path:polygon(5px 0,calc(100% - 5px) 0,100% 5px,100% calc(100% - 5px),calc(100% - 5px) 100%,5px 100%,0 calc(100% - 5px),0 5px);transition:background 160ms,color 160ms,filter 160ms;pointer-events:none}
.option-check{position:absolute;left:5px;top:50%;width:12px;height:14px;object-fit:contain;translate:0 -50%;opacity:0;pointer-events:none}
.option-name{pointer-events:none}
.challenge-flame{position:absolute;right:5px;top:50%;width:13px;height:22px;object-fit:contain;translate:0 -50%;opacity:.38;filter:grayscale(1);pointer-events:none}
.rule-option:has(input:checked){color:#fff6e2}
.rule-option input:checked~.option-plate{background:#35535a;border-color:#8fe4e3;box-shadow:inset 0 0 0 1px #8fe4e36b}
.rule-option input:checked~.option-check{opacity:1}
.challenge-option input:checked~.option-plate{background:#51312c;border-color:#eab46a;box-shadow:inset 0 0 0 1px #ffad6840}
.challenge-option input:checked~.option-name{color:#ffe2a4}
.challenge-option input:checked~.challenge-flame{opacity:1;filter:none;animation:challenge-ignite 300ms cubic-bezier(.175,.885,.32,1.275),challenge-breathe 2600ms 300ms ease-in-out infinite alternate}
.rule-option:has(input:focus-visible){outline:2px solid #ffe099;outline-offset:4px}
.paper-menu-root .rule-option input:focus-visible{outline:none}
@media(hover:hover){.rule-option:hover .option-plate{filter:brightness(1.2)}.rule-option:hover .challenge-flame{opacity:.85}.challenge-option:has(input:checked):hover .challenge-flame{opacity:1}}
@keyframes challenge-ignite{from{opacity:0;transform:translateY(5px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes challenge-breathe{from{filter:brightness(.95) drop-shadow(0 0 0 #ff5d1700)}to{filter:brightness(1.18) drop-shadow(0 0 4px #ed5d1988)}}
.rule-pool{display:grid;grid-template-columns:118px minmax(0,1fr);gap:12px;align-items:center;margin-top:19px}
.rule-pool .pool-field{font-size:16px;margin:0}
.rule-pool #paper-pool{height:40px;font-size:15px}
.rules-paper .pool-count{font-size:12px;margin:8px 0 10px;text-align:right}
.rule-note{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #d6be823b;padding-top:11px;font-size:14px;color:#fff0d3}
.paper-menu-root .rule-note .inline-rules{font-size:13px;padding:0}
.mode-preview{grid-area:preview;align-self:center;text-align:center;min-width:0;position:relative;padding:0 10px}
.mode-preview h2{font-size:20px;font-weight:400;margin:10px 0 5px;color:#f1dec0;text-shadow:1px 2px 2px #000}
.challenge-meter{display:flex;justify-content:center;align-items:center;gap:10px;min-height:35px;color:#dcc9a8;font-size:14px}
.challenge-icons{display:flex;align-items:center;gap:5px;height:32px}
.challenge-icons img{height:29px;width:20px;object-fit:contain;opacity:.2;filter:grayscale(1);transition:opacity 200ms,filter 200ms}
.challenge-icons img.lit{opacity:1;filter:drop-shadow(0 0 4px #ff651044)}
.preview-card{width:min(100%,224px);aspect-ratio:484/636;margin:0 auto;position:relative;filter:drop-shadow(0 12px 10px #0007)}
.preview-card canvas{display:block;width:100%;height:100%;image-rendering:pixelated}
.preview-caption{font-size:13px;color:#d3c3a3;margin:5px 0 12px}
.preview-stages{display:flex;gap:10px;justify-content:center}
.paper-menu-root .preview-stages button{font-size:14px;line-height:1;border:1px solid #7c7664;width:35px;height:32px;background:#253036;color:#cfc7b6;padding:0;transition:color 120ms,background 120ms}
.paper-menu-root .preview-stages button[aria-pressed=true]{color:#ffdf8c;border-color:#e4bf72;background:#4b4432}
.preview-explanation{font-size:12px;color:#c0b9ab;margin:10px 0 0}
.preview-status{font-size:12px;color:#efd5a2;min-height:18px;margin:5px 0 0}
.draft-summary{grid-area:summary;text-align:center;font-size:14px;color:#e9d5ab;margin:13px 0 0;line-height:1.6}
.paper-menu-form .entry-summary{grid-area:entry;border:0;margin:6px 0 0;padding:0;font-size:12px;text-align:center}
.paper-menu-form .mode-actions{margin-top:10px}
.paper-menu-form .menu-status{font-size:12px;min-height:18px;margin-top:6px}
.paper-menu-root[data-open=false] .challenge-flame{animation-play-state:paused!important}
.paper-menu-root[data-page-hidden=true] .challenge-flame{animation-play-state:paused!important}
.paper-menu-form .menu-status:empty{display:none}
.paper-layout-preview[data-menu-reduced=true] .challenge-flame{animation:none!important}
@media(min-width:761px) and (max-height:780px){.paper-menu-heading{margin-bottom:14px}.paper-menu-heading h1{font-size:34px}.paper-menu-heading .heading-description{font-size:15px}.rules-paper{padding-block:22px}.rule-row{padding-block:10px}.rules-paper h2{font-size:26px;margin-bottom:8px}.preview-card{width:205px}.paper-menu-footer{margin-top:8px}.paper-menu-form .paper-button{min-height:55px;font-size:26px}}
@media(min-width:761px) and (max-width:1000px){.paper-menu-form{grid-template-columns:minmax(405px,1.6fr) minmax(205px,1fr);column-gap:22px}.rules-paper{padding-inline:24px}.rule-row,.rule-pool{grid-template-columns:102px 1fr;gap:8px}.rule-option{font-size:15px}.rule-label{font-size:16px}.rule-label small{font-size:10px}.rule-pair{gap:6px}.mode-preview{padding:0}}
@media(max-width:760px){.paper-menu-form{display:flex;gap:12px;max-width:480px}.rules-paper{padding:28px 25px 22px}.rule-row{grid-template-columns:1fr;gap:8px;padding-block:11px}.rule-label{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font-size:16px}.rule-label small{margin:0;font-size:11px}.rule-option{font-size:16px;min-height:44px}.rule-pool{grid-template-columns:90px 1fr;gap:8px;margin-top:16px}.mode-preview{margin:8px 0 0;align-self:center;width:100%;max-width:310px}.preview-card{width:174px}.draft-summary{margin:6px 0 0}.paper-menu-form .mode-actions{margin-top:0}.paper-menu-footer{margin-top:14px}.challenge-meter{font-size:13px}.paper-menu-root[data-entered=true] .mode-actions>*{font-size:20px}}
@media(prefers-reduced-motion:reduce){.challenge-flame{animation:none!important}}
@media(min-width:761px) and (max-height:780px){.paper-menu-heading .heading-description{display:none}.paper-menu-heading{margin-bottom:10px}.rules-paper{padding-block:18px}.rule-row{padding-block:8px}}
