:root{font-family:Arial,Helvetica,sans-serif;color:#183b35;background:#f3f0e5;font-synthesis:none;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select,summary{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #b34e29}button{min-height:42px;padding:10px 14px;border:1px solid #abb8a8;background:transparent;color:inherit;border-radius:3px;cursor:pointer;text-align:left}button:hover{background:#e5e6d7}button:disabled{opacity:.42;cursor:not-allowed}button.primary{background:#d9ae64;border-color:#d9ae64;color:#16312c;font-weight:700}.app{min-height:100dvh;padding:0 30px;max-width:1900px;margin:auto}header{height:76px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #bdc8b6;gap:15px}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit;letter-spacing:3px;font-size:12px;font-weight:700}.brand span{font:italic 33px Georgia;letter-spacing:-4px;border:1px solid;padding:0 12px 7px;border-radius:50%}.edition{font-size:9px;letter-spacing:1.8px}.edition b{display:block;margin-top:8px;font-weight:400;opacity:.65}main{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:35px}.stage{min-width:0}.intro{display:flex;justify-content:space-between;align-items:center;padding:32px 0 24px}.eyebrow{font-size:9px;letter-spacing:1.9px;font-weight:700}h1{font:46px/1.02 Georgia,serif;letter-spacing:-1.4px;margin:12px 0 0}h1 em{font-weight:400;color:#747c5a}.clock{text-align:right;display:flex;flex-direction:column;gap:8px}.clock strong{font-size:40px;font-weight:400;letter-spacing:-2px;font-variant-numeric:tabular-nums}.clock span{font-size:9px;letter-spacing:1.3px}.surface{background:#142e2d;border-radius:5px;color:#c2cba9;padding:16px 20px;box-shadow:0 18px 40px #263d3112}.surface-top,.surface-bottom{display:flex;justify-content:space-between;gap:8px;font-size:9px;letter-spacing:1.5px}.surface-top{padding-bottom:12px;border-bottom:1px solid #9eb09735}.surface-top span:first-child{font:italic 18px Georgia;letter-spacing:0}.surface svg{display:block;width:100%;height:clamp(280px,42vh,650px);touch-action:none;-webkit-user-select:none;user-select:none;margin:8px 0}.surface-bottom{font-size:8px;padding-top:10px;border-top:1px solid #9eb09735}.mark path,.mark ellipse,.draft{fill:none;stroke:#7e9c8c;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.mark text{font:14px monospace;fill:#c3cdb3}.mark.waiting{opacity:.3}.mark.active path,.mark.active ellipse{stroke:#e5ba70;stroke-dasharray:10 8}.mark.chosen.active path{stroke-width:5}.mark.completed path{stroke:#aad4b4}.mark.interrupted path{stroke:#e08c68;stroke-dasharray:2 12}.mark.expired path{stroke:#7a9084;stroke-dasharray:4 4}.mark.expired{opacity:.5}.mark .chord{stroke-width:2}.draft{stroke:#faf0d7;stroke-width:3}.empty{fill:#a6b99e;font:italic 32px Georgia}.transport{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:18px 0 0}.transport input{min-width:100px;flex:1;accent-color:#365b46}.transport>span{font-size:10px}.notice{font-size:12px;line-height:1.6;min-height:38px}.section-label{display:flex;justify-content:space-between;font-size:9px;font-weight:700;letter-spacing:1.4px;border-bottom:1px solid #b4c0ad;padding:10px 0}.section-label span{font-weight:400}.timeline-list{max-height:180px;overflow:auto}.timeline-list>div{display:grid;grid-template-columns:35px 1fr 1fr 95px;gap:8px;align-items:center;padding:12px 0;border-bottom:1px solid #d2d8c9;font-size:11px}.timeline-list b{font:italic 19px Georgia;color:#6b7c60}.badge{font-size:10px;border:1px solid #b1bca7;padding:4px 6px;border-radius:2px;text-align:center}.badge.active{background:#e8cf9f}.badge.completed{background:#cbdcc5}.badge.interrupted{background:#ecc4ad}.badge.expired{background:#d7d9ce}aside{border-left:1px solid #bdc8b6;padding:25px 0 20px 25px}aside section{padding:0 0 22px;margin:0 0 22px;border-bottom:1px solid #c7cebd}h2{font:26px Georgia;margin:12px 0}p{line-height:1.6;font-size:12px}label{display:block;font-size:11px;margin:14px 0}select{display:block;padding:10px;width:100%;margin-top:8px;border:1px solid #adbba6;color:inherit;background:#faf8ef;min-height:42px}button.light{background:#e1e4d5}.stack{display:grid;gap:8px}.tabs{display:flex;gap:5px;margin:16px 0}.tabs button{padding:8px 10px;text-transform:capitalize;flex:1}.tabs button[aria-pressed=true]{background:#284b3f;color:#fff}.rule{border-left:2px solid #b39253;padding-left:12px}.row{display:flex;gap:6px}.row button{flex:1;font-size:11px}.fine{font-size:10px;color:#55694d;line-height:1.7}.response{background:#e9e9da;margin-left:-12px;padding:15px 12px!important;border-radius:4px}.file{padding:12px 0;border-bottom:1px dotted #b1bca7}.file input{display:block;width:100%;font-size:10px;margin-top:10px}details{font-size:10px;line-height:1.6}summary{cursor:pointer;padding:10px 0}footer{display:flex;justify-content:space-between;border-top:1px solid #bdc8b6;padding:18px 0;font-size:8px;letter-spacing:1.3px;gap:12px}@media(min-width:1100px){.app{height:100dvh;display:flex;flex-direction:column}main{min-height:0;flex:1;overflow:hidden}.stage{overflow:auto;padding-bottom:25px}aside{overflow:auto}footer{flex:none}.intro{padding-top:25px}h1{font-size:clamp(36px,3.7vw,56px)}}@media(max-width:850px){.app{padding:0 18px}main{grid-template-columns:1fr;gap:0}aside{border-left:0;padding-left:0;display:grid;grid-template-columns:1fr 1fr;gap:22px}aside section{margin:0}.edition{display:none}.intro h1{font-size:38px}.surface svg{height:390px}footer span{display:none}}@media(max-width:530px){.app{padding:0 12px}aside{display:block}aside section{margin-bottom:24px}.brand{font-size:10px;gap:8px;letter-spacing:2px}header{height:65px}.clock strong{font-size:30px}.clock span{font-size:7px}.intro h1{font-size:32px}.surface{padding:12px}.surface svg{height:320px}.surface-bottom{font-size:6px;letter-spacing:.4px}.surface-top{font-size:7px;letter-spacing:.6px}.transport button{font-size:11px;padding:8px}.transport input{flex-basis:65%}.timeline-list>div{grid-template-columns:25px 1fr 1fr 80px;font-size:10px}.empty{font-size:25px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
