:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#19382f;background:#f4f7f5;--green:#087c66;--muted:#6b8075;--line:#e0e9e3}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;font-size:15px;line-height:1.75}header{padding:20px max(24px,calc((100vw - 1200px)/2));background:#fff;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line)}header>strong{font-size:21px;letter-spacing:-.5px;color:#164d3c}a{color:var(--green);text-underline-offset:4px}header a{text-decoration:none;font-size:13px;padding:9px 12px;border-radius:9px}header a:hover{background:#eef5ef}main{max-width:1200px;margin:38px auto;padding:0 28px 35px}h1{font-size:30px;line-height:1.35;letter-spacing:-.6px;margin:10px 0 26px}h2{font-size:19px;line-height:1.45;margin:0 0 14px}h3{font-size:16px;margin:22px 0 10px}p{color:var(--muted);line-height:1.85}label{display:block;margin:18px 0;font-size:13px;font-weight:500}input,button,select{font:inherit}input,select{display:block;width:100%;padding:12px 14px;border:1px solid #cfdcd3;border-radius:11px;background:#fff;color:#19382f;min-height:47px;margin-top:7px}input:focus,select:focus{outline:0;border-color:var(--green);box-shadow:0 0 0 3px #087c6610}button{padding:11px 17px;border-radius:10px;border:1px solid #cddcd2;background:#fff;color:#17634c;cursor:pointer;min-height:44px;font-size:13px;font-weight:500}button:hover:enabled{background:#edf5ef;border-color:#96bfaa}button.primary,#accept,#changePassword,#grantButton,#planButton{background:var(--green);border-color:var(--green);color:#fff;font-weight:600}button.primary{width:100%}button:disabled{opacity:.5;cursor:default}.bar{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.stats{display:flex;gap:22px;flex-wrap:wrap;align-items:stretch;margin:24px 0}.card{border:1px solid var(--line);border-radius:17px;padding:28px;background:#fff;min-width:0;box-shadow:0 5px 25px #123b2904}.stats>.card{flex:1 1 270px}.card strong{font-variant-numeric:tabular-nums}.stats>.card>strong{display:block;font-size:34px;line-height:1.4;margin-top:8px}.card p{font-size:13px}.card>.bar{margin:18px 0}.table-wrap{overflow:auto;background:#fff;border-radius:14px;border:1px solid var(--line);margin-bottom:26px}table{width:100%;border-collapse:collapse;text-align:start;white-space:nowrap;font-size:13px}th,td{padding:15px 18px;border-bottom:1px solid #e9efeb}th{background:#f7f9f7;color:#6a8073;font-size:12px}tr:last-child td{border-bottom:0}td input{width:90px}#message:empty{display:none}#message:not(:empty){color:#9a4c38;white-space:pre-wrap;border:1px solid #eed6cd;border-radius:10px;padding:12px 16px;background:#fff6f1;font-size:13px;margin:20px 0}#notice{font-size:13px;line-height:1.85}.settings{max-width:620px}.badge{display:inline-block;background:#e8f3ed;border-radius:30px;padding:4px 12px;color:#166b52;font-size:12px}.foot{font-size:12px;margin-top:24px}.auth{max-width:520px;margin:5vh auto;background:#fff;border:1px solid var(--line);border-radius:24px;padding:35px;box-shadow:0 14px 60px #163c2910}.auth #consentLabel input{display:inline;width:22px;height:22px;min-height:22px;flex:0 0 22px;margin:2px 0}.auth #consentLabel{font-size:14px;gap:12px;min-height:48px;padding-block:8px}input[type=checkbox]{display:inline-block;width:22px;height:22px;min-height:22px;padding:0;margin:0;accent-color:var(--green);cursor:pointer;flex:0 0 22px}label:has(>input[type=checkbox]){display:flex;gap:12px;align-items:flex-start;cursor:pointer;padding:12px 14px;border-radius:11px;background:#f2f7f3;border:1px solid #ddeae1;min-height:50px;font-weight:400}label:has(>input[type=checkbox]) input{margin-top:2px}label:has(>input[type=checkbox]):hover{border-color:#96bfaa}label:has(>input[type=checkbox]) span{flex:1;min-width:0}#termsSection{border-color:#b6d4c1;background:#fcfefc;margin-bottom:24px;max-width:100%}#termsSection>p{margin-top:0;font-size:13px}#termsForm{max-width:800px}#termsForm button{min-width:160px}#identity{line-height:1.9;overflow-wrap:anywhere;color:#3e6451;margin-bottom:24px}#management .stats{align-items:flex-start}#planList{margin:20px 0;gap:12px}#planList button{min-height:42px}#delete{border-color:#dfb9b0;color:#a44e3b;background:#fff9f7}#delete:hover{background:#fff0e9}#deleteForm{max-width:520px;margin-top:24px;padding:20px;border:1px solid #f0ddd5;border-radius:12px;background:#fffdfb}pre{white-space:pre-wrap;overflow-wrap:anywhere;direction:ltr;text-align:left;background:#eff6f0;border:1px solid #dfeae1;padding:20px;border-radius:12px;font-size:14px;line-height:2}article{max-width:100%}article p,article li{max-width:85ch}article p{font-size:14px!important}article h2{margin-top:28px}article h2:first-child{margin-top:0}article li{color:#557360;font-size:14px;margin:10px 0}article a{overflow-wrap:anywhere}.secret-field{position:relative}.secret-field input{padding-inline:52px}.reveal-secret{position:absolute;inset-inline-end:5px;top:4px;width:39px;height:39px;min-height:39px;padding:0;border:0;display:grid;place-items:center;background:transparent;color:#5c7e6a}.reveal-secret:hover{background:#edf5ef}a,button{touch-action:manipulation}:focus-visible{outline:3px solid #57b79b;outline-offset:3px}#recoveryForm,#emailForm{max-width:640px}.stats section form>button{margin-top:6px}#dataTitle{margin-bottom:18px}
@media(max-width:760px){header{padding:18px 20px;flex-wrap:wrap;gap:14px}header>strong{font-size:19px}header .bar{gap:6px}header a{font-size:12px;padding:7px}main{margin:26px auto;padding:0 18px 26px}h1{font-size:25px;margin-bottom:22px}.card{padding:23px}.stats{gap:18px;margin:20px 0}.stats>.card{flex-basis:100%}button{min-height:46px}.bar{gap:10px}th,td{padding:13px 16px}.auth{margin:20px 14px;padding:25px}#deleteForm{padding:16px}pre{padding:16px;font-size:13px}}
@media(max-width:420px){main{padding-inline:14px}.card{padding:20px}header{padding-inline:16px}.bar button{font-size:12px}h1{font-size:24px}#termsForm button{width:100%}}
@media print{header,button,form{display:none!important}body{background:white;color:black}main{margin:0;max-width:none;padding:0}.card{box-shadow:none;border:0}pre{white-space:pre-wrap}}
/* Account entry: scoped to avoid affecting the admin and account pages. */
body[data-page=auth]{min-height:100dvh;background:radial-gradient(ellipse at 15% 15%,#dceee7 0,transparent 50%),radial-gradient(ellipse at 90% 80%,#e4eae9 0,transparent 50%),#f5f8f6}
body[data-page=auth] header{background:transparent;border:0;max-width:1300px;margin:auto;padding:24px 32px;gap:16px;align-items:center}
.auth-brand{display:flex;align-items:center;gap:12px;direction:ltr}.brand-mark{width:40px;height:40px;display:grid;place-items:center;background:#087c66;color:white;border-radius:12px;font-size:26px;font-weight:800;box-shadow:0 4px 14px #087c6620}.auth-brand strong{font-size:19px;letter-spacing:-.5px}.auth-brand strong span{font-weight:400;color:#647b73}
body[data-page=auth] .auth{width:calc(100% - 32px);max-width:520px;margin:24px auto 40px;padding:36px 40px;border:1px solid #e0e9e5;border-radius:24px;box-shadow:0 20px 70px #173d3210}
.auth-heading{text-align:center;margin-bottom:26px}.auth-heading h1{margin:16px 0 10px;font-size:29px;letter-spacing:-.7px}.auth-heading p{margin:0;font-size:15px}.auth .badge{font-weight:600;background:#e9f5ef;border:1px solid #d6eade}
.auth label{font-size:14px;font-weight:600;margin:18px 0 8px}.auth label input{margin-top:8px}.auth input{min-height:50px;color:#172b29;border-color:#ccd9d3;border-radius:12px;transition:border-color .15s,box-shadow .15s}.auth input:focus{border-color:#087c66;box-shadow:0 0 0 3px #087c6612;outline:none}
.auth .secret-field{position:relative}.auth .secret-field input{padding-inline-end:76px}.auth .reveal-secret{position:absolute;inset-inline-end:6px;top:5px;height:40px;min-width:60px;padding:4px 10px;border:0;border-radius:8px;background:#edf5f1;font-size:13px;font-weight:600}.auth .reveal-secret:hover{background:#dcece3}.auth .field-hint{font-size:12px;font-weight:400;margin:7px 0;color:#60786c;line-height:1.6}.auth .setup-field{background:#f3f8f5;padding:1px 14px 10px;border:1px solid #dfebe3;border-radius:14px;margin-top:20px}.auth #consentLabel{display:flex;align-items:flex-start;gap:8px;font-weight:400;font-size:13px;line-height:1.7;margin:20px 0}.auth #consentLabel input{flex:0 0 auto;min-height:0;width:17px;height:17px;margin:3px 0;accent-color:#087c66}.auth #submit{min-height:51px;border-radius:12px;font-size:16px;margin-top:8px;box-shadow:0 5px 14px #087c6619}.auth #submit:hover:enabled{background:#076751}
.auth #message:empty{display:none}.auth #message:not(:empty){background:#fff2ef;border:1px solid #f2d5cf;border-radius:10px;padding:12px;font-size:14px;margin:16px 0}
.auth .google-signin{display:flex;align-items:center;justify-content:center;min-height:49px;border:1px solid #cddad3;border-radius:12px;text-decoration:none;color:#233b31;font-weight:600;margin-top:12px}.auth .google-signin:hover{background:#f3f7f5}.auth-secondary{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;margin-top:22px;font-size:13px}.auth-secondary #switch{padding:5px 0;border:0;background:none;font-size:13px;font-weight:600;min-height:36px}.auth-legal{text-align:center;border-top:1px solid #e7eeea;padding-top:20px;margin:22px 0 0;font-size:12px}.auth .foot{text-align:center;font-size:11px;color:#74877e;margin:14px 0 0}.auth a{text-underline-offset:3px}
@media(max-width:600px){body[data-page=auth] header{padding:18px 20px;flex-wrap:nowrap}.auth-brand strong{font-size:16px}.auth-brand strong span{display:block;font-size:12px;letter-spacing:0}.brand-mark{width:36px;height:36px}body[data-page=auth] .auth{margin:12px auto 28px;padding:28px 22px;width:calc(100% - 28px);border-radius:20px}.auth-heading h1{font-size:25px}.auth .reveal-secret{min-height:40px}.auth-secondary{gap:12px}}
@media(prefers-reduced-motion:reduce){.auth input{transition:none}}

.auth .secret-field input{padding-inline-end:56px}.auth .reveal-secret{min-width:40px;width:40px;display:grid;place-items:center;padding:0;background:transparent;color:#537266}.auth .reveal-secret:hover{background:#e5f0ea}

.auth .secret-field input{padding:12px 52px}
.auth #consentLabel input{width:22px;height:22px;min-height:22px;flex:0 0 22px;margin-top:2px}.auth #consentLabel{gap:12px;padding:12px;border:1px solid #dce9df;border-radius:10px;min-height:50px;font-size:13px}
.auth[hidden],.auth-loading[hidden]{display:none!important}.auth-loading{max-width:560px;margin:64px auto;padding:24px;text-align:center;color:var(--muted,#677f76);font-size:14px;line-height:1.8}
.legal-version{font-size:12px;color:var(--muted,#607568)}.legal-contact{border-top:1px solid var(--line,#dce6df);padding-top:18px;margin-top:28px}.legal-contact h2{font-size:19px}.legal-incomplete{color:inherit;font-weight:600}#article>p{line-height:1.9;max-width:85ch}

.auth-brand:has(.auth-brand-image){gap:1px}.auth-brand-image{object-fit:contain;flex-shrink:0}
.auth-secondary #switch{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 0;border:0;background:none;box-shadow:none;color:var(--green,#087c66);font:inherit;text-decoration:underline;text-underline-offset:4px}
body.dark .auth-secondary #switch{color:#a5d8be}
