:root{color:#182230;background:#eef2f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}.loginShell,.appShell{min-height:100vh;background:#eef2f5}.loginShell{display:grid;place-items:center;padding:24px}.loginPanel{width:min(420px,100%);display:grid;gap:16px;padding:28px;border:1px solid #d5dde5;border-radius:8px;background:#fff;box-shadow:0 18px 55px #1f2d3d1f}.eyebrow{margin:0 0 8px;color:#607086;font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}h1,h2{margin:0;line-height:1.2}h1{font-size:22px;overflow-wrap:anywhere}h2{font-size:20px}label{display:grid;gap:7px;color:#435266;font-size:13px;font-weight:750}input,select{width:100%;height:44px;border:1px solid #cbd5df;border-radius:7px;padding:0 12px;background:#fff;color:#121d28}.appShell{display:grid;grid-template-columns:252px 1fr;position:relative}.sidebar{min-height:100vh;display:flex;flex-direction:column;gap:24px;padding:22px;background:#17212f;color:#f8fbff;transition:transform .22s ease,opacity .22s ease;position:relative;z-index:20}.sidebarTopRow{display:flex;align-items:center;justify-content:space-between;gap:12px}.sidebarToggle{min-height:38px;padding:0 12px;border:1px solid #334760;border-radius:999px;background:#213145;color:#f8fbff}.workspaceShell{min-width:0;display:grid;align-content:start}.workspaceTopBar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px 0}.workspaceTopBar strong{color:#182230;font-size:20px;line-height:1.2}.workspaceToggle{color:#182230;border-color:#cdd6df;background:#fff}.sidebarBackdrop{position:fixed;inset:0;border:0;background:#0a121a61;z-index:10}.desktopSidebar.sidebarClosed{grid-template-columns:0 1fr}.desktopSidebar .sidebar.closed{transform:translate(-100%);opacity:0;pointer-events:none}.desktopSidebar .workspaceTopBar{justify-content:flex-start}.sidebar .eyebrow,.userLine{color:#9bb0c6}.userLine{margin:10px 0 0;font-size:14px}nav{display:grid;gap:8px}nav button,.logoutButton,.toolButton,.primaryButton,.actions button,.iconButton,.key,.small{border:0;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:800}nav button,.logoutButton{min-height:42px;justify-content:flex-start;padding:0 12px;color:#dce7f1;background:transparent}nav button.active,nav button:hover,.logoutButton:hover{background:#243349;color:#fff}.logoutButton{margin-top:auto}.profilePanel{display:grid;gap:10px;padding:12px;border:1px solid #2f4159;border-radius:8px;background:#1d2a3c}.passwordForm{display:grid;gap:8px}.profilePanel input{height:38px;border-color:#354862;background:#111b28;color:#fff}.darkTool{width:100%;color:#fff;background:#344961}.profileMessage{margin:0;color:#dbe7f2;font-size:12px;line-height:1.35}.workspace{padding:24px;display:grid;align-content:start;justify-items:center}.panel{width:min(1080px,100%);display:grid;gap:16px}.panelHeader{display:flex;align-items:center;justify-content:space-between;gap:12px}.primaryButton,.toolButton{min-height:40px;padding:0 13px}.primaryButton{color:#fff;background:#176b54}.toolButton{color:#243349;background:#dfe7ee}.phone{width:100%;padding:16px;border-radius:8px;background:#fff;box-shadow:0 12px 34px #10212d1a;border:1px solid #dbe3ea}.webphoneGrid{width:min(1120px,100%);display:grid;grid-template-columns:minmax(300px,390px) minmax(340px,1fr);align-items:start;gap:16px}.phoneTop{min-height:104px;border-radius:8px;padding:16px;background:#182230;color:#fff;display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.phoneTop span:not(.status){display:block;margin-top:8px;color:#9bb0c6;font-size:13px}.status{flex:none;border-radius:999px;padding:7px 10px;background:#dbeafe;color:#15365d;font-size:12px;font-weight:800;text-transform:uppercase;max-width:148px;text-align:center}.registered{background:#dff7e9;color:#11633a}.calling,.ringing,.call-in-progress{background:#fff2c2;color:#7b4e00}.registration-failed{background:#ffe1df;color:#9a231d}.incomingBar{min-height:48px;margin-top:14px;padding:8px;display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:8px;border-radius:8px;background:#e9f8ef;color:#115b35}.numberInput{margin-top:14px}.numberRow{display:grid;grid-template-columns:1fr 48px;gap:10px}.numberRow input{height:50px;font-size:21px;border-radius:8px}.iconButton{width:48px;height:50px;color:#405160;background:#edf2f6}.keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.key{aspect-ratio:1.48;background:#f4f7fa;color:#17212f;font-size:26px;box-shadow:none}.key:active,.iconButton:active,.actions button:active,.toolButton:active,.primaryButton:active{transform:translateY(1px)}.actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.actions button{min-height:48px;color:#fff}.secondary{grid-column:1 / -1;background:#506273}.call{background:#14864b;color:#fff}.actions button:disabled{cursor:not-allowed;opacity:.45}.muteButton{background:#6c5878}.hangup{background:#c6372e;color:#fff}.small{min-height:34px;padding:0 10px}.error{margin:14px 0 0;border-radius:7px;padding:10px 12px;background:#fff0ee;color:#9a231d;font-size:14px}.contactsPanel{display:grid;gap:10px;padding:14px;border:1px solid #d5dde5;border-radius:8px;background:#fff}.webphoneSide{display:grid;gap:12px}.miniPanel{display:grid;gap:10px;padding:14px;border:1px solid #d5dde5;border-radius:8px;background:#fff}.panelHeader.compact{align-items:center}.panelHeader.compact h2{font-size:17px}.iconTool,.textTool{min-height:34px;border:0;border-radius:7px;background:#eef3f7;color:#26374a;font-weight:800}.iconTool{width:36px;padding:0}.textTool{padding:0 10px}.dangerText{color:#9a231d;background:#fff0ee}.searchInput{height:42px;background:#f7f9fb}.recentList{display:grid;gap:8px}.recentItem{min-height:54px;display:grid;gap:4px;padding:10px 12px;border:1px solid #e3e9ef;border-radius:8px;background:#f8fafb;color:#182230;text-align:left}.recentItem span{font-weight:850}.recentItem small{color:#637386}.contactForm{display:grid;grid-template-columns:1fr 1fr auto;gap:8px}.contactForm input,.contactForm button{min-height:40px}.contactForm input:nth-child(3){grid-column:1 / -1}.contactList{display:grid;gap:8px;max-height:470px;overflow:auto}.contactItem{display:grid;grid-template-columns:1fr;gap:8px;padding:10px;border:1px solid #e1e7ee;border-radius:8px;background:#f8fafb}.contactMain{min-width:0;display:grid;gap:4px;padding:0;border:0;background:transparent;color:inherit;text-align:left}.contactMain strong,.contactMain span,.contactMain small{overflow-wrap:anywhere}.contactMain span{color:#28384a;font-weight:750}.contactMain small,.emptyState{color:#637386}.contactActions{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:6px}.dangerTool{color:#8c221c;background:#ffe1df}.tableWrap{overflow:auto;border:1px solid #d5dde5;border-radius:8px;background:#fff}table{width:100%;min-width:760px;border-collapse:collapse}th,td{padding:12px 14px;border-bottom:1px solid #e6ebf0;text-align:left;font-size:14px}th{color:#526273;background:#f7f9fb;font-size:12px;text-transform:uppercase}.rowActions{white-space:nowrap}.userForm{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:14px;border:1px solid #d5dde5;border-radius:8px;background:#fff}@media(max-width:840px){.appShell{grid-template-columns:1fr}.sidebar{min-height:100vh;width:min(292px,calc(100vw - 36px));position:fixed;top:0;left:0;bottom:0;overflow:auto;box-shadow:0 20px 50px #07101b3d}.mobileSidebar .sidebar.closed{transform:translate(-100%);opacity:0;pointer-events:none}.mobileSidebar .sidebar.open{transform:translate(0)}.workspaceShell{min-width:0}.workspaceTopBar{padding:16px 16px 0}.workspace{padding:16px}.webphoneGrid{grid-template-columns:1fr}.phone,.webphoneSide{width:100%}.userForm{grid-template-columns:1fr}}@media(max-width:460px){.loginShell,.workspace{padding:12px}.workspaceTopBar{padding:12px 12px 0}.screen{flex-direction:column}.incomingBar{grid-template-columns:auto 1fr}.contactForm{grid-template-columns:1fr}.contactActions{justify-content:stretch}.contactActions button{flex:1 1 90px}}
