:root{--navy:#193550;--ink:#1c3249;--muted:#53677b;--orange:#ee7832;--blue:#1b75b8;--green:#15785b;--border:#e0e6e9;--cream:#fff5e8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f6f5f2;color:var(--ink);font:15px/1.5 system-ui,-apple-system,"Segoe UI",Arial,sans-serif}button,input{font:inherit}button{cursor:pointer}a{color:#b95b21}a:hover{text-decoration-thickness:2px}.sitebar{background:#303234;border-bottom:3px solid #454647;color:#fff}.sitebar-inner{max-width:1380px;padding:13px 23px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:24px}.wordmark{text-decoration:none!important;font-size:29px;font-weight:850;font-style:italic;letter-spacing:-1.5px;color:#fff}.wordmark span{color:#f7a21c}.sitebar nav{display:flex;gap:25px;align-items:center}.sitebar nav a{font-size:13px;font-weight:650;color:#f2f4f6;text-decoration:none}.sitebar nav a:hover{color:#f4ab6d}.wrap{max-width:1380px;margin:auto;padding:0 23px 24px}.hero{background:linear-gradient(100deg,#fffaf2 13%,#fff0da 100%);border:1px solid #f0dec7;border-top:0;border-radius:0 0 20px 20px;padding:27px 35px 25px;display:flex;gap:35px;justify-content:space-between;align-items:center;position:relative;overflow:hidden}.hero:after{content:'♫';position:absolute;color:rgba(233,145,65,.10);font-size:215px;right:22%;top:-85px;pointer-events:none}.eyebrow{color:#b8632e;font-size:11px;letter-spacing:.09em;font-weight:900}.hero h1{font-size:clamp(31px,3.9vw,52px);font-weight:900;letter-spacing:-.05em;line-height:1.12;margin:5px 0 7px;color:#122d47}.hero h1 em{font-style:normal;color:#e77531}.strap{font-size:19px;font-weight:800;color:#213851;margin:0 0 8px}.intro{font-size:15px;max-width:755px;margin:0;color:#43596e;line-height:1.48}.hero-foot{font-size:12px;margin-top:11px;color:#5c6b76}.hero-foot a{font-weight:750}.little-music{color:#e8752f}.hero-stat{flex:none;min-width:280px;max-width:310px;display:flex;gap:15px;align-items:center;background:#fff9ef;border:1px solid #efd8bc;padding:20px 18px;border-radius:15px;z-index:1;box-shadow:0 8px 18px rgba(65,48,18,.04)}.stat-note{font-size:52px;line-height:1;color:#e66c21}.hero-stat strong{display:block;font-size:27px;line-height:1.1;color:#16324e}.hero-stat span{display:block;font-weight:800}.hero-stat small{font-size:11px;color:#566a7a;display:block;line-height:1.35;margin-top:6px}.statusbar{background:#e9f3fa;color:#2e6283;border-radius:8px;padding:8px 13px;margin:15px 0;font-size:13px;display:none}.statusbar:not(:empty){display:block}.statusbar.error{background:#fff0ea;color:#8a3927}.wizard{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;margin-top:16px;align-items:stretch}.step{min-width:0;background:#fff;border:1px solid #dfe3e7;border-radius:15px;overflow:hidden;box-shadow:0 7px 16px rgba(11,29,45,.06)}.step-blue{border-color:#cee1ef}.step-green{border-color:#cce7dc}.step-orange{border-color:#f3d7c2}.step-head{display:flex;align-items:center;gap:14px;padding:15px 18px;color:#fff;min-height:85px}.step-blue .step-head{background:linear-gradient(110deg,#1975b6,#0c639e)}.step-green .step-head{background:linear-gradient(110deg,#177f63,#116b54)}.step-orange .step-head{background:linear-gradient(110deg,#f5742c,#e95a19)}.number{background:#fff;border-radius:100%;width:37px;height:37px;display:grid;place-items:center;font-size:22px;flex:none}.step-blue .number{color:#1975b6}.step-green .number{color:#157e61}.step-orange .number{color:#de5c22}.step-head h2{font-size:18px;line-height:1.15;margin:0 0 3px;font-weight:850;letter-spacing:-.025em}.step-head p{margin:0;font-size:12px;color:rgba(255,255,255,.96)}.step-body{padding:17px 17px 18px}.step-blue .step-body{background:linear-gradient(#f1f8fe,#fff 54%)}.step-green .step-body{background:linear-gradient(#f0faf4,#fff 62%)}.step-orange .step-body{background:linear-gradient(#fff8f3,#fff 55%)}.field-label,.group-title{display:block;font-weight:800;font-size:12px;color:#263c51;margin:0 0 9px}.year-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.year-chip{background:#fff;border:1px solid #cbdfea;border-radius:7px;padding:9px 6px;display:flex;align-items:center;gap:7px;cursor:pointer;color:#2d4356;font-weight:750;font-size:12px;min-width:0}.year-chip input{width:16px;height:16px;accent-color:#e87930;cursor:pointer;flex:none}.year-chip:has(input:checked){background:#eaf5fe;border-color:#9ccae8}.quick-links{display:flex;justify-content:space-between;gap:7px;margin:11px 0 19px}.text-btn{border:0;background:none;color:#1a699d;padding:2px;text-decoration:underline;text-underline-offset:3px;font-weight:750;font-size:12px}.text-btn:focus-visible,.ai-btn:focus-visible{outline:3px solid #e78035;outline-offset:3px}.search-wrap{display:flex;align-items:center;background:#fff;border:1px solid #c8d6df;border-radius:8px;padding:0 12px;gap:10px}.search-wrap span{font-size:23px;color:#53768d}.search-wrap input{min-width:0;width:100%;border:0;outline:0;height:43px;background:transparent;font-size:13px}.selection-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px}.selection-top strong{font-size:13px;color:#155c88}.browse-area{margin-top:8px;background:#fff;border:1px solid #d9e4eb;border-radius:9px;padding:9px}.browse-actions{display:flex;justify-content:space-between;gap:8px;margin-bottom:7px}.piece-list{max-height:270px;overflow:auto}.piece-row{padding:7px 2px;border-bottom:1px solid #edf1f4;display:flex;align-items:flex-start;gap:9px;font-size:12px}.piece-row:last-child{border:0}.piece-row input{width:16px;height:16px;margin-top:3px;accent-color:#e67731;flex:none}.piece-row b,.piece-row small{display:block}.piece-row b{line-height:1.2}.piece-row small{color:#63778a;margin-top:3px;line-height:1.25}.more-btn{width:100%;margin-top:8px;padding:7px;border:1px solid #bed2dd;border-radius:7px;background:#f1f7fb;color:#235e85;font-weight:700;font-size:12px}.tip{margin-top:16px;background:#fff6e9;border:1px solid #f2ddbf;padding:10px 12px;border-radius:8px;color:#5d584e;font-size:12px}.tip strong{display:block;color:#9e4d1b;margin-bottom:3px}.field-group{padding-bottom:12px;margin-bottom:11px;border-bottom:1px solid #d8e9dc}.field-group:last-of-type{border:0;margin-bottom:0}.group-title{margin-bottom:6px}.choice{display:flex;align-items:center;gap:10px;padding:5px 0;font-size:13px;cursor:pointer;font-weight:560}.choice input{width:18px;height:18px;accent-color:#df782f;flex:none;cursor:pointer}.type-option{display:flex;align-items:center;gap:12px;border:1px solid #e3e5e8;padding:12px 11px;border-radius:9px;background:#fff;margin-bottom:9px;cursor:pointer;min-height:82px}.type-option:has(input:checked){background:#fff2e9;border-color:#f6caa9}.type-option input,.format-option input{width:18px;height:18px;accent-color:#e97830;flex:none}.option-icon{font-size:26px;color:#d66d2e;width:30px;text-align:center;flex:none}.type-option strong{display:block;font-size:13px;color:#243950}.type-option small{display:block;font-size:12px;color:#617285;line-height:1.37;margin-top:3px}.format-title{margin-top:15px;margin-bottom:9px}.format-options{display:grid;grid-template-columns:1fr 1fr;gap:9px}.format-option{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e3e5e8;border-radius:8px;padding:11px 8px;cursor:pointer;min-width:0}.format-option:has(input:checked){border-color:#e9b082;background:#fff5ed}.format-option strong,.format-option small{display:block;font-size:12px;line-height:1.2}.format-option small{font-size:11px;color:#718193;margin-top:3px}.format-icon{flex:none;border-radius:4px;color:#fff;text-align:center;font-weight:900;font-size:12px;padding:5px}.format-icon.excel{background:#1f8558;min-width:28px}.format-icon.pdf{background:#bd483e}.download-btn{width:100%;background:#f17732;color:white;box-shadow:0 3px 0 #c35924;font-size:16px;font-weight:900;border:0;border-radius:8px;margin-top:17px;padding:14px 7px;min-height:54px}.download-btn:hover{background:#da6423}.download-btn:disabled{background:#c7c8c9;box-shadow:none;cursor:not-allowed}.download-btn span{font-size:20px;margin-right:6px}.download-info{font-size:12px;min-height:24px;text-align:center;color:#51657a;margin:10px 0 0}.privacy{font-size:11px;color:#62778b;text-align:center;margin:8px 0 0}.preview-wrap{margin-top:15px;border-radius:16px;border:1px solid #d0e3f3;background:linear-gradient(#eef7ff,#f8fcff);padding:22px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:17px}.section-heading h2{color:#193753;font-size:26px;line-height:1.2;letter-spacing:-.035em;margin:4px 0 5px;font-weight:900}.section-heading p{margin:0;font-size:13px;color:#587089}.preview-pill{background:#fff;color:#1b709f;border:1px solid #c5e0ee;padding:9px 13px;border-radius:60px;font-size:12px;font-weight:800;white-space:nowrap}.preview-layout{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(220px,.8fr);gap:17px;align-items:stretch}.preview-sheet{background:#fff;border:1px solid #e5e8e9;border-radius:10px;padding:13px;box-shadow:0 7px 17px rgba(15,44,69,.09);min-width:0;min-height:235px}.sheet-top{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px}.sheet-top span:first-child{background:#1b805a;color:#fff;padding:6px 12px;border-radius:5px;font-size:11px;font-weight:900}.sheet-top span:last-child{font-size:11px;color:#76879a}.preview-content{overflow:auto}.preview-table{border-collapse:collapse;width:100%;font-size:12px;color:#374a5c;table-layout:fixed}.preview-table td,.preview-table th{border:1px solid #d7e0e5;padding:8px;text-align:left;vertical-align:top;overflow-wrap:anywhere}.preview-table th{background:#eef5f8;color:#234159;font-size:11px}.preview-table tbody tr:nth-child(even){background:#fafcfd}.preview-table .dim{color:#80909f}.preview-notecard{border:1px solid #edd2b9;border-left:4px solid #e87932;border-radius:9px;padding:13px;margin-bottom:7px;background:#fffdf9}.preview-notecard h3{font-size:17px;margin:0;color:#193550}.preview-notecard small{display:block;color:#687a8d;margin:3px 0 9px}.preview-notecard p{margin:4px 0;font-size:12px;line-height:1.5}.preview-notecard b{color:#b35c26}.preview-aside{background:#fff;border:1px solid #e2e8ec;border-radius:10px;padding:20px}.preview-aside h3{margin:0 0 9px;color:#1c3956;font-size:17px}.preview-aside p{color:#506579;font-size:13px;margin:0 0 12px;line-height:1.55}.no-links{background:#fdf4e8;border:1px solid #f2dfc9;border-radius:8px;padding:12px;font-size:12px;color:#754a31;line-height:1.55}.aside-help{margin-top:17px;border-top:1px solid #e5e9ea;padding-top:13px}.aside-help strong{font-size:13px}.aside-help p{font-size:12px;margin:5px 0}.guide-section{margin-top:26px}.guide-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.guide-cards article{background:#fff5e8;border:1px solid #f1e3d0;border-radius:12px;padding:19px}.guide-icon{font-size:26px;color:#be5b21;line-height:1.1}.guide-cards h3{font-size:14px;line-height:1.3;margin:9px 0 6px}.guide-cards p{font-size:12px;line-height:1.6;color:#556475;margin:0}footer{padding:27px 0 15px;text-align:center;color:#7a858e;font-size:11px}button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid #e97933;outline-offset:2px}@media(max-width:1100px){.wizard{grid-template-columns:1fr 1fr}.step-orange{grid-column:span 2}.step-orange .step-body{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.step-orange .type-option{margin:0}.step-orange .format-title,.step-orange .format-options,.step-orange .download-btn,.step-orange .download-info,.step-orange .privacy{grid-column:span 3}.guide-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.wrap{padding:0 14px 18px}.sitebar-inner{padding:10px 14px}.wordmark{font-size:25px}.sitebar nav{gap:13px}.sitebar nav a{font-size:11px}.sitebar nav a:last-child{display:none}.hero{padding:20px;display:block}.hero-stat{margin-top:17px;max-width:none;min-width:0}.wizard{grid-template-columns:1fr}.step-orange{grid-column:auto}.step-orange .step-body{display:block}.step-orange .type-option{margin-bottom:9px}.preview-wrap{padding:15px}.preview-layout{grid-template-columns:1fr}.section-heading h2{font-size:23px}}@media(max-width:450px){.sitebar nav a[href="#guide"]{display:none}.hero h1{font-size:33px}.strap{font-size:16px}.hero .intro{font-size:13px}.step-head{min-height:75px}.preview-pill{padding:7px;font-size:10px}.guide-cards{grid-template-columns:1fr}.format-option{justify-content:center}.sheet-top{align-items:flex-start;flex-direction:column}}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}

.required-notice{font-size:11px;color:#367052;background:#e7f7ec;padding:8px;border-radius:7px;margin:0 0 10px}.choice input:disabled{opacity:.7;cursor:not-allowed}.preview-table{min-width:670px}


/* v1.1 GUIDED WORKFLOW — single-column accordion, stronger legibility */
body {font-size:16px}
.hero{padding:22px 31px 19px;overflow:visible;gap:24px;align-items:center}
.hero:after{z-index:0}
.hero-main{position:relative;z-index:2;min-width:0;flex:1}
.hero-title-row{display:flex;align-items:center;justify-content:space-between;gap:14px;position:relative;flex-wrap:wrap}
.hero h1{font-size:clamp(32px,3.5vw,46px);margin:4px 0}
.hero .intro{font-size:15px;line-height:1.45}
.hero-stat{min-width:238px;max-width:255px;padding:13px 15px;z-index:1}
.stat-note{font-size:41px}.hero-stat strong{font-size:26px}
.ideas-control{position:relative;margin-left:auto;z-index:12}
.ideas-trigger{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;background:#e86e29;border:2px solid #cd5b1a;color:#fff;border-radius:9px;padding:10px 14px;min-height:43px;font-size:14px;font-weight:900;box-shadow:0 3px 10px rgba(69,30,0,.07);cursor:pointer}
.ideas-trigger:hover,.ideas-trigger[aria-expanded="true"]{background:#c75d20;color:#fff}
.ideas-popover{position:absolute;right:0;top:calc(100% + 11px);width:min(415px,90vw);max-height:min(70vh,620px);overflow-y:auto;background:#fff;border:1px solid #e7c3a7;border-radius:14px;box-shadow:0 18px 40px rgba(14,35,52,.24);color:#213a50;padding:19px;text-align:left}
.ideas-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:12px}
.ideas-top h2{margin:0;font-size:21px;line-height:1.23;color:#1a354d}
.ideas-close{border:1px solid #d7dde1;background:#f5f7f8;color:#263f53;font-weight:850;font-size:25px;width:37px;height:37px;line-height:1;border-radius:8px;cursor:pointer;flex:none}
.idea{display:flex;gap:13px;border-top:1px solid #e5e9ed;padding:12px 0;align-items:flex-start}
.idea-symbol{display:grid;place-items:center;flex:none;background:#fff0e4;color:#c45e23;border-radius:9px;font-size:24px;width:37px;height:37px}
.idea strong{font-size:15px}.idea p{margin:3px 0 0;font-size:14px;line-height:1.47;color:#526578}
.ideas-link{display:block;margin-top:8px;background:#fff2e8;color:#a94c16;padding:10px;border-radius:8px;font-weight:800;font-size:14px;text-decoration:none}
.wizard{display:flex;flex-direction:column;gap:13px;margin-top:15px;align-items:stretch}
.step{width:100%;overflow:visible;box-shadow:0 7px 17px rgba(11,29,45,.045)}
.step-head{width:100%;border:0;cursor:pointer;text-align:left;display:flex;align-items:center;gap:16px;min-height:79px;padding:17px 22px;border-radius:12px;color:#fff}
.step-head:hover{filter:brightness(1.045)}
.step-head h2{font-size:clamp(20px,2vw,24px);margin:0 0 3px}
.step-head p{font-size:15px}
.step-head .number{width:43px;height:43px;font-size:24px}
.step-navy .step-head{background:linear-gradient(110deg,#25445e,#1a324a)}
.step-navy .number{color:#25445e}
.step-summary{margin-left:auto;max-width:270px;color:#fff!important;font-size:13px;font-weight:750;opacity:.96;text-align:right;line-height:1.3}
.stage-chevron{font-size:28px;line-height:1;transition:transform .16s;flex:none}
.step-head[aria-expanded="false"] .stage-chevron{transform:rotate(-90deg)}
.step-body{padding:23px 25px 24px}
.step-body[hidden],.ideas-popover[hidden]{display:none!important}
.step-blue .step-body{background:linear-gradient(#f0f8ff,#fff 78%)}
.step-green .step-body{background:linear-gradient(#f0faf4,#fff 84%)}
.step-orange .step-body{display:block;background:linear-gradient(#fff8f2,#fff 75%)}
.step-navy .step-body{background:#f6faff}
.field-label,.group-title{font-size:16px;margin-bottom:12px}
.year-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.year-chip{font-size:16px;padding:13px 16px;border-radius:9px;gap:12px}
.year-chip input,.piece-row input,.choice input{width:19px;height:19px}
.quick-links{justify-content:flex-start;gap:28px;margin:13px 0 22px}
.text-btn{font-size:14px}
.search-wrap input{height:49px;font-size:16px}
.selection-top strong{font-size:16px}
.piece-list{max-height:380px}
.piece-row{font-size:15px;padding:12px 6px}
.piece-row small{font-size:13px;line-height:1.4}
.browse-actions .text-btn{font-size:13px}
.tip{font-size:14px;padding:12px 16px;line-height:1.5}
#stage2 .step-body{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
#stage2 .field-group{padding:4px 10px 10px 0;margin:0;border-bottom:0;border-right:1px solid #d8e9dc}
#stage2 .field-group:nth-of-type(3){border-right:0}
#stage2 .tip,#stage2 .step-actions{grid-column:1/-1}
.choice{font-size:16px;min-height:40px;align-items:flex-start;line-height:1.45;padding:8px 0}
#stage3 .step-body{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;align-items:stretch}
#stage3 .type-option{margin:0;align-items:flex-start;min-height:125px;padding:16px}
.type-option strong{font-size:17px}
.type-option small{font-size:14px}
#stage3 .format-title,#stage3 .format-options,#stage3 .step-actions{grid-column:1/-1}
#stage3 .format-title{margin:10px 0 0}
.format-options{display:grid;grid-template-columns:repeat(2,minmax(0,240px));gap:12px}
.format-option{padding:13px 14px}
.format-option strong{font-size:16px}.format-option small{font-size:14px}
.step-actions{display:flex;justify-content:flex-end;align-items:center;gap:17px;border-top:1px solid #e2e8eb;margin-top:16px;padding-top:18px;flex-wrap:wrap}
.action-help{color:#627589;font-size:14px;margin-right:auto}
.next-btn{border:0;color:#fff;font-weight:900;font-size:17px;cursor:pointer;border-radius:9px;padding:13px 21px;min-height:51px;box-shadow:0 3px 0 rgba(0,0,0,.13)}
.next-blue{background:#156aab}.next-green{background:#16795b}.next-orange{background:#ea6b28}
.next-btn:hover{filter:brightness(.94)}
.back-btn{background:#fff;color:#31546e;border:1px solid #b9cddd;font-size:15px;font-weight:750;padding:12px 17px;min-height:46px;border-radius:8px;cursor:pointer;margin-right:auto}
.preview-wrap{border:0;border-radius:0;padding:0;margin:0;background:none}
.preview-layout{display:block}
.preview-sheet{min-height:190px;max-width:none}
.preview-aside{margin-top:13px;padding:15px 18px;display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:15px;align-items:start}
.preview-aside h3{font-size:17px;margin:0 0 4px}
.preview-aside p,.no-links,.aside-help p{font-size:14px}
.preview-aside .aside-help{margin:0;padding:0 0 0 15px;border-left:1px solid #e5e9ea;border-top:0}
.preview-aside .no-links{margin:0}
.section-heading h2{font-size:27px}
.section-heading p{font-size:15px}
.sheet-top span:last-child{font-size:13px}
.preview-table{font-size:14px}
.preview-table td,.preview-table th{padding:10px;font-size:13px}
.preview-notecard p{font-size:14px}
.preview-actions{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid #dde5ec;margin-top:20px;padding-top:15px}
.preview-actions .download-group{width:min(100%,420px);margin-left:auto}
.preview-actions .download-btn{margin-top:0;font-size:17px}
.download-info{font-size:13px;color:#465a6f;text-align:center}
.privacy{text-align:right;font-size:13px;margin-top:6px}
.pdf-view .preview-table{border-collapse:collapse}
.pdf-view .preview-table th{background:#fff1e5;border-color:#edc9ad}
.pdf-view .preview-sheet{background:#fffdf9}
.statusbar:empty{display:none}
@media(max-width:1100px){
 .wizard{display:flex;grid-template-columns:none}
 #stage3 .step-body{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
 #stage3 .type-option{margin:0}
 #stage2 .step-body{grid-template-columns:repeat(3,minmax(0,1fr))}
 .preview-aside{grid-template-columns:1fr 1fr}
 .preview-aside .aside-help{grid-column:1/-1;border:0;border-top:1px solid #e5e9ea;padding:12px 0 0}
}
@media(max-width:820px){
 .hero{display:block;padding:19px}
 .hero-stat{margin-top:14px;max-width:none;min-width:0}
 #stage2 .step-body{grid-template-columns:1fr;gap:13px}
 #stage2 .field-group{border-right:0;border-bottom:1px solid #d8e9dc;padding-bottom:13px}
 #stage3 .step-body{display:block}
 #stage3 .type-option{margin-bottom:10px;min-height:unset}
 #stage3 .format-title{margin-top:15px}
 .step-summary{max-width:180px}
 .preview-aside{display:block}
 .preview-aside .no-links,.preview-aside .aside-help{margin-top:10px}
}
@media(max-width:550px){
 .wrap{padding:0 12px 15px}
 .hero h1{font-size:32px}
 .hero-title-row{align-items:flex-start}
 .ideas-control{margin-left:0}
 .ideas-popover{position:fixed;top:85px;left:12px;right:12px;width:auto;max-height:78vh}
 .step-head{min-height:81px;padding:14px;gap:9px}
 .step-head h2{font-size:19px}
 .step-head p{font-size:12px}
 .step-head .number{width:36px;height:36px;font-size:20px}
 .step-summary{display:none}
 .step-body{padding:17px 14px}
 .year-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
 .year-chip{font-size:13px;padding:11px 7px;gap:5px}
 .quick-links{justify-content:space-between;gap:10px}
 .field-label,.group-title{font-size:15px}
 .step-actions{flex-direction:column;align-items:stretch}
 .next-btn,.back-btn{width:100%;margin:0}
 .format-options{grid-template-columns:1fr 1fr}
 .preview-actions{display:block}
 .preview-actions .download-group{width:100%;margin-top:12px}
 .preview-wrap{padding:0}
 .section-heading h2{font-size:23px}
 .preview-table{min-width:580px}
 .sitebar nav a:nth-child(2){display:none}
 .privacy{text-align:center}
}

/* v1.1.2 — clear, teacher-friendly display. All sections initially closed. */
:root{--ink:#122c43;--muted:#354e63;--border:#b9cbd6;--cream:#ffedd7}
html{scroll-behavior:auto}
body{font-size:17px;line-height:1.48;color:#122c43;background:#f1f2f2}
.hero{background:#fff0dd;border-color:#e8c9a6;padding:20px 29px 19px}
.eyebrow{font-size:13px;color:#a64b12}
.hero .intro{font-size:17px;color:#263e53}
.hero-foot{font-size:14px;color:#324b5e}
.hero-stat{background:#fffaf2;border:2px solid #e4b88a;box-shadow:none}
.hero-stat small{font-size:13px;color:#374d60}
.hero h1{font-size:clamp(34px,3.6vw,49px)}
.strap{font-size:20px}
.wizard{gap:12px;margin-top:15px}
.step{border:2px solid #cbd5dd;border-radius:14px;box-shadow:none;overflow:hidden}
.step-head{border-radius:0;min-height:80px;padding:16px 23px}
.step-head h2{font-size:clamp(21px,2vw,26px)}
.step-head p{font-size:16px;color:#fff}
.step-summary{font-size:15px;opacity:1}
.step-body{padding:22px 27px 24px;color:#142f46}
.step-blue .step-body{background:#e8f4ff}
.step-green .step-body{background:#e4f4ec}
.step-orange .step-body{background:#fff0e4}
.step-navy .step-body{background:#eaf2f8}
.field-label,.group-title{font-size:18px;color:#17324a}
.year-chip{background:#fff;border:2px solid #a8cce7;color:#17344b;font-size:17px;font-weight:750;padding:11px 14px}
.year-chip:has(input:checked){background:#cce7fa;border-color:#3996d1}
.year-chip:hover{border-color:#207ab7;background:#dceefa}
.year-chip input,.piece-row input,.choice input,.type-option input,.format-option input{width:21px;height:21px}
.text-btn{font-size:16px;color:#095c91}
.search-wrap{border:2px solid #9bbcd1;border-radius:9px}
.search-wrap input{font-size:17px;color:#17324a}
.search-wrap input::placeholder{color:#465e71;opacity:1}
.selection-top strong{font-size:17px;color:#0c5685}
.browse-area{border:2px solid #afccdf;background:#fff}
.piece-row{font-size:16px;border-bottom-color:#d3e0e8}
.piece-row small{font-size:14px;color:#3e5b70}
.piece-row:nth-child(even){background:#f3f9fe}
.browse-actions .text-btn{font-size:15px}
.tip{background:#ffe3c0;border:2px solid #e8b87e;color:#432e20;font-size:16px;padding:11px 15px;margin-top:14px}
.tip strong{color:#924010;font-size:17px}
#stage2 .step-body{gap:18px}
#stage2 .field-group{border-color:#9ebfae}
.choice{font-size:17px;color:#19344b;min-height:40px;padding:6px 0}
.choice:has(input:checked){font-weight:650}
.required-notice{background:#c9ead8;color:#18452e;border:1px solid #83b79a;font-size:15px}
#stage3 .type-option{background:#fff;border:2px solid #d7ab8b;padding:14px;min-height:112px}
#stage3 .type-option:has(input:checked){background:#ffd7ba;border-color:#da7133}
.type-option strong{font-size:18px;color:#17324a}
.type-option small{font-size:16px;color:#334b60}
.format-option{background:#fff;border:2px solid #dfb59b}
.format-option:has(input:checked){background:#ffd7ba;border-color:#d7763a}
.format-option strong{font-size:18px}
.format-option small{font-size:15px;color:#41586a}
.section-heading{margin-bottom:12px}
.section-heading h2{font-size:25px;color:#17324b}
.section-heading p{font-size:17px;color:#354d61}
.preview-pill{background:#d9ebf8;border:2px solid #82b4d5;color:#16476b;font-size:15px}
.preview-sheet{background:#fff;border:2px solid #b1c8d7;box-shadow:none;min-height:0;padding:12px}
.sheet-top span:first-child{font-size:14px;background:#136c4e}
.sheet-top span:last-child{font-size:15px;color:#354e63}
.preview-table{font-size:15px;color:#142e43}
.preview-table th{background:#d6e9f5;color:#18344c;font-size:15px}
.preview-table td{font-size:15px;border-color:#adc3d2}
.preview-table tbody tr:nth-child(even){background:#eef6fb}
.preview-table .dim{color:#435a6b}
.preview-notecard{background:#fff9ef;border:2px solid #e4b78a;border-left:6px solid #de7634}
.preview-notecard h3{font-size:21px}
.preview-notecard p{font-size:17px;color:#19344a}
.preview-notecard small{font-size:15px;color:#3d5365}
.preview-notes{display:grid;grid-template-columns:1.3fr 1fr;gap:12px;margin-top:12px}
.preview-note{background:#d8e9f6;border:2px solid #afc8da;border-radius:10px;padding:13px 16px}
.preview-note:last-child{background:#ffe5cd;border-color:#e4b98f}
.preview-note strong{color:#17344c;font-size:17px}
.preview-note p{margin:5px 0 0;color:#273e51;font-size:16px;line-height:1.45}
.preview-note a{color:#974411;font-weight:800}
.mmc-explain{background:#fff;border-left:5px solid #377fae;margin:12px 0 0;padding:9px 14px;color:#263e52;font-size:15px}
.preview-actions{margin-top:14px;padding-top:15px;border-color:#aec5d5}
.download-info{font-size:15px;color:#243e53;min-height:0}
.privacy{font-size:14px;color:#304d63}
.download-btn{font-size:18px}
.ideas-trigger{font-size:16px}
.idea strong{font-size:17px}.idea p{font-size:16px;color:#334d62}
.ideas-link{font-size:16px}
footer{color:#3a5061;font-size:14px}
@media(max-width:820px){.preview-notes{grid-template-columns:1fr}}
@media(max-width:550px){
 body{font-size:16px}.hero{padding:17px}
 .hero .intro{font-size:16px}.hero-stat small{font-size:13px}
 .step-head{padding:15px 14px}.step-head h2{font-size:20px}.step-head p{font-size:14px}
 .step-body{padding:15px 13px 18px}
 .year-chip{font-size:15px;padding:10px 6px;gap:6px}
 .year-chip input{width:19px;height:19px}
 .year-grid{gap:6px}.text-btn{font-size:15px}
 .field-label,.group-title{font-size:17px}
 .choice{font-size:16px}.type-option strong{font-size:17px}.type-option small{font-size:15px}
 .preview-note p{font-size:15px}.preview-note strong{font-size:16px}
 .preview-table{min-width:600px}
 .preview-pill{font-size:13px}
 .sheet-top span:last-child{font-size:13px}
 .mmc-explain{font-size:14px}
}

/* v1.1.4 — clearer resource examples, ink contrast, concise header and A4 page planner. */
:root{--ink:#000000;--muted:#000000}
body{color:#000}
.hero{align-items:flex-start;gap:0;padding:20px 29px 19px}
.hero-main{flex:1;max-width:none}
.hero h1{color:#000}
.hero .intro,.hero .strap,.hero-foot,.hero-foot span,.hero-foot a{color:#000}
.hero .intro{max-width:940px}
.hero .eyebrow,.tip strong{color:#ff0000}
.hero .hero-title-row{align-items:center;gap:20px}
.hero .ideas-control{margin-left:auto}
.hero .ideas-trigger{font-size:16px;padding:10px 18px}
/* Headings on saturated bars remain white; ink inside light-coloured surfaces is real black. */
.step-body,.step-body label,.step-body small,.step-body p,.step-body strong,
.step-body td,.step-body th,.step-body .dim,.step-body .group-title,.step-body .field-label,
.step-body .selection-top strong,.step-body .choice,.step-body .type-option strong,
.step-body .type-option small,.step-body .format-option strong,.step-body .format-option small,
.step-body .sheet-top span:last-child,.step-body .preview-table .dim,.step-body .preview-note p,
.step-body .preview-note strong,.step-body .preview-notecard p,.step-body .preview-notecard small,
.step-body .mmc-explain,.step-body .download-info,.step-body .privacy,.step-body .section-heading p,
.ideas-popover,.ideas-popover .idea p,.ideas-popover .idea strong{color:#000}
.step-body a,.hero-foot a,.ideas-link{color:#ff0000;text-decoration:underline;text-underline-offset:2px}
.step-body .tip,.step-body .tip p{color:#000}
.step-body .tip strong{color:#ff0000}
.step-body .preview-note a{color:#ff0000}
.step-body .preview-table th{color:#000;background:#b9d9ed}
.step-body .preview-table td{color:#000}
.step-body .year-chip,.step-body .search-wrap input,.step-body .piece-row small{color:#000}
.step-body .search-wrap input::placeholder{color:#3a3a3a}
.step-body .preview-pill{color:#000}
.step-body .sheet-top span:first-child{color:#fff}
.step-body .download-btn{color:#fff}
.step-body .text-btn{color:#0044ba}
/* Resource choices: visual miniature previews of the real layout types. */
#stage3 .step-body{grid-template-columns:1fr;display:block}
.resource-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
#stage3 .type-option{display:flex;flex-direction:column;align-items:stretch;min-width:0;min-height:300px;padding:17px;gap:12px;border:2px solid #cba58b;background:#fff;cursor:pointer}
#stage3 .type-option:has(input:checked){background:#ffd7ba;border-color:#ef6c20;box-shadow:0 0 0 2px rgba(237,107,30,.13)}
.resource-top{display:flex;gap:10px;align-items:flex-start;min-height:90px}
.resource-description{flex:1;display:block;min-width:0}
.resource-description strong{display:block;font-size:18px;line-height:1.28;font-weight:800;color:#000}
.resource-description small{display:block;font-size:15px;line-height:1.4;margin-top:4px;color:#000}
#stage3 .type-option .option-icon{font-size:24px;color:#df5f12;line-height:1;flex:none}
#stage3 .type-option input{margin:2px 0 0;flex:none}
#stage3 .type-option .mini-use{font-size:14px;font-weight:800;color:#000;text-align:left;margin-top:auto}
.resource-visual{height:112px;border:2px solid #c0c0c0;border-radius:7px;display:block;background:#fff;padding:10px;overflow:hidden;min-width:0}
.mini-caption{display:block;font-size:10px;letter-spacing:.06em;color:#000;font-weight:850;margin-bottom:6px}
.mini-table-head,.mini-table-row{display:grid;grid-template-columns:2.1fr .9fr 1.1fr;gap:1px;background:#c5d4df;margin-bottom:2px;font-size:10px;color:#000}
.mini-table-head b,.mini-table-row span,.mini-table-row i{padding:3px 5px;background:#eef5fa;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-style:normal}
.mini-table-head b{background:#b3d4e9}
.mini-table-row i{display:block;background:#fff}
.mini-cards{display:flex;gap:8px;background:#fff2e4;padding:8px}
.mini-paper{display:flex;flex-direction:column;flex:1;gap:5px;padding:7px 9px;background:#fff;border:1px solid #e1ae7e;border-left:4px solid #ea762a;min-width:0}
.mini-paper b{font-size:10px;color:#000;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mini-paper em{font-size:8px;letter-spacing:.04em;font-style:normal;color:#ff0000;font-weight:750}
.mini-line{height:3px;background:#a2b0be;width:65%;display:block}
.mini-line.wide{width:90%}
.mini-school{padding:7px;background:#eef8f3}
.mini-tabs{display:flex;gap:2px;font-size:9px;margin-bottom:5px}
.mini-tabs b{flex:1;text-align:center;background:#15785b;color:#fff;padding:4px 2px;white-space:nowrap;font-size:9px}
.mini-school-grid{display:grid;grid-template-columns:2fr 1fr;gap:1px;background:#8bbdae;font-size:10px}
.mini-school-grid span,.mini-school-grid strong{background:#fff;padding:3px 6px;color:#000}
.mini-school-grid span:nth-child(-n+2){background:#c6e5d8;font-weight:800}
#stage3 .format-title{margin:20px 0 10px;font-size:18px}
#stage3 .format-options{display:grid;grid-template-columns:repeat(2,minmax(0,240px));gap:12px}
.page-estimate,.preview-page-warning{background:#d8edfd;border:2px solid #3d88bb;border-radius:10px;padding:13px 17px;margin-top:17px;display:flex;gap:14px;align-items:flex-start;color:#000}
.page-estimate[hidden],.preview-page-warning[hidden]{display:none!important}
.page-estimate.is-long,.preview-page-warning.is-long{background:#ffe1c0;border-color:#d35b00}
.page-estimate .estimate-icon,.preview-page-warning>span{font-size:26px;color:#000;line-height:1}
.page-estimate strong,.preview-page-warning strong{font-size:21px;color:#000}
.page-estimate p,.preview-page-warning p{font-size:16px;line-height:1.46;margin:4px 0 0;color:#000}
.preview-page-warning{margin:0 0 13px}
/* Make display panels visibly separate rather than cloudy gradients. */
#stage1 .step-body{background:#dceefa}
#stage2 .step-body{background:#d9eee4}
#stage3 .step-body{background:#ffebd9}
#stage4 .step-body{background:#e3eef8}
.step-body .preview-sheet{background:#fff;border-color:#809eb4}
.step-body .preview-note{background:#c6e0f2;border-color:#7ca8ca}
.step-body .preview-note:last-child{background:#ffdec0;border-color:#d89c65}
@media(max-width:900px){.resource-options{grid-template-columns:1fr 1fr}#stage3 .type-option{min-height:270px}}
@media(max-width:640px){
 .hero-title-row{display:block}
 .hero .ideas-control{margin:10px 0 0}
 .resource-options{grid-template-columns:1fr}
 #stage3 .type-option{min-height:0}
 .resource-visual{height:116px}
 .resource-top{min-height:0}
 #stage3 .format-options{grid-template-columns:1fr 1fr}
 .page-estimate,.preview-page-warning{padding:11px}
 .page-estimate strong,.preview-page-warning strong{font-size:18px}
 .page-estimate p,.preview-page-warning p{font-size:15px}
}


/* v1.1.4 — clearer selections, concise desktop preview, unselected on first load. */
/* High-contrast selection status for resource tiles. */
#stage3 .type-option{border:3px solid #9e7e6d;transition:border-color .1s,background-color .1s;}
#stage3 .type-option:has(input:checked){background:#ffe2cb;border:4px solid #163b5a;box-shadow:inset 0 0 0 2px #ffffff,0 0 0 2px #163b5a;}
#stage3 .type-option input[type="radio"],#stage3 .format-option input[type="radio"]{accent-color:#163b5a;width:24px;height:24px;flex:none;}
#stage3 .resource-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;}
#stage3 .resource-bottom .mini-use{margin-top:0;}
#stage3 .selection-mark,#stage3 .format-selected{display:none;background:#163b5a;color:#fff!important;border-radius:5px;padding:6px 9px;font-weight:900;font-size:13px;letter-spacing:.025em;white-space:nowrap;line-height:1.1;}
#stage3 .type-option:has(input:checked) .selection-mark{display:inline-flex;}
#stage3 .format-option{border:3px solid #aa8e7e;gap:10px;min-height:80px;}
#stage3 .format-option:has(input:checked){border:4px solid #163b5a;background:#ffe2cb;box-shadow:inset 0 0 0 2px #fff,0 0 0 2px #163b5a;}
#stage3 .format-option:has(input:checked) .format-selected{display:inline-flex;margin-left:auto;}
#stage3 .type-option:focus-within,#stage3 .format-option:focus-within{outline:3px solid #008cc5;outline-offset:4px;}
/* Step 4 — whole desktop preview fits the visible stage rather than stretching the page. */
#stage4 .step-body{padding:12px 18px 14px;}
#stage4 .section-heading{margin-bottom:9px;}
#stage4 .section-heading h2{font-size:23px;margin:0 0 2px;}
#stage4 .section-heading .eyebrow{font-size:11px;}
#stage4 .section-heading p{font-size:15px;}
#stage4 .preview-page-warning{padding:8px 11px;margin-bottom:9px;}
#stage4 .preview-page-warning strong{font-size:17px;}
#stage4 .preview-page-warning p{font-size:14px;margin-top:2px;line-height:1.3;}
#stage4 .preview-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,310px);gap:12px;align-items:stretch;}
#stage4 .preview-layout{display:block;min-width:0;}
#stage4 .preview-sheet{height:286px;min-height:0;display:flex;flex-direction:column;padding:11px;border:2px solid #7497b0;}
#stage4 .sheet-top{flex:none;margin-bottom:8px;flex-wrap:wrap;}
#stage4 .sheet-top span:last-child{font-size:13px;}
#stage4 .preview-content{flex:1;min-height:0;max-height:none;overflow:auto;scrollbar-color:#7f9ab4 #eaf3f9;scrollbar-width:auto;}
#stage4 .preview-table th{position:sticky;top:0;z-index:1;}
#stage4 .preview-side{display:flex;flex-direction:column;gap:8px;min-width:0;}
#stage4 .preview-notes{display:flex;flex-direction:column;gap:8px;margin:0;}
#stage4 .preview-note{padding:8px 11px;min-width:0;}
#stage4 .preview-note strong{font-size:16px;}
#stage4 .preview-note p{font-size:15px;line-height:1.32;margin-top:3px;}
#stage4 .mmc-explain{padding:8px 10px;margin:0;background:#fff;border:1px solid #a3bfce;border-radius:8px;font-size:14px;line-height:1.35;}
#stage4 .preview-actions{margin-top:10px;padding-top:9px;}
#stage4 .preview-actions .download-group{width:min(100%,460px);}
#stage4 .download-btn{min-height:49px;padding:8px;margin:0;font-size:18px;}
#stage4 .download-info{margin:3px 0 0;font-size:13px;min-height:0;}
#stage4 .privacy{margin-top:2px;font-size:13px;}
@media(min-width:851px){
 #stage4 .step-body{max-height:calc(100dvh - 112px);overflow-y:auto;overscroll-behavior:contain;}
}
@media(max-width:1050px){
 #stage4 .preview-columns{grid-template-columns:minmax(0,1fr) minmax(230px,280px);}
 #stage3 .selection-mark{font-size:12px;}
}
@media(max-width:850px){
 #stage4 .step-body{max-height:none;overflow:visible;}
 #stage4 .preview-columns{grid-template-columns:1fr;}
 #stage4 .preview-sheet{height:auto;min-height:250px;max-height:360px;}
 #stage4 .preview-content{max-height:285px;}
 #stage4 .preview-side{display:block;}
 #stage4 .preview-notes{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:10px;}
 #stage4 .mmc-explain{margin-top:9px;}
}
@media(max-width:560px){
 #stage3 .resource-bottom{align-items:start;}
 #stage3 .format-option{padding:9px;gap:7px;flex-wrap:wrap;}
 #stage3 .format-option .format-selected{margin-left:0;}
 #stage4 .step-body{padding:13px 12px 15px;}
 #stage4 .section-heading{align-items:flex-start;flex-wrap:wrap;}
 #stage4 .preview-notes{grid-template-columns:1fr;}
 #stage4 .preview-sheet{max-height:370px;}
 #stage4 .preview-content{max-height:280px;}
}

/* Give the clearly-labelled selected file format sufficient width on desktop. */
@media(min-width:561px){#stage3 .format-options{grid-template-columns:repeat(2,minmax(0,290px));}}
