:root{font-family:"Trebuchet MS","Segoe UI",sans-serif;color:#171d1b;background:#f1eee5;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}button,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.52}a{color:inherit;text-underline-offset:3px}a:hover{color:#8a4e2b}button:focus-visible,a:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #b87340;outline-offset:3px}[hidden]{display:none!important}.site-shell{max-width:1540px;margin:auto;padding:0 clamp(20px,4.5vw,76px)}.site-header{min-height:83px;border-bottom:1px solid #aaa99e;display:flex;align-items:center;justify-content:space-between;gap:20px}.wordmark{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font-family:Georgia,serif;font-size:1.2rem;font-weight:bold;white-space:nowrap}.wordmark-mark{color:#a45e31;font-size:2.1rem;line-height:1}.site-header nav{display:flex;flex-wrap:wrap;align-items:center;gap:11px;font-size:.8rem}.site-header nav [aria-current]{font-weight:700}.eyebrow,.phase-kicker,.instrument,.phase-number,.section-rule>span,.result-source,.example-badge{font:700 .72rem/1.5 'Courier New',monospace;letter-spacing:.07em;text-transform:uppercase}.intro{max-width:970px;padding:clamp(40px,6vw,88px) 0 clamp(34px,4vw,58px)}.intro .eyebrow{color:#90522f}.intro h1{font:normal clamp(3rem,7vw,6.65rem)/.99 Georgia,'Times New Roman',serif;letter-spacing:-.055em;margin:20px 0 24px}.intro h1 em{font-weight:normal;color:#a45e31}.intro-copy{font-size:clamp(1rem,1.35vw,1.2rem);line-height:1.6;max-width:700px;margin:0;color:#49504b}.workbench{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(20px,2.7vw,42px);align-items:start}.left-column,.right-column{min-width:0;display:grid;gap:20px}.phase,.allowance-panel{border:1px solid #bdbcb0;background:#faf8f1;padding:clamp(20px,2.5vw,36px);min-width:0}.phase-heading{display:flex;gap:17px;align-items:baseline;border-bottom:1px solid #d5d1c7;padding-bottom:19px;margin-bottom:23px}.phase-number{color:#ab6538;flex:none;font-size:1rem}.phase-heading>div{min-width:0}.phase-kicker{margin:0 0 6px;color:#63675e}.phase h2,.allowance-panel h2{font:normal clamp(1.55rem,2.35vw,2.3rem)/1.1 Georgia,serif;letter-spacing:-.025em;margin:0}.brief-panel label{display:block;font-weight:700;font-size:1.07rem;margin-bottom:8px}.field-hint,.fine-print{font-size:.81rem;line-height:1.6;color:#515951}.field-hint{margin:0 0 14px}.brief-panel textarea{display:block;width:100%;min-height:225px;resize:vertical;border:1px solid #949a90;border-radius:0;background:#fffef9;color:#171d1b;padding:16px;line-height:1.55}.brief-panel textarea::placeholder{color:#666d68}.brief-panel textarea[readonly]{background:#f1eee5}.field-meta{display:flex;align-items:start;justify-content:space-between;gap:12px;min-height:42px;padding:10px 0;color:#555b53;font:.76rem/1.4 'Courier New',monospace}.field-meta span:last-child{white-space:nowrap}.field-error{color:#a03722;font-weight:700}.button{display:inline-flex;justify-content:center;align-items:center;gap:12px;min-height:46px;padding:11px 19px;border:1px solid #171d1b;border-radius:0;font-size:.85rem;font-weight:700;line-height:1.3;text-align:center;transition:background-color .18s ease,color .18s ease,transform .18s ease}.button:not(:disabled):hover{transform:translateY(-2px)}.button-dark{background:#171d1b;color:#faf8f1}.button-dark:not(:disabled):hover{background:#39443e}.button-outline{background:transparent;color:#171d1b}.button-outline:not(:disabled):hover{background:#e7e3d9}.button-copper{background:#a45e31;border-color:#a45e31;color:#fff}.button-copper:not(:disabled):hover{background:#874826}.section-rule{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:4px 14px;border-bottom:1px solid #d5d1c7;padding-bottom:10px;margin:26px 0 13px}.section-rule h3,.section-rule h4{font-size:.95rem;margin:0}.section-rule>span{font-size:.62rem;color:#5b6058}.example-buttons{display:grid;gap:8px}.example-button{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:48px;border:1px solid #cbc8bd;background:#fffef9;color:#171d1b;padding:11px 14px;text-align:left;font-size:.87rem}.example-button:hover:not(:disabled),.example-button[aria-pressed=true]{border-color:#a45e31;background:#f8eee3}.example-button span:last-child{color:#9a5b35;font-size:1.1rem}.example-badge{display:inline-block;color:#784522;background:#f3e2cf;padding:8px 10px;margin:16px 0 0}.text-button{border:0;background:transparent;text-decoration:underline;text-underline-offset:4px;min-height:44px;padding:8px 0;color:#794526;font-weight:700;display:block;margin-top:6px}.allowance-panel{background:#e9e5da}.allowance-top{display:flex;justify-content:space-between;gap:14px;align-items:start}.allowance-top .eyebrow{margin:0 0 8px;color:#784522}.allowance-panel h2{font-size:1.45rem}.allowance-top .button{font-size:.74rem;flex:none}.allowance-text{font-size:.95rem;font-weight:700;line-height:1.55;margin:18px 0 7px}.allowance-panel .fine-print{margin:0}.empty-state{border-left:2px solid #b87340;padding:4px 0 4px 17px;color:#555c55;font-size:.91rem;line-height:1.6}.instrument{color:#91522d;margin:0 0 8px}.match-name{font:normal clamp(1.7rem,2.6vw,2.4rem)/1.14 Georgia,serif;margin:0 0 10px;overflow-wrap:anywhere}.match-reason{line-height:1.6;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.candidate-list{list-style:none;padding:0;margin:0}.candidate-list li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:13px;padding:12px 0;border-bottom:1px solid #e2dfd5}.candidate-rank{font:700 .75rem 'Courier New',monospace;color:#95552d;padding-top:3px}.candidate-list strong{display:block;font-size:.9rem;overflow-wrap:anywhere}.candidate-list small{display:block;color:#525950;line-height:1.5;margin-top:4px}.candidate-list .score{font:normal .72rem 'Courier New',monospace;color:#845030;display:block;margin-top:6px}.template-text{white-space:pre-wrap;overflow-wrap:anywhere;max-height:420px;overflow:auto;background:#eeeae0;padding:18px;font:.83rem/1.65 'Courier New',monospace;margin:14px 0 0;color:#27302b}details summary{cursor:pointer;min-height:44px;padding:12px 0;font-weight:700;color:#774322}details summary:hover{text-decoration:underline}.result-phase{border-top:4px solid #b87340;background:#fdfbf5}.result-source{color:#8a4c27;margin:0 0 12px}.result-text{display:block;width:100%;min-height:250px;border:1px solid #a8a79c;background:#fffef9;color:#171d1b;padding:17px;resize:vertical;font:.89rem/1.65 'Courier New',monospace;white-space:pre-wrap;overflow-wrap:anywhere}.result-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.result-actions .button{min-width:145px}.live-area{border-top:1px solid #d5d1c7;margin-top:23px;padding-top:16px}.privacy-note{font-size:.87rem;line-height:1.6;margin:0 0 16px}.live-area .button{width:100%}.live-area .fine-print{margin:12px 0 0}.feedback{line-height:1.6;font-size:.89rem;margin:14px 0 0}.feedback:empty,.fine-print:empty{display:none}.feedback.is-error{border-left:3px solid #a03722;padding-left:12px;color:#7e2a1b}.is-ready{animation:arrive .24s ease-out both}@keyframes arrive{from{opacity:.7;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}footer{display:flex;justify-content:space-between;gap:24px;border-top:1px solid #aaa99e;margin-top:clamp(52px,7vw,110px);padding:20px 0 40px;font-size:.8rem;line-height:1.6;color:#515951}footer p{margin:0;max-width:790px}footer>a{white-space:nowrap}@media(max-width:950px){.workbench{grid-template-columns:1fr}.allowance-top{align-items:center}}@media(max-width:560px){.site-header{align-items:flex-start;flex-direction:column;justify-content:center;padding:16px 0;gap:9px}.site-header nav{font-size:.74rem}.intro{padding:38px 0}.intro h1{font-size:clamp(2.7rem,12vw,4.1rem)}.phase,.allowance-panel{padding:19px}.phase-heading{gap:11px}.allowance-top{display:block}.allowance-top .button{margin-top:15px}.result-actions .button{flex:1 1 145px}footer{flex-direction:column;gap:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.is-ready{animation:none}}

.skip-link{position:absolute;left:20px;top:-100px;background:#171d1b;color:#fff;padding:14px;z-index:10}.skip-link:focus{top:12px}h1,h2{text-wrap:balance}button,a,summary{touch-action:manipulation}.score,#taskCount{font-variant-numeric:tabular-nums}main{scroll-margin-top:20px}

.intro{max-width:1150px;padding:34px 0 30px}.intro h1{font-size:clamp(2.7rem,4.8vw,4.7rem);margin:12px 0 16px}.intro-copy{font-size:1.05rem;max-width:810px}

/* Stage one contains selection and the meta-prompt; stage two owns generation. */
.meta-output{margin-top:20px;border-top:1px solid #d5d1c7;padding-top:16px}.meta-output h3{font-size:.95rem;margin:0 0 8px}.candidate-details{margin-top:12px}.result-phase .live-area{margin-top:12px;margin-bottom:24px}.phase{scroll-margin-top:24px}.result-phase[aria-busy=true]{border-color:#a45e31}.brief-panel textarea{min-height:160px}.intro-copy{max-width:860px}
