/* ===== 雄誠設備 午後・第二次検定 専用プラグイン ===== */
.yex2pm-app{max-width:1040px;margin:24px auto;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP",sans-serif;color:#172033;box-sizing:border-box}.yex2pm-app *{box-sizing:border-box}.yex2pm-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin:0 auto 18px;max-width:980px;padding:18px 20px;border:1px solid #e2e8f0;border-radius:18px;background:#fff}.yex2pm-eyebrow{font-size:12px;font-weight:900;letter-spacing:.08em;color:#667085}.yex2pm-head h2{margin:4px 0 3px;font-size:27px;line-height:1.35}.yex2pm-sub{font-size:13px;color:#475569}.yex2pm-badge{white-space:nowrap;background:#111827;color:#fff;border-radius:999px;padding:9px 13px;font-size:12px;font-weight:900}.yex2pm-loading{max-width:980px;margin:0 auto;padding:36px;text-align:center;border:1px solid #e5e7eb;border-radius:18px;background:#fff}@media(max-width:700px){.yex2pm-app{margin:12px auto}.yex2pm-head{margin:0 10px 14px;padding:15px;display:block}.yex2pm-head h2{font-size:21px}.yex2pm-badge{display:inline-block;margin-top:10px}.secondary-shell{padding:0 10px}}

/* ===== 第二次検定 記述道場 ===== */
.secondary-shell{max-width:980px;margin:0 auto;color:#172033}
.sec-top{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin-bottom:16px}
.sec-top>button:first-child{justify-self:start}.sec-top>button:last-child{justify-self:end}
.sec-top button,.sec-nextrow button,.sec-finish button,.sec-empty button{border:1px solid #d0d5dd;background:#fff;border-radius:12px;padding:11px 14px;font-weight:800;cursor:pointer}
.sec-top>div{text-align:center}.sec-top>div span{display:block;font-size:11px;font-weight:800;color:#667085;letter-spacing:.08em}.sec-top>div strong{display:block;font-size:21px}
.sec-qpos{justify-self:end;font-weight:900}
.sec-hero{display:grid;grid-template-columns:1fr 170px;gap:20px;background:linear-gradient(135deg,#f8fafc,#eef2ff);border:1px solid #dbe3f0;border-radius:22px;padding:24px}
.sec-kicker{margin:0 0 7px;font-size:12px;font-weight:900;color:#475467}.sec-hero h3{font-size:23px;line-height:1.5;margin:0 0 10px}.sec-hero p{line-height:1.75}
.sec-target{background:#fff;border:1px solid #dbe3f0;border-radius:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:150px}.sec-target b{font-size:42px}.sec-target span{font-weight:900}.sec-target small{margin-top:5px;color:#667085}
.sec-statrow{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}.sec-statrow>div{border:1px solid #e5e7eb;border-radius:14px;padding:14px;background:#fff}.sec-statrow b{display:block;font-size:24px}.sec-statrow span{font-size:12px;color:#667085}
.sec-actions{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;margin:16px 0}.sec-actions button,.sec-grade{border:1px solid #d0d5dd;background:#fff;border-radius:14px;padding:15px;font-weight:900;cursor:pointer}
.sec-primary{background:#111827!important;color:#fff!important;border-color:#111827!important}
.sec-heading{font-size:16px;margin:24px 0 10px}.sec-sections{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.sec-section-card{text-align:left;border:1px solid #e5e7eb;background:#fff;border-radius:16px;padding:14px;cursor:pointer;min-height:190px}.sec-section-card:hover{box-shadow:0 7px 22px rgba(0,0,0,.07);transform:translateY(-1px)}
.sec-section-card .sec-icon{font-size:27px;display:block;margin-bottom:8px}.sec-section-card>b{font-size:14px;display:block}.sec-section-card>small{display:block;color:#667085;line-height:1.55;margin:7px 0 12px}.sec-section-card>div{margin-top:auto;display:flex;justify-content:space-between;gap:5px;font-size:11px}.sec-section-card em{font-style:normal;color:#667085}
.sec-footnote{font-size:11px;color:#667085;line-height:1.7;margin:16px 2px}
.sec-roadmap{display:grid;gap:12px}.sec-roadmap section{border:1px solid #e5e7eb;border-radius:18px;padding:20px;background:#fff}.sec-roadmap section>b{font-size:11px;color:#475467}.sec-roadmap h3{margin:5px 0 7px}.sec-roadmap p{margin:0;line-height:1.75}
.sec-qmeta{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 12px}.sec-qmeta span{font-size:11px;font-weight:800;background:#f2f4f7;border-radius:999px;padding:7px 10px}
.sec-question{background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:20px}.sec-question h3{margin:0 0 12px;font-size:20px}.sec-question>p{font-size:18px;line-height:1.85;margin:0}.sec-question.mock>p{font-size:19px}
.sec-diagram{border:1px solid #e5e7eb;border-radius:14px;margin:0 0 16px;padding:8px;background:#fbfcfe;overflow:hidden}.sec-svg{width:100%;height:auto;max-height:300px}.sec-svg text{font:700 17px -apple-system,BlinkMacSystemFont,"Noto Sans JP",sans-serif;fill:#344054;text-anchor:middle}.sec-svg .equip,.sec-svg .tank{fill:#eef2f6;stroke:#475467;stroke-width:3}.sec-svg .duct{fill:#f8fafc;stroke:#667085;stroke-width:4}.sec-svg .line,.sec-svg .pipe,.sec-svg .drain,.sec-svg .copper{fill:none;stroke:#344054;stroke-width:8}.sec-svg .bad{fill:none;stroke:#b42318;stroke-width:5;stroke-dasharray:8 7}.sec-svg .badtext{fill:#b42318;font-size:15px}.sec-svg .white{stroke:#fff;stroke-width:5}.sec-svg .badfill{fill:#b42318}.sec-svg .floor{stroke:#667085;stroke-width:5}.sec-svg .concrete{fill:#eaecf0;stroke:#98a2b3;stroke-width:2}.sec-svg .rebar{stroke:#667085;stroke-width:5}.sec-svg .sleeve{fill:#fff;stroke:#344054;stroke-width:4}.sec-svg .nut{fill:#eaecf0;stroke:#344054;stroke-width:4}.sec-svg .hanger{stroke:#475467;stroke-width:4}.sec-svg .air{fill:#d1e9ff;stroke:#1570ef;stroke-width:3}.sec-svg .damper{fill:#fef0c7;stroke:#b54708;stroke-width:4}.sec-svg .pipe2{stroke:#667085;stroke-width:14}.sec-svg .hatch{fill:#fff;stroke:#344054;stroke-width:3}.sec-svg .soil{fill:none;stroke:#7f1d1d;stroke-width:14}
.sec-answerbox{margin-top:14px;border:1px solid #e5e7eb;border-radius:18px;padding:18px;background:#f8fafc}.sec-answerbox label{display:block;font-size:12px;font-weight:900;margin-bottom:8px}.sec-answerbox textarea,.sec-numberbox input{width:100%;box-sizing:border-box;border:1px solid #98a2b3;border-radius:12px;background:#fff;padding:13px;font:inherit;line-height:1.7}.sec-answerbox textarea:focus,.sec-numberbox input:focus{outline:3px solid rgba(17,24,39,.12);border-color:#344054}.sec-count{text-align:right;font-size:11px;color:#667085;margin:4px 3px}
.sec-numberbox{display:flex;align-items:center;gap:10px}.sec-numberbox input{max-width:280px;font-size:24px;font-weight:900}.sec-numberbox span{font-weight:900}
.sec-hints{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.sec-hint-btn{border:1px solid #d0d5dd;border-radius:999px;background:#fff;padding:7px 10px;font-size:11px;font-weight:800;cursor:pointer}.sec-hint{padding:11px 13px;background:#fffaeb;border:1px solid #fedf89;border-radius:12px;font-size:13px;margin-bottom:10px}.sec-grade{width:100%;margin-top:7px}
.sec-result-card{border:1px solid #e5e7eb;border-radius:18px;padding:18px;margin-top:14px;background:#fff}.sec-score{display:flex;align-items:baseline;gap:5px;border-radius:14px;padding:14px 16px}.sec-score b{font-size:40px}.sec-score span{font-weight:800}.sec-score strong{margin-left:auto}.sec-score.high{background:#ecfdf3}.sec-score.mid{background:#fffaeb}.sec-score.low{background:#fff1f2}.sec-score-note{font-size:11px;color:#667085;line-height:1.6;margin:7px 0 12px}
.sec-point{margin:10px 0;padding:13px;border-radius:12px}.sec-point h5{margin:0 0 8px}.sec-point span{display:inline-block;margin:3px;padding:6px 8px;border-radius:999px;font-size:11px;font-weight:800}.sec-point.good{background:#f0fdf4}.sec-point.good span{background:#dcfce7}.sec-point.miss{background:#fff7ed}.sec-point.miss span{background:#ffedd5}
.sec-model,.sec-explanation,.sec-ng{border-top:1px solid #eaecf0;padding-top:13px;margin-top:13px}.sec-model h4,.sec-explanation h4,.sec-ng h4{margin:0 0 6px}.sec-model p,.sec-explanation p,.sec-ng p{margin:0;line-height:1.8}.sec-ng{background:#fff8f8;border:1px solid #fee4e2;border-radius:12px;padding:13px}
.sec-warning{background:#fff4ed;border:1px solid #ffd6ae;border-radius:12px;padding:11px;font-size:12px;line-height:1.6;margin:10px 0}
.sec-nextrow{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.sec-nextrow button{min-width:150px}
.sec-rewrite-guide{background:#f8fafc;border:1px solid #e5e7eb;border-radius:14px;padding:14px;margin-top:12px}.sec-rewrite-guide b{font-size:12px}.sec-rewrite-guide p{line-height:1.7}.sec-rewrite-guide small{color:#667085}
.sec-finish{text-align:center;border:1px solid #e5e7eb;border-radius:22px;padding:35px;background:#fff}.sec-bigscore{font-size:62px;font-weight:950;line-height:1}.sec-finish h3{font-size:23px}.sec-finish p{line-height:1.7}.sec-finish>div:last-child{display:flex;justify-content:center;gap:10px;margin-top:15px}
.sec-empty{text-align:center;border:1px solid #e5e7eb;border-radius:20px;padding:40px}
.sec-mockintro{border:1px solid #e5e7eb;border-radius:20px;padding:22px}.sec-mockintro>p{line-height:1.75}.sec-electives{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.sec-electives button{display:grid;grid-template-columns:auto 1fr;text-align:left;gap:4px 12px;border:1px solid #d0d5dd;border-radius:16px;background:#fff;padding:20px;cursor:pointer}.sec-electives span{grid-row:1/3;font-size:30px}.sec-electives b{font-size:17px}.sec-electives small{color:#667085}
.sec-mockbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin-bottom:12px;padding:10px;border-radius:14px;background:#111827;color:#fff}.sec-mockbar button{justify-self:start;border:1px solid #475467;background:transparent;color:#fff;border-radius:8px;padding:8px 10px}.sec-mockbar>b{justify-self:end}.sec-mockreview{margin:14px 0;border:1px solid #e5e7eb;border-radius:18px;padding:16px}.sec-mockreview details{border-top:1px solid #eaecf0;padding:10px 0}.sec-mockreview summary{cursor:pointer}.sec-mockreview summary b{display:inline-block;min-width:45px}.sec-mockreview details div{padding:5px 12px;line-height:1.7}
@media(max-width:850px){.sec-sections{grid-template-columns:repeat(2,1fr)}.sec-section-card:last-child{grid-column:1/-1}.sec-actions{grid-template-columns:1fr}.sec-hero{grid-template-columns:1fr}.sec-target{min-height:105px;flex-direction:row;gap:10px}.sec-target small{margin:0}}
@media(max-width:700px){.sec-top{grid-template-columns:1fr auto}.sec-top>div{grid-row:1;grid-column:1/-1}.sec-top>button:first-child{grid-row:2}.sec-top>button:last-child,.sec-qpos{grid-row:2;grid-column:2}.sec-statrow{grid-template-columns:1fr}.sec-sections{grid-template-columns:1fr}.sec-section-card:last-child{grid-column:auto}.sec-question{padding:16px}.sec-question>p,.sec-question.mock>p{font-size:16px}.sec-hero h3{font-size:19px}.sec-nextrow{flex-direction:column}.sec-nextrow button{width:100%}.sec-electives{grid-template-columns:1fr}.sec-mockbar{grid-template-columns:auto 1fr}.sec-mockbar strong{grid-row:2;grid-column:1/-1;text-align:center;margin-top:8px}.sec-mockbar>b{grid-column:2}.sec-finish>div:last-child{flex-direction:column}.sec-target b{font-size:34px}}

/* ===== v1.1 答案育成エンジン ===== */
.sec-statrow4{grid-template-columns:repeat(4,1fr)}
.sec-actions4{grid-template-columns:repeat(4,1fr)}
.sec-mini-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0 18px}.sec-mini-actions button{border:1px solid #d0d5dd;background:#fff;border-radius:13px;padding:12px;font-weight:850;cursor:pointer}
.sec-section-card i{display:inline-block;margin-top:8px;padding:4px 8px;background:#fff4ed;border-radius:999px;color:#b54708;font-style:normal;font-size:10px;font-weight:900}
.sec-official-note{margin:18px 0 0;padding:14px 16px;border:1px solid #dbe3f0;border-radius:14px;background:#f8fafc}.sec-official-note b{font-size:12px}.sec-official-note p{margin:5px 0;line-height:1.65;font-size:13px}.sec-official-note small{color:#667085;line-height:1.6}
.sec-section-menu{display:grid;grid-template-columns:230px 1fr;gap:16px;border:1px solid #e5e7eb;border-radius:20px;padding:20px;background:#fff}.sec-section-score{display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #e5e7eb;border-radius:16px;background:#f8fafc;padding:20px}.sec-section-score b{font-size:44px}.sec-section-score span{font-weight:900;text-align:center}.sec-section-score small{color:#667085;margin-top:7px}.sec-section-options{display:grid;gap:10px;align-content:center}.sec-section-options button{border:1px solid #d0d5dd;background:#fff;border-radius:14px;padding:16px;font-weight:900;cursor:pointer;text-align:left}
.sec-confidence{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin:10px 0}.sec-confidence>span{font-size:11px;font-weight:900;color:#667085;margin-right:4px}.sec-confidence button{border:1px solid #d0d5dd;background:#fff;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:800;cursor:pointer}.sec-confidence button.active{background:#344054;color:#fff;border-color:#344054}.sec-confidence button:disabled{opacity:.65}
.sec-diagnosis{margin:12px 0;padding:14px;border:1px solid #dbe3f0;border-radius:14px;background:#f8fafc}.sec-diagnosis h4{margin:0 0 9px}.sec-diagnosis>div{display:flex;justify-content:space-between;gap:10px;padding:6px 0;border-top:1px solid #eaecf0;font-size:12px}.sec-diagnosis>div:first-of-type{border-top:0}.sec-diagnosis ul{margin:8px 0 0;padding-left:18px;font-size:12px;line-height:1.6;color:#b54708}
.sec-answer-formula,.sec-consequence,.sec-examtip{margin-top:12px;border-radius:13px;padding:13px}.sec-answer-formula{background:#eef4ff;border:1px solid #c7d7fe}.sec-answer-formula h4,.sec-consequence h4{margin:0 0 6px}.sec-answer-formula p,.sec-consequence p{margin:0;line-height:1.75}.sec-consequence{background:#fffaf0;border:1px solid #fedf89}.sec-examtip{display:flex;gap:10px;align-items:flex-start;background:#f2f4f7;border:1px solid #e4e7ec;font-size:12px;line-height:1.6}.sec-examtip b{white-space:nowrap}
.sec-prescription{display:grid;grid-template-columns:150px 1fr auto;gap:16px;align-items:center;border:1px solid #dbe3f0;background:linear-gradient(135deg,#f8fafc,#eef2ff);border-radius:20px;padding:20px}.sec-prescription>div{text-align:center}.sec-prescription>div b{display:block;font-size:42px}.sec-prescription>div span{font-size:11px;font-weight:900}.sec-prescription p{line-height:1.7;margin:0}.sec-prescription button{border:0;border-radius:12px;padding:13px 15px;font-weight:900;cursor:pointer}
.sec-capabilities{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sec-cap{border:1px solid #e5e7eb;border-radius:14px;padding:13px;background:#fff}.sec-cap>div:first-child{display:flex;justify-content:space-between;font-size:13px;font-weight:850}.sec-meter{height:9px;border-radius:999px;background:#eaecf0;margin-top:10px;overflow:hidden}.sec-meter i{display:block;height:100%;background:#344054;border-radius:999px}
.sec-clinic-list{display:grid;gap:8px}.sec-clinic-row{display:grid;grid-template-columns:1fr 70px auto;gap:12px;align-items:center;border:1px solid #e5e7eb;border-radius:14px;padding:13px;background:#fff}.sec-clinic-row b{display:block}.sec-clinic-row small{display:block;color:#667085;margin-top:3px}.sec-clinic-row strong{font-size:22px;text-align:right}.sec-clinic-row button{border:1px solid #d0d5dd;background:#fff;border-radius:10px;padding:9px 11px;font-weight:800;cursor:pointer}
.sec-stepbadge{justify-self:end;background:#111827;color:#fff;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:900}.sec-stepper{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin:0 0 14px}.sec-stepper span{display:flex;align-items:center;justify-content:center;gap:5px;border:1px solid #e5e7eb;border-radius:11px;padding:8px;background:#fff;color:#98a2b3;font-size:12px;font-weight:900}.sec-stepper span small{font-weight:800}.sec-stepper span.active{background:#111827;color:#fff;border-color:#111827}.sec-stepper span.done{background:#ecfdf3;color:#027a48;border-color:#abefc6}
.sec-learning-card{margin-top:13px;border:1px solid #e5e7eb;border-radius:20px;padding:20px;background:#fff}.sec-learning-card>span{display:inline-block;background:#f2f4f7;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:900;color:#475467}.sec-learning-card h4{margin:16px 0 7px}.sec-learning-card>p{font-size:16px;line-height:1.8}.sec-learning-card>button.sec-primary{width:100%;border:0;border-radius:13px;padding:14px;font-weight:900;cursor:pointer;margin-top:16px}.sec-twolearn{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sec-twolearn>div{border:1px solid #e5e7eb;border-radius:13px;padding:13px;background:#f8fafc}.sec-twolearn p{margin:5px 0 0;line-height:1.7;font-size:13px}.sec-question.compact>p{font-size:16px}
.sec-choicepool{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:14px 0}.sec-choicepool button{border:1px solid #d0d5dd;background:#fff;border-radius:12px;padding:13px;text-align:left;font-weight:800;cursor:pointer}.sec-choicepool button.selected{outline:3px solid rgba(52,64,84,.16);border-color:#344054}.sec-choicepool button.correct{background:#ecfdf3;border-color:#6ce9a6}.sec-choicepool button.wrong{background:#fff1f2;border-color:#fda4af}
.sec-builder-result{margin:12px 0;padding:12px;border-radius:12px;font-size:13px;line-height:1.65}.sec-builder-result.ok{background:#ecfdf3;border:1px solid #abefc6}.sec-builder-result.ng{background:#fffaeb;border:1px solid #fedf89}
.sec-cloze-text{font-size:18px!important;background:#f8fafc;border:1px solid #e5e7eb;border-radius:13px;padding:15px!important}.sec-cloze-selects{display:grid;gap:8px}.sec-cloze-selects label{display:grid;grid-template-columns:55px 1fr;gap:8px;align-items:center}.sec-cloze-selects select{width:100%;border:1px solid #98a2b3;border-radius:10px;padding:10px;background:#fff;font:inherit}.sec-cloze-selects select.correct{background:#ecfdf3;border-color:#6ce9a6}.sec-cloze-selects select.wrong{background:#fff1f2;border-color:#fda4af}
.sec-order-selected{min-height:80px;border:2px dashed #cbd5e1;border-radius:13px;padding:10px;display:flex;flex-direction:column;gap:6px;background:#f8fafc}.sec-order-selected span{background:#fff;border:1px solid #e5e7eb;border-radius:9px;padding:9px;font-size:13px}.sec-order-pool{display:grid;gap:8px;margin:12px 0}.sec-order-pool button{border:1px solid #d0d5dd;background:#fff;border-radius:11px;padding:11px;text-align:left;cursor:pointer;font-weight:750}.sec-order-pool button:disabled{opacity:.35}.sec-smallbtn{border:1px solid #d0d5dd;background:#fff;border-radius:9px;padding:8px 10px;font-weight:800;cursor:pointer}.sec-singlepart{padding:18px;border:1px solid #dbe3f0;background:#f8fafc;border-radius:13px;font-weight:850;line-height:1.7}
.sec-mockreview details button{border:1px solid #d0d5dd;background:#fff;border-radius:9px;padding:8px 10px;font-weight:800;cursor:pointer}
@media(max-width:850px){.sec-statrow4{grid-template-columns:repeat(2,1fr)}.sec-actions4{grid-template-columns:repeat(2,1fr)}.sec-prescription{grid-template-columns:120px 1fr}.sec-prescription button{grid-column:1/-1}.sec-section-menu{grid-template-columns:1fr}.sec-section-score{min-height:130px}.sec-capabilities{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.sec-statrow4,.sec-actions4,.sec-mini-actions,.sec-capabilities,.sec-choicepool,.sec-twolearn{grid-template-columns:1fr}.sec-stepper{grid-template-columns:repeat(5,1fr);gap:3px}.sec-stepper span{padding:7px 3px;display:block;text-align:center}.sec-stepper span small{display:block;font-size:9px;margin-top:3px}.sec-prescription{grid-template-columns:1fr}.sec-clinic-row{grid-template-columns:1fr auto}.sec-clinic-row button{grid-column:1/-1}.sec-cloze-text{font-size:16px!important}.sec-learning-card{padding:15px}}

/* v1.2.0: session resume + smart random */
.sec-resume{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;margin:14px 0;padding:14px;border:1px solid #d9e4ef;border-radius:14px;background:#f7fbff}
.sec-resume>div{display:flex;flex-direction:column;gap:3px}.sec-resume b{font-size:15px}.sec-resume span{font-weight:700}.sec-resume small{opacity:.75}
.sec-resume button{white-space:nowrap}.sec-random-note{margin:8px 0 18px;font-size:12px;opacity:.72;text-align:center}
@media(max-width:680px){.sec-resume{grid-template-columns:1fr 1fr}.sec-resume>div{grid-column:1/-1}.sec-resume button{width:100%;padding:11px 8px}.sec-random-note{text-align:left}}
.sec-mini-actions3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:680px){.sec-mini-actions3{grid-template-columns:1fr}}
