:root{--bg: #0b0f14;--surface: #131a23;--surface2: #1a2332;--border: rgba(255,255,255,.06);--accent: #22c55e;--accent-dim: rgba(34,197,94,.15);--red: #ef4444;--red-dim: rgba(239,68,68,.15);--text: #f0f4f8;--text2: rgba(240,244,248,.55);--text3: rgba(240,244,248,.35);--radius: .75rem;--radius-sm: .5rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,sans-serif;line-height:1.5;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100vh;background:var(--bg);color:var(--text)}.app-shell{max-width:430px;min-height:100vh;margin:0 auto;display:flex;flex-direction:column;position:relative;overflow-x:hidden;background:var(--bg)}.app-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem .75rem;position:sticky;top:0;z-index:20;background:var(--bg)}.brand{display:flex;align-items:center;gap:.6rem}.brand-icon{width:36px;height:36px;border-radius:10px;background:var(--accent-dim);color:var(--accent);display:grid;place-items:center}.brand-name{font-size:1.15rem;font-weight:700;letter-spacing:-.02em}.header-badge{display:flex;align-items:center;gap:.35rem;font-size:.7rem;color:var(--accent);background:var(--accent-dim);padding:.3rem .65rem;border-radius:2rem;font-weight:600;letter-spacing:.02em}.content{flex:1;overflow-y:auto;padding-bottom:5rem}.tab-panel{padding:.75rem 1.25rem 1.5rem}.panel-header{margin-bottom:1rem}.panel-header h2{font-size:1.1rem;font-weight:700;letter-spacing:-.01em}.dialer-panel{display:flex;flex-direction:column;align-items:center;padding-top:.5rem}.speed-dial-strip{display:flex;gap:1rem;overflow-x:auto;padding:.25rem 0 .75rem;width:100%;justify-content:center;flex-wrap:wrap}.speed-dial-item{display:flex;flex-direction:column;align-items:center;gap:.3rem;background:none;border:none;color:var(--text);cursor:pointer;min-width:54px}.speed-avatar{width:46px;height:46px;border-radius:50%;background:var(--surface2);display:grid;place-items:center;font-size:.8rem;font-weight:700;color:var(--accent);border:2px solid var(--accent-dim);transition:transform .15s,border-color .15s}.speed-dial-item:hover .speed-avatar{transform:scale(1.08);border-color:var(--accent)}.speed-name{font-size:.65rem;color:var(--text2);max-width:60px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dial-display{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.5rem 0 .25rem;min-height:3.2rem}.dial-input{background:none;border:none;color:var(--text);font-size:2rem;font-weight:300;letter-spacing:.04em;text-align:center;width:100%;outline:none;font-variant-numeric:tabular-nums}.dial-input::placeholder{color:var(--text3);font-size:1.2rem}.backspace-btn{background:none;border:none;color:var(--text2);cursor:pointer;padding:.5rem;border-radius:50%;display:grid;place-items:center;transition:background .15s}.backspace-btn:hover{background:var(--surface2)}.dial-pad{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;width:100%;max-width:300px;padding:.5rem 0}.dial-key{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem 0;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:0;transition:background .12s,transform .1s;color:var(--text)}.dial-key:hover{background:var(--surface2)}.dial-key:active{transform:scale(.95);background:var(--accent-dim)}.key-main{font-size:1.5rem;font-weight:500;line-height:1}.key-sub{font-size:.55rem;color:var(--text3);letter-spacing:.12em;font-weight:600}.call-btn{width:64px;height:64px;border-radius:50%;background:var(--accent);border:none;color:#000;cursor:pointer;display:grid;place-items:center;margin-top:.75rem;box-shadow:0 4px 24px #22c55e59;transition:transform .15s,box-shadow .15s}.call-btn:hover{transform:scale(1.08);box-shadow:0 6px 32px #22c55e73}.call-btn:active{transform:scale(.95)}.call-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:2rem;gap:.75rem;background:linear-gradient(180deg,#0a1a12 0%,var(--bg) 100%)}.call-avatar-ring{width:100px;height:100px;border-radius:50%;border:3px solid var(--accent);display:grid;place-items:center;animation:pulse-ring 2s ease-in-out infinite}@keyframes pulse-ring{0%,to{box-shadow:0 0 #22c55e4d}50%{box-shadow:0 0 0 14px #22c55e00}}.call-avatar{width:80px;height:80px;border-radius:50%;background:var(--surface2);display:grid;place-items:center;font-size:2rem;font-weight:700;color:var(--accent)}.call-name{font-size:1.5rem;font-weight:700;margin-top:.5rem}.call-number{font-size:.9rem;color:var(--text2)}.call-status{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--accent)}.pulse-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:pulse-dot 1.2s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}.call-timer{font-size:2.5rem;font-weight:200;font-variant-numeric:tabular-nums;letter-spacing:.05em;margin:.5rem 0}.encryption-badge{display:flex;align-items:center;gap:.4rem;font-size:.7rem;color:var(--accent);background:var(--accent-dim);padding:.3rem .75rem;border-radius:2rem}.call-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2rem;width:100%;max-width:320px}.call-action-btn{display:flex;flex-direction:column;align-items:center;gap:.4rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.9rem .5rem;color:var(--text);cursor:pointer;transition:background .15s,border-color .15s}.call-action-btn span{font-size:1.3rem}.call-action-btn small{font-size:.65rem;color:var(--text2)}.call-action-btn.active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.call-action-btn.active small{color:var(--accent)}.call-action-btn.rec{background:var(--red-dim);border-color:var(--red);color:var(--red)}.call-action-btn.rec small{color:var(--red)}.end-call-btn{margin-top:2rem;width:64px;height:64px;border-radius:50%;background:var(--red);border:none;color:#fff;cursor:pointer;display:grid;place-items:center;box-shadow:0 4px 24px #ef444459;transition:transform .15s}.end-call-btn:hover{transform:scale(1.08)}.search-bar{display:flex;align-items:center;gap:.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.55rem .85rem;margin-top:.6rem;color:var(--text2)}.search-bar input{background:none;border:none;color:var(--text);font-size:.85rem;outline:none;width:100%}.search-bar input::placeholder{color:var(--text3)}.list{display:flex;flex-direction:column}.list-item{display:flex;align-items:center;gap:.85rem;padding:.85rem .5rem;border-bottom:1px solid var(--border);cursor:pointer;transition:background .12s;border-radius:var(--radius-sm)}.list-item:hover{background:var(--surface)}.list-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-size:.8rem;font-weight:700;flex-shrink:0}.list-avatar.incoming{background:var(--accent-dim);color:var(--accent)}.list-avatar.outgoing{background:#3b82f626;color:#3b82f6}.list-avatar.missed{background:var(--red-dim);color:var(--red)}.list-avatar.contact-avatar{background:var(--surface2);color:var(--accent)}.list-info{flex:1;min-width:0}.list-name{font-size:.9rem;font-weight:600;display:flex;align-items:center;gap:.35rem}.inline-lock{color:var(--accent);opacity:.7}.fav-star{color:#facc15;font-size:.75rem}.list-sub{font-size:.75rem;color:var(--text2);margin-top:.1rem}.list-number{font-size:.75rem;color:var(--text3);white-space:nowrap}.list-action{background:var(--accent-dim);border:none;color:var(--accent);width:36px;height:36px;border-radius:50%;display:grid;place-items:center;cursor:pointer;transition:background .15s;flex-shrink:0}.list-action:hover{background:var(--accent);color:#000}.empty-state{text-align:center;padding:3rem 1rem;color:var(--text3);font-size:.9rem}.features-grid{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.feature-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;display:flex;flex-direction:column;gap:.4rem;transition:border-color .15s}.feature-card:hover{border-color:#ffffff1f}.feature-icon{font-size:1.5rem}.feature-title{font-size:.8rem;font-weight:700}.feature-desc{font-size:.7rem;color:var(--text2);line-height:1.4}.rates-table{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.rate-row{display:flex;align-items:center;gap:.75rem;padding:.7rem 1rem;border-bottom:1px solid var(--border);font-size:.85rem}.rate-row:last-child{border-bottom:none}.rate-flag{font-size:1.2rem}.rate-region{flex:1}.rate-value{font-weight:600;color:var(--text2);font-variant-numeric:tabular-nums}.rate-value.free{color:var(--accent);font-weight:700}.free-row{background:var(--accent-dim)}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:430px;display:flex;background:var(--surface);border-top:1px solid var(--border);padding:.5rem .25rem calc(.5rem + env(safe-area-inset-bottom,0px));z-index:30}.nav-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:.2rem;background:none;border:none;color:var(--text3);font-size:.6rem;font-weight:600;cursor:pointer;padding:.4rem 0;transition:color .15s;letter-spacing:.02em}.nav-btn.active{color:var(--accent)}.nav-btn:hover:not(.active){color:var(--text2)}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--surface2);border-radius:4px}@media(max-width:430px){.app-shell,.bottom-nav{max-width:100%}}
