/* Cap & Cime — feuille locale des outils (étape 05).
   Complète styles.css : n'y redéfinit rien, consomme ses tokens :root.
   Chargée par les seules pages outils. */

.tool-layout{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:70px 0 40px;align-items:start}
.tool-panel{border:1px solid var(--border);background:var(--surface);padding:30px}
.tool-panel h2{font-size:26px;margin-bottom:6px}
.tool-panel>p.tool-hint{font-size:13px;line-height:1.55;color:var(--text-muted);margin-bottom:22px}

.field-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:11px 0;border-top:1px solid var(--border)}
.field-row:first-of-type{border-top:0}
.field-row label{font-size:13px;line-height:1.4;color:var(--text-secondary);flex:1}
.field-row label b{display:block;color:var(--text);font-weight:600}
.field-row input,.field-row select{border:1px solid var(--border);background:var(--surface);color:var(--text);font:600 14px var(--sans);padding:9px 10px;width:130px;text-align:right}
.field-row select{width:auto;text-align:left}
.field-row input:focus,.field-row select:focus{outline:2px solid var(--primary);outline-offset:1px}
.field-full{display:block;padding:11px 0;border-top:1px solid var(--border)}
.field-full label{display:block;font-size:13px;font-weight:600;margin-bottom:8px}
.field-full select,.field-full input{width:100%;text-align:left}

.tool-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.tool-actions .button{flex:1;min-width:150px}

.tool-output{border:1px solid var(--border);background:var(--fill);padding:30px;min-height:120px}
.tool-output h3{font-family:var(--serif);font-size:22px;margin-bottom:14px}
.tool-output .headline{font:700 34px/1.1 var(--serif);color:var(--primary);display:block;margin-bottom:4px}
.tool-output .headline-sub{display:block;font-size:13px;color:var(--text-secondary);margin-bottom:20px}
.tool-output .empty{font-size:14px;color:var(--text-muted);line-height:1.6}

.breakdown{width:100%;border-collapse:collapse;font-size:13px;margin-top:6px}
.breakdown th,.breakdown td{text-align:left;padding:9px 8px;border-bottom:1px solid var(--border)}
.breakdown th{font-weight:600;color:var(--text-secondary);font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.breakdown td:last-child,.breakdown th:last-child{text-align:right;font-variant-numeric:tabular-nums}
.breakdown tr.total td{font-weight:700;border-bottom:0;border-top:2px solid var(--text)}

.callout{background:var(--callout-bg);border-left:4px solid var(--primary);color:var(--callout-text);padding:20px 24px;margin:26px 0}
.callout p{margin:0;font-size:14px;line-height:1.65}
.callout p+p{margin-top:10px}
.callout strong{color:var(--callout-text)}

.tool-notes{padding:20px 0 90px}
.tool-notes h2{font-size:clamp(28px,3.4vw,40px);margin-bottom:18px}
.tool-notes p{font-size:16px;line-height:1.7;color:var(--text-secondary);max-width:760px;margin-bottom:16px}
.tool-notes h3{font-family:var(--serif);font-size:22px;margin:32px 0 12px}
.tool-notes ul{max-width:760px;padding-left:20px;margin-bottom:16px}
.tool-notes li{font-size:15px;line-height:1.7;color:var(--text-secondary);margin-bottom:9px}
.tool-notes .sources{font-size:13px;color:var(--text-muted)}
.tool-notes .sources a{color:var(--primary);text-decoration:underline}

.quiz-step{display:none}
.quiz-step.active{display:block}
.quiz-progress{font-size:11px;font-weight:700;letter-spacing:.16em;color:var(--primary);margin-bottom:14px}
.quiz-step h3{font-family:var(--serif);font-size:24px;line-height:1.2;margin-bottom:18px}
.quiz-options{display:grid;gap:10px}
.quiz-options button{text-align:left;border:1px solid var(--border);background:var(--surface);color:var(--text);font:600 14px var(--sans);padding:14px 16px;cursor:pointer;transition:.2s}
.quiz-options button:hover{border-color:var(--primary);transform:translateX(3px)}
.quiz-options button small{display:block;font-weight:400;font-size:12px;color:var(--text-muted);margin-top:4px}

.checklist-group{margin-bottom:26px}
.checklist-group h3{font-family:var(--serif);font-size:20px;margin-bottom:10px}
.checklist-group ul{list-style:none;padding:0;margin:0}
.checklist-group li{display:flex;gap:11px;align-items:flex-start;font-size:14px;line-height:1.55;padding:8px 0;border-bottom:1px solid var(--border)}
.checklist-group li input{margin-top:3px;accent-color:var(--primary);width:16px;height:16px;flex:0 0 auto}

@media print{
  .site-header,.site-footer,.blog-categories,.tool-panel,.tool-notes,.tool-actions,.brief{display:none!important}
  .tool-output{border:0;background:#fff;padding:0}
  .checklist-group li{break-inside:avoid}
}
@media(max-width:800px){
  .tool-layout{grid-template-columns:1fr;gap:26px;padding:44px 0 30px}
  .field-row{flex-direction:column;align-items:stretch;gap:6px}
  .field-row input,.field-row select{width:100%;text-align:left}
}
