:root{font-family:Arial,sans-serif;color:#303b32;background:#f2ecdf;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid #b5b09e;background:transparent;color:inherit;padding:11px 15px;border-radius:2px;margin:3px;transition:background .2s}button:hover{background:#e0d8c3}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #ab5c43;outline-offset:3px}main{min-height:100vh;max-width:1700px;margin:auto;padding:36px 5vw}header{display:flex;justify-content:space-between;align-items:center;gap:30px;border-bottom:1px solid #b5b09e;padding-bottom:35px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700}h1{font:clamp(50px,7vw,100px)/.94 Georgia,serif;margin:18px 0}h1 em{font-weight:400;color:#7f5d43}h2{font:32px/1.1 Georgia,serif;margin:10px 0 25px;white-space:pre-wrap;overflow-wrap:anywhere}.intro{font:26px/1.2 Georgia,serif}.intro small{display:block;font:12px/1.7 Arial;margin-top:20px;color:#70766b}.seal{font-size:10px;line-height:1.7;text-align:center;border:1px solid #7f5d43;border-radius:50%;width:116px;height:116px;padding-top:30px;transform:rotate(12deg);flex-shrink:0}nav{padding:22px 0;display:flex;flex-wrap:wrap;gap:8px}nav button{font-size:11px}.workspace{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:44px}.stage{background:#e1dac8;padding:28px;min-width:0}.stage-title{display:flex;justify-content:space-between;align-items:start;gap:12px}.stage-title>div{min-width:0}.badge{font-size:9px;letter-spacing:1px;white-space:nowrap;padding:7px;border:1px solid #aaa28c}.paper{position:relative;aspect-ratio:1;max-width:680px;margin:25px auto;box-shadow:2px 9px 22px #594c3430}.paper img{display:block;width:100%;height:100%;image-rendering:pixelated}.overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.stage-foot{display:flex;align-items:center;justify-content:space-between;font-size:11px;gap:10px}.hint{font-size:11px;line-height:1.7;color:#727669}aside{padding:10px 0}label{display:block;font-size:11px;line-height:1.5;margin:12px 0}input:not([type=checkbox]),select{width:100%;border:1px solid #b7b4a3;background:#faf7ee;padding:9px;margin-top:5px;color:#303b32;min-width:0}input[type=color]{height:38px;padding:3px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}.primary{background:#30483b;color:#f5efe1;width:100%;padding:16px;margin:18px 0 6px}.primary:hover{background:#42634f}.lower{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:45px;border-top:1px solid #bab5a6;margin-top:40px;padding-top:35px}.lower>div,.lower>details{min-width:0}.material{display:flex;gap:12px;justify-content:space-between;align-items:center;border-bottom:1px solid #d2ccbc;padding:10px 0}.material span{min-width:0;overflow-wrap:anywhere}.material b{font:16px Georgia;white-space:pre-wrap}.material small{display:block;font-size:10px;margin-top:8px;color:#747969}.material button{flex-shrink:0}summary{cursor:pointer;padding:14px 0;font-size:13px}ol{max-height:300px;overflow:auto;padding:0;list-style:none}li{font-size:11px;padding:7px 0;border-bottom:1px solid #d8d2c4;overflow-wrap:anywhere;white-space:pre-wrap}.tools{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:35px 0 15px}.status{border-left:3px solid #8a603f;padding:15px;background:#e7dfca;font-size:12px;line-height:1.5}.warning{font-size:12px;color:#8d4d34}textarea{width:100%;min-height:230px;padding:14px;border:1px solid #aaa;background:#fffdf4;font:11px/1.6 monospace;resize:vertical}details p{font-size:12px;line-height:1.7}footer{border-top:1px solid #b5b09e;margin-top:50px;padding:25px 0;font-size:10px;line-height:1.7;color:#697165}footer p{max-width:850px}footer button{font-size:10px}.reveal{animation:emerge 1.2s ease-out}@keyframes emerge{0%{opacity:.15}to{opacity:1}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}@media(max-width:760px){main{padding:24px 5vw}.workspace,.lower{grid-template-columns:1fr;gap:25px}.intro{font-size:18px}.seal{display:none}.stage{padding:18px}h2{font-size:27px}header{gap:15px}.badge{white-space:normal}.stage-foot{flex-wrap:wrap}}
