:root{color-scheme:light dark;--bg: #f5f2ea;--bg-2: #ebe6da;--fg: #17211e;--muted: #68736e;--card: #fffdf8;--line: #ddd6c7;--accent: #123b35;--accent-2: #2f6f62;--accent-fg: #f4e7c8;--ok: #1d6b46;--ok-bg: #e3f3e9;--warn: #8a4b0f;--error: #b3261e;--error-bg: #fbe9e7;--radius: 14px;--shadow: 0 1px 2px rgb(23 33 30 / 6%), 0 8px 24px rgb(23 33 30 / 4%);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:16px}@media(prefers-color-scheme:dark){:root{--bg: #0f1513;--bg-2: #141d1a;--fg: #edf2ef;--muted: #9aa8a2;--card: #17211e;--line: #2a3733;--accent: #2f6f62;--accent-2: #4e8f81;--accent-fg: #f4e7c8;--ok: #6fd6a2;--ok-bg: #11291f;--warn: #f0b46b;--error: #ff8a80;--error-bg: #2a1614;--shadow: none}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:radial-gradient(900px 400px at 100% -10%,var(--bg-2),transparent 60%),var(--bg);color:var(--fg);line-height:1.45}h1,h2,h3{margin:0 0 .35rem;line-height:1.15;letter-spacing:-.015em}h1,h2{font-size:1.35rem}h3{font-size:1.05rem}p{margin:0 0 .75rem}a{color:var(--accent-2);text-decoration-thickness:1px;text-underline-offset:3px}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.muted{color:var(--muted);font-size:.9rem}.small{font-size:.82rem}.error{color:var(--error);font-size:.9rem}.center{min-height:100vh;display:grid;place-items:center;padding:1.25rem}.shell{width:min(100%,54rem);margin:0 auto;padding:1rem 1rem 4rem}@media(min-width:700px){.shell{padding:1.5rem 1.5rem 5rem}}.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.brand{display:flex;align-items:center;gap:.7rem}.brand h1{margin:0;font-size:1.1rem}.brand p{margin:0;font-size:.82rem}.brand-mark{display:grid;place-items:center;width:2.2rem;height:2.2rem;border-radius:10px;background:var(--accent);color:var(--accent-fg);font-weight:800;font-size:1.1rem;flex:none}.brand-mark.large{width:2.8rem;height:2.8rem;font-size:1.4rem;margin-bottom:.25rem}.nav{display:flex;gap:.25rem;overflow-x:auto;padding:.25rem;margin-bottom:1.25rem;border:1px solid var(--line);border-radius:12px;background:var(--card);scrollbar-width:none}.nav::-webkit-scrollbar{display:none}.nav a{padding:.5rem .8rem;border-radius:9px;color:var(--muted);text-decoration:none;font-size:.9rem;font-weight:600;white-space:nowrap}.nav a:hover{color:var(--fg);background:var(--bg-2)}.nav a.active{color:var(--accent-fg);background:var(--accent)}.stack{display:grid;gap:1rem}.row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.row.space-between{justify-content:space-between}.page-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.25rem}.page-head.compact{margin-bottom:.5rem}.page-head h2{margin-bottom:.15rem}.page-head p{margin:0}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.1rem;box-shadow:var(--shadow)}.card h3{margin-bottom:.6rem}.empty{display:grid;gap:.5rem;justify-items:start;padding:1.5rem}.empty h3{margin:0}button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;font:inherit;font-weight:650;font-size:.9rem;border:1px solid transparent;border-radius:10px;padding:.6rem .9rem;background:var(--accent);color:var(--accent-fg);cursor:pointer;text-decoration:none;transition:filter .12s ease,background .12s ease}button:hover,.btn:hover{filter:brightness(1.08)}.btn.secondary,button.secondary{background:transparent;color:var(--fg);border-color:var(--line)}.btn.secondary:hover,button.secondary:hover{background:var(--bg-2)}.btn.ghost,button.ghost{background:transparent;color:var(--muted);border-color:transparent;padding:.3rem .45rem}.btn.ghost:hover,button.ghost:hover{color:var(--fg);background:var(--bg-2)}.btn.danger,button.danger{background:transparent;color:var(--error);border-color:var(--error)}.btn.small,button.small{font-size:.82rem;padding:.4rem .65rem;border-radius:8px}button:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;filter:none}:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.form{display:grid;gap:1rem}.form-grid{display:grid;gap:.75rem}.form-grid.two{grid-template-columns:1fr}@media(min-width:560px){.form-grid.two{grid-template-columns:1fr 1fr}}label{display:grid;gap:.3rem;font-size:.88rem;font-weight:650}input,select,textarea{width:100%;font:inherit;font-weight:400;color:inherit;background:var(--bg);border:1px solid var(--line);border-radius:9px;padding:.6rem .65rem;min-height:2.5rem}input[type=checkbox],input[type=radio]{width:auto;min-height:0;accent-color:var(--accent-2)}.fieldset{border:1px solid var(--line);border-radius:11px;padding:.9rem;margin:0;min-width:0}.fieldset legend{font-size:.82rem;font-weight:700;color:var(--muted);padding:0 .3rem}.form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}.segmented{display:flex;gap:.35rem}.segmented label{display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--line);border-radius:9px;padding:.45rem .65rem;font-weight:600;cursor:pointer}.segmented label.active{border-color:var(--accent-2);background:var(--bg-2)}.segmented input{margin:0}.check-list{display:grid;gap:.35rem;margin-bottom:.5rem}.check{display:flex;align-items:center;gap:.45rem;font-weight:500}.range-row{display:grid;gap:.6rem;align-items:end;margin-bottom:.75rem}@media(min-width:620px){.range-row{grid-template-columns:1fr 1fr auto}}.datepicker{border:1px solid var(--line);border-radius:12px;padding:.7rem;background:var(--bg)}.calendar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.4rem}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.2rem}.calendar-weekdays{margin-bottom:.2rem;color:var(--muted);font-size:.72rem;font-weight:700;text-align:center;text-transform:uppercase}.calendar-day{aspect-ratio:1;min-height:2.1rem;padding:0;background:transparent;color:var(--fg);border:1px solid transparent;border-radius:8px;font-weight:500}.calendar-day:hover:not(:disabled){background:var(--bg-2)}.calendar-day.selected{background:var(--accent);color:var(--accent-fg)}.calendar-day:disabled{opacity:.3}.chips{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center}.chip{display:inline-flex;align-items:center;gap:.25rem;font-size:.8rem;font-weight:600;padding:.2rem .5rem;border-radius:999px;border:1px solid var(--line);background:var(--bg)}.chip.subtle{color:var(--muted);font-weight:500}.chip.slot{border-color:var(--ok);background:var(--ok-bg);color:var(--ok);font-variant-numeric:tabular-nums}.chip button{background:transparent;color:inherit;border:0;padding:0 .1rem;font-size:.95rem;line-height:1}.selected-dates{margin-top:.6rem}.query-list{display:grid;gap:.75rem}.query-card{display:grid;gap:.6rem}.query-card-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem}.query-card-head h3{margin:0;font-size:1.05rem}.query-card-head h3 a{color:inherit;text-decoration:none}.query-card-head h3 a:hover{text-decoration:underline}.query-card-head p{margin:.15rem 0 0}.query-card-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;border-top:1px solid var(--line);padding-top:.6rem}.event-line{margin:0;padding:.5rem .65rem;border-radius:9px;background:var(--bg);font-size:.88rem}.event-line.found{background:var(--ok-bg);color:var(--ok)}.switch{display:inline-flex;align-items:center;gap:.4rem;font-size:.82rem;font-weight:600;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:.3rem .6rem;cursor:pointer;-webkit-user-select:none;user-select:none}.switch input{margin:0}.notice{border:1px solid var(--line);border-radius:11px;padding:.7rem .85rem;background:var(--bg-2);font-size:.88rem}.notice.error{border-color:var(--error);background:var(--error-bg);color:var(--error)}.notice.small{font-size:.8rem;padding:.5rem .65rem}.availability-list{display:grid;gap:.5rem}.availability-row{display:grid;gap:.5rem;padding:.65rem;border:1px solid var(--line);border-radius:10px;background:var(--bg)}.availability-row.has-slots{border-color:var(--ok);background:var(--ok-bg)}.availability-row p{margin:.15rem 0 0}.availability-action{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}@media(min-width:620px){.availability-row{grid-template-columns:1fr auto;align-items:center}.availability-action{justify-content:flex-end}}.profile-rows{display:grid;gap:.35rem}.profile-row{display:grid;grid-template-columns:4.5rem 1fr auto;gap:.5rem;align-items:center;padding:.4rem 0;border-bottom:1px solid var(--line)}.profile-row:last-child{border-bottom:0}.profile-row span:nth-child(2){overflow-wrap:anywhere}.timeline{list-style:none;margin:0;padding:0;display:grid;gap:.65rem}.timeline li{display:flex;gap:.6rem;align-items:flex-start}.timeline p{margin:0}.dot{width:.6rem;height:.6rem;border-radius:999px;margin-top:.35rem;background:var(--muted);flex:none}.dot.found{background:var(--ok)}.dot.lost{background:var(--warn)}.user-list{display:grid;gap:.4rem}.user-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;padding:.55rem 0;border-bottom:1px solid var(--line)}.user-row:last-child{border-bottom:0}.password{display:block;padding:.65rem .75rem;border-radius:9px;border:1px dashed var(--line);background:var(--bg);font-size:1rem;letter-spacing:.04em;overflow-wrap:anywhere;margin-bottom:.6rem}.login{width:min(100%,23rem);display:grid;gap:.85rem}.login h1{margin-bottom:0}.login p{margin-bottom:.2rem}
