:root{font:15px/1.55 Verdana,Arial,sans-serif;color:#233c2b;background:#e9f0e5}
*{box-sizing:border-box}body{margin:0;background:repeating-linear-gradient(0deg,#e7efe6 0 7px,#edf2e8 8px 9px)}
a{color:#1d5540}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #e8ac52;outline-offset:3px}
.skip{position:absolute;left:-1000px}.skip:focus{left:8px;top:8px;background:white;padding:10px;z-index:5}
.marquee{background:#173b2d;color:#ffdf85;text-align:center;font:700 11px 'Courier New',monospace;letter-spacing:1px;padding:8px}
header{display:flex;justify-content:space-between;align-items:center;gap:12px;max-width:1050px;margin:auto;padding:12px 22px}
header>a{font:italic bold 25px Georgia,serif;color:#173e2e;text-decoration:none}
header>a span{color:#c47e34}header nav{display:flex;flex-wrap:wrap;gap:14px;font-size:12px}
main{max-width:1050px;background:#fffdf3;min-height:100vh;margin:0 auto;border:3px ridge #b3c6b0;box-shadow:0 10px 28px #153d2924}
.hero{padding:40px clamp(18px,5vw,56px);background:#173d30;color:#fff9e0}
.stamp{display:block;font:700 11px 'Courier New',monospace;letter-spacing:2px;color:#a7652e}
.hero .stamp{color:#e8bd68}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;line-height:1.13}
h1{font-size:clamp(34px,7vw,68px);letter-spacing:-.035em;margin:14px 0}h1 em{font-style:normal;color:#d7eeb7}
h2{font-size:clamp(26px,4vw,36px);margin:10px 0 16px}h3{margin:14px 0;font-size:20px}
.hero p{font:18px/1.6 Georgia,serif;max-width:710px}
.pulse-strip{display:flex;flex-wrap:wrap;gap:11px;font:700 12px/1.6 'Courier New',monospace;color:#eff3c6;margin-top:28px}
.pulse-strip b{color:#d3a553}
.truth{margin:25px;padding:18px 22px;background:#f9e8ad;border:3px double #937b49;font-size:13px}
.truth strong{display:block;font:700 12px 'Courier New',monospace;margin-bottom:8px}
.paper{border:2px solid #bacfbb;margin:25px;padding:26px;background:#fffefa;box-shadow:4px 4px 0 #d9e5ce}
.paper p{max-width:75ch}.fine{font-size:12px;color:#627465}.paper label{display:block;font-weight:700;font-size:12px;margin:15px 0 6px}
.paper input,.paper textarea,.paper select{display:block;width:100%;padding:12px;border:1px solid #a7bca9;background:#fff;font:inherit;color:#243b2b;border-radius:3px;max-width:100%}
.paper form{max-width:700px}button,.button{font:700 12px Verdana,sans-serif;background:#215641;color:#fff;border:2px outset #88ae91;padding:12px 16px;cursor:pointer;text-decoration:none;display:inline-block;margin:13px 7px 6px 0}
button:hover,.button:hover{background:#35735b}button:disabled{opacity:.5;cursor:not-allowed}
.button.secondary{background:#f7ead0;border-color:#c6ad74;color:#394a37}
.check{display:flex!important;align-items:flex-start;gap:10px;font-weight:400!important;max-width:700px}
.check input{width:19px;height:19px;flex:0 0 19px;margin:2px 0 0}.check span{flex:1;line-height:1.6}
.room-head{display:flex;justify-content:space-between;gap:20px;padding:26px 28px 5px}.room-head h2{margin-bottom:7px}.room-head p{margin:0;font-size:13px}
.tag{height:max-content;background:#f2e7b5;color:#695735;padding:9px 12px;font:700 11px 'Courier New',monospace}
.room-actions{margin:15px 28px;display:flex;flex-wrap:wrap}
#room>.fine{margin:15px 28px}
.stages{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:22px 25px}
.stage{padding:14px;background:#edf4e7;border:1px solid #c9d6c1;min-width:0}.stage b{font:700 11px 'Courier New',monospace;color:#37674d}
.stage p{font-size:11px;line-height:1.5;color:#5b735f;overflow-wrap:anywhere}
.twocol{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.source-card,.proposal{padding:14px;border:1px solid #d6e0ce;background:#f2f7ed;margin:10px 0;overflow-wrap:anywhere}
.source-card strong,.proposal strong{font:700 12px 'Courier New',monospace;color:#315a40}
.source-card p,.proposal p{font:14px/1.5 Georgia,serif;margin:10px 0}
.source-card small,.proposal small{display:block;font-size:11px;color:#647966;line-height:1.7}
.proposal{background:#fdf4dd;border-color:#dbc79a}
.proposal .pill{font:700 11px/1.6 'Courier New',monospace;background:#e9efda;padding:7px}
.proposal .result{border-top:1px solid #baaa85;padding-top:12px}
.status{padding:16px;margin:25px;background:#edf7e7;border:2px solid #a6c09e;white-space:pre-wrap;font-size:13px}.status.error{background:#ffe8d6;border-color:#ce9978}
#receipt{background:#fff1cf;border-color:#a58e5d}#receipt textarea{font:12px/1.5 ui-monospace,monospace}
footer{background:#133a2a;color:#e0e8d7;text-align:center;padding:24px;font:11px/2 'Courier New',monospace}
footer a{color:#f2d788}footer p{margin:10px 0 0}
@media(max-width:840px){.stages{grid-template-columns:repeat(3,1fr)}}
@media(max-width:630px){.room-head{display:block}.stages,.twocol{grid-template-columns:1fr}.paper{margin:16px;padding:16px}.truth{margin:16px}.stages{margin:16px}.hero{padding:30px 20px}.room-head{padding:18px 17px}.room-actions{margin:10px 16px}header{padding:10px}}
@media print{body,main{background:#fff;box-shadow:none;border:0}.marquee,header nav,.room-actions,form,button,#receipt{display:none!important}.paper{box-shadow:none;break-inside:avoid}.hero{background:#fff;color:#111}.hero .stamp,h1,h1 em,.pulse-strip{color:#111}.stages{grid-template-columns:repeat(5,1fr)}}
