:root{color-scheme:dark;--bg:#070e19;--panel:#101b2b;--panel2:#142238;--line:#263852;--text:#f2f6ff;--muted:#93a7c3;--blue:#1d83d4;--blue2:#38a0ed;--green:#37c77a;--red:#e05b68;--amber:#e4ad45;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 80% -10%,#10294a 0,transparent 30%),var(--bg);color:var(--text);min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}.subtle,.card p{color:var(--muted)}.eyebrow{color:#65b9f5;font-size:12px;font-weight:800;letter-spacing:.16em;margin:0 0 6px}.brand-mark{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:linear-gradient(135deg,#6b3ff2,#e32b63);box-shadow:0 12px 32px #662ed64a}.brand-mark.small{width:38px;height:38px;border-radius:12px;font-size:13px}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(420px,100%);padding:38px;background:#101a2aeb;border:1px solid var(--line);border-radius:22px;box-shadow:0 28px 90px #0009}.login-card h1{font-size:30px;margin:18px 0 5px}.login-card label,.form-grid label,.dialog-form label{display:grid;gap:7px;color:#c9d5e7;font-size:14px;margin:18px 0}.login-card input,.form-grid input,.form-grid select,.dialog-form input,.dialog-form textarea,.inline-form input,.inline-form select,.filters input,.filters select,.card-head select{width:100%;background:#091320;border:1px solid #344a68;color:#fff;border-radius:10px;padding:12px;outline:none}.login-card input:focus,.form-grid input:focus,.dialog-form input:focus,.dialog-form textarea:focus,.inline-form input:focus,.filters input:focus,select:focus{border-color:var(--blue2);box-shadow:0 0 0 3px #2b91dc25}.primary,.secondary,.ghost,.danger,.success,.icon{border:1px solid transparent;border-radius:9px;padding:10px 15px;font-weight:750;color:#fff}.primary{background:linear-gradient(135deg,var(--blue),#126cba);border-color:#319be9}.secondary{background:#172a43;border-color:#35506f}.ghost{background:transparent;border-color:#34465f}.danger{background:#8e2938;border-color:#c84a5b}.success{background:#17643d;border-color:#29985e}.wide{width:100%;margin-top:12px}.form-error{min-height:20px;color:#ff9ca7;font-size:14px}.app{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:#0b1523e8;border-right:1px solid #203149;padding:24px 16px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;padding:0 8px 28px}.brand strong{font-size:20px}.brand small{display:block;color:#7187a5;font-size:10px;letter-spacing:.2em}.sidebar nav{display:grid;gap:7px}.sidebar nav button{background:transparent;color:#9fb0c9;border:0;border-radius:10px;text-align:left;padding:12px 14px;font-weight:700}.sidebar nav button:hover,.sidebar nav button.active{background:#16263d;color:#fff}.sidebar nav button.active{box-shadow:inset 3px 0 var(--blue2)}.sidebar-bottom{margin-top:auto;border-top:1px solid #26364d;padding:18px 8px 0;display:grid;gap:10px;color:#aebdd1}.content{min-width:0;padding:25px 32px 60px}.content>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.content>header h1{margin:0;font-size:29px}.page{display:none}.page.active{display:block}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.stats article,.card,.notice{background:linear-gradient(145deg,#111d2e,#0e1827);border:1px solid var(--line);border-radius:15px}.stats article{padding:20px}.stats span{color:var(--muted);font-size:13px}.stats strong{display:block;font-size:34px;margin-top:10px}.card{padding:21px;margin-bottom:20px}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:16px}.card h2,.card-head h2{margin:0 0 5px;font-size:20px}.card p,.card-head p{margin:0;font-size:13px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:800px}th{color:#8fa6c4;font-size:12px;text-transform:uppercase;letter-spacing:.05em}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid #25364d;vertical-align:middle}td{font-size:14px}.device-title{font-weight:750}.device-meta{color:var(--muted);font-size:12px;margin-top:3px}.badge{display:inline-flex;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:750;background:#27384f}.badge.active{background:#17623b}.badge.pending{background:#76561f}.badge.blocked,.badge.disabled{background:#7b2935}.row-actions{display:flex;gap:6px;flex-wrap:wrap}.row-actions button{padding:7px 10px;font-size:12px}.row-select{background:#0a1422;color:#fff;border:1px solid #344a68;border-radius:8px;padding:8px;max-width:220px}.filters{display:flex;gap:8px;min-width:min(460px,100%)}.inline-form{display:grid;grid-template-columns:180px minmax(220px,360px) max-content;gap:8px;align-items:center}.pending-grid{display:grid;gap:8px;margin-top:16px}.pending-item{background:#0b1625;border:1px solid #263a55;border-radius:10px;padding:12px;display:flex;justify-content:space-between;gap:14px}.two-columns{display:grid;grid-template-columns:minmax(360px,.8fr) minmax(440px,1.2fr);gap:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.form-grid label{margin:8px 0}.span-2{grid-column:1/-1}.check{display:flex!important;grid-column:1/-1;align-items:center;grid-template-columns:max-content 1fr!important}.check input{width:auto}.actions{display:flex;gap:9px;margin-top:15px}.list-cards{display:grid;gap:10px}.list-card{padding:14px;border:1px solid #283b55;border-radius:12px;background:#0b1625}.list-card-head{display:flex;justify-content:space-between;gap:12px}.list-card strong{font-size:16px}.list-data{display:grid;grid-template-columns:100px 1fr;gap:5px 10px;margin-top:12px;font-size:13px}.list-data span:nth-child(odd){color:var(--muted)}.secret{word-break:break-all}.notice{padding:17px 19px;margin-bottom:20px;border-color:#4c6034;background:#192016}.notice strong{display:block;color:#d6ed9d;margin-bottom:5px}.notice span{color:#acbb98}.settings-group{margin-bottom:20px}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));gap:12px}.setting-card{background:#101b2b;border:1px solid var(--line);border-radius:12px;padding:15px}.setting-card label{font-weight:750;font-size:14px}.setting-card p{min-height:35px;color:var(--muted);font-size:12px}.setting-card input{width:100%;background:#091320;border:1px solid #344a68;color:#fff;border-radius:9px;padding:11px}.setting-card button{margin-top:9px}.history-details{max-width:360px;white-space:normal;color:#9db0ca;font-size:12px;word-break:break-word}.toast{position:fixed;right:22px;top:20px;z-index:1000;max-width:420px;padding:13px 16px;border-radius:10px;background:#1b2b40;border:1px solid #3e5778;box-shadow:0 15px 50px #0008;opacity:0;transform:translateY(-12px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}.toast.error{background:#4b2028;border-color:#a54250}dialog{width:min(560px,calc(100% - 28px));border:1px solid #354b68;border-radius:16px;background:#101b2b;color:#fff;padding:0;box-shadow:0 30px 90px #000b}dialog::backdrop{background:#03070dbd}.dialog-form{padding:22px}.icon{background:transparent;border-color:#394c66;font-size:22px;padding:4px 10px}
@media(max-width:1000px){.app{grid-template-columns:1fr}.sidebar{position:relative;width:auto;height:auto;padding:14px 18px}.brand{padding-bottom:12px}.sidebar nav{display:flex;overflow:auto}.sidebar nav button{white-space:nowrap}.sidebar-bottom{display:none}.stats{grid-template-columns:repeat(2,1fr)}.two-columns{grid-template-columns:1fr}.content{padding:22px}.settings-grid{grid-template-columns:1fr}}
@media(max-width:650px){.stats{grid-template-columns:1fr 1fr}.stats strong{font-size:28px}.content{padding:16px}.content>header{align-items:flex-start}.content>header .secondary{padding:9px}.card{padding:16px}.card-head{display:grid}.filters{display:grid;min-width:0}.inline-form{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.login-card{padding:26px}.pending-item{display:grid}}

.recipient-picker{display:grid;gap:8px;margin:8px 0 12px}.recipient-title{color:#c9d5e7;font-size:14px}.recipient-mode{display:flex!important;align-items:center;grid-template-columns:max-content 1fr!important;gap:9px!important;margin:0!important;padding:11px 12px;border:1px solid #344a68;border-radius:10px;background:#091320}.recipient-mode input{width:auto!important}.recipient-mode small{color:var(--muted);margin-left:5px}.recipient-list{display:grid;max-height:260px;overflow:auto;gap:6px;padding:9px;border:1px solid #344a68;border-radius:10px;background:#07111e}.recipient-item{display:grid;grid-template-columns:max-content 1fr max-content;gap:10px;align-items:center;padding:9px;border-radius:8px;background:#101d2e}.recipient-item[hidden]{display:none}.recipient-item input{width:auto!important}.recipient-item span,.recipient-item strong,.recipient-item small{display:block}.recipient-item small{color:var(--muted);margin-top:3px}.recipient-tools{display:flex;gap:7px;margin-bottom:3px;align-items:center;flex-wrap:wrap}.recipient-tools button{padding:6px 9px;font-size:12px}.recipient-search{flex:1 1 230px;min-width:180px;background:#091320;border:1px solid #344a68;color:#fff;border-radius:8px;padding:7px 9px;outline:none}.recipient-search:focus{border-color:var(--blue2);box-shadow:0 0 0 3px #2b91dc25}.recipient-no-results{margin:10px 2px;color:var(--muted);font-size:13px}
.pin-notice{border-color:#315a7e;background:#101f31}.pin-grid{display:grid;grid-template-columns:repeat(2,minmax(320px,1fr));gap:20px}.pin-card{margin-bottom:0}.pin-label{display:block;color:#c9d5e7;font-size:14px;font-weight:750;margin-bottom:8px}.pin-controls{display:grid;grid-template-columns:minmax(150px,1fr) max-content max-content;gap:8px}.pin-controls input{width:100%;background:#091320;border:1px solid #344a68;color:#fff;border-radius:10px;padding:12px;letter-spacing:.12em}.pin-controls input:focus{border-color:var(--blue2);box-shadow:0 0 0 3px #2b91dc25;outline:none}.pin-help{margin:10px 0 0!important;color:var(--muted);font-size:12px!important}@media(max-width:1000px){.pin-grid{grid-template-columns:1fr}}@media(max-width:650px){.pin-controls{grid-template-columns:1fr 1fr}.pin-controls input{grid-column:1/-1}}
