:root{color:#1c261f;background:#e8efe2;font-family:Aptos,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,select{font:inherit}.login-shell,.dashboard-shell,.loading{min-height:100vh;padding:32px}.login-shell{display:grid;place-items:center;background:radial-gradient(circle at 20% 20%,rgba(102,153,84,.35),transparent 32rem),linear-gradient(135deg,#f6f1df,#d9e7d0 48%,#94b984)}.login-card{width:min(430px,100%);border:1px solid rgba(48,67,42,.18);border-radius:30px;background:#ffffffc7;box-shadow:0 24px 80px #24371e2e;padding:34px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.eyebrow{margin:0 0 8px;color:#66804c;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}h1{margin:0;color:#172415;font-size:clamp(34px,6vw,58px);line-height:.95;letter-spacing:-.05em}.hint{color:#5d6d59;line-height:1.55}.login-form{display:grid;gap:16px;margin-top:28px}label{display:grid;gap:7px;color:#56624f;font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}input,select{height:48px;border:1px solid #c9d7c1;border-radius:15px;background:#fff;color:#172415;padding:0 15px;text-transform:none}button{height:48px;border:0;border-radius:15px;background:#23351f;color:#fff;cursor:pointer;font-weight:800}button:disabled{cursor:wait;opacity:.6}button.secondary{width:120px;border:1px solid #bfd0b6;background:#fff;color:#25351f}button.secondary.wide{width:100%}button.danger{width:110px;border:1px solid #f1c5c5;background:#fff5f5;color:#9f1d1d}.error{margin:0;color:#a32020;font-size:14px}.dashboard-shell{background:linear-gradient(90deg,rgba(255,255,255,.72) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.72) 1px,transparent 1px),#e8efe2;background-size:42px 42px}.dashboard-header{display:flex;align-items:start;justify-content:space-between;gap:24px;margin:0 auto 28px;max-width:1180px}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin:0 auto;max-width:1180px}.panel,.hero-panel{min-height:140px;border:1px solid rgba(48,67,42,.14);border-radius:24px;background:#ffffffb8;padding:22px;box-shadow:0 16px 40px #24371e14}.hero-panel{grid-column:span 2;background:radial-gradient(circle at 82% 12%,rgba(155,188,123,.46),transparent 18rem),#fffdf4}.hero-panel h2,.section-title h2{margin:0;color:#172415;font-size:28px;letter-spacing:-.04em}.hero-panel dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:14px;margin:26px 0 0}.hero-panel dt{color:#71806c;font-size:12px;font-weight:800;text-transform:uppercase}.hero-panel dd{margin:5px 0 0;color:#172415;font-size:20px;font-weight:900}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.section-title span{border-radius:999px;background:#eaf3e3;color:#49643d;min-width:32px;padding:7px 10px;text-align:center;font-size:12px;font-weight:900}.extension-list,.network-list,.sip-list,.dialplan-list,.port-forward-list,.terminal-list,.queue-list{display:grid;gap:10px}.extension-row,.network-row,.sip-row,.dialplan-row,.port-forward-row,.terminal-row,.queue-row{border:1px solid #edf2e9;border-radius:16px;background:#fff;padding:12px}.extension-row:not(.extension-form){display:flex;align-items:center;justify-content:space-between;gap:12px}.extension-row strong,.network-row strong,.sip-row strong,.dialplan-row strong,.port-forward-row strong,.terminal-row strong,.queue-row strong{color:#172415;font-weight:900}.extension-row span,.network-row span,.sip-row span,.dialplan-row span,.port-forward-row span,.terminal-row span,.queue-row span,.network-row small,.muted,.next-panel p{color:#697565}.network-row div{display:flex;align-items:center;justify-content:space-between;gap:12px}.network-row p{margin:8px 0 4px;color:#24351f;font-weight:800}.network-row small{display:block;margin-top:3px}.network-form,.extension-form,.sip-form,.dialplan-form,.port-forward-form,.terminal-form,.queue-form{display:grid;gap:12px}.extension-form>div:first-child,.sip-form>div:first-child,.dialplan-form>div:first-child,.port-forward-form>div:first-child,.terminal-form>div:first-child,.queue-form>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px}.network-fields,.sip-fields,.dialplan-fields,.port-forward-fields,.terminal-fields,.queue-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:10px}.sip-fields,.dialplan-fields,.port-forward-fields,.terminal-fields,.queue-fields{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}.network-fields label,.sip-fields label,.dialplan-fields label,.port-forward-fields label,.terminal-fields label,.queue-fields label{font-size:11px}.network-fields input,.network-fields select,.sip-fields input,.sip-fields select,.dialplan-fields input,.dialplan-fields select,.port-forward-fields input,.port-forward-fields select,.terminal-fields input,.terminal-fields select,.queue-fields input,.queue-fields select{height:40px;border-radius:12px}.queue-members{display:grid;gap:9px;border-top:1px solid #edf2e9;padding-top:10px}.queue-member,.queue-member-form{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.queue-member{justify-content:space-between}.queue-member-form select,.queue-member-form input{height:40px;border-radius:12px}.queue-member-form input{width:90px}.inline-check{display:flex;align-items:center;gap:9px;color:#56624f;font-size:12px;font-weight:800}.inline-check input{height:16px;width:16px}.row-actions{display:flex;flex-wrap:wrap;gap:10px}.row-actions button{width:auto;min-width:110px;padding:0 16px}.error-panel{margin:0 auto 20px;max-width:1180px;color:#a32020}.loading{display:grid;place-items:center;color:#56624f;font-weight:800}@media(max-width:720px){.login-shell,.dashboard-shell,.loading{padding:20px}.dashboard-header{display:grid}.hero-panel{grid-column:span 1}}
