/* Workspace components inherit the established homepage/product design tokens. */
.workspace-page{background:var(--white);color:var(--gray-600);font-family:var(--font-sans)}
.workspace-page [hidden]{display:none!important}
.workspace-wrap{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--space-6)}
.workspace-hero{padding:var(--space-20) 0;background:linear-gradient(180deg,var(--gray-50),var(--white));border-bottom:1px solid var(--gray-200)}
.workspace-eyebrow{display:inline-flex;padding:.45rem .8rem;border:1px solid var(--gray-200);border-radius:var(--radius-full);font-size:.8rem;font-weight:600;background:var(--white);color:var(--primary-dark)}
.workspace-hero h1{font-family:var(--font-heading);font-size:clamp(2rem,4.5vw,3.5rem);font-weight:700;line-height:1.16;letter-spacing:normal;color:var(--gray-900);max-width:23ch;margin:var(--space-4) 0 var(--space-6)}
.workspace-hero h1 span{color:var(--primary)}
.workspace-hero p{max-width:65ch;font-size:var(--text-lg);line-height:1.75;color:var(--gray-600)}
.workspace-badges{display:flex;gap:var(--space-3);flex-wrap:wrap;margin-top:var(--space-6)}
.workspace-badges span{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .8rem;background:var(--primary-light);color:var(--primary-dark);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:500}
.workspace-badges span::before{content:'✓';font-weight:700}
.workspace-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:var(--space-8);padding-top:var(--space-12);padding-bottom:var(--space-20);align-items:start}
.workspace-layout>*{min-width:0}
.workspace-menu{position:sticky;top:96px;padding:var(--space-5);background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-xl)}
.workspace-menu a{display:block;padding:var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;color:var(--gray-700)}
.workspace-menu a:hover,.workspace-menu a:focus-visible{background:var(--primary-light);color:var(--primary-dark)}
.workspace-menu small{display:block;padding:var(--space-4) var(--space-3) 0;margin-top:var(--space-3);border-top:1px solid var(--gray-200);line-height:1.6;color:var(--gray-500)}
.workspace-section{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:clamp(1.25rem,3vw,2.5rem);margin-bottom:var(--space-8);scroll-margin-top:96px}
.workspace-section>header{display:flex;gap:var(--space-4);align-items:flex-start;margin-bottom:var(--space-5)}
.workspace-section>header>span{display:inline-grid;place-items:center;flex:0 0 2.5rem;height:2.5rem;border-radius:var(--radius-full);background:var(--primary-light);color:var(--primary-dark);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:700}
.workspace-section h2{font-family:var(--font-heading);font-weight:700;font-size:clamp(1.4rem,2.4vw,2rem);line-height:1.25;color:var(--gray-900);margin:0}
.workspace-section h3{font-family:var(--font-heading);font-size:var(--text-lg);margin:var(--space-4) 0 var(--space-2)}
.workspace-section label{display:block;font-size:var(--text-sm);font-weight:600;color:var(--gray-800);margin:var(--space-4) 0 .4rem}
.workspace-section input,.workspace-section select,.workspace-section textarea{font:inherit;color:var(--gray-900);width:100%;padding:.85rem;border:1px solid var(--gray-300);border-radius:var(--radius-md);background:var(--white);min-width:0}
.workspace-section textarea{min-height:150px;resize:vertical;line-height:1.7}
.workspace-section input[type=checkbox]{width:1.1rem;height:1.1rem;flex:none;margin-top:.25rem;accent-color:var(--primary)}
.workspace-section input[type=file]{font-size:var(--text-sm);background:var(--gray-50)}
.workspace-section input[type=file]::file-selector-button{font:inherit;font-weight:600;color:var(--primary-dark);background:var(--primary-light);border:0;border-radius:var(--radius-sm);padding:.5rem .75rem;margin-right:.75rem;cursor:pointer}
.workspace-check{display:flex!important;gap:var(--space-3);font-weight:400!important;align-items:flex-start}
.workspace-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}
.workspace-columns>*{min-width:0}
.workspace-actions{display:flex;gap:var(--space-3);flex-wrap:wrap;align-items:center;margin-top:var(--space-6)}
.workspace-actions .btn{font-family:var(--font-sans);font-size:var(--text-sm)}
.workspace-actions .btn-outline{background:transparent;color:var(--primary);border-color:var(--primary)}
.workspace-actions .btn-outline:hover{background:var(--primary-light);color:var(--primary-dark)}
.workspace-note{color:var(--gray-500);font-size:var(--text-sm);line-height:1.7}
.workspace-status{padding:var(--space-4);background:var(--primary-light);color:var(--gray-800);border-left:3px solid var(--primary);border-radius:var(--radius-md);margin-top:var(--space-5);font-size:var(--text-sm);overflow-wrap:anywhere}
.workspace-result{padding:var(--space-5);border:1px solid var(--gray-200);border-radius:var(--radius-lg);margin-top:var(--space-4);overflow-wrap:anywhere}
.workspace-result pre{white-space:pre-wrap;font:inherit;font-size:var(--text-sm);background:var(--gray-50);border-radius:var(--radius-md);padding:var(--space-4);margin-top:var(--space-2)}
.workspace-result[data-type=missing],.workspace-result[data-type=year_mismatch]{border-left:3px solid var(--accent)}
.workspace-downloads{background:var(--primary-light);border-radius:var(--radius-lg);padding:var(--space-5);margin-top:var(--space-5)}
.workspace-preview{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--gray-50);border-radius:var(--radius-md);padding:var(--space-5);line-height:1.7;margin-top:var(--space-4)}
.workspace-sample{border-left:3px solid var(--accent);padding:var(--space-4);background:var(--accent-light);border-radius:var(--radius-md)}
.workspace-section details{padding:var(--space-3) 0}.workspace-section summary{cursor:pointer;font-weight:600}
.workspace-page main :focus-visible{outline:3px solid var(--primary);outline-offset:3px}
.workspace-page button:disabled{opacity:.5;cursor:not-allowed}
.workspace-inline-links{display:flex;gap:var(--space-4);flex-wrap:wrap;margin-top:var(--space-5);font-size:var(--text-sm);font-weight:600}
@media(max-width:900px){.workspace-layout{grid-template-columns:minmax(0,1fr);gap:var(--space-6);padding-top:var(--space-8)}.workspace-menu{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:var(--space-3)}.workspace-menu small{grid-column:1/-1}.workspace-hero{padding:var(--space-12) 0}}
@media(max-width:600px){.workspace-columns{grid-template-columns:minmax(0,1fr);gap:0}.workspace-section>header{gap:var(--space-3)}.workspace-section>header>span{flex-basis:2rem;height:2rem}.workspace-menu a{padding:.65rem;font-size:.8rem}.workspace-badges{gap:var(--space-2)}.workspace-badges span{font-size:.75rem}.workspace-actions .btn{max-width:100%;white-space:normal;text-align:center}.workspace-hero h1{max-width:100%}}
@media print{.header,.discount-banner,.workspace-menu,.workspace-actions,.footer,input,textarea,select{display:none!important}.workspace-layout{display:block}.workspace-section{break-inside:avoid;border:none;box-shadow:none}.workspace-hero{padding:20px 0}}

/* The sticky header creates a containing block for its mobile menu. */
@media(max-width:768px){.workspace-page .nav.open{top:100%;bottom:auto;height:calc(100dvh - 72px);align-items:stretch}.workspace-page .nav.open>a{flex-shrink:0}}
