/* Styles for the free tools pages (/resources/apa-formatter and /resources/test-chooser).
   The formatter rules are adapted from dass-website/apa-format/apa-format.css, scoped to .apa-tool
   and re-themed with this site's colors and fonts. */
.apa-tool{--navy:#543453;--purple:#684966;--blue:#F1553F;--pale:#F1E8E1;--paper:#FAF6F1;--rule:#E4D9D0;--ink:#543453;--muted:#756173;--ok:#2F6F4E;--warn:#8A5A00;--warn-bg:#FFF7E7;--stop:#A02020;--serif:'Newsreader',Georgia,serif;--sans:'Public Sans',Arial,sans-serif;--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-family:var(--sans);color:var(--ink)}
.apa-tool .formatter-card{border-radius:8px}
.apa-tool .sentence-box{border-radius:6px}
.formatter-picker{display:flex;flex-wrap:wrap;align-items:end;gap:12px 18px;margin-top:8px}
.formatter-picker label{font-weight:600;font-size:15px}
.formatter-picker select{width:auto;max-width:100%;min-height:44px;padding:8px 12px;border:1px solid #D8C9C0;border-radius:6px;background:#fff;color:#543453;font:600 15px 'Public Sans',Arial,sans-serif;min-width:240px}
.formatter-picker select:focus-visible{outline:3px solid #F1553F;outline-offset:3px}
.apa-tool .formatter-card{margin-top:30px;overflow:hidden;border:1px solid var(--rule); border-radius:2px;background:#fff}
.apa-tool .formatter-head{display:flex;align-items:center;justify-content:space-between;gap:18px; padding:16px 22px;color:#fff;background:var(--navy)}
.apa-tool .formatter-head p{margin:0;font-size:13px;color:rgba(255,255,255,.78)}
.apa-tool .live-badge{flex:none;padding:4px 10px;border-radius:2px;background:rgba(255,255,255,.14); font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.09em; text-transform:uppercase}
.apa-tool .formatter-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr)}
.apa-tool .input-panel,.apa-tool .output-panel{padding:26px}
.apa-tool .output-panel{border-left:1px solid var(--rule);background:#FAFAFC}
.apa-tool .panel-label{margin:0 0 16px;font-family:var(--mono);font-size:11px;letter-spacing:.12em; text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--rule); padding-bottom:7px}
.apa-tool .fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.apa-tool .field{min-width:0}
.apa-tool .field.full{grid-column:1/-1}
.apa-tool .field label,.apa-tool .check-row label{display:block;margin-bottom:5px;font-size:13px;font-weight:500; color:var(--ink)}
.apa-tool .field-note{display:block;margin-top:5px;font-size:12px;line-height:1.4;color:var(--muted)}
.apa-tool .field-warning{min-height:1em;margin-top:4px;font-size:12px;font-weight:500;color:var(--stop)}
.apa-tool input,.apa-tool select{width:100%;min-height:40px;padding:8px 10px;border:1px solid var(--rule); border-radius:2px;background:#fff;color:var(--ink);font:inherit; font-family:var(--mono);font-size:14px}
.apa-tool select{font-family:var(--sans)}
.apa-tool input:focus,.apa-tool select:focus,.apa-tool button:focus-visible,.apa-tool a:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-color:var(--blue)}
.apa-tool input[aria-invalid="true"]{border-color:var(--stop)}
.apa-tool .check-row{display:flex;align-items:start;gap:9px;padding:4px 0}
.apa-tool .check-row input{width:17px;min-height:17px;margin-top:3px;accent-color:var(--blue)}
.apa-tool .check-row label{margin:0;font-weight:500}
.apa-tool .check-row .field-note{margin-top:2px}
.apa-tool .conditional[hidden]{display:none}
.apa-tool .rule-callout{margin:0 0 16px;padding:14px 16px;border-radius:2px;border:1px solid var(--pale); background:#F1F7FE}
.apa-tool .rule-callout strong{display:block;margin-bottom:3px;font-size:13px;color:var(--navy)}
.apa-tool .sentence-box{min-height:120px;display:flex;align-items:center;padding:22px 24px; border:1px solid var(--rule);border-radius:2px;background:#fff;color:var(--ink); font:19px/1.75 var(--serif);box-shadow:inset 3px 0 0 var(--pale)}
.apa-tool .sentence-box .lines{width:100%}
.apa-tool .sentence-box p{margin:0}
.apa-tool .sentence-box p+p{margin-top:12px}
.apa-tool .copy-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.apa-tool button{min-height:38px;padding:8px 14px;border:1px solid var(--navy);border-radius:2px; color:var(--navy);background:#fff;font:600 13px/1 var(--sans);cursor:pointer}
.apa-tool button:hover{background:var(--purple);border-color:var(--purple);color:#fff}
.apa-tool button.primary{background:var(--navy);color:#fff}
.apa-tool button.primary:hover{background:var(--purple);border-color:var(--purple)}
.apa-tool .copy-status{min-height:20px;margin:8px 0 0;font-family:var(--mono);font-size:12px; font-weight:600;color:var(--ok)}
.apa-tool .warnings{margin-top:14px}
.apa-tool .warning{margin:8px 0 0;padding:10px 12px;border-left:3px solid #E8A23D;border-radius:2px; color:var(--warn);background:var(--warn-bg);font-size:12.5px;line-height:1.5}
.apa-tool .warning strong{color:#70330F}
.apa-tool .privacy-note{margin:16px 0 0;font-size:12.5px;color:var(--muted)}
.apa-tool .privacy-note::before{content:"";display:inline-block;width:6px;height:6px;margin-right:7px; border-radius:50%;background:var(--ok)}
@media(max-width:860px){.apa-tool .formatter-grid{grid-template-columns:1fr}.apa-tool .output-panel{border-left:0;border-top:1px solid var(--rule)}}
@media(max-width:580px){.apa-tool .fields{grid-template-columns:1fr}.apa-tool .field.full{grid-column:auto}.apa-tool .formatter-head{align-items:start}}
/* Test chooser */
.chooser-card{margin-top:30px;border:1px solid #E4D9D0;border-radius:8px;background:#fff;padding:28px 30px}
.chooser-step{border:0;margin:0;padding:0}
.chooser-step legend{font:400 28px/1.25 'Newsreader',Georgia,serif;color:#543453;margin-bottom:18px;padding:0}
.chooser-step legend:focus{outline:none}
.chooser-option{display:flex;align-items:center;gap:14px;width:100%;text-align:left;margin:0 0 10px;padding:14px 16px;border:1px solid #E4D9D0;border-radius:6px;background:#FAF6F1;color:#543453;font:500 16px/1.4 'Public Sans',Arial,sans-serif;cursor:pointer;transition:border-color .15s,background .15s}
.chooser-option span{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1px solid #D1BFB8;font-size:13px;font-weight:700;color:#8A6E88;background:#fff}
.chooser-option:hover{border-color:#F1553F;background:#fff}
.chooser-option:focus-visible,.chooser-controls button:focus-visible,.chooser-crumb:focus-visible{outline:3px solid #F1553F;outline-offset:3px}
.chooser-trail ol{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px;padding:0}
.chooser-crumb{border:0;border-radius:999px;background:#F1E8E1;color:#543453;padding:6px 12px;font:500 13px 'Public Sans',Arial,sans-serif;cursor:pointer}
.chooser-crumb:hover{background:#E8D8CE}
.chooser-controls{display:flex;gap:10px;margin-top:18px}
.chooser-controls button{border:1px solid #D8C9C0;border-radius:6px;background:#fff;color:#543453;padding:9px 14px;font:600 14px 'Public Sans',Arial,sans-serif;cursor:pointer}
.chooser-controls button:hover{border-color:#F1553F}
.chooser-result h3{font:400 32px/1.2 'Newsreader',Georgia,serif;margin:0 0 12px}
.chooser-result:focus{outline:none}
.chooser-result h4{font-size:15px;margin:22px 0 8px}
.chooser-result ul{margin:0 0 18px;padding-left:20px}
.chooser-result li{margin-bottom:6px}
.chooser-result dl{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0 0 20px}
.chooser-result dt{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#8A6E88;margin-bottom:4px}
.chooser-result dd{margin:0}
.chooser-links{display:flex;flex-wrap:wrap;gap:10px}
.chooser-links a{display:inline-block;padding:9px 14px;border:1px solid #E4D9D0;border-radius:6px;text-decoration:none;font-weight:600;font-size:14px;background:#FAF6F1}
.chooser-links a:first-child{background:#F1553F;border-color:#F1553F;color:#fff}
.chooser-links a:hover{border-color:#F1553F}
.chooser-note{margin:18px 0 0;font-size:13px;color:#756173}
.tool-table-wrap{overflow-x:auto;margin-top:24px}
.tool-table{width:100%;border-collapse:collapse;font-size:14px;background:#fff}
.tool-table th,.tool-table td{text-align:left;padding:10px 12px;border-bottom:1px solid #E4D9D0;vertical-align:top}
.tool-table th{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#8A6E88}
@media(max-width:680px){.chooser-card{padding:20px 16px}.chooser-step legend{font-size:24px}.chooser-result dl{grid-template-columns:1fr}.chooser-result h3{font-size:27px}}
/* Tool page layout */
.tool-hero{padding-top:52px;padding-bottom:10px;max-width:880px}
.tool-hero .breadcrumb{margin-bottom:36px}
.tool-hero h1{margin-bottom:20px}
.tool-section{padding-top:30px;padding-bottom:40px}
.tool-prose{max-width:760px}
.tool-prose h2{font-size:34px;margin-top:10px}
.tool-prose ul{padding-left:20px}
.tool-prose li{margin-bottom:8px}
.tool-prose a{color:#543453;text-decoration:underline;text-decoration-color:#F1553F;text-underline-offset:3px}
