:root{color-scheme:light dark;font-family:system-ui,sans-serif}body{margin:0}main{max-width:420px;margin:0 auto;padding:1.5rem 1rem}h1{font-size:1.4rem;margin:0 0 1rem}h2{font-size:1.15rem;margin:0 0 1rem}form{display:flex;flex-direction:column;gap:.9rem}label{display:flex;flex-direction:column;gap:.3rem;font-size:.95rem}input{font-size:16px;padding:.7rem;border:1px solid #8887;border-radius:8px;background:transparent;color:inherit}button{font-size:16px;min-height:44px;border:0;border-radius:8px;background:#2563eb;color:#fff}button:disabled{opacity:.6}button.link{background:none;color:inherit;text-decoration:underline;min-height:36px}.msg{margin:0;color:#dc2626}.badge{display:inline-block;margin:0 0 1rem;padding:.15rem .6rem;border-radius:999px;background:#2563eb22}select{font-size:16px;padding:.7rem;border:1px solid #8887;border-radius:8px;background:transparent;color:inherit}.stack{display:flex;flex-direction:column;gap:.9rem}.stack>*{margin-top:0;margin-bottom:0}button.secondary{background:#8882;color:inherit}button.left{align-self:flex-start}.cal{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center;font-size:.9rem}.cal span{padding:.4rem 0;border-radius:6px;background:#8881}.cal span.rest{opacity:.4}.hint{font-size:.85rem;opacity:.75;margin:0}.ok{color:#16a34a;margin:0}h3{font-size:1rem;margin:.5rem 0 0}.bar{height:10px;border-radius:999px;background:#8882;overflow:hidden}.bar>div{height:100%;background:#2563eb;transition:width .2s}.row{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.row input{flex:1;min-width:0}input[type=range]{width:100%;padding:0}button.small{min-height:34px;padding:0 .7rem;font-size:14px}button.day{display:flex;justify-content:space-between;padding:0 .9rem;text-align:left}button.day.sel{outline:2px solid #2563eb}.days{gap:.4rem}.lb.me{font-weight:600;background:#2563eb22;border-radius:8px;padding:.4rem .6rem}.row.lb{padding:.4rem .6rem}main{padding-bottom:5.5rem}section{scroll-margin-top:.75rem}h2.big{font-size:1.5rem;margin:0}.card{border:1px solid #8884;border-radius:12px;padding:1rem}.ban{background:#2563eb18;border-radius:10px;padding:.75rem .9rem;font-size:.95rem}.ban.n{background:none;border:1px solid #2563eb66}.cal b{font-weight:500;font-size:.8rem;opacity:.7}.cal .c{border:0;border-radius:6px;background:#8881;min-height:44px;padding:4px 0;display:flex;flex-direction:column;justify-content:center;font:inherit;font-size:.9rem;color:inherit}.cal .c small{font-size:11px;opacity:.7}.cal .c.d{background:#2563eb44}.cal .c.t{outline:2px solid #2563eb}.cal .c.x{background:none;opacity:.45}.cal .c.f{background:none;border:1px dashed #8886}.cal .c.sel{box-shadow:inset 0 0 0 2px currentColor}.nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:420px;display:flex;background:Canvas;border-top:1px solid #8884;padding-bottom:env(safe-area-inset-bottom)}.nav button{flex:1;min-height:56px;border-radius:0;background:none;color:inherit;font-size:14px}.nav button.on{color:#2563eb;font-weight:600;box-shadow:inset 0 3px #2563eb}.mem{display:flex;flex-direction:column;gap:.5rem;padding-top:.75rem;border-top:1px solid #8884}.n{display:flex;align-items:center;gap:.5rem}.n .badge{margin:0}.row input[readonly]{font-size:14px}button.danger{background:none;color:#dc2626;border:1px solid #dc2626}button.danger.solid{background:#b91c1c;color:#fff;border-color:#b91c1c}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;background:#000a;display:flex;align-items:center;justify-content:center;padding:1.25rem}.dlg{background:Canvas;color:CanvasText;border-radius:14px;padding:1.25rem;width:100%;max-width:380px;display:flex;flex-direction:column;gap:1rem}.dlg>*{margin:0}
