/* Hallmark · pre-emit critique: P4 H4 E4 S5 R5 V4
 * genre: modern-minimal · macrostructure: Workbench · theme: Quiet · nav: N9 · footer: Ft2
 * audience: alunos UP · use: login e registo de presenças · tone: utilitário */
@import url('/static/tokens.css');
*{box-sizing:border-box}body{margin:0;background:var(--color-paper);color:var(--color-ink);font:var(--text-md)/1.55 var(--font-body)}header,main,footer{max-width:1120px;margin:auto;padding:var(--space-md)}header{display:flex;justify-content:space-between;align-items:center;border-bottom:var(--rule)}.brand{font-weight:750;font-size:var(--text-lg);letter-spacing:-.04em;color:var(--color-ink);text-decoration:none}header span{font-size:var(--text-sm);color:var(--color-muted)}main{min-height:76vh;padding-top:var(--space-lg)}h1{font-size:clamp(28px,4vw,42px);line-height:1.15;letter-spacing:-.04em;margin:0 0 var(--space-sm);font-weight:650}h2{font-size:var(--text-lg);letter-spacing:-.025em;margin:0 0 var(--space-sm)}p{margin:0 0 var(--space-md)}.muted,.hint{color:var(--color-muted)}.hint{font-size:var(--text-sm)}.layout{display:grid;grid-template-columns:1.1fr 1fr;gap:var(--space-xl);align-items:start}.intro{padding:var(--space-lg) 0}.intro p{max-width:460px}.steps{list-style:none;padding:0;margin-top:var(--space-lg)}.steps li{padding:var(--space-sm) 0;border-top:var(--rule)}.steps strong{display:block}.panel{background:var(--color-surface);border:var(--rule);border-radius:var(--radius-md);padding:var(--space-md)}label{display:block;font-weight:550;font-size:var(--text-sm);margin:var(--space-sm) 0 var(--space-xs)}input,textarea,select{width:100%;background:var(--color-surface);color:var(--color-ink);border:var(--rule);border-radius:var(--radius-sm);padding:12px;font:inherit}input[type=checkbox]{width:20px;height:20px;accent-color:var(--color-accent);cursor:pointer}button,.button{min-height:44px;border:var(--rule);border-radius:var(--radius-sm);background:var(--color-ink);color:var(--color-on-accent);font:550 var(--text-sm) var(--font-body);padding:12px 18px;cursor:pointer;white-space:nowrap;transition:opacity var(--dur-fast) var(--ease);text-decoration:none;display:inline-flex;justify-content:center;align-items:center}button:hover{opacity:.85}button:disabled{opacity:.45;cursor:wait}.secondary{background:var(--color-surface);color:var(--color-ink)}.danger{color:var(--color-danger);background:var(--color-surface)}button:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid var(--color-muted);outline-offset:3px}.wide{width:100%;margin-top:var(--space-md)}.row{display:flex;gap:var(--space-sm);align-items:center;flex-wrap:wrap}.between{justify-content:space-between}.notice{padding:var(--space-sm);border-radius:var(--radius-sm);background:var(--color-soft);margin:var(--space-sm) 0}.error{color:var(--color-danger)}.success{color:var(--color-success)}.status{font-size:var(--text-sm);color:var(--color-muted)}.section{margin-top:var(--space-lg)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}th,td{text-align:left;padding:var(--space-sm) var(--space-xs);border-bottom:var(--rule)}th{color:var(--color-muted);font-weight:500}td:first-child{width:36px}.empty{padding:var(--space-lg);text-align:center;color:var(--color-muted)}#screen{max-width:100%;display:block;border:var(--rule);cursor:crosshair}video{width:100%;max-height:300px;background:var(--color-ink);border-radius:var(--radius-sm)}.camera{margin-top:var(--space-sm)}.login-progress{margin:var(--space-sm) 0}.hidden,[hidden]{display:none!important}footer{border-top:var(--rule);font-size:var(--text-sm);color:var(--color-muted)}.dashboard-head{display:flex;justify-content:space-between;gap:var(--space-md);align-items:start}.admin-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:var(--space-md)}.badge{padding:4px 10px;border:var(--rule);border-radius:var(--radius-sm);font-size:var(--text-sm)}.number{font-variant-numeric:tabular-nums}.privacy{margin-top:var(--space-md);font-size:var(--text-sm);color:var(--color-muted)}@media(max-width:760px){.layout,.admin-grid{grid-template-columns:1fr;gap:var(--space-md)}.intro{padding-top:0}.steps{margin-top:var(--space-md)}main{padding-top:var(--space-md)}.dashboard-head{display:block}.dashboard-head .row{margin:var(--space-md) 0}header span{max-width:170px;text-align:right}th,td{padding:12px 6px}}
.install-steps{padding-left:22px;color:var(--color-muted);font-size:var(--text-sm)}.install-steps li{margin-bottom:var(--space-sm)}code{overflow-wrap:anywhere}.table-wrap button{padding:6px 10px;min-height:36px}

.panel{min-width:0}.table-wrap{max-width:100%}.admin-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}@media(max-width:760px){.layout,.admin-grid{grid-template-columns:minmax(0,1fr)}}
