/* Independent visual study — GD working guide */
:root{--ink:#20342f;--green:#246144;--accent:#7bbb25;--muted:#626f6b;--line:#dde5e1;--bg:#f4f7f5}
body{background:var(--bg);color:var(--ink);line-height:1.75;-webkit-font-smoothing:antialiased}
button,a,summary,input{ -webkit-tap-highlight-color:transparent }
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #3778cf;outline-offset:4px}
.preview-notice{background:#183e30;color:#e8f4ec;font-size:14px}
.preview-notice>div{max-width:1200px;margin:auto;min-height:40px;padding:7px 24px;display:flex;align-items:center;gap:12px}
.preview-badge{font-weight:700;letter-spacing:.04em}
.preview-description{color:#c4d9cd;border-left:1px solid #628271;padding-left:12px}
.preview-notice a{margin-left:auto;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}
header{height:100px;padding:0 max(24px,calc((100vw - 1152px)/2));background:#fff;border-bottom:1px solid #edf1ee}
.brand{gap:24px;font-size:18px;letter-spacing:.03em}
.brand-logo{width:145px;height:auto}
.brand-title{padding-left:24px;border-left:1px solid #dbe3dc;font-weight:650}
.header-end>span{background:#f1f5ed;color:#496742;padding:6px 14px;border:1px solid #e1ead9;border-radius:100px;font-size:14px}
.quick-nav{border-bottom:1px solid #dbe5df;background:#fffffff5;box-shadow:0 5px 20px #203a3010}
.quick-nav nav{max-width:1200px;padding:10px 24px;gap:8px;scrollbar-width:thin;scrollbar-color:#c9d7cd transparent}
.quick-nav nav a{padding:10px 18px;min-height:44px;font-weight:600;color:#66756d;font-size:14px;border-radius:10px;transition:background .18s,color .18s}
.quick-nav nav a.active{background:#246144;color:white;box-shadow:0 3px 8px #24614422}
.quick-nav nav a:hover{background:#eaf3e5;color:#234f37}
.quick-nav nav a.active:hover{background:#1d5239;color:#fff}
.layout{max-width:1200px;padding:0 24px}
.section{margin-bottom:36px;scroll-margin-top:86px}
.prepare{padding-top:36px}
.start-heading{margin-bottom:26px}
.start-heading .eyebrow{font-size:14px;color:#426d42;letter-spacing:.07em;margin-bottom:10px}
.start-heading h1{font-size:clamp(30px,3.2vw,40px);letter-spacing:-.025em;line-height:1.45;font-weight:750}
.start-heading h1 span{color:#346b29}
.start-heading>p:last-child{font-size:16px;color:#68766f;margin:10px 0 0}
.task-grid{gap:20px;align-items:stretch}
.task-card{--task-color:#245fca;--task-bg:#edf3ff;min-height:344px;padding:24px;border:1px solid #d6e2f7;border-top:5px solid var(--task-color);border-radius:18px;background:var(--task-bg);color:var(--ink);box-shadow:0 8px 18px -13px #17479944;overflow:hidden}
.task-orange{--task-color:#986000;--task-bg:#fff4d6;border-color:#efdfb5;border-top-color:#e7aa2a;box-shadow:0 8px 18px -13px #92641133}
.task-purple{--task-color:#7246b9;--task-bg:#f2edff;border-color:#e1d5f4;border-top-color:#885bcc;box-shadow:0 8px 18px -13px #63449144}
.task-top{display:grid;grid-template-columns:auto 1fr auto;gap:10px;color:var(--task-color);font-size:14px;font-weight:650}
.task-index{border:0;width:32px;height:32px;background:var(--task-color);color:#fff;border-radius:9px;font-size:16px}
.task-icon{width:27px;height:27px;justify-self:end}
.task-card h2{font-size:28px;line-height:1.4;margin:22px 0 12px;letter-spacing:-.02em;color:#1f303b}
.task-card>p{font-size:16px;line-height:1.75;color:#546477;margin-bottom:24px}
.task-orange>p{color:#736247}.task-purple>p{color:#6a5b7d}
.task-destination{padding-top:16px;border-color:#bccbe4;gap:10px;align-items:center}
.task-orange .task-destination{border-color:#dfc78f}.task-purple .task-destination{border-color:#cfbfe7}
.task-destination small{font-size:14px;color:#65748a}
.task-orange .task-destination small{color:#74623c}.task-purple .task-destination small{color:#77648e}
.task-destination strong{font-size:15px;color:#283f62}
.task-orange .task-destination strong{color:#684816}.task-purple .task-destination strong{color:#61418c}
.task-button,.message-example>summary{display:flex;align-items:center;justify-content:center;min-height:48px;margin-top:18px;padding:11px 16px;border-radius:10px;font-size:16px;font-weight:650;background:var(--task-color);color:#fff;box-shadow:0 3px 8px #23365010;border:1px solid transparent;transition:filter .18s,box-shadow .18s}
.task-orange .task-button{color:#523500;background:#f2bd43;border-color:#e7ac2e}
.message-example>summary{color:#fff;background:var(--task-color)}
.task-button:hover,.message-example>summary:hover{background:var(--task-color);filter:brightness(.95);box-shadow:0 5px 12px #23365020}
.task-orange .task-button:hover{background:#f2bd43}
.message-example{margin:0;padding:0;border:0}
.message-example p{background:#ffffffa6;color:#594878;font-size:16px;line-height:1.8;padding:16px;margin-bottom:0}
.upload-note{padding:18px 22px;background:#ecf2e9;border:1px solid #d9e5d3;border-radius:12px;gap:18px;margin:22px 0 14px;font-size:14px;line-height:1.8}
.upload-note strong{color:#356330}.upload-note p{color:#5c7055}
.document-details{background:#fff;border:1px solid #d9e3dc;border-radius:12px;margin-top:14px}
.document-details>summary{padding:19px 22px;font-size:16px;color:#304f3e;min-height:56px}
.document-details[open]{padding:0 22px 22px}.document-details[open]>summary{padding-left:0;padding-right:0}
.document-details .card{background:#f8faf8;border-color:#e0e8e0}
.card-no{background:#e4efdb;color:#436c28;font-size:14px;font-weight:700;width:30px;height:30px}
.process-title{display:block;padding:20px 0 28px}
.process-title>span{font-size:26px;letter-spacing:-.02em;color:#273f33}
.process-title p{margin-top:7px;font-size:14px;color:var(--muted)}
.workflow-step{padding:30px;border:1px solid #dce5df;border-radius:20px;background:#fff;box-shadow:0 8px 30px -22px #25423344}
.yellow{--module:#a77708;--tint:#fffae9}.orange{--module:#b55e28;--tint:#fff4eb}.green{--module:#27724c;--tint:#eff7f0}.purple{--module:#7550a5;--tint:#f7f2fc}.blue{--module:#306c45;--tint:#eff6ea}
.step-heading{background:var(--tint);margin:-30px -30px 26px;padding:24px 30px;border-bottom:1px solid #e3e8e0;gap:18px;border-radius:20px 20px 0 0}
.step-number{width:54px;height:54px;border-radius:14px;background:var(--module);color:#fff;font-size:24px;font-weight:750;box-shadow:0 4px 10px #283c2212}
.step-heading .eyebrow{font-size:14px;letter-spacing:.02em;color:#717769;margin-bottom:5px}
.step-heading h2{font-size:26px;line-height:1.45;letter-spacing:-.025em}
.meter-layout{gap:30px;align-items:start}
.instruction-list>div{padding:16px 0;gap:16px;border-color:#e4e9e3}
.instruction-list span{border-radius:7px;background:#fff4ce;color:#87650e;padding:5px 12px;font-size:14px}
.instruction-list p{font-size:16px;line-height:1.9}
.meter-photo{border-radius:14px;background:#f4f6f5;border-color:#e0e5df}
.meter-photo img{height:300px;object-fit:contain;object-position:center;background:#edf0ec}
.meter-photo span{background:#f8faf7;color:#4e6654;padding:12px;font-size:14px;min-height:46px}
.note{border-radius:0 12px 12px 0;background:#f2f6ef;border-color:#7fac57;font-size:16px;padding:18px 20px}
.note strong{font-size:16px}.note p{font-size:16px;line-height:1.8}
.note.warning{background:#fff4e7;border-color:#cd914b;color:#614c36}
.meter-layout .note{margin-top:22px;background:#fffae9;border-color:#d2b349}
.card{padding:24px;background:#fff;border-color:#dfe6df;border-radius:14px}
.card h3{font-size:21px;line-height:1.55;letter-spacing:-.02em;margin:9px 0 12px}
.card p,.card li{font-size:16px;line-height:1.85}
.card .muted{font-size:14px;color:#6d7970}
.mini-label{font-size:14px;font-weight:650;letter-spacing:.02em;color:#536e55}
.poster-card{padding:26px;background:#fff8ef;border:1px solid #f0e1ce;border-radius:14px;gap:30px;margin-bottom:20px}
.poster-card .mini-label{color:#a36a31}.poster-card p{font-size:16px;line-height:1.85}.poster-card small{font-size:14px}
.poster-list{font-size:16px;gap:8px 25px;padding-left:24px}
.poster-list li::marker{color:#b47b3b;font-weight:700}.poster-list li{padding:6px 0}
.setup-grid,.management-grid{gap:20px}
.supplies{gap:8px}.supplies span{border-radius:6px;border-color:#e8dfd1;background:#fffaf3;padding:5px 11px;font-size:14px}
.management-grid .card{background:#f9fcf9;border-color:#dbe7da}
.management-grid .mini-label{color:#427044}.management-grid .prohibition{background:#fff9f3;border:1px solid #efddcc}
.image-link{display:inline-flex;align-items:center;min-height:44px;padding:8px 0;color:#33694a;border-bottom:1px solid #adc5b4;font-size:14px;font-weight:600;line-height:1.5}
.image-link:hover{color:#17442b;border-color:#17442b}
.photo-strip{border-radius:14px}.photo-strip span{font-size:14px;padding:15px 20px;background:#f8faf7}
.timing-alert{background:#f6f0fc;border:1px solid #e6daee;color:#755589;padding:17px 20px;font-size:16px;border-radius:12px}
.timing-alert span{color:#72647b;font-size:16px}
.record-grid{gap:22px;grid-template-columns:1fr 1fr}
.record-card{border:1px solid #dedee7;border-radius:15px;overflow:hidden;background:white}
.record-photo{height:auto;min-height:0;aspect-ratio:16/10;background:#f0f2ef}
.record-photo img{display:block;height:100%;width:100%;object-fit:cover}
.record-photo span{bottom:12px;right:12px;padding:7px 13px;border-radius:8px;font-size:14px;min-height:38px;box-shadow:0 2px 8px #0002}
.record-body{padding:24px}.record-body h3{font-size:21px;margin:13px 0 10px}.record-body p{font-size:16px;line-height:1.85}
.stage{font-size:13px;padding:5px 10px;border-radius:6px;line-height:1.7}.stage.gold{background:#f2eafb;color:#745193}
.record-action{border-color:#e9e3ed;color:#746284;font-size:14px!important;padding-top:15px;margin-bottom:0}
.delivery{background:#f5f7f3;border:1px solid #e0e6dc;color:#365542;padding:18px 22px;border-radius:12px;gap:20px;font-size:16px}
.delivery span{color:#627160}.section-footnote{font-size:14px;color:#747970;margin:14px 0 0}
.check-panel{border:1px solid #dce6d9;border-radius:14px;overflow:hidden;background:#fff}
.check-top{background:#e9f1e4;color:#234936;padding:24px;align-items:center}
.check-top strong{font-size:24px;letter-spacing:-.02em}.check-top p{font-size:14px;color:#647560;margin-top:6px;max-width:none}
.check-top .text-button{font-size:14px;min-height:44px;border-color:#c6d8bd;background:#f8fbf6;color:#4d6943;padding:9px 13px}
.check-top .text-button:hover{background:#fff;color:#234936}
progress{height:7px;background:#e6ece2}progress::-webkit-progress-bar{background:#e6ece2}progress::-webkit-progress-value{background:#6ba73c}progress::-moz-progress-bar{background:#6ba73c}
.readiness{margin:22px 24px 0;border-radius:10px;border:1px solid #ecd4b4;border-left:4px solid #c29145;background:#fff8ed;padding:18px;color:#775328}
.readiness strong{font-size:17px;line-height:1.6}.readiness p{font-size:15px;margin-top:6px}
.readiness.ready{background:#eef8e7;border:1px solid #bad5a4;border-left:4px solid #689e36;color:#356126}
.check-group{padding-top:24px}.check-group>h3{font-size:18px!important;color:#37613d!important;margin:0 24px 14px!important}
#checklist .checks{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 24px 20px}
.check-row{padding:16px;border:1px solid #e0e7de;border-radius:11px;background:#fff;transition:background .15s,border-color .15s}
.check-row:has(input:checked){background:#f0f8e9;border-color:#bbd6a7}
.check-row .check-item{font-size:16px;padding:0 0 4px!important;gap:12px;line-height:1.65;min-height:44px}
.check-item input{accent-color:#5a902f;width:23px;height:23px;margin:3px 0 0}
.check-item span small{font-size:14px;margin-top:6px;line-height:1.75;color:#626f5b}
.check-item:has(input:checked)>span{color:#356024}
.check-row details{margin-left:35px;margin-top:0}
.check-row summary{font-size:14px;color:#567747;min-height:44px;padding:10px 0;line-height:1.7}
.check-row details p{font-size:15px;line-height:1.9;background:#f6f8f3;border:1px solid #e1eadb;border-radius:8px;color:#52674a;padding:13px;margin:0}
.flow-tag{font-size:12px;background:#edf1e9;color:#65785a;border-radius:4px;margin:3px 0 0 6px;padding:2px 6px}
.check-group+.check-group{border-top:1px solid #e2e9de;margin-top:2px}
.check-footer{font-size:14px;color:#6b7664;background:#f8faf6;padding:17px 24px;border-color:#e1e8dc;line-height:1.8}
#day,#downloads{padding:18px 0 0}.section-head{margin:0 0 22px!important}.section-head h2{font-size:27px;letter-spacing:-.02em}
.section-head .eyebrow{font-size:14px;letter-spacing:.06em;color:#6c8067;margin-bottom:7px}
.day-flow{background:#264d3b;border-radius:15px;padding:28px;gap:26px;grid-template-columns:repeat(3,minmax(0,1fr))}
.day-flow article>span{width:29px;height:29px;background:#d3e9b2;color:#365428;font-size:14px}
.day-flow h3{font-size:18px}.day-flow p{font-size:15px;line-height:1.8;color:#d1e0d4}
.download-grid{gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}
.download{gap:16px;min-height:108px;padding:20px;border-radius:13px;border-color:#dce5dc;transition:border-color .18s,box-shadow .18s;background:#fff}
.download:hover{border-color:#82a56c;box-shadow:0 4px 16px #36562e0d}
.file-type{display:grid;place-items:center;width:52px;height:58px;min-width:52px;padding:0;border:1px solid #d9e8cf;background:#f1f7ed;color:#49763a;border-radius:9px;font-weight:650;font-size:13px;letter-spacing:.01em}
.download[data-format=pdf] .file-type{background:#fff1ed;border-color:#f1d8cd;color:#a25e48}
.download[data-format=jpg] .file-type{background:#edf3fd;border-color:#d6e3f5;color:#355b8a}
.download>div{min-width:0}.download strong{font-size:16px;line-height:1.65;display:block;color:#2e4938}.download small{font-size:14px;line-height:1.65;margin-top:3px;color:#65715f}
.download .download-action{margin-left:auto;font-size:14px!important;color:#41643a;white-space:nowrap;flex-shrink:0;background:#f1f6ed;padding:8px 12px;border-radius:8px;line-height:1.5}
.source-note{border-top:1px solid #dbe4d8;margin-top:30px;padding:24px 0 0;font-size:14px;color:#65715f;line-height:1.9}
.source-note strong{font-size:16px;color:#4b6144}.source-note p{margin-top:9px}
footer{font-size:14px;color:#65715f;padding:24px 0 36px;margin-top:36px;align-items:center}footer a{color:#486340;min-height:44px;display:flex;align-items:center;white-space:nowrap}
dialog{border-radius:16px;padding:22px}dialog::backdrop{background:#12251cdb}.dialog-head{font-size:16px;line-height:1.6;gap:18px}.dialog-head button{min-width:44px;min-height:44px}dialog p{font-size:14px}
#materials-dialog .dialog-head{background:#f4f7ed;border-color:#e0e8d5}
#materials-dialog .dialog-head h2{color:#344f28}.materials-download-button{background:#fffaf0;border-color:#e6d4a6}.materials-download-button:hover{background:#fff5dc}
.materials-download-button strong{color:#725724}.materials-section-title .text-button{font-size:14px}#materials-dialog p.preview-hint{font-size:14px}
#material-proof:target{border-color:#92ae65;box-shadow:0 0 0 3px #e0edc9}
@media(max-width:1020px){.task-card{padding:21px}.task-card h2{font-size:25px}.task-grid{gap:15px}.task-destination{flex-wrap:wrap;gap:3px 10px}.task-destination strong{font-size:14px}.task-top{gap:8px}.task-label{font-size:14px}.task-icon{width:24px;height:24px}.record-card{display:block}.day-flow{grid-template-columns:1fr;gap:20px}}
@media(max-width:760px){
 .preview-notice>div{padding:7px 18px;font-size:13px;gap:8px;min-height:38px}.preview-description{display:none}
 header{height:86px;padding:0 18px}.brand{gap:14px;font-size:16px}.brand-logo{width:113px}.brand-title{padding-left:14px;line-height:1.5;max-width:175px}.header-end{display:none}
 .quick-nav nav{padding:9px 18px;gap:6px}.quick-nav nav a{font-size:14px;padding:9px 13px;min-height:44px}
 .layout{padding:0 18px}.prepare{padding-top:28px}.start-heading{margin-bottom:22px}.start-heading .eyebrow{font-size:13px;letter-spacing:.02em}.start-heading h1{font-size:30px;line-height:1.5}.start-heading h1 span{display:block}.start-heading>p:last-child{font-size:16px;margin-top:10px;line-height:1.8}
 .task-grid{grid-template-columns:1fr;gap:16px}.task-card{min-height:0;padding:22px;border-radius:15px}.task-card h2{font-size:27px;margin:16px 0 10px}.task-card>p{margin-bottom:20px;font-size:16px}.task-top{font-size:14px}.task-icon{width:27px;height:27px}.task-destination{flex-wrap:nowrap;gap:10px}.task-destination strong{font-size:15px}.task-button,.message-example>summary{font-size:16px;margin-top:16px;min-height:48px}
 .upload-note{display:block;margin-top:18px;padding:18px;font-size:14px}.upload-note p{margin-top:6px}.document-details>summary{padding:17px 18px;line-height:1.7;font-size:16px}.document-details[open]{padding:0 18px 18px}
 .section{margin-bottom:26px;scroll-margin-top:80px}.process-title{padding:10px 0 23px}.process-title>span{font-size:24px}.process-title p{font-size:14px;line-height:1.8}
 .workflow-step{padding:20px;border-radius:16px}.step-heading{margin:-20px -20px 22px;padding:21px 20px;border-radius:16px 16px 0 0;gap:12px;align-items:flex-start}.step-number{width:44px;height:44px;border-radius:12px;font-size:20px;margin-top:3px}.step-heading .eyebrow{font-size:13px;line-height:1.7;margin-bottom:4px}.step-heading h2{font-size:22px;line-height:1.55;letter-spacing:-.03em}
 .meter-layout{grid-template-columns:1fr;gap:22px}.instruction-list>div{gap:12px;padding:15px 0}.instruction-list p{font-size:16px;line-height:1.85}.instruction-list span{padding:5px 9px;font-size:14px}.meter-photo img{height:auto;max-height:340px;width:100%;object-fit:contain}
 .two-col,.management-grid,.setup-grid{grid-template-columns:1fr;gap:15px}.card{padding:20px;border-radius:12px}.card h3{font-size:20px}.card p,.card li{font-size:16px}.mini-label{font-size:14px}.image-link{font-size:14px;line-height:1.7}
 .poster-card{padding:20px;grid-template-columns:1fr;gap:18px}.poster-list{font-size:15px;gap:4px 17px;padding-left:22px}.poster-card small{font-size:14px;line-height:1.8}.note,.meter-layout .note{padding:16px;font-size:16px}.note p{font-size:16px}
 .timing-alert{font-size:16px;padding:16px}.timing-alert span{font-size:16px}.record-grid{grid-template-columns:1fr;gap:18px}.record-body{padding:20px}.record-body h3{font-size:20px}.record-body p{font-size:16px}.record-photo{height:auto;aspect-ratio:16/10}.stage{font-size:13px}.delivery{display:block;padding:16px;font-size:16px}.delivery span{margin-top:6px;display:block}.section-footnote{font-size:14px;line-height:1.8}
 .check-top{padding:20px 16px;gap:12px;align-items:flex-start}.check-top strong{font-size:20px;line-height:1.5;display:block}.check-top p{font-size:14px;line-height:1.7}.check-top .text-button{font-size:14px;padding:9px 10px}.readiness{margin:16px 14px 0;padding:15px}.readiness strong{font-size:16px}.readiness p{font-size:14px;line-height:1.8}.check-group>h3{font-size:17px!important;margin:0 14px 12px!important}.check-group{padding-top:22px}#checklist .checks{grid-template-columns:1fr;padding:0 14px 18px;gap:10px}.check-row{padding:15px 13px}.check-row .check-item{font-size:16px;gap:11px}.check-row details{margin-left:34px}.check-footer{padding:16px;font-size:14px}
 #day,#downloads{padding:12px 0 0}.section-head{margin-bottom:20px!important}.section-head h2{font-size:24px}.section-head .eyebrow{font-size:13px}.day-flow{grid-template-columns:1fr;padding:23px;gap:18px}.day-flow h3{font-size:18px}.day-flow p{font-size:16px}
 .download-grid{grid-template-columns:1fr;gap:12px}.download{padding:17px 14px;gap:12px;min-height:104px}.file-type{width:44px;height:52px;min-width:44px;font-size:12px}.download strong{font-size:16px}.download small{font-size:14px}.download .download-action{font-size:14px!important;padding:8px 9px}.source-note{font-size:14px;padding-top:22px;margin-top:24px}.source-note p{margin-top:12px}
 footer{font-size:13px;align-items:flex-start;gap:12px;margin-top:26px;padding-bottom:24px}.dialog-head{font-size:15px}dialog{padding:16px}
}
@media(max-width:360px){.brand{gap:10px;font-size:14px}.brand-logo{width:100px}.brand-title{padding-left:10px}.layout{padding:0 14px}.workflow-step{padding:16px}.step-heading{margin:-16px -16px 20px;padding:19px 16px;gap:10px}.step-heading h2{font-size:21px}.task-card{padding:20px}.download{gap:10px;padding:16px 12px}.download .download-action{padding:8px 6px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media print{.preview-notice{display:none}.workflow-step,.task-card,.card{box-shadow:none}.step-heading{background:#f5f5f5}.step-number{color:#222;background:#e5e5e5}.check-top{background:#f2f2f2}.readiness{margin-top:16px}.task-grid{grid-template-columns:repeat(3,1fr)}.task-card{min-height:0}}

/* Grouped reference downloads */
.download-group + .download-group{margin-top:30px}
.download-group-title{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-size:18px;line-height:1.5;color:#36533d}
.download-group-title::before{content:"";width:5px;height:20px;border-radius:3px;background:#82a56c;flex:none}
#downloads-posters::before{background:#c69059}
#downloads-reviews::before{background:#7194bd}
.download-guidance{margin:24px 0 0;padding:16px 18px;border-radius:10px;background:#edf3e8;color:#55664e;font-size:14px;line-height:1.8}
@media(max-width:760px){.download-group + .download-group{margin-top:26px}.download-group-title{font-size:18px;margin-bottom:12px}.download-guidance{padding:14px 16px}}
