:root{font-family:Inter,"Segoe UI",system-ui,sans-serif;color:#17342c;background:#eef4f0;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,select,textarea{font:inherit}button,select,input,textarea{min-height:44px;border:1px solid #cbdad3;border-radius:12px;background:#fff;color:#17342c}button{padding:.65rem 1rem;font-weight:700;cursor:pointer}button:not(.quiet,.icon,.danger,.day){background:#176b55;color:white;border-color:#176b55}.hidden{display:none!important}.shell{width:min(100%,760px);margin:auto;padding:calc(1rem + env(safe-area-inset-top)) 1rem calc(6rem + env(safe-area-inset-bottom))}header{display:flex;justify-content:space-between;align-items:flex-start;padding:1rem .25rem}h1,h2,p{margin:0}header h1{font-size:2rem;line-height:1.1;margin-top:.25rem}header p{color:#62776f;margin-top:.3rem}.eyebrow{font-size:.75rem;letter-spacing:.14em;font-weight:800;color:#4a6e62}.quiet{background:transparent}.toolbar{display:grid;grid-template-columns:48px 1fr 48px;gap:.5rem}.toolbar input{padding:0 .8rem}.week{display:grid;grid-template-columns:repeat(7,1fr);gap:.35rem;margin:1rem 0}.day{padding:.55rem .15rem;background:transparent;border-color:transparent;font-size:.75rem;line-height:1.35}.day strong{display:block;font-size:1rem}.day.selected{background:#163f35;color:#fff}.day.today{border-color:#68a390}.filter-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.filter-row select{padding:0 .8rem;max-width:70%}#status{font-size:.8rem;color:#637870}.events{display:grid;gap:.75rem}.event{display:grid;grid-template-columns:6px 1fr auto;overflow:hidden;background:white;border:1px solid #dae5df;border-radius:16px;box-shadow:0 7px 24px #17342c0a}.event .stripe{background:#A9E4E8}.event.c0 .stripe{background:#B9D7FF}.event.c1 .stripe{background:#FFD1A8}.event.c2 .stripe{background:#CDB8FF}.event.c3 .stripe{background:#B8E7C4}.event.c4 .stripe{background:#FFE899}.event.c5 .stripe{background:#A9E4E8}.event.c6 .stripe{background:#FFBFCB}.event.c7 .stripe{background:#C9D4A7}.event.c8 .stripe{background:#D6C0AA}.event-content{padding:1rem}.event h3{font-size:1rem;margin:0 0 .35rem}.event p{font-size:.88rem;color:#60756d;line-height:1.45}.event .edit{align-self:center;margin-right:.65rem;padding:.4rem .7rem;background:transparent;border:0;font-size:1.25rem}.empty{text-align:center;padding:3rem 1rem;color:#71837d;background:#f7faf8;border-radius:16px}.fab{position:fixed;right:max(1.25rem,calc((100vw - 760px)/2 + 1.25rem));bottom:calc(1.25rem + env(safe-area-inset-bottom));width:58px;height:58px;border-radius:50%;font-size:2rem;padding:0;box-shadow:0 10px 25px #163f3540}dialog{width:min(calc(100% - 1rem),600px);border:0;border-radius:22px;padding:0;color:#17342c}dialog::backdrop{background:#10282099}dialog form{padding:1.25rem;display:grid;gap:1rem}.dialog-head,.dialog-actions{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.icon{border:0;background:transparent;font-size:1.8rem;padding:0;width:44px}.two{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}label{display:grid;gap:.35rem;font-size:.86rem;font-weight:700}label input,label select,textarea{width:100%;padding:.65rem .75rem;font-weight:400}.check{display:flex;align-items:center}.check input{width:22px;min-height:22px}.dialog-actions{display:grid;grid-template-columns:auto 1fr auto auto}.danger{color:#a63030;background:#fff;border-color:#e4bcbc}.pairing{min-height:100vh;display:grid;place-items:center;padding:1rem}.pair-card{width:min(100%,420px);background:#fff;padding:2rem;border-radius:24px;box-shadow:0 18px 50px #17342c1a;display:grid;gap:1rem}.mark{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:#163f35;color:#fff;font-weight:900}.pair-card p{color:#637870}.error{color:#aa3030!important;min-height:1.2em}@media(max-width:480px){.two{grid-template-columns:1fr}.dialog-actions{grid-template-columns:auto 1fr auto}.dialog-actions .quiet{display:none}}
