:root{color-scheme:light;--ink:#112d35;--muted:#586d71;--green:#176453;--line:#dce4df;--paper:#f4f6f3;--gold:#e5be78;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}button{min-height:46px;border:0;border-radius:10px;background:var(--green);color:#fff;font-weight:650;padding:12px 18px;touch-action:manipulation}button:disabled{opacity:.55;cursor:wait}button.secondary{background:#e9f0eb;color:var(--green)}button.quiet{background:transparent;color:var(--green);padding:10px}button.danger{background:#fff0eb;color:#a03524}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #bd852d;outline-offset:3px}a{color:var(--green);overflow-wrap:anywhere}p{line-height:1.65;margin:10px 0 18px}h1,h2{letter-spacing:-.035em}h1{font-size:clamp(30px,5vw,42px);line-height:1.12;margin:10px 0 12px}h2{font-size:22px;margin:0 0 12px}strong{font-weight:700}.eyebrow{font-size:10px;font-weight:750;letter-spacing:.16em;color:var(--green)}.hint{color:var(--muted);font-size:13px}.topbar{padding:20px max(24px,calc((100vw - 1080px)/2));padding-top:max(20px,env(safe-area-inset-top));background:var(--ink);color:white;display:flex;align-items:center;justify-content:space-between;gap:14px}.brand{display:flex;align-items:center;gap:12px;color:white;text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.12em}.brand small{display:block;color:#bacdcc;font-size:11px;letter-spacing:0;font-weight:400;margin-top:5px}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border:1px solid #d2b981;border-radius:12px;color:var(--gold);font-size:20px;letter-spacing:-.06em}.owner-badge{font-size:9px;color:var(--gold);letter-spacing:.12em;border:1px solid #62736c;border-radius:20px;padding:8px 10px;white-space:nowrap}main{max-width:1080px;margin:auto;padding:20px 24px calc(30px + env(safe-area-inset-bottom))}#message{background:#e7eee7;border:1px solid #d1dfd4;border-radius:10px;font-size:13px;line-height:1.5;padding:12px 14px;overflow-wrap:anywhere}#message[data-tone="error"]{background:#fff0eb;border-color:#efd3c9;color:#8b3024}.card{padding:28px;background:white;border:1px solid var(--line);border-radius:18px;margin:20px 0;min-width:0}.card>p{color:var(--muted);font-size:14px}.signin{max-width:470px;margin:32px auto}.signin h1{font-size:42px;margin-top:18px}.lead{font-size:16px!important}.signin form{margin-top:24px}.primary{width:100%;display:flex;justify-content:space-between}.session-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;padding:10px 0}.navigation{display:flex;gap:6px;background:#e6ece6;padding:5px;border-radius:13px;margin-bottom:26px}.navigation button{flex:1;background:transparent;color:var(--muted);min-width:0;padding:10px 8px;font-size:14px}.navigation button[aria-current="page"]{background:white;box-shadow:0 2px 5px #112d3510;color:var(--ink)}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:26px 0 0}.page-heading p{font-size:14px;color:var(--muted);margin-bottom:8px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:24px 0}.stats article{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px}.stats span{font-size:12px;color:var(--muted);display:block}.stats strong{display:block;font-size:32px;font-weight:600;letter-spacing:-.04em;margin-top:12px}.note{background:#edf2e9}.note p:last-child{margin-bottom:0}form{max-width:520px;display:grid;gap:16px;margin:20px 0}label{display:block;font-size:13px;font-weight:650;line-height:1.5}input,select{display:block;min-width:0;max-width:100%;width:100%;min-height:48px;margin-top:7px;border:1px solid #bdcec6;border-radius:9px;padding:11px 12px;background:#fff;color:var(--ink);font-size:16px}input[type="file"]{font-size:14px;overflow:hidden}input[type="checkbox"]{width:22px;min-height:22px;height:22px;margin:0}.checkbox{display:flex;align-items:center;gap:10px}.search-label{max-width:520px;margin:20px 0}.table-wrap{overflow-x:auto;max-width:100%;margin-top:24px}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;border-bottom:1px solid var(--line);padding:14px 10px;overflow-wrap:anywhere}th{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em}td button{font-size:12px;padding:10px 12px;margin:3px 0}td a{display:inline-flex;align-items:center;min-height:44px;margin-right:10px}td:first-child,th:first-child{padding-left:0}.empty{font-size:14px;color:var(--muted);padding:14px 0}.install{background:transparent;font-size:13px}summary{font-weight:650;min-height:32px;line-height:1.5}.install li{padding:6px 0;line-height:1.6}.install ol{padding-left:20px}footer{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:10px;letter-spacing:.04em;padding:12px 0}footer span{letter-spacing:0}.skip-link{position:absolute;top:-100px}.skip-link:focus{top:8px;left:8px;padding:14px;background:white;z-index:10}[hidden]{display:none!important}
@media(max-width:640px){main{padding-left:16px;padding-right:16px}.topbar{padding-left:16px;padding-right:16px}.owner-badge{font-size:8px;padding:7px}.brand{font-size:10px}.card{padding:22px 18px;border-radius:15px}.signin{margin:24px auto}.signin h1{font-size:38px}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stats article{padding:16px}.stats span{font-size:11px}.stats strong{font-size:30px}.page-heading{align-items:flex-start;gap:12px}.page-heading>button{font-size:12px;padding:10px 12px}.page-heading h1{font-size:30px}.navigation{position:sticky;top:8px;z-index:2;margin-bottom:22px;box-shadow:0 4px 14px #112d350d}.navigation button{font-size:12px}.table-wrap{overflow:visible}table,tbody,tr,td{display:block;width:100%}thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}tr{border:1px solid var(--line);border-radius:12px;padding:10px 14px;margin:12px 0}td,td:first-child{padding:7px 0;border:0;white-space:normal}td::before{content:attr(data-label);display:block;color:var(--muted);text-transform:uppercase;font-size:9px;letter-spacing:.08em;margin-bottom:4px}td button{font-size:13px}footer{display:block}footer span{display:block;margin-top:8px}.session-bar{font-size:12px}.hint{font-size:12px}}
@media(display-mode:standalone){#install{display:none}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
/* Shared password visibility controls */
.password-control{display:flex;align-items:center;gap:8px;max-width:100%;margin:8px 0}
.password-control input{flex:1 1 0;min-width:0;width:0;margin:0}
.password-control .password-toggle{flex:0 0 auto;width:auto;min-width:64px;min-height:44px;margin:0;padding:10px 12px;font:inherit;border:1px solid #87aaa6;border-radius:8px;background:#edf5f3;color:#14514c;cursor:pointer}
.password-control .password-toggle:focus-visible{outline:3px solid #087d70;outline-offset:2px}
