*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);line-height:var(--leading)}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--font-heading);line-height:1.12;font-weight:var(--regular)}h1{font-size:clamp(2.6rem,5.5vw,4.8rem);letter-spacing:var(--tracking)}h2{font-size:clamp(1.8rem,3vw,2.5rem)}h3{font-size:1.2rem}button,input,textarea,select{font:inherit;color:var(--text);border:1px solid var(--line);background:var(--surface);border-radius:var(--small-radius);padding:.65rem 1rem;min-height:44px}button{cursor:pointer;font-weight:var(--medium)}button:hover,button[aria-current=page]{border-color:var(--accent);background:var(--accent-soft)}.primary{background:var(--text);color:var(--surface);border-color:var(--text)}.primary:hover{background:var(--maritime-navy-700);color:var(--surface)}:is(button,input,textarea,select):focus-visible{outline:3px solid var(--focus);outline-offset:3px}.top,main,footer{max-width:var(--max);margin:auto;padding:var(--space-3)}.top{display:flex;gap:var(--space-3);align-items:center;border-bottom:1px solid var(--line)}.top img{width:76px;height:64px;object-fit:contain}.product{font-weight:var(--bold);margin-right:auto;display:flex;gap:var(--space-2);align-items:center}.pill{display:inline-block;font-size:var(--small);font-weight:var(--medium);padding:.2rem .65rem;border:1px solid var(--line);border-radius:var(--small-radius);background:var(--surface)}#welcome{min-height:70vh;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:var(--space-5)}#welcome img{width:100%;height:auto;border-radius:var(--radius)}.eyebrow{font-size:var(--small);font-weight:var(--bold);color:var(--accent);letter-spacing:.08em;margin-bottom:var(--space-2)}.lead{font-size:1.2rem;margin:var(--space-3) 0;max-width:34rem}.fine{font-size:var(--small);margin-top:var(--space-2);max-width:33rem}#app{padding-top:var(--space-3)}.app-title{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.app-title h1{font-size:clamp(2.5rem,4vw,3.6rem)}.demo-note{margin-top:var(--space-2);font-size:var(--small)}nav{display:flex;gap:var(--space-1);flex-wrap:wrap;margin-top:var(--space-3);border-bottom:1px solid var(--line);padding-bottom:var(--space-3)}#notice{font-size:var(--small);min-height:2.5rem;padding-block:var(--space-1);color:var(--accent)}.heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-3)}.sub{font-size:var(--small);margin-top:var(--space-1)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}article,.panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:var(--space-3)}article{display:flex;flex-direction:column;gap:.7rem}article .art{width:100%;height:152px;object-fit:contain;background:var(--bg);border-radius:var(--small-radius)}.latin{font-style:italic;font-size:var(--small)}.meta{font-size:var(--small)}.row{display:flex;gap:var(--space-2);align-items:center;justify-content:space-between}.actions{display:flex;gap:var(--space-1);flex-wrap:wrap;margin-top:auto;padding-top:var(--space-1)}.status-tag{color:var(--accent);font-size:var(--small);font-weight:var(--bold)}.list{display:grid;gap:var(--space-2)}.task{display:grid;grid-template-columns:1fr auto;align-items:center}.task p{font-size:var(--small)}.done h3{text-decoration:line-through}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2);margin-bottom:var(--space-3)}.stat{padding:var(--space-2);border-left:3px solid var(--accent);background:var(--surface)}.stat strong{font-family:var(--font-heading);font-size:1.8rem;display:block}.split{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}dl{display:grid;grid-template-columns:8rem 1fr;gap:var(--space-2);margin:0}dt{font-weight:var(--bold)}dd{margin:0}.panel p+p{margin-top:var(--space-2)}.panel h3{margin-bottom:var(--space-2)}.shared{border-left:3px solid var(--accent);padding-left:var(--space-2);margin:var(--space-2) 0}.answer{margin-top:var(--space-3)}label{display:block;margin:var(--space-2) 0}label span{display:block;margin-bottom:.3rem}input:not([type=checkbox]),textarea,select{width:100%;max-width:100%}textarea{min-height:120px}input[type=checkbox]{width:20px;min-height:20px;margin-right:var(--space-1)}dialog{width:min(92vw,580px);max-height:90vh;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text);padding:var(--space-3)}dialog::backdrop{background:var(--maritime-navy-950);opacity:.55}footer{font-size:var(--small);margin-top:var(--space-4);border-top:1px solid var(--line)}@media(max-width:760px){.top,main,footer{padding:var(--space-2)}.top{gap:var(--space-2)}.top img{width:48px;height:48px}.product{display:block;font-size:var(--small)}.product .pill{display:block;font-size:.7rem;padding:0 .4rem}.top button{font-size:var(--small);padding:.4rem .6rem}#welcome{grid-template-columns:1fr;gap:var(--space-3);padding-block:var(--space-4)}#welcome img{max-height:200px;object-fit:contain}h1{font-size:2.7rem}.grid,.split{grid-template-columns:1fr}.app-title{align-items:flex-start}.app-title .pill{font-size:.7rem}.app-title h1{font-size:2.25rem}.eyebrow{font-size:.7rem}.heading{align-items:flex-start}.heading h2{font-size:1.8rem}.task{grid-template-columns:1fr}.task .actions{margin-top:0}.stats{gap:var(--space-1)}.stat{font-size:.75rem;padding:.55rem}.stat strong{font-size:1.4rem}article{padding:var(--space-2)}dl{grid-template-columns:1fr;gap:.4rem}dd{margin-bottom:.7rem}nav{gap:.4rem}nav button{font-size:var(--small);padding:.5rem .75rem}.demo-note{font-size:.8rem}}

/* Small copy uses the shared high-contrast text token. */
.eyebrow,.status-tag,#notice{color:var(--text)}

.language-choice{margin:0}.language-choice select{width:auto;max-width:8rem}@media(max-width:760px){.top{flex-wrap:wrap}.language-choice{margin-left:auto}.language-choice select{max-width:7rem;padding:.4rem}#end{margin-left:auto}}
