:root{--paper:#f2f5fa;--surface:#fff;--sunken:#e7ecf6;--line:#d9e0ee;--line-soft:#e6ebf5;--ink:#131829;--ink-2:#49526a;--ink-3:#737d95;--brand:#2b3f9c;--brand-strong:#1e2e78;--brand-soft:#e6eafb;--on-brand:#fff;--maiz:#8a5600;--maiz-soft:#fef1d7;--maiz-line:#f0dcab;--maiz-strong:#d99005;--musgo:#1d6b4a;--musgo-soft:#e0f1e8;--achiote:#ab3722;--achiote-soft:#fce8e3;--plum:#573aa6;--plum-soft:#ece8fb;--side:#141a33;--side-ink:#a8b1cd;--side-active:#222b50;--shadow-sm:0 1px 2px #1318290f;--shadow:0 2px 4px #1318290d, 0 12px 28px #13182917;--radius-lg:16px;--radius:12px;--radius-sm:9px;--font:"Instrument Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--display:"Bricolage Grotesque", "Instrument Sans", system-ui, sans-serif;--tabbar-h:66px;--teal:var(--brand);--teal-strong:var(--brand-strong);--teal-soft:var(--brand-soft);--on-teal:var(--on-brand);--amber:var(--maiz);--amber-soft:var(--maiz-soft);--amber-line:var(--maiz-line);--green:var(--musgo);--green-soft:var(--musgo-soft);--red:var(--achiote);--red-soft:var(--achiote-soft);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#0f1322;--surface:#171d2f;--sunken:#212840;--line:#2c3453;--line-soft:#262d48;--ink:#eaedf6;--ink-2:#b4bccf;--ink-3:#868ea5;--brand:#94a8ff;--brand-strong:#b3c1ff;--brand-soft:#212a4c;--on-brand:#0d1330;--maiz:#f0c37c;--maiz-soft:#332913;--maiz-line:#4b3c1b;--maiz-strong:#f0c37c;--musgo:#83d2a6;--musgo-soft:#13301f;--achiote:#f3a18e;--achiote-soft:#34191a;--plum:#c0aef5;--plum-soft:#241f3f;--side:#0b0f1d;--side-active:#1d2440;--shadow:0 2px 4px #0000004d, 0 12px 28px #00000059;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--paper:#0f1322;--surface:#171d2f;--sunken:#212840;--line:#2c3453;--line-soft:#262d48;--ink:#eaedf6;--ink-2:#b4bccf;--ink-3:#868ea5;--brand:#94a8ff;--brand-strong:#b3c1ff;--brand-soft:#212a4c;--on-brand:#0d1330;--maiz:#f0c37c;--maiz-soft:#332913;--maiz-line:#4b3c1b;--maiz-strong:#f0c37c;--musgo:#83d2a6;--musgo-soft:#13301f;--achiote:#f3a18e;--achiote-soft:#34191a;--plum:#c0aef5;--plum-soft:#241f3f;--side:#0b0f1d;--side-active:#1d2440;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.5}button,input,textarea,select{font:inherit;color:inherit}a{color:var(--brand);text-underline-offset:2px}img{max-width:100%}h1,h2,h3{margin:0;line-height:1.15}p{margin:0}:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:6px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.app{min-height:100dvh;display:flex}.main{min-width:0;padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 24px);flex:1}.page{flex-direction:column;gap:22px;max-width:720px;margin:0 auto;padding:20px 18px;display:flex}.page.wide{max-width:1120px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.page-head h1{font-family:var(--display);letter-spacing:-.025em;font-size:30px;font-weight:700}.page-sub{color:var(--ink-3);max-width:62ch;margin-top:6px;font-size:15px}.section{flex-direction:column;gap:10px;display:flex}.section-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.section-head h2{font-family:var(--display);letter-spacing:-.015em;font-size:18px;font-weight:600}.section-head a,.link{color:var(--brand);cursor:pointer;background:0 0;border:0;padding:6px 0;font-size:15px;font-weight:600;text-decoration:none}.section-head a:hover,.link:hover{text-decoration:underline}.muted{color:var(--ink-3)}.small{font-size:14px}.stack{flex-direction:column;gap:12px;display:flex}.row-gap{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.grow{flex:1;min-width:0}.pre{white-space:pre-line}.sidebar{display:none}@media (width>=960px){.sidebar{background:var(--side);width:250px;height:100dvh;color:var(--side-ink);flex-direction:column;flex-shrink:0;gap:26px;padding:24px 12px;display:flex;position:sticky;top:0}.main{padding-bottom:36px}.page{padding:36px 32px}.tabbar{display:none!important}}.brand{padding:0 10px}.brand-name{font-family:var(--display);color:#fff;letter-spacing:-.03em;font-size:25px;font-weight:700}.brand-school{color:#8f98b8;margin-top:3px;font-size:13px}.side-nav{flex-direction:column;gap:2px;display:flex}.side-link{border-radius:var(--radius);min-height:44px;color:var(--side-ink);align-items:center;gap:12px;padding:0 12px;font-size:15px;text-decoration:none;display:flex}.side-link:hover{background:var(--side-active);color:#fff;text-decoration:none}.side-link.active{background:var(--brand);color:#fff;font-weight:600}.side-link .count{margin-left:auto}.side-link.active .count{color:#fff;background:#ffffff38}.side-user{align-items:center;gap:8px;padding:0 4px;display:flex}.side-user .name{color:#fff;font-size:14px;font-weight:600}.side-user .role{color:#8f98b8;font-size:12px}.side-user button{color:#8f98b8;cursor:pointer;background:0 0;border:0;border-radius:10px;flex-shrink:0;width:40px;height:40px}.side-user button:hover{background:var(--side-active);color:#fff}.side-user-btn{border-radius:var(--radius);cursor:pointer;text-align:left;color:inherit;background:0 0;border:0;flex:1;align-items:center;gap:10px;min-width:0;padding:6px;display:flex}.side-user-btn:hover{background:var(--side-active)}.side-suggest{cursor:pointer;width:100%;font:inherit;color:var(--side-ink);background:0 0;border:1px solid #333c63;margin-top:auto;font-size:14.5px}.side-suggest+.side-user{margin-top:10px}.tabbar{z-index:20;background:var(--surface);border-top:1px solid var(--line);padding:6px 2px calc(6px + env(safe-area-inset-bottom));justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.tab{min-width:54px;min-height:50px;color:var(--ink-3);border-radius:var(--radius);flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:0 4px;font-size:11px;font-weight:500;text-decoration:none;display:flex;position:relative}.tab svg{border-radius:999px;padding:3px 12px;transition:background .15s}.tab.active{color:var(--brand);font-weight:700}.tab.active svg{background:var(--brand-soft)}.tab .dot{background:var(--maiz-strong);color:#2a1c00;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:6px;padding:0 5px;font-size:11px;font-weight:700;display:flex;position:absolute;top:0;left:50%}.topbar{justify-content:space-between;align-items:center;max-width:720px;margin:0 auto;padding:12px 18px 0;display:flex}.topbar .brand-name{color:var(--ink);font-size:21px}.topbar-user{cursor:pointer;background:0 0;border:0;border-radius:24px;align-items:center;gap:8px;padding:2px;display:flex}.topbar-suggest{border:1px solid var(--line);background:var(--surface);min-height:36px;color:var(--brand);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:14px;font-weight:600;display:inline-flex}@media (width>=960px){.topbar{display:none}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.card.pad{padding:18px}.list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}.list>*+*{border-top:1px solid var(--line-soft)}.item{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:14px;padding:14px 16px;text-decoration:none;display:flex}a.item:hover,button.item:hover{background:var(--brand-soft)}.item-title{letter-spacing:-.005em;font-size:15.5px;font-weight:600}.item-sub{color:var(--ink-3);font-size:14px}.item-meta{color:var(--ink-3);white-space:nowrap;font-size:13px}.clamp{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.two-lines{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.btn{border-radius:var(--radius);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 18px;font-size:15px;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s,transform 80ms;display:inline-flex}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:var(--brand);color:var(--on-brand)}.btn-primary:hover:not(:disabled){background:var(--brand-strong);text-decoration:none}.btn-dark{background:var(--ink);color:var(--surface)}.btn-outline{background:var(--surface);border-color:var(--line);color:var(--ink)}.btn-outline:hover:not(:disabled){border-color:var(--brand);color:var(--brand);text-decoration:none}.btn-quiet{color:var(--brand);background:0 0;padding:0 10px}.btn-quiet:hover:not(:disabled){background:var(--brand-soft)}.btn-danger{background:var(--surface);border-color:var(--line);color:var(--achiote)}.btn-danger:hover:not(:disabled){border-color:var(--achiote)}.btn-sm{border-radius:var(--radius-sm);min-height:38px;padding:0 14px;font-size:14px}.btn-block{white-space:normal;text-align:center;width:100%}.icon-btn{border:1px solid var(--line);background:var(--surface);width:44px;height:44px;color:var(--ink);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:var(--brand-soft)}.chip{border:1px solid var(--line);background:var(--surface);cursor:pointer;min-height:40px;color:var(--ink-2);border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-size:14px;font-weight:500;display:inline-flex}.chip:hover{border-color:var(--brand);color:var(--brand)}.chip.on{background:var(--brand);border-color:var(--brand);color:var(--on-brand);font-weight:600}.chip .n{font-weight:700}.badge{white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:3px 10px;font-size:12.5px;font-weight:600;display:inline-flex}.badge.wrap{white-space:normal;padding:5px 10px;line-height:1.35}.b-amber{background:var(--maiz-soft);color:var(--maiz)}.b-plum{background:var(--plum-soft);color:var(--plum)}.b-green{background:var(--musgo-soft);color:var(--musgo)}.b-red{background:var(--achiote-soft);color:var(--achiote)}.b-teal{background:var(--brand-soft);color:var(--brand)}.b-gray{background:var(--sunken);color:var(--ink-2)}.count{background:var(--brand);min-width:22px;height:22px;color:var(--on-brand);border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:12px;font-weight:700;display:inline-flex}.avatar{background:var(--brand-soft);width:42px;height:42px;color:var(--brand);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:inline-flex}.avatar.sm{width:34px;height:34px;font-size:12.5px}.avatar.plum{background:var(--plum-soft);color:var(--plum)}.avatar.amber{background:var(--maiz-soft);color:var(--maiz)}.avatar.ink{background:var(--ink);color:var(--surface)}.seg{border-radius:var(--radius-lg);background:var(--sunken);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:4px;padding:4px;display:grid}.seg button{border-radius:var(--radius);min-height:40px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;font-size:14.5px;font-weight:500}.seg button:hover{color:var(--brand)}.seg button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm);font-weight:700}.choices{grid-template-columns:repeat(auto-fit,minmax(0,1fr));grid-auto-flow:column;gap:8px;display:grid}.choice{border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);cursor:pointer;min-height:46px;color:var(--ink-2);padding:0 8px;font-size:14.5px;font-weight:600}.choice:hover{border-color:var(--brand);color:var(--brand)}.choice[aria-pressed=true]{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.choice.no[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--surface)}.field{flex-direction:column;gap:6px;display:flex}.field>label,.field-label{color:var(--ink-2);font-size:14px;font-weight:600}.hint{color:var(--ink-3);font-size:13px}.input,.textarea,.select{border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);width:100%;min-height:46px;padding:10px 14px;font-size:16px}.textarea{resize:vertical;min-height:120px;line-height:1.55}.input:focus,.textarea:focus,.select:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft);outline:none}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.option-cards{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;display:grid}.option-card{text-align:left;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);cursor:pointer;flex-direction:column;gap:3px;padding:14px;display:flex}.option-card strong{font-size:15px}.option-card span{color:var(--ink-3);font-size:13.5px}.option-card:hover{border-color:var(--brand)}.option-card[aria-pressed=true]{border:2px solid var(--brand);background:var(--brand-soft);padding:13px}.switch-row{cursor:pointer;align-items:flex-start;gap:12px;font-size:15px;display:flex}.switch-row input{width:20px;height:20px;accent-color:var(--brand);flex-shrink:0;margin-top:2px}.form-error{background:var(--achiote-soft);color:var(--achiote);border-radius:var(--radius);padding:12px 14px;font-size:14.5px}.action-stack{flex-direction:column;gap:12px;display:flex}.action-card{background:var(--maiz-soft);border:1px solid var(--maiz-line);border-left:5px solid var(--maiz-strong);border-radius:var(--radius-lg);color:var(--ink);flex-direction:column;gap:8px;padding:18px 18px 18px 22px;text-decoration:none;display:flex}.action-card .kind{color:var(--maiz);font-size:13.5px;font-weight:700}.action-card h3{font-family:var(--display);letter-spacing:-.02em;font-size:20px;font-weight:600}.action-card .when{color:var(--ink-2);font-size:14.5px}.action-card .btn{align-self:flex-start;margin-top:4px}.all-clear{border-radius:var(--radius-lg);background:var(--musgo-soft);color:var(--musgo);align-items:center;gap:14px;padding:18px;font-weight:600;display:flex}.date-block{text-align:center;flex-shrink:0;width:48px;line-height:1.1}.date-block .dow{color:var(--ink-3);font-size:12px}.date-block .day{font-family:var(--display);letter-spacing:-.03em;font-size:25px;font-weight:700}.date-block .mon{color:var(--ink-3);font-size:12px}.progress{background:var(--sunken);border-radius:999px;height:8px;display:flex;overflow:hidden}.progress>span{height:100%;display:block}.progress .p-ok{background:var(--musgo)}.progress .p-no{background:var(--achiote)}.progress .p-read{background:var(--brand)}.legend{color:var(--ink-2);flex-wrap:wrap;gap:14px;font-size:13.5px;display:flex}.legend strong{color:var(--ink)}.chat{flex-direction:column;min-height:100dvh;display:flex}.chat-head{z-index:5;background:var(--surface);border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:10px 12px;display:flex;position:sticky;top:0}.chat-body{flex-direction:column;flex:1;gap:6px;width:100%;max-width:760px;margin:0 auto;padding:16px;display:flex}.day-sep{color:var(--ink-3);background:var(--sunken);border-radius:999px;align-self:center;margin:10px 0 4px;padding:3px 12px;font-size:12.5px}.bubble{white-space:pre-wrap;overflow-wrap:anywhere;text-align:left;cursor:pointer;border:0;border-radius:18px;max-width:min(78%,520px);padding:10px 14px;font-size:15.5px;line-height:1.45}.bubble.them{background:var(--surface);border:1px solid var(--line);border-bottom-left-radius:5px;align-self:flex-start}.bubble.me{background:var(--brand);color:var(--on-brand);border-bottom-right-radius:5px;align-self:flex-end}.bubble.is-editing{outline:2px dashed var(--maiz-strong);outline-offset:2px}.bubble-meta{color:var(--ink-3);align-items:center;gap:10px;font-size:12px;display:flex}.bubble-meta.me{align-self:flex-end}.bubble-meta-inline{float:right;opacity:.85;white-space:nowrap;align-items:center;gap:4px;margin:8px -4px -4px 12px;font-size:11.5px;line-height:1;display:inline-flex}.bubble.them .bubble-meta-inline{color:var(--ink-3);opacity:1}.bubble.me .tick-read{color:#b9c6ff;opacity:1}.msg-detail{color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:4px 12px;max-width:min(78%,520px);margin:-2px 4px 6px;font-size:12.5px;display:flex}.msg-detail.me{justify-content:flex-end;align-self:flex-end}.msg-detail .read{color:var(--brand);font-weight:600}.msg-detail .link{align-items:center;gap:4px;padding:4px 0;display:inline-flex}.edit-banner{background:var(--maiz-soft);color:var(--maiz);border-top:1px solid var(--maiz-line);align-items:center;gap:8px;padding:8px 14px;font-size:14px;display:flex}.hours-note{border-radius:var(--radius);background:var(--brand-soft);color:var(--brand-strong);align-items:flex-start;gap:10px;margin:12px 16px 0;padding:10px 14px;font-size:14px;display:flex}.hours-note.off{background:var(--maiz-soft);color:var(--maiz)}.composer{padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);align-items:flex-end;gap:8px;display:flex;position:sticky;bottom:0}.composer textarea{resize:none;border:1px solid var(--line);background:var(--paper);border-radius:23px;flex:1;min-height:46px;max-height:160px;padding:11px 16px;font-size:16px;line-height:1.45}.composer textarea:focus{border-color:var(--brand);outline:none}.send{background:var(--brand);width:46px;height:46px;color:var(--on-brand);cursor:pointer;border:0;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.send:disabled{opacity:.4}.post{flex-direction:column;gap:12px;padding:18px;display:flex}.post-head{align-items:center;gap:10px;display:flex}.post-body{white-space:pre-line;font-size:16px;line-height:1.6}.post-images{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:6px;display:grid}.post-images img{aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius);width:100%}.post-foot{align-items:center;gap:12px;display:flex}.like{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:999px;align-items:center;gap:6px;min-height:40px;padding:0 14px;font-size:14.5px;display:inline-flex}.like:hover{border-color:var(--achiote)}.like[aria-pressed=true]{background:var(--achiote-soft);color:var(--achiote);border-color:#0000;font-weight:600}.kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}@media (width>=960px){.kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}}.kpi{flex-direction:column;gap:3px;padding:18px;display:flex}.kpi .label{color:var(--ink-3);font-size:14px}.kpi .value{font-family:var(--display);letter-spacing:-.035em;font-size:clamp(27px,7vw,34px);font-weight:700}.kpi .note{color:var(--ink-3);font-size:13.5px}.kpi.warn{background:var(--maiz-soft);border-color:var(--maiz-line)}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:460px;font-size:15px}td:first-child{white-space:nowrap}th{text-align:left;color:var(--ink-3);padding:12px 16px;font-size:13.5px;font-weight:600}td{border-top:1px solid var(--line-soft);padding:12px 16px}td.bad{color:var(--achiote);font-weight:700}.nowrap-table td{white-space:nowrap}.backdrop{z-index:40;background:#0c101e80;justify-content:center;align-items:flex-end;animation:.15s ease-out fade;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);width:100%;max-width:560px;max-height:92dvh;padding:8px 20px calc(24px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0;flex-direction:column;gap:18px;animation:.2s ease-out rise;display:flex;overflow-y:auto}.sheet>*{flex-shrink:0}.sheet:focus{outline:none}.sheet-grip{background:var(--line);border-radius:3px;align-self:center;width:40px;height:5px;margin-top:4px}.sheet-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.sheet-head h2{font-family:var(--display);letter-spacing:-.02em;font-size:22px;font-weight:600}@media (width>=700px){.backdrop{align-items:center}.sheet{box-shadow:var(--shadow);border-radius:22px;padding:20px 24px 24px}.sheet-grip{display:none}}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(20px)}}.toast{left:50%;bottom:calc(var(--tabbar-h) + 20px + env(safe-area-inset-bottom));z-index:60;background:var(--ink);color:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);align-items:center;gap:10px;width:max-content;max-width:calc(100vw - 32px);padding:12px 18px;font-size:15px;font-weight:500;animation:.2s ease-out rise;display:flex;position:fixed;transform:translate(-50%)}@media (width>=960px){.toast{bottom:28px}}.empty{text-align:center;color:var(--ink-3);flex-direction:column;align-items:center;gap:10px;padding:36px 20px;display:flex}.empty strong{color:var(--ink);font-size:16px;font-family:var(--display);font-weight:600}.skeleton{border-radius:var(--radius-lg);background:linear-gradient(90deg, var(--sunken), var(--line-soft), var(--sunken));background-size:200% 100%;height:76px;animation:1.2s infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.login{place-items:center;min-height:100dvh;padding:24px 18px;display:grid}.login-card{flex-direction:column;gap:22px;width:100%;max-width:420px;display:flex}.login-mark{flex-direction:column;align-items:flex-start;gap:14px;display:flex}.brand-tile{color:#fff;background:linear-gradient(140deg, var(--brand) 0%, #4a2f86 100%);border-radius:16px;justify-content:center;align-items:center;width:56px;height:56px;display:inline-flex}.login-title{font-family:var(--display);letter-spacing:-.04em;font-size:38px;font-weight:700;line-height:1.05}.demo-people{flex-direction:column;gap:8px;display:flex}.demo-person{border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);cursor:pointer;text-align:left;align-items:center;gap:12px;width:100%;padding:12px 14px;display:flex}.demo-person:hover{border-color:var(--brand)}.login-legal{justify-content:center;gap:16px;font-size:13.5px;display:flex}.login-legal a{color:var(--ink-3)}.consent{place-items:start center}.consent .login-card{padding-top:12px;padding-bottom:40px}.consent-summary>div:not(.row-gap){grid-template-columns:112px 1fr;gap:12px;font-size:14.5px;display:grid}.consent-summary strong{color:var(--ink)}.consent-summary span{color:var(--ink-2)}@media (width<=420px){.consent-summary>div:not(.row-gap){grid-template-columns:1fr;gap:2px}}.legal{flex-direction:column;gap:16px;max-width:68ch;font-size:15px;line-height:1.65;display:flex}.legal-meta{color:var(--ink-3);font-size:14px}.legal-section h3{font-family:var(--display);margin:4px 0 6px;font-size:17px;font-weight:600}.legal-section p+p{margin-top:8px}.legal ul{flex-direction:column;gap:6px;margin:0;padding-left:20px;display:flex}.legal-missing{background:var(--maiz-soft);color:var(--maiz);border-radius:4px;padding:0 4px;font-weight:600}.legal-page{max-width:760px}.admin-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}@media (width>=960px){.admin-stats{grid-template-columns:repeat(4,minmax(0,1fr))}}.admin-stats .kpi{min-width:0}.admin-stats .btn,.admin-stats .badge{white-space:normal;text-align:left}.tabs-scroll{scrollbar-width:none;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.tabs-scroll::-webkit-scrollbar{display:none}.tabs-scroll .chip{flex-shrink:0}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.toolbar .input,.toolbar .select{flex:200px;width:auto}.entity{flex-direction:column;gap:10px;padding:16px;display:flex}.entity-head{flex-wrap:wrap;align-items:flex-start;gap:10px;display:flex}.person-line{border-radius:var(--radius);background:var(--paper);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;display:flex}.person-line .who{flex:200px;min-width:0}.row-form{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) auto;align-items:end;gap:8px;display:grid}@media (width<=560px){.row-form{grid-template-columns:1fr}}.error-list{max-height:240px;overflow-y:auto}.log-row{grid-template-columns:auto 1fr auto;align-items:center;gap:12px;display:grid}.day-toggles{flex-wrap:wrap;gap:6px;display:flex}.day-toggles button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:999px;width:46px;height:46px;font-size:14px;font-weight:600}.day-toggles button[aria-pressed=true]{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.quick-action{align-items:center;gap:14px}.quick-action:hover{border-color:var(--brand)}.quick-icon{border-radius:var(--radius);background:var(--brand-soft);width:44px;height:44px;color:var(--brand);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}
