:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;color:#edf4ff;background:#07111f;color-scheme:dark}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 15% 0,#15365b 0,transparent 36rem),#07111f}.shell{width:min(1120px,calc(100% - 28px));margin:auto;padding:28px 0 60px}.topbar,.brand,.toolbar,.client-heading,.dialog-title,.actions,.form-row{display:flex;align-items:center}.topbar{justify-content:space-between;margin-bottom:28px}.brand{gap:14px}.brand img{filter:drop-shadow(0 8px 18px #0008)}h1,h2,h3,p{margin:0}h1{font-size:1.35rem}.brand p,.toolbar p,.login-card p,small,.profile-dialog p{color:#91a6bf}.brand p{font-size:.86rem;margin-top:3px}.card,.dialog-card{background:#0d1b2c;border:1px solid #21364d;border-radius:18px;box-shadow:0 18px 50px #0004}.login-card{width:min(420px,100%);margin:10vh auto;padding:30px}.login-card p{margin:8px 0 22px}.login-card form{display:grid;gap:16px}label{display:grid;gap:7px;font-size:.88rem;color:#b8c8da}input,select{width:100%;padding:12px 13px;border:1px solid #304760;border-radius:10px;background:#081523;color:#fff;font:inherit;outline:none}input:focus,select:focus{border-color:#36a5ff;box-shadow:0 0 0 3px #2389dd33}.button{display:inline-flex;justify-content:center;align-items:center;min-height:40px;padding:9px 14px;border:1px solid #35506c;border-radius:10px;background:#172b40;color:#f3f8ff;text-decoration:none;font:inherit;font-weight:650;cursor:pointer}.button:hover{background:#203a55}.button.primary{background:#1888e5;border-color:#36a5ff}.button.primary:hover{background:#2699f4}.button.ghost{background:transparent}.button.danger{color:#ffabb3;border-color:#743943;background:#321b25}.toolbar{justify-content:space-between;padding:22px 24px;margin-bottom:18px;gap:20px}.toolbar p{margin-top:5px}.client-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr));gap:16px}.client-card{padding:20px}.client-heading{justify-content:space-between;gap:12px;margin-bottom:16px}.client-name{font-size:1.05rem}.client-address{display:block;color:#8fa9c5;font-size:.75rem;margin-top:5px}.status{font-size:.72rem;font-weight:800;border-radius:99px;padding:5px 9px}.status.home{background:#123e36;color:#72e6c1}.status.guest{background:#173652;color:#83c9ff}.status.disabled{background:#342c36;color:#bdabbf}.switch-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:16px;padding:15px 0;border-top:1px solid #1d3045}.switch-row strong{display:block;font-size:.88rem}.switch-row small{display:block;font-size:.75rem;line-height:1.35;margin-top:3px}.switch{display:block;position:relative;width:44px;height:25px}.switch input{opacity:0;width:0;height:0}.switch span{position:absolute;inset:0;border-radius:20px;background:#3a4859;cursor:pointer;transition:.2s}.switch span:before{content:"";position:absolute;width:19px;height:19px;left:3px;top:3px;border-radius:50%;background:#fff;transition:.2s}.switch input:checked+span{background:#1888e5}.switch input:checked+span:before{transform:translateX(19px)}.switch input:disabled+span{opacity:.45}.actions{gap:9px;flex-wrap:wrap;margin-top:17px}.settings{padding:22px 24px;margin-top:18px}.settings h2{margin-bottom:15px}.form-row{align-items:end;gap:12px;flex-wrap:wrap}.form-row label{flex:1 1 220px}.notice{position:sticky;top:12px;z-index:5;padding:12px 16px;border-radius:10px;margin-bottom:14px}.notice.success{background:#164439;color:#8df0cf}.notice.error{background:#542630;color:#ffc1c7}dialog{border:0;padding:0;background:transparent;color:inherit;width:min(520px,calc(100% - 24px))}dialog::backdrop{background:#020813c9;backdrop-filter:blur(5px)}.dialog-card{padding:24px;display:grid;gap:17px}.dialog-title{justify-content:space-between}.icon-button{border:0;background:transparent;color:#a9bbcf;font-size:2rem;cursor:pointer;line-height:1}.qr{width:min(320px,100%);aspect-ratio:1;margin:auto;border-radius:12px;background:white}.profile-dialog{text-align:center}.profile-dialog .actions{justify-content:center}.hidden{display:none!important}@media(max-width:600px){.shell{padding-top:18px}.brand p{display:none}.toolbar{align-items:flex-start;flex-direction:column}.toolbar .button{width:100%}.client-card{padding:17px}.actions .button{flex:1}.settings{padding:18px}.form-row{align-items:stretch;flex-direction:column}.form-row .button{width:100%}}
