/* ===== Speaking styles (preserved from v0.9.3) ===== */
.guardian-coach-box{max-width:760px;margin:20px 0;padding:20px;border:1px solid #d1d5db;border-radius:14px;background:#fff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:#1f2937;box-shadow:0 8px 24px rgba(15,23,42,.06)}
.guardian-coach-header{background:linear-gradient(135deg,#2D4F73,#1F3B57);color:#fff;padding:18px;border-radius:12px;margin-bottom:16px}
.guardian-coach-kicker{font-size:13px;opacity:.85;margin-bottom:6px}
.guardian-coach-header h3{margin:0 0 8px 0;font-size:24px}
.guardian-coach-header p{margin:0;font-size:14px;line-height:1.5}
.guardian-coach-field{margin-bottom:14px}
.guardian-coach-field label{display:block;font-weight:700;margin-bottom:6px}
.guardian-coach-field input,.guardian-coach-field select,.guardian-coach-field textarea{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #cbd5e1;border-radius:8px;font-size:15px}
.guardian-coach-field textarea{resize:vertical}
.guardian-coach-submit{background:#0f766e;color:#fff;border:none;border-radius:8px;padding:11px 16px;font-weight:700;cursor:pointer}
.guardian-coach-submit:disabled{opacity:.6;cursor:not-allowed}
.guardian-coach-status{margin-top:12px;font-size:14px;color:#475569}
.guardian-coach-error{color:#b91c1c}
.guardian-coach-success{color:#166534}
.guardian-coach-output{margin-top:16px;padding:16px;border-left:4px solid #16a34a;border-radius:8px;background:#f0fdf4}
.guardian-coach-output h4{margin:0 0 10px 0;color:#166534}
.guardian-coach-feedback{white-space:pre-wrap;line-height:1.6}

/* ===== Writing-specific overrides ===== */
.guardian-coach-writing .guardian-coach-submit{background:#c7356b}
.guardian-coach-writing .guardian-coach-submit:hover{background:#a02856}
.guardian-coach-writing .guardian-coach-output{border-left-color:#c7356b;background:#fdf2f8}
.guardian-coach-parse-warning{background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;padding:10px 14px;border-radius:8px;margin-bottom:12px;font-size:14px}

/* ===== Fingerprint card (W1D1) ===== */
.fp-header{margin-bottom:16px}
.fp-header h3{margin:0 0 4px 0;font-size:22px;color:#831843}
.fp-header p{margin:0;font-size:14px;color:#6b1842;line-height:1.5}
.fp-legend{background:rgba(255,255,255,0.7);border:1px solid #f9c5d6;border-radius:8px;padding:12px 14px;margin-bottom:18px;font-size:14px;line-height:1.6}
.fp-row{background:#ffffff;border:1px solid #f9c5d6;border-radius:10px;padding:16px 18px;margin-bottom:12px}
.fp-row-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px;flex-wrap:wrap}
.fp-row-header h4{margin:0;font-size:17px;color:#1f2937}
.fp-badge{display:inline-block;padding:3px 12px;border-radius:14px;font-size:13px;font-weight:700;color:#ffffff;letter-spacing:.02em}
.fp-badge-solid{background:#16a34a}
.fp-badge-slippery{background:#eab308}
.fp-badge-wobbly{background:#dc2626}
.fp-meaning{font-style:italic;color:#6b1842;font-size:14px;margin-bottom:10px}
.fp-summary{color:#1f2937;font-size:15px;line-height:1.55;margin-bottom:10px}
.fp-module-path{background:#f0fdfa;border-left:3px solid #0f766e;padding:8px 12px;border-radius:6px;font-size:14px;line-height:1.5;color:#0f766e;margin-bottom:8px}
.fp-tutoring-note{background:#fff7ed;border-left:3px solid #f97316;padding:8px 12px;border-radius:6px;font-size:14px;line-height:1.5;color:#9a3412}
.fp-encouragement{background:linear-gradient(135deg,#fdf2f8,#fff6fa);border:1px solid #f9c5d6;border-radius:10px;padding:16px 18px;margin-top:16px;font-size:15px;line-height:1.6;color:#1f2937;font-style:italic}
.fp-actions{margin-top:18px;display:flex;gap:10px;flex-wrap:wrap}
.fp-action-save{background:#ffffff;color:#c7356b;border:2px solid #c7356b;border-radius:8px;padding:10px 18px;font-weight:700;cursor:pointer;font-size:14px}
.fp-action-save:hover{background:#c7356b;color:#ffffff}

/* ===== Log entries (W1D2-W1D11) ===== */
.wl-summary{background:#ffffff;border:1px solid #f9c5d6;border-radius:10px;padding:14px 16px;margin-bottom:12px}
.wl-summary h4{margin:0 0 6px 0;color:#831843;font-size:16px}
.wl-summary p{margin:0;line-height:1.55;color:#1f2937}
.wl-rate{padding:10px 14px;border-radius:8px;margin-bottom:12px;font-size:14px}
.wl-rate-all_caught{background:#dcfce7;border-left:4px solid #16a34a;color:#15803d}
.wl-rate-most_caught{background:#fefce8;border-left:4px solid #ca8a04;color:#854d0e}
.wl-rate-some_caught{background:#fff7ed;border-left:4px solid #f97316;color:#9a3412}
.wl-rate-many_remain{background:#fee2e2;border-left:4px solid #dc2626;color:#991b1b}
.wl-entries{background:#ffffff;border:1px solid #f9c5d6;border-radius:10px;padding:14px 16px;margin-bottom:12px}
.wl-entries h4{margin:0 0 10px 0;color:#831843;font-size:16px}
.wl-log-table{width:100%;border-collapse:collapse;font-size:14px}
.wl-log-table th{background:#fdf2f8;text-align:left;padding:8px 10px;border:1px solid #f9c5d6;color:#831843;font-weight:700}
.wl-log-table td{padding:8px 10px;border:1px solid #f9c5d6;color:#1f2937;line-height:1.5;vertical-align:top}
.wl-no-entries{background:#dcfce7;border-left:4px solid #16a34a;padding:14px 18px;border-radius:8px;color:#15803d;font-weight:600;margin-bottom:12px}
.wl-encouragement{background:linear-gradient(135deg,#fdf2f8,#fff6fa);border:1px solid #f9c5d6;border-radius:10px;padding:14px 16px;font-size:14px;line-height:1.6;color:#1f2937;font-style:italic}

/* ===== Capstone (W1D12) ===== */
.wl-capstone h3{margin:0 0 12px 0;font-size:22px;color:#831843}
.wl-capstone h4{margin:18px 0 8px 0;font-size:16px;color:#831843}
.wl-capstone-summary{background:linear-gradient(135deg,#fdf2f8,#fff6fa);border:1px solid #f9c5d6;border-radius:10px;padding:14px 16px;margin-bottom:14px;font-size:15px;line-height:1.6;color:#1f2937}
.wl-top-patterns,.wl-protocol-order,.wl-watch{padding-left:22px;line-height:1.7}
.wl-top-patterns li{margin-bottom:10px}
.wl-freq{font-size:13px;color:#6b1842;font-style:italic}
.wl-capstone-tutoring{background:#fff7ed;border-left:4px solid #f97316;padding:12px 16px;border-radius:8px;margin-top:14px;color:#9a3412;line-height:1.55}

/* ===== Mobile adjustments ===== */
@media (max-width:600px){
    .fp-row-header{flex-direction:column;align-items:flex-start;gap:6px}
    .wl-log-table{font-size:13px}
    .wl-log-table th,.wl-log-table td{padding:6px 8px}
}

/* ===== Print styles for "Save / Print" action ===== */
@media print{
    .guardian-coach-header,.guardian-coach-field,.guardian-coach-submit,.guardian-coach-status,.fp-actions{display:none !important}
    .guardian-coach-box{box-shadow:none;border:none;padding:0}
    .guardian-coach-output{background:#ffffff !important;border:none !important;padding:0 !important}
    .fp-row,.wl-entries,.wl-summary{break-inside:avoid;page-break-inside:avoid}
}
