:root{--ink:#20372f;--muted:#6b756e;--paper:#f3f3ec;--card:#fffefa;--line:#dce0d5;--green:#285a43;--lime:#d4e4a0;--mono:ui-monospace,SFMono-Regular,Consolas,monospace}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.5}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #93af69;outline-offset:4px}[hidden]{display:none!important}.top{height:94px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:var(--card)}.brand{text-decoration:none;display:flex;align-items:center;gap:13px;font-size:14px;letter-spacing:2px;font-weight:700;line-height:1.4}.brand small{display:block;letter-spacing:2.4px;font:9px var(--mono);margin-top:4px;color:var(--muted)}.brand-mark{font-size:36px;line-height:1;color:var(--green)}.header-right{display:flex;align-items:center;gap:28px}.connection{font:11px var(--mono);display:flex;align-items:center;gap:8px}.connection i,.live-dot{display:inline-block;width:7px;height:7px;background:#72974a;border-radius:50%}.connection.offline i{background:#b78053}.text-button{border:0;background:none;color:var(--muted);font-size:12px;padding:6px 0;text-decoration:underline;text-underline-offset:4px}.text-button:hover{color:var(--ink)}main{max-width:1570px;margin:auto;padding:43px 5vw 0}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:30px}.eyebrow,.section-index,.label{font:10px var(--mono);letter-spacing:1.5px;color:var(--muted)}.eyebrow{margin:0 0 12px}h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(30px,3vw,43px);font-weight:400;letter-spacing:-1.3px;line-height:1.2;margin:0 0 9px}.intro{color:var(--muted);margin:0;font-size:14px}.radio-spec{display:flex;gap:0;border:1px solid var(--line);border-radius:4px;padding:10px 0;white-space:nowrap;font:10px var(--mono);color:var(--muted);margin-bottom:3px}.radio-spec span{padding:0 12px}.radio-spec span+span{border-left:1px solid var(--line)}.layout{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(300px,1fr);gap:25px;align-items:start}.photo-card,.request-card,.status-card{background:var(--card);border:1px solid var(--line);border-radius:7px;overflow:hidden}.card-bar{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;gap:10px}.card-bar>div{display:flex;align-items:center;gap:9px}.card-bar h2{font-weight:500;margin:0;font-size:13px}.pill{font:9px var(--mono);border:1px solid var(--line);padding:4px 7px;border-radius:3px;color:var(--muted);white-space:nowrap}.photo-wrap{aspect-ratio:16/10;position:relative;display:flex;align-items:center;justify-content:center;background:#1d2c25;overflow:hidden}picture{width:100%;height:100%}picture img{display:block;width:100%;height:100%;object-fit:contain}.image-caption{position:absolute;bottom:0;left:0;right:0;padding:25px 18px 14px;display:flex;justify-content:space-between;gap:10px;color:white;background:linear-gradient(transparent,rgba(0,0,0,.55));font:9px var(--mono);letter-spacing:1px;pointer-events:none}.empty-photo{color:#c3d1c5;text-align:center;padding:40px}.empty-photo>span{font-size:42px;color:#8fa58d}.empty-photo h3{font:26px Georgia,serif;font-weight:400;margin:10px 0}.empty-photo p{font-size:12px;margin:0;color:#a3b2a7}.photo-footer{padding:20px 22px;display:flex;align-items:center;gap:30px;min-height:88px}.label{display:block;font-size:9px;letter-spacing:1.2px;margin-bottom:4px}.photo-footer strong{display:block;font-size:11px;font-weight:400}.download{margin-left:auto;font-size:11px;text-decoration:none;border-bottom:1px solid #aab9a7;padding:5px 0;white-space:nowrap}.download span{margin-left:9px}.controls{display:flex;flex-direction:column;gap:18px}.request-card,.status-card{padding:23px}.section-index{font-size:9px;margin-bottom:17px}.request-card h2{font:26px Georgia,serif;font-weight:400;letter-spacing:-.5px;margin:0 0 9px}.request-card>p{font-size:12px;color:var(--muted);margin:0 0 20px;line-height:1.7}.primary-button{background:var(--green);color:white;border:1px solid var(--green);border-radius:4px;padding:14px 17px;display:flex;align-items:center;justify-content:space-between;width:100%;font-size:13px;font-weight:500;transition:background .15s}.primary-button:hover:not(:disabled){background:#1c4432}.primary-button>span:last-child{font-size:19px;font-weight:400;line-height:1}.request-card .small-note{font-size:10px;line-height:1.7;margin:13px 0 0}.secondary-action{font-size:10px;margin-top:8px}.status-top{display:flex;align-items:center;gap:8px}.status-top h2{font:12px var(--mono);margin:0;font-weight:400}.status-top strong{font:12px var(--mono);margin-left:auto}.status-dot{width:7px;height:7px;border-radius:50%;background:#91a77e}.status-dot.busy{background:#91a52c;animation:pulse 1.6s infinite}.status-dot.error{background:#b0744a}.status-headline{font-size:11px;color:var(--muted);margin:8px 0 14px;min-height:17px}.progress{height:5px;background:#e6eadd;border-radius:10px;overflow:hidden}.progress>div{height:100%;width:0;background:#7f9c4c;transition:width .5s;border-radius:10px}.status-log{margin-top:18px;border-top:1px solid var(--line);padding-top:8px;max-height:225px;overflow:auto;scrollbar-width:thin}.status-log p{font:10px/1.7 var(--mono);margin:8px 0;color:#69766c;word-break:break-word}.status-log p:last-child{color:var(--ink)}.status-log .log-empty{font-family:Arial,sans-serif;font-size:11px;color:var(--muted)}.bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:35px;padding:18px 0 25px;font:9px var(--mono);color:var(--muted);gap:20px}.bottom>span:first-child{display:flex;align-items:center;gap:8px;letter-spacing:1px}.error{color:#a34433!important;font-size:12px!important;margin:12px 0 0!important}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center}.login-shell{width:430px;max-width:100%;padding:35px 22px}.login-shell>.brand{justify-content:center;margin-bottom:35px}.login-card{padding:32px;border:1px solid var(--line);border-radius:7px;background:var(--card)}.login-card h1{font-size:35px}.login-card>p:not(.eyebrow){color:var(--muted);font-size:13px;margin:13px 0 25px}.login-card label{font:10px var(--mono);display:block;margin:17px 0 7px;color:var(--muted)}.login-card input{width:100%;padding:11px 12px;border:1px solid #ccd4c6;border-radius:3px;background:#fff;color:var(--ink);font-size:15px}.login-card .primary-button{margin-top:24px}.login-foot{text-align:center;font:9px var(--mono);letter-spacing:1px;color:var(--muted);margin-top:24px}@keyframes pulse{50%{opacity:.35}}@media(min-width:1400px){.photo-wrap{aspect-ratio:16/10}}@media(max-width:1000px){.page-heading{align-items:flex-start}.radio-spec{flex-direction:column;gap:7px;padding:10px}.radio-spec span{border:0!important;padding:0}.layout{grid-template-columns:minmax(0,1.45fr) minmax(280px,1fr);gap:17px}.photo-footer{gap:18px;padding:17px}.request-card,.status-card{padding:20px}.photo-wrap{aspect-ratio:4/3}.photo-footer strong{font-size:10px}}@media(max-width:760px){.top{height:76px;padding:0 6vw}.brand{font-size:11px;letter-spacing:1.4px}.brand small{font-size:8px}.brand-mark{font-size:29px}.header-right{gap:15px}.connection{font-size:9px}.text-button{font-size:10px}main{padding:29px 5vw 0}.page-heading{display:block;margin-bottom:23px}.eyebrow{font-size:9px;margin-bottom:9px}h1{font-size:32px}.intro{font-size:12px}.radio-spec{flex-direction:row;display:inline-flex;margin-top:18px;padding:8px 0;font-size:9px;gap:0}.radio-spec span{padding:0 11px}.radio-spec span+span{border-left:1px solid var(--line)!important}.layout{display:flex;flex-direction:column;gap:18px}.photo-card,.controls{width:100%}.photo-wrap{aspect-ratio:16/10}.card-bar{padding:14px 16px}.photo-footer{padding:16px;gap:15px;flex-wrap:wrap}.photo-footer strong{font-size:10px}.download{font-size:10px}.request-card h2{font-size:25px}.status-log{max-height:260px}.bottom{display:block;margin-top:25px;font-size:8px}.bottom>span{display:block;margin-bottom:10px}.bottom>span:first-child{margin-bottom:12px}.controls{gap:15px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
