:root{--ink:#18372f;--muted:#6b7973;--green:#174f40;--green-light:#e8f1eb;--paper:#f6f7f3;--border:#e2e7df;--white:#fff;--orange:#c77849;--red:#a33236;--shadow:0 6px 24px #203c3010;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0;font-size:14px;line-height:1.55}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit}h1,h2,p{margin:0}h1{font-weight:600;letter-spacing:-1.5px;line-height:1.15;font-size:34px}h2{font-size:18px;letter-spacing:-.4px;font-weight:600}small,.small{font-size:12px;line-height:1.6}.muted{color:var(--muted)}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.5px;color:var(--muted)}[hidden]{display:none!important}.brand{display:inline-flex;align-items:center;text-decoration:none;font-size:23px;letter-spacing:-1px;font-weight:650;white-space:nowrap;gap:9px}.brand-icon{background:var(--green);color:#fff;width:30px;height:30px;border-radius:9px;display:grid;place-items:center;font-size:20px;font-weight:500;letter-spacing:-1px}.brand-dot{color:var(--orange);margin-left:-8px}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;border-radius:7px;min-height:40px;padding:9px 16px;font-size:12px;font-weight:600;border:1px solid transparent;text-decoration:none;transition:background .15s,box-shadow .15s;white-space:nowrap}.button.primary{background:var(--green);color:#fff}.button.primary:hover:not(:disabled){background:#0e3c2f;box-shadow:0 3px 12px #174f4020}.button.quiet{background:#fff;border-color:var(--border);color:var(--ink)}.button.quiet:hover:not(:disabled){background:var(--paper)}.button.danger{color:var(--red);background:#fff0ef;border-color:#f3d8d8}.full{width:100%}.small-button{min-height:34px;padding:6px 11px;font-size:11px}.icon-button{display:inline-grid;place-items:center;width:30px;height:30px;background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--ink);font-size:20px;line-height:1}.text-button{background:none;border:0;padding:0;color:var(--green);font-weight:650}.text-button:hover{text-decoration:underline}label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:550}input,select{padding:11px 12px;border:1px solid #dce2d9;border-radius:7px;background:#fff;min-width:0;width:100%;color:var(--ink);outline:none}input::placeholder{color:#a1aaa4}input:focus,select:focus{border-color:var(--green);box-shadow:0 0 0 3px #174f4012}button:focus-visible,a:focus-visible{outline:3px solid #79ae99;outline-offset:3px}.boot{height:100vh;display:grid;place-items:center;color:var(--muted)}.toast{position:fixed;top:20px;left:50%;transform:translateX(-50%);z-index:20;background:#183b31;color:#fff;padding:12px 22px;border-radius:9px;box-shadow:var(--shadow);max-width:calc(100vw - 32px);font-size:13px}.toast.error{background:#8b3036}.auth-layout{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.auth-intro{padding:46px 60px;display:flex;flex-direction:column;justify-content:space-between;background:#e9eee5;min-height:650px}.auth-copy{margin:80px 0;max-width:430px}.auth-copy h1{font-size:65px;font-weight:500;line-height:1.03;letter-spacing:-3px;margin:24px 0}.auth-copy>p:not(.eyebrow){color:#65746a;max-width:340px;font-size:16px}.intro-detail{display:flex;gap:15px;align-items:center;margin-top:48px;font-size:12px;color:#627365}.intro-detail>span:first-child{width:38px;height:38px;border:1px solid #b9c8b8;display:grid;place-items:center;border-radius:50%;font-size:20px;color:var(--green)}.auth-foot{font-size:11px;color:#738172}.auth-panel{display:grid;place-items:center;padding:60px 28px;background:#fff}.auth-card{width:100%;max-width:340px}.auth-card h2{font-size:32px;letter-spacing:-1px;margin:14px 0 8px}.auth-card>label{margin-top:24px}.auth-card .button{margin-top:28px}.auth-switch{margin:22px 0 30px;text-align:center;font-size:12px;color:var(--muted)}.inline-error{color:var(--red);margin-top:15px;font-size:12px}.topbar{height:80px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 32px;gap:16px}.account{display:flex;align-items:center;gap:20px;color:var(--muted);font-size:12px}.account>span{max-width:200px;overflow:hidden;text-overflow:ellipsis}.app-shell{display:grid;grid-template-columns:230px minmax(0,1fr);min-height:calc(100vh - 124px)}.sidebar{padding:30px 18px;border-right:1px solid var(--border);background:#f2f4ee;display:flex;flex-direction:column;gap:18px}.sidebar-heading{display:flex;justify-content:space-between;align-items:center;padding:0 6px}.sidebar-heading .icon-button{width:25px;height:25px;border:0}.sidebar nav{display:flex;flex-direction:column;gap:6px}.pbx-item{display:flex;align-items:center;gap:11px;width:100%;text-align:left;border:1px solid transparent;background:transparent;padding:11px;border-radius:7px;color:var(--muted)}.pbx-item:hover{background:#e8ede4}.pbx-item.active{border-color:#dce4d7;background:#fff;box-shadow:0 2px 6px #213d3010;color:var(--green)}.pbx-mark{width:31px;height:31px;border-radius:7px;background:#e8eee4;display:grid;place-items:center;flex-shrink:0;font-size:12px;font-weight:600}.pbx-copy{display:flex;flex-direction:column;overflow:hidden}.pbx-copy strong{font-size:12px;font-weight:600;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.pbx-copy small{font-size:10px;color:#8b958b}.sidebar-note{margin-top:auto;padding:24px 10px 0;display:flex;gap:8px;align-items:flex-start;font-size:11px;line-height:1.6;color:var(--muted)}.sidebar-note small{font-size:10px;color:#8a9589}.status-dot{background:#6c9a73;width:6px;height:6px;border-radius:50%;margin-top:5px;flex-shrink:0}.workspace{padding:40px 36px 50px;min-width:0;max-width:1500px;width:100%;margin:0 auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.page-heading h1{margin:9px 0}.page-heading .muted{font-variant-numeric:tabular-nums;font-size:13px}.badge{background:#ecefe7;font-size:9px;text-transform:uppercase;letter-spacing:.5px;border-radius:4px;padding:3px 5px;vertical-align:middle;margin-left:8px;color:#75836f}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:30px}.stat-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);border-radius:9px;padding:18px 20px;gap:7px;min-width:0}.stat-card>span{font-size:11px;color:var(--muted)}.stat-card>strong{font-size:30px;font-weight:550;letter-spacing:-1px;line-height:1.25}.stat-card>small{font-size:10px;color:#8b958c}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 278px;gap:24px;align-items:start}.management{min-width:0}.tabs{display:flex;border-bottom:1px solid var(--border);margin-bottom:23px;gap:23px}.tab{border:0;background:none;color:var(--muted);padding:0 0 13px;font-size:12px;border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap}.tab.active{color:var(--green);border-bottom-color:var(--green);font-weight:600}.panel{border:1px solid var(--border);border-radius:9px;background:#fff;overflow:hidden}.section-heading{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:23px 23px 20px}.section-heading h2{font-size:15px;margin-bottom:4px}.section-heading .small{font-size:11px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{background:#f8f9f5;padding:11px 22px;border-top:1px solid #eef0e9;border-bottom:1px solid #eef0e9;font-size:9px;letter-spacing:.7px;text-transform:uppercase;font-weight:600;color:#818b7f}td{padding:16px 22px;border-bottom:1px solid #eef0e9;font-size:12px}.number-label{font-weight:650;font-variant-numeric:tabular-nums}.row-actions{display:flex;justify-content:flex-end;gap:12px}.delete-button{border:0;color:#9a736e;background:none;font-size:11px}.delete-button:hover{color:var(--red);text-decoration:underline}.use-button{border:0;background:none;color:var(--green);font-weight:600;font-size:11px}.tip{padding:18px 23px;display:flex;gap:12px;background:#fcfcfa;color:#7a8575;font-size:10px;line-height:1.8}.tip>span{font-size:19px;color:#739268}.tip strong{color:#526b49;font-weight:600}.table-empty{padding:38px 24px;text-align:center;color:var(--muted);font-size:12px}.phone-card{padding:22px;background:#fff;border:1px solid var(--border);border-radius:9px}.phone-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:3px}.phone-heading h2{font-size:15px}.status-pill{font-size:9px;padding:3px 7px;border-radius:20px;background:#f0f1ed;color:#8a9184;white-space:nowrap}.status-pill.online{background:#e7f2e7;color:#437a43}.status-pill.calling{background:#fff0dc;color:#a37837}.phone-label{margin-top:23px;font-size:10px;color:var(--muted)}.phone-label select{font-size:12px;margin-top:0;padding:9px 11px}.phone-connect-row{margin-top:10px}.phone-connect-row .button{font-size:11px;min-height:34px}.phone-message{font-size:11px;text-align:center;color:var(--muted);margin:18px 0;min-height:34px;overflow-wrap:anywhere}.dial-input{font-size:20px;text-align:center;letter-spacing:1px;background:#fbfcf9;padding:16px 10px;margin-bottom:12px}.dial-input::placeholder{font-size:14px;letter-spacing:0}.phone-card .button.full{gap:9px}.phone-card #phone-secure-note{font-size:10px;margin-top:18px;line-height:1.7}.phone-footer{border-top:1px solid var(--border);margin-top:20px;padding-top:16px;font-size:10px;color:#8b9587;line-height:1.7}.call-controls{display:flex;gap:8px;margin-top:10px}.call-controls .button{flex:1;padding:8px;min-width:0}audio{width:100%;height:32px;margin-top:12px}.app-footer{height:44px;border-top:1px solid var(--border);display:flex;justify-content:center;align-items:center;gap:10px;color:#929b8e;font-size:9px;background:#f6f7f3}.settings-form{padding:0 23px 25px;display:flex;flex-direction:column;gap:22px}.settings-form .button{align-self:flex-start}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-row small{font-weight:400;font-size:10px}.notice{background:#f5f7f1;border:1px solid #e8ecdf;padding:12px 14px;font-size:11px;color:#7a856f;border-radius:6px}.more-button{display:flex;margin:18px auto}.activity-list{margin:0;padding:0 23px 8px;list-style:none}.activity-item{display:flex;gap:12px;padding:17px 0;border-top:1px solid #eef0e9}.activity-mark{width:27px;height:27px;border-radius:50%;background:#edf2e8;display:grid;place-items:center;font-size:12px;color:#66835a;flex-shrink:0}.activity-text{min-width:0}.activity-text strong{display:block;font-weight:550;font-size:12px}.activity-text p{font-size:11px;overflow-wrap:anywhere;color:var(--muted);margin:4px 0}.activity-text time{font-size:10px;color:#929c8a}.result{font-size:9px;letter-spacing:.3px;background:#f0f1ec;color:#7b8573;border-radius:4px;padding:4px 6px}.result.answered{background:#eaf3e7;color:#59804d}.call-direction{display:flex;gap:5px;align-items:center;font-size:11px}.call-time{font-size:10px;color:var(--muted)}.empty-state{padding:75px 20px;text-align:center;max-width:600px;margin:auto}.empty-icon{width:60px;height:60px;margin:0 auto 25px;border-radius:17px;background:#e8eee2;color:var(--green);display:grid;place-items:center;font-size:29px}.empty-state h1{font-size:39px;margin:17px 0}.empty-state>p:not(.eyebrow){color:var(--muted);margin:18px auto;max-width:360px}.empty-state .button{margin:10px 0 5px}dialog{border:1px solid var(--border);border-radius:12px;box-shadow:0 20px 70px #172d3035;color:var(--ink);padding:27px;width:420px;max-width:calc(100vw - 32px)}dialog::backdrop{background:#1c302c70;backdrop-filter:blur(3px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}.dialog-heading h2{font-size:20px}dialog form>p{font-size:12px;margin:16px 0}dialog label{margin:20px 0}dialog .button.full{margin-top:10px}.sr-only{position:absolute;left:0;top:0;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:1550px){.workspace{padding:50px 50px 60px}.content-grid{grid-template-columns:minmax(0,1fr) 300px;gap:30px}.phone-card{padding:25px}}@media(max-width:1150px){.app-shell{grid-template-columns:190px minmax(0,1fr)}.sidebar{padding:25px 12px}.workspace{padding:30px 24px}.content-grid{grid-template-columns:minmax(0,1fr) 245px;gap:17px}.stats-grid{gap:10px}.stat-card{padding:15px 13px}.stat-card>strong{font-size:27px}.stat-card>small{font-size:9px}.section-heading{padding:20px 17px;align-items:flex-start;flex-wrap:wrap}.tabs{gap:19px}th,td{padding-left:17px;padding-right:17px}.phone-card{padding:18px}}@media(max-width:930px){.app-shell{grid-template-columns:165px minmax(0,1fr)}.content-grid{grid-template-columns:minmax(0,1fr)}.phone-card{max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.phone-heading,.phone-card>p.muted,.phone-footer,.phone-message{grid-column:1/-1}.phone-label{margin-top:15px}.phone-connect-row{align-self:end}.phone-card #dial-form{grid-column:1/-1}.phone-card #dial-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}.dial-input{margin:0;font-size:17px;padding:9px}.phone-card #phone-secure-note{grid-column:1/-1;margin-top:12px}.call-controls,audio{grid-column:1/-1}.stats-grid{grid-template-columns:1fr 1fr}.stat-card>small{font-size:10px}.auth-intro{padding:40px}.auth-copy h1{font-size:52px}.auth-copy>p:not(.eyebrow){font-size:14px}.workspace{padding:27px 20px}h1{font-size:30px}}@media(max-width:650px){.auth-layout{grid-template-columns:1fr}.auth-intro{min-height:auto;padding:27px}.auth-copy{margin:42px 0 10px}.auth-copy h1{font-size:43px;margin:17px 0}.auth-copy>p:not(.eyebrow){font-size:13px;max-width:300px}.intro-detail,.auth-foot{display:none}.auth-panel{padding:34px 25px 50px}.auth-card h2{font-size:27px}.topbar{height:66px;padding:0 18px}.topbar .brand{font-size:19px;gap:7px}.brand-icon{width:27px;height:27px;font-size:18px}.account{gap:8px}.account>span{display:none}.app-shell{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--border);padding:12px 18px;gap:8px}.sidebar-heading{padding:0}.sidebar-heading .eyebrow{font-size:9px}.sidebar nav{flex-direction:row;overflow:auto;padding-bottom:2px}.pbx-item{width:auto;min-width:140px;padding:8px;flex-shrink:0}.pbx-mark{width:26px;height:26px}.sidebar-note{display:none}.workspace{padding:24px 18px 35px}.page-heading{margin-bottom:23px}.page-heading h1{font-size:28px}.page-heading .eyebrow{font-size:9px}.page-heading .button{padding:7px 10px;min-height:34px;font-size:10px}.page-heading .muted{font-size:12px}.stats-grid{margin-bottom:25px}.stat-card{padding:14px 15px}.stat-card>strong{font-size:27px}.stat-card>span{font-size:10px}.stat-card>small{font-size:9px}.tabs{gap:21px;margin-bottom:20px;overflow:auto}.tab{font-size:11px;padding-bottom:11px}.section-heading{padding:19px 17px}.section-heading h2{font-size:14px}th,td{padding-left:16px;padding-right:16px}.form-row{gap:12px}.settings-form{padding:0 17px 22px}.phone-card{margin-top:3px}.empty-state{padding:45px 0}.empty-state h1{font-size:33px}.empty-state>p:not(.eyebrow){font-size:12px}.app-footer{font-size:8px;gap:6px}.badge{font-size:8px}.activity-list{padding-left:17px;padding-right:17px}}

.dtmf-controls{margin:18px 0 0;padding:14px 0 0;border:0;border-top:1px solid var(--border);min-width:0;grid-column:1/-1}.dtmf-controls legend{font-size:12px;font-weight:600;padding:0 8px 0 0}.dtmf-controls label{font-size:10px;color:var(--muted)}.dtmf-controls select{padding:7px 8px;font-size:11px}.keypad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:12px 0}.keypad-key{min-height:44px;font-size:19px;border:1px solid var(--border);border-radius:7px;background:#f8faf6;color:var(--ink)}.keypad-key:hover:not(:disabled),.keypad-key:active:not(:disabled){background:var(--green-light)}.dtmf-controls p{margin:7px 0 0;overflow-wrap:anywhere}.dtmf-controls output{font-variant-numeric:tabular-nums;letter-spacing:1px}.codec-status{margin:8px 0 0;font-size:10px;grid-column:1/-1}.codec-select{grid-column:1/-1;margin-top:12px}.codec-select select{font-size:11px}.phone-card .phone-connect-row{grid-column:1/-1}.cdr-digits{font-size:10px;color:var(--muted);white-space:normal;max-width:240px;overflow-wrap:anywhere}
