:root { color-scheme:light; }
body.guide-app { background:#fff; color:#101010; font-family:-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif; font-size:15px; line-height:1.4; }
.guide-app .guide-shell { width:100%; max-width:660px; margin:0 auto; padding:clamp(30px,8vh,80px) 20px 70px; }
.guide-app .hidden { display:none!important; }
.guide-app .guide-title { color:#080808; font-size:clamp(29px,7vw,48px); font-weight:750; letter-spacing:-.06em; line-height:1.05; margin:0 0 10px; overflow-wrap:break-word; }
.guide-app .guide-subtitle { color:#5b5b5b; font-size:clamp(15px,3.5vw,19px); font-weight:400; line-height:1.35; letter-spacing:-.015em; margin:0 0 27px; }
.guide-app .divider-line { height:1px; background:#dedede; margin-bottom:23px; }
.guide-app .timer-strip { display:flex; align-items:center; justify-content:space-between; gap:14px; margin:0 0 22px; }
.guide-app .timer-caption { color:#424242; display:flex; align-items:center; gap:9px; font-size:14px; font-weight:500; line-height:1.25; }
.guide-app .timer-caption svg { width:20px; height:20px; flex-shrink:0; }
.guide-app .timer { color:#101010; letter-spacing:-.035em; font-weight:650; font-variant-numeric:tabular-nums; font-size:clamp(20px,5vw,27px); white-space:nowrap; }
.guide-app .video-frame { width:100%; position:relative; overflow:hidden; background:#101010; aspect-ratio:16 / 9; margin:0 0 18px; border-radius:0; }
.guide-app .video-frame iframe { width:100%;height:100%;border:0; }
.guide-app .video-placeholder { display:flex; flex-direction:column; gap:18px; justify-content:center; align-items:center; width:100%; height:100%; background:#111; color:#fff; font-size:13px; letter-spacing:.02em; }
.guide-app .video-triangle { font-size:38px; color:#fff; font-weight:400; }
.guide-app .primary-action { display:flex; align-items:center; justify-content:center; gap:12px; padding:19px 24px; min-height:60px; width:100%; color:#fff; background:#00852d; border:1px solid #00852d; border-radius:0; font-family:inherit; font-size:17px; font-weight:700; line-height:1.1; letter-spacing:-.02em; text-align:center; text-decoration:none; cursor:pointer; transition:background .15s ease; }
.guide-app .primary-action:hover { background:#006f27; }
.guide-app .primary-action:focus-visible,.guide-app .secondary-action:focus-visible,.guide-app .text-action:focus-visible { outline:3px solid #3b82f6; outline-offset:3px; }
.guide-app .primary-action span { font-size:20px; }
.guide-app .guide-footer { text-align:center; margin:30px 0 0; padding:0; color:#888; font-size:11px; }
.guide-app .guide-footer a { color:#757575; text-underline-offset:3px; }
.guide-app .status-view { min-height:330px; display:flex; flex-direction:column; align-items:stretch; justify-content:center; }
.guide-app .status-view h1 { font-size:clamp(30px,7vw,44px); color:#111; letter-spacing:-.055em; line-height:1.1; margin:0 0 16px; }
.guide-app .status-view p { font-size:15px; color:#5d5d5d; margin:0 0 25px; line-height:1.5; }
.guide-app .status-view .small-note { font-size:12px; margin-top:12px; }
.guide-app .lock-icon { width:34px; height:34px; margin-bottom:22px; }
.guide-app .secondary-action { display:flex; align-items:center; justify-content:center; padding:15px 20px; color:#111; background:#fff; border:1px solid #bcbcbc; border-radius:0; font-size:15px; font-weight:600; text-decoration:none; cursor:pointer; min-height:54px; }
.guide-app .text-action { display:inline-flex; align-items:center; align-self:flex-start; padding:8px 0; color:#555; background:none; border:0; font-size:13px; text-decoration:underline; text-underline-offset:4px; cursor:pointer; }
.guide-app .action-stack { display:grid; gap:10px; margin-top:20px; }
.guide-app .status-view .fields { display:grid; gap:18px; margin-top:20px; }
.guide-app .fields .field>label { color:#111; }
.guide-app .fields select,.guide-app .fields textarea { background:#fff; color:#111; border:1px solid #ccc; border-radius:0; font-size:15px; }
.guide-app .checkline label { color:#444; }.guide-app .checkline a { color:#111; }
.guide-app .spinner { border:3px solid #e2e2e2; border-top-color:#00852d; }
@media(max-width:480px){.guide-app .guide-shell{padding:38px 18px 50px}.guide-app .guide-title{font-size:clamp(28px,7.5vw,34px);margin-bottom:9px}.guide-app .guide-subtitle{font-size:15px;margin-bottom:23px}.guide-app .timer-strip{align-items:flex-start;gap:8px}.guide-app .timer-caption{font-size:12px;max-width:180px}.guide-app .timer{font-size:22px}.guide-app .primary-action{font-size:16px;min-height:58px;padding:17px 15px}}
