:root{color-scheme:light;font-family:Yu Gothic UI,Meiryo,sans-serif;color:#18312b;background:#f3f7f5}*{box-sizing:border-box}body{margin:0}.topbar{padding:18px 5vw;background:#173f35;color:white;display:flex;gap:18px;align-items:baseline}.topbar-link{margin-left:auto;color:white;font-weight:700}main{max-width:980px;margin:42px auto;padding:0 20px}.card{background:white;border:1px solid #d8e3df;border-radius:14px;padding:24px;box-shadow:0 8px 24px #173f3512}.narrow{max-width:540px;margin:0 auto}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px}.plan{border:1px solid #c7d8d2;border-radius:12px;padding:20px}label{display:grid;gap:7px;margin:14px 0;font-weight:700}input,select{width:100%;padding:12px;border:1px solid #adbfba;border-radius:8px;font:inherit;background:white}.latin-password{ime-mode:disabled}.input-hint{margin:-6px 0 14px;color:#60736e;font-size:13px;line-height:1.6}.password-visibility{display:flex;grid-template-columns:none;align-items:center;gap:8px;margin-top:-4px;font-size:14px}.password-visibility input{width:18px;height:18px;margin:0}.button,button{display:inline-block;border:0;border-radius:8px;padding:12px 18px;background:#176b58;color:white;font:inherit;font-weight:700;cursor:pointer;text-decoration:none}.large-button{font-size:1.08rem;padding:14px 22px;text-align:center}.muted{color:#60736e}.warning{padding:14px;background:#fff4d8;border:1px solid #efd184;border-radius:8px}.error{color:#a12626}.success{padding:14px;color:#145b4a;background:#d9eee7;border:1px solid #9bcdbd;border-radius:8px}.success.compact{margin:8px 0 0;padding:8px 10px}.actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.launch-panel{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;margin:18px 0;padding:18px;background:#edf3f1;border:1px solid #c7d8d2;border-radius:12px}.launch-panel ol{margin:10px 0;padding-left:1.4rem}.launch-panel li{margin:5px 0}.launch-actions{display:grid;gap:10px;justify-items:stretch;min-width:210px}.secondary-link{color:#176b58;font-weight:700;text-align:center}.device-token-box{display:grid;gap:8px}.copy-row{display:flex;gap:8px;align-items:center}.copy-row input{flex:1 1;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:1rem}.admin-entry{display:flex;justify-content:space-between;gap:18px;align-items:center;margin:18px 0;padding:16px;background:#edf3f1;border:1px solid #c7d8d2;border-radius:10px}.admin-entry p{margin:5px 0 0;color:#60736e}.role-explanation{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.role-explanation>div{padding:14px;border:1px solid #d8e3df;border-radius:10px}.role-explanation p{margin:6px 0 0;color:#60736e}.identity-list{margin:18px 0;border-top:1px solid #d8e3df}.identity-list>div{display:grid;grid-template-columns:150px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid #d8e3df}.identity-list dt{font-weight:700}.identity-list dd{margin:0;overflow-wrap:anywhere}.setup-steps{padding-left:24px;line-height:1.8}.stripe-mode{display:grid;gap:5px;margin:14px 0;padding:14px;border-radius:10px}.stripe-mode.test{color:#664900;background:#fff4d8;border:1px solid #efd184}.stripe-mode.live{color:#145b4a;background:#d9eee7;border:1px solid #9bcdbd}.stripe-mode.missing{color:#8b2020;background:#fde7e7;border:1px solid #e3aaaa}.admin-nav{padding:12px 5vw;background:#102d26;display:flex;gap:20px;align-items:center}.admin-nav a,.admin-nav strong{color:white}.admin-shell{max-width:1320px;margin:32px auto;padding:0 20px;display:grid;gap:20px}.admin-title{display:flex;justify-content:space-between;align-items:center}.eyebrow{margin:0;color:#176b58;font-size:12px;font-weight:800;letter-spacing:1.5px}.secure-badge{padding:8px 12px;color:#145b4a;background:#d9eee7;border-radius:999px;font-weight:700}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat{padding:20px;background:white;border:1px solid #d8e3df;border-radius:12px}.stat small,.stat strong{display:block}.stat strong{margin-top:6px;font-size:28px}.config-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 18px;margin:16px 0}.config-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px;border-bottom:1px solid #e4ece9}.admin-table small,.config-item small{display:block;color:#60736e;overflow-wrap:anywhere}.dot{width:10px;height:10px;border-radius:50%;background:#bd3737}.dot.ok{background:#21845f}.admin-table-wrap{overflow:auto}.admin-table{width:100%;border-collapse:collapse}.admin-table td,.admin-table th{padding:11px;border-bottom:1px solid #dce5e2;text-align:left;vertical-align:top}.admin-table th{background:#edf3f1;white-space:nowrap}.danger-button{background:#a12626;padding:8px 12px}.device-list{display:grid;gap:10px;margin-top:18px}.device-row{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px;border:1px solid #d8e3df;border-radius:10px}.device-row small{display:block;margin-top:5px;color:#60736e}.mfa-qr{display:block;width:min(260px,100%);margin:18px auto}@media (max-width:760px){.config-grid,.stat-grid{grid-template-columns:1fr}.admin-title{gap:10px}.admin-entry,.admin-title{align-items:flex-start;flex-direction:column}.identity-list>div,.role-explanation{grid-template-columns:1fr}.identity-list>div{gap:4px}}select,textarea{width:100%;padding:12px;border:1px solid #adbfba;border-radius:8px;background:white;font:inherit}.plan-price{display:block;margin-top:8px;color:#176b58;font-size:25px}.secondary-button{background:#667772}.modal-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:#102d26b8}.billing-dialog{width:min(900px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:24px;border-radius:14px;background:white;box-shadow:0 24px 80px #0005}.dialog-title{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.dialog-title h2{margin-top:4px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.checkbox-label{display:flex;align-items:center;align-self:end;min-height:45px}.checkbox-label input{width:auto;margin-right:10px}@media (max-width:760px){.form-grid{grid-template-columns:1fr}}