@font-face{font-family:system;src:local("Inter"),local("Arial")}*{box-sizing:border-box}html{color:#18352e;background:#f4f5ef;font:16px system,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body{margin:0}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid #b8994d;outline-offset:3px}input:focus{outline:2px solid #2a8068;outline-offset:2px}[hidden]{display:none!important}.shell{max-width:1060px;margin:auto;padding:28px 32px 0}.brand{display:flex;align-items:center;justify-content:space-between;padding-bottom:28px;border-bottom:1px solid #dce1d5}.brand a{display:flex;gap:12px;align-items:center;color:inherit;text-decoration:none;font-size:22px;font-weight:750;letter-spacing:-1px}.brand-small{display:block;letter-spacing:2px;text-transform:uppercase;font-size:9px;margin-top:2px;font-weight:600;color:#5d7469}.line-number{font-variant-numeric:tabular-nums;font-size:15px;color:#5d7469;letter-spacing:1px}.login-panel{max-width:490px;margin:60px auto 80px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:750;color:#6b8177;text-transform:uppercase}h1{font-size:clamp(34px,5vw,48px);line-height:1.1;letter-spacing:-1.8px;margin:17px 0}h2{font-size:21px;line-height:1.3;letter-spacing:-.5px;margin:0 0 20px}h3{font-size:16px;margin:0 0 12px}.intro{font-size:17px;line-height:1.6;color:#66766b;margin-bottom:32px;max-width:380px}.card{background:#fff;border:1px solid #e2e6db;border-radius:22px;padding:28px;box-shadow:0 5px 18px #173a2f04}label{display:block;font-size:13px;font-weight:650;color:#52675b;margin-bottom:18px}input{display:block;width:100%;background:#f6f7f3;border:1px solid #e0e5da;border-radius:10px;padding:13px 14px;margin-top:8px;color:#18352e;min-height:48px}input::placeholder{color:#95a195}.primary,.secondary{display:flex;justify-content:space-between;align-items:center;width:100%;border-radius:12px;padding:15px 18px;font-weight:650;min-height:50px}.primary{background:#12594b;color:white}.primary:hover{background:#0d493e}.secondary{background:#edf2e8;color:#245b45;justify-content:center;border:1px solid #d5dfcf}.hint{font-size:12px;line-height:1.7;color:#79857a}.login-card .hint{text-align:center;margin-bottom:0}.welcome{display:flex;justify-content:space-between;align-items:center;margin:34px 0 20px}.welcome h1{font-size:30px;margin:8px 0 0;letter-spacing:-1px}.text-button{background:none;padding:10px;color:#52725e;font-size:13px}.connection{display:flex;align-items:center;gap:8px;font-size:12px;color:#398460}.dot{width:7px;height:7px;border-radius:50%;background:currentColor}.connection.offline{color:#a66b33}.notice{border:1px solid #eadfca;background:#faf4e8;color:#85632d;padding:13px 16px;font-size:13px;line-height:1.55;border-radius:12px;margin-top:14px}.tabs{display:flex;gap:4px;border-bottom:1px solid #dce1d5;margin:30px 0}.tabs button{flex:1;background:none;padding:14px 6px;color:#859080;font-size:14px;border-bottom:2px solid transparent}.tabs .selected{color:#184f3e;border-bottom-color:#184f3e;font-weight:700}.panel{max-width:640px;margin:0 auto 60px}.dial-card{max-width:420px;margin:auto;padding:24px 36px}.number-entry{display:flex;align-items:center;border-bottom:1px solid #edf0e7;margin-bottom:20px}.number-entry input{background:none;border:0;text-align:center;font-size:25px;letter-spacing:1px;padding:12px 0;margin:0;min-width:0}.number-entry input::placeholder{font-size:18px;letter-spacing:0}.keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.keypad button{background:#f5f7f0;border-radius:50%;width:68px;height:68px;margin:auto;font-size:25px;color:#253f31;display:flex;flex-direction:column;justify-content:center;align-items:center}.keypad button:hover{background:#e8efdf}.keypad small{display:block;font-size:8px;letter-spacing:1.7px;margin-top:3px;color:#7e8e7a;height:10px}.call-button{justify-content:center;margin-top:24px}.dial-card .hint{text-align:center}.audio-test{display:flex;justify-content:space-between;gap:12px;max-width:420px;width:100%;margin:16px auto;padding:18px 20px;background:none;border:1px dashed #cbd7c3;border-radius:12px;color:#52705b;font-size:13px}.section-title{display:flex;justify-content:space-between;align-items:center;margin:22px 0}.section-title h2{margin:0}.badge{border-radius:12px;background:#e8eedf;padding:4px 9px;color:#617658;font-size:12px}.search{margin-bottom:20px;background:#fff}.people{border:1px solid #e1e6d9;border-radius:16px;overflow:hidden;background:#fff}.person{display:flex;align-items:center;gap:13px;padding:18px;border-bottom:1px solid #edf0e8}.person:last-child{border:0}.avatar{width:40px;height:40px;border-radius:12px;background:#edf1e6;color:#64825b;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;flex-shrink:0}.person-content{flex:1;min-width:0}.person strong{display:block;font-size:14px;overflow-wrap:anywhere}.person small{display:block;font-size:12px;color:#88927f;margin-top:5px}.person button{background:#f0f5e9;padding:10px 14px;border-radius:10px;color:#48633a;font-size:12px}.empty{padding:30px;text-align:center;font-size:14px;color:#87917d;line-height:1.6}.settings-card{margin:16px 0 26px}.settings-card p{font-size:14px;line-height:1.7;color:#6d7d6a}hr{border:0;border-top:1px solid #e7ebe1;margin:24px 0}.check{display:flex;align-items:center;gap:10px;line-height:1.6}.check input{width:18px;min-height:18px;margin:0;accent-color:#12594b}.call-card{background:#12594b;border:1px solid #216f5e;color:#fff;padding:28px;border-radius:22px;max-width:640px;margin:26px auto 8px;text-align:center;box-shadow:0 10px 26px #12594b20}.call-card .eyebrow{color:#a9c6b9}.call-card h2{font-size:28px;margin:17px 0 8px}.call-card p{color:#bcd3c5;font-size:13px;line-height:1.6}.call-actions,.call-tools{display:flex;gap:10px;justify-content:center}.call-actions button{flex:1;padding:15px;border-radius:12px;font-weight:650}.accept{background:#d0eabe;color:#224b28}.danger{background:#bf493f;color:#fff}.call-tools{margin:23px 0;flex-wrap:wrap}.call-tools button{border:1px solid #4a8775;background:#ffffff09;color:#e6f2e8;padding:13px;border-radius:12px;font-size:12px}.call-tools button[aria-pressed="true"]{background:#e2edd8;color:#244936}.hangup{border-radius:12px;padding:14px 40px;font-weight:650}.light{color:#dcf1de}.dtmf{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-width:250px;margin:20px auto}.dtmf button{padding:12px;background:#377463;color:white;border-radius:8px}dialog{border:1px solid #dce4d3;border-radius:24px;padding:26px;width:calc(100% - 32px);max-width:500px;color:#274731;box-shadow:0 15px 60px #12241a25}dialog::backdrop{background:#172c2280}dialog p{color:#788574;font-size:14px;line-height:1.6}.dialog-title{display:flex;justify-content:space-between;align-items:baseline}#toast{position:fixed;bottom:max(25px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:10;width:calc(100% - 36px);max-width:480px;background:#263d31;color:#fff;padding:16px 20px;border-radius:14px;font-size:14px;line-height:1.5;box-shadow:0 8px 30px #16301f22}footer{border-top:1px solid #dce1d5;display:flex;justify-content:space-between;color:#96a08e;font-size:11px;letter-spacing:.4px;padding:23px 0;margin-top:45px}footer span{font-weight:700}.sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}@media(min-width:760px){#workspace{max-width:760px;margin:auto}.login-panel{max-width:480px}.tabs{justify-content:center}.tabs button{max-width:190px}.login-card{padding:32px 36px}}@media(max-width:520px){.shell{padding:22px 20px 0}.brand{padding-bottom:22px}.brand a{font-size:20px}.line-number{font-size:13px}.login-panel{margin:42px 0 50px}h1{font-size:39px}.card{padding:23px}.welcome h1{font-size:26px}.welcome{margin-top:27px}.tabs{margin:20px 0}.dial-card{padding:20px 28px}.call-card{padding:25px 20px}.keypad button{width:62px;height:62px}.person{padding:15px}.section-title h2{font-size:18px}footer{font-size:10px}.call-tools{gap:7px}.call-tools button{padding:12px 10px}main{min-height:68vh}}@media(prefers-reduced-motion:no-preference){button{transition:background .15s,opacity .15s}.call-card{animation:appear .2s ease}@keyframes appear{from{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:none}}}
