/* Hallmark · shape: app screen · genre: modern-minimal · theme: Rim (dealt)
 * nav: service switcher · signature: fs local workbench · states: empty, selected, disabled, focus, confirmation
 * axes: dark/grotesk-sans/warm · posture: restrained · contrast: checked in render · v2.0.0 */
/* Hallmark · pre-emit critique: P4 H4 E4 S3 R4 V4 · weakest: S, replaced marketing claims with a working fs task */

@import url('./tokens.css');
@import url('./base.css');
:root { --font-display: 'Avenir Next', 'Segoe UI', sans-serif; --font-body: var(--font-display); --container:1180px; --gutter:32px; --radius-control:6px; --color-clear:transparent; }
html,body{overflow-x:clip}body{min-height:100vh;display:flex;flex-direction:column;font-size:var(--text-md)}a,button,input,select,textarea{touch-action:manipulation}button,input,select,textarea{font:inherit}button,a,label{ -webkit-tap-highlight-color:var(--color-clear)}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}a{color:var(--color-ink);text-decoration:none}button,a,input,select,textarea{outline-offset:4px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.file-label:focus-within{outline:2px solid var(--color-focus);transition:none}button:active,.primary:active{transform:translateY(1px)}.top,main,footer{width:calc(100% - 2 * var(--gutter));max-width:var(--container);margin-inline:auto}.top{display:flex;align-items:center;gap:var(--space-xl);padding-block:28px;border-bottom:1px solid var(--color-rule)}.brand{font-size:24px;font-weight:600;letter-spacing:-.04em}nav{display:flex;gap:var(--space-lg);font-size:var(--text-sm)}nav a:hover{text-decoration:underline}.languages{margin-left:auto;display:flex;gap:var(--space-2xs);align-items:center;font-size:var(--text-sm)}.languages a{padding:var(--space-xs) var(--space-xs);border:1px solid var(--color-clear)}.languages [aria-current]{border-color:var(--color-rule);background:var(--color-paper-2)}main{flex:1}.intro{padding-block:56px 36px;max-width:760px}.intro h1{font-size:clamp(30px,4vw,48px);font-weight:500;line-height:1.12;letter-spacing:-.035em;min-width:0;overflow-wrap:break-word;max-width:22ch;margin:0 0 var(--space-md)}.intro p{color:var(--color-muted);max-width:58ch;font-size:var(--text-lg);margin:0;line-height:1.55}h2{font-size:var(--text-xl);font-weight:500;margin:0 0 20px}h3{font-size:var(--text-lg);font-weight:500;margin:0 0 var(--space-xs)}p{line-height:1.6}svg{width:34px;height:34px;stroke:var(--color-muted);stroke-width:1.5;flex-shrink:0}button{color:var(--color-ink)}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border-radius:var(--radius-control);padding:var(--space-xs) var(--space-md);border:1px solid var(--color-rule);font-weight:500;line-height:1.4}.primary{background:var(--color-ink);color:var(--color-paper)}.primary:hover{background:var(--color-ink-2)}.secondary{background:var(--color-clear);color:var(--color-ink)}.secondary:hover{background:var(--color-paper-3)}.plain{border:0;background:var(--color-clear);padding:var(--space-xs);color:var(--color-muted);font-size:var(--text-sm)}.plain:hover{text-decoration:underline}.quiet{font-size:var(--text-sm);color:var(--color-muted);line-height:1.6}.section-bar{display:flex;justify-content:space-between;align-items:center;gap:20px}.section-bar h2{margin:0}footer{display:flex;gap:var(--space-lg);align-items:center;border-top:1px solid var(--color-rule);margin-top:52px;padding-block:var(--space-lg);color:var(--color-muted);font-size:var(--text-sm)}footer>span:last-child{margin-left:auto}dialog{border:1px solid var(--color-rule);padding:32px;max-width:460px;width:calc(100% - 32px);background:var(--color-paper);color:var(--color-ink);border-radius:var(--radius-control)}dialog::backdrop{background:color-mix(in oklab,var(--color-ink) 35%,var(--color-clear))}dialog p{color:var(--color-muted);line-height:1.6}dialog .primary{margin-top:var(--space-sm)}[hidden]{display:none!important}input,select,textarea{width:100%;min-width:0;border:1px solid var(--color-muted);border-radius:var(--radius-control);background:var(--color-paper);color:var(--color-ink);padding:var(--space-sm) var(--space-sm);min-height:44px}input::placeholder,textarea::placeholder{color:var(--color-muted)}label{display:block;font-size:var(--text-sm)}label>span{display:block;margin-bottom:var(--space-xs)}textarea{resize:vertical;min-height:98px}.form-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-md);margin-block:var(--space-md)}.form-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);margin-top:20px}.form-actions .quiet{max-width:36ch}.form-actions button{white-space:nowrap}#result{color:var(--color-accent);font-size:var(--text-sm)}
@media(max-width:700px){:root{--gutter:20px}.top{gap:var(--space-md);flex-wrap:wrap;padding-block:20px}.brand{font-size:22px}nav{order:3;width:100%;gap:var(--space-lg)}.languages{margin-left:auto}.languages a{padding:var(--space-xs) var(--space-xs)}.intro{padding-block:var(--space-xl) 28px}.intro h1{font-size:34px}.intro p{font-size:var(--text-md)}.section-bar{align-items:start;flex-direction:column}.form-row{grid-template-columns:1fr}.form-actions{display:block}.form-actions button{width:100%}footer{gap:var(--space-sm);flex-wrap:wrap;margin-top:36px}footer>span:last-child{margin-left:0}dialog{padding:var(--space-lg)}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
 :root{--radius-control:0}.intro{max-width:920px}.intro h1{max-width:22ch}.file-area{border-top:1px solid var(--color-rule);padding-top:28px}.select-area{display:flex;align-items:center;gap:var(--space-lg);background:var(--color-paper-2);padding:28px;margin-top:var(--space-lg);border:1px solid var(--color-rule)}.select-area>div{flex:1}.select-area h3{font-size:var(--text-md);margin-bottom:var(--space-2xs)}.select-area p{margin:0}.file-label{position:relative;cursor:pointer}.file-label input{position:absolute;inset:0;opacity:0;cursor:pointer}.file-label>span{margin:0}.primary{background:var(--color-accent);color:var(--color-accent-ink);border-color:var(--color-accent)}.primary:hover{background:var(--color-accent-2);color:var(--color-accent-ink)}.file-table{margin-top:var(--space-lg);overflow:auto;min-height:150px;border-bottom:1px solid var(--color-rule)}table{width:100%;border-collapse:collapse;font-size:var(--text-sm);table-layout:fixed}th{text-align:left;color:var(--color-muted);font-weight:500;padding:var(--space-sm);border-bottom:1px solid var(--color-rule)}th:first-child{width:50%}td{padding:var(--space-md) var(--space-sm);border-bottom:1px solid var(--color-rule);overflow-wrap:anywhere}td:last-child{font-variant-numeric:tabular-nums}.empty{padding:var(--space-lg) var(--space-sm)}.empty h3{font-size:var(--text-md)}.empty p{font-size:var(--text-sm);color:var(--color-muted);margin:0}.file-actions{display:flex;gap:var(--space-sm);margin:var(--space-lg) 0}.file-area>.quiet{padding-top:var(--space-xs)}@media(max-width:700px){.select-area{padding:20px;flex-wrap:wrap;gap:var(--space-md)}.select-area>div{flex-basis:calc(100% - 65px)}.file-label{width:100%}.file-actions{flex-direction:column}}