:root{--ph-ok-soft: rgba(67, 181, 129, .16);--ph-ok-hover: #4fc58f;--ph-ok-text: #7ee29a;--ph-danger-text: #ff8a80;--ph-star: #f0b429}html:has(.ph-overlay){overflow:hidden}.ph-bar-wrap{display:flex;flex-direction:column;gap:var(--s-2);margin-bottom:var(--s-3)}.ph-bar{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--s-2)}.ph-bar:empty{display:none}.ph-chip{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border:1px solid var(--border);border-radius:var(--r-full);background:var(--surface-1);color:var(--text-muted);font-size:var(--fs-sm);font-weight:600;white-space:nowrap}.ph-chip.is-ok{border-color:transparent;background:var(--ph-ok-soft);color:var(--ph-ok-text)}.ph-chip.is-alarm{border-color:transparent;background:var(--danger-soft);color:var(--ph-danger-text)}.ph-chip.is-update{border-color:var(--primary-soft-strong);background:var(--primary-soft);color:var(--primary);cursor:pointer}.ph-chip.is-update:hover:not(:disabled){background:var(--primary-soft-strong)}.ph-chip.is-update:disabled{cursor:default;opacity:.8}.ph-call{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-3);padding:var(--s-3) var(--s-4);border:1px solid var(--primary-soft-strong);border-radius:var(--r-md);background:var(--surface-1);box-shadow:var(--elev-2)}.ph-call.is-incoming{border:2px solid var(--ok);background:color-mix(in srgb,var(--ok) 8%,var(--surface-1))}.ph-call-text{min-width:0}.ph-call-who{overflow:hidden;color:var(--text);font-size:var(--fs-xl);font-weight:700;letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap}.ph-call-state{color:var(--text-dim);font-size:var(--fs-base)}.ph-call-actions{display:flex;flex-wrap:wrap;gap:var(--s-2)}.ph-code-toast{position:fixed;bottom:calc(var(--s-5) + 56px);left:50%;z-index:201;display:flex;align-items:center;gap:var(--s-3);max-width:calc(100vw - 32px);padding:10px var(--s-3) 10px var(--s-4);transform:translate(-50%);border:1px solid var(--primary-soft-strong);border-radius:var(--r-md);background:var(--surface-2);box-shadow:var(--elev-3);color:var(--text-dim);font-size:var(--fs-base)}.ph-code-toast strong{color:var(--primary);font-size:var(--fs-md);font-variant-numeric:tabular-nums;letter-spacing:.06em}.ph-code-toast button{border:0;background:transparent;color:var(--primary);cursor:pointer;font-weight:650}.ph-code-toast button:hover{color:var(--primary-hover)}.ph-code-toast .ph-code-toast-close{color:var(--text-muted);font-weight:400}.ph-view{display:flex;grid-column:1 / -1;flex-direction:column;gap:var(--s-4);width:100%;min-width:0}.ph-split,.ph-col{display:flex;flex-direction:column;gap:var(--s-4);min-width:0}.ph-settings{display:flex;flex-direction:column;gap:var(--s-4);width:100%}@media (min-width: 1000px){.ph-split{display:grid;grid-template-columns:minmax(340px,420px) minmax(0,1fr);align-items:stretch}.ph-split>.ph-col{min-height:0}.ph-split .ph-recent{display:flex;flex:1 1 auto;min-height:0;flex-direction:column}.ph-split .ph-recent .ph-list{flex:1 1 auto;min-height:0;margin-right:calc(-1 * var(--s-2));padding-right:var(--s-2);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.ph-split .ph-recordings{max-height:100%;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.ph-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));column-gap:var(--s-5)}.ph-grid>li,.ph-grid>li+li{border-top:1px solid var(--border)}.ph-grid .ph-contact-data{display:none}.ph-grid .ph-contact-num{display:block}.ph-settings{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));align-items:start}}.ph-tabs{display:flex;align-items:center;gap:3px;padding:3px;overflow-x:auto;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-1);scrollbar-width:none}.ph-tabs::-webkit-scrollbar{display:none}.ph-tabs button{display:inline-flex;flex:0 0 auto;align-items:center;gap:5px;padding:7px 14px;border:1px solid transparent;border-radius:var(--r-sm);background:transparent;color:var(--text-muted);cursor:pointer;font-size:var(--fs-base);font-weight:600}.ph-tabs button:hover{background:var(--surface-2);color:var(--text)}.ph-tabs button.active{border-color:var(--primary-soft-strong);background:var(--primary-soft);color:var(--primary)}.ph-tabs-ext{display:inline-flex;flex:0 0 auto;align-items:center;gap:5px;margin-left:auto;padding:7px 10px;color:var(--text-muted);font-size:var(--fs-sm);text-decoration:none}.ph-tabs-ext:hover{color:var(--primary)}.ph-badge{min-width:18px;padding:0 5px;border-radius:var(--r-full);background:var(--primary);color:#fff;font-size:var(--fs-xs);line-height:18px;text-align:center}.ph-count{font-size:var(--fs-xs)}.ph-card{overflow-wrap:anywhere;min-width:0;padding:var(--s-4);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-1);box-shadow:var(--elev-1)}.ph-title{margin-bottom:var(--s-3);color:var(--text-muted);font-size:var(--fs-sm);font-weight:600;letter-spacing:.06em;text-transform:uppercase}.ph-banner{padding:var(--s-2) var(--s-3);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-1);color:var(--text-dim);font-size:var(--fs-base)}.ph-banner.is-error{border-color:transparent;background:var(--danger-soft);color:var(--ph-danger-text)}.ph-banner .ph-link{margin-left:var(--s-1)}.ph-empty{padding:var(--s-2) 0;color:var(--text-muted);font-size:var(--fs-base)}.ph-note{color:var(--text-muted);font-size:var(--fs-base)}.ph-note+.ph-note{margin-top:var(--s-2)}.ph-note code,.ph-error code{font-size:var(--fs-sm)}.ph-error{margin-top:var(--s-2);color:var(--ph-danger-text);font-size:var(--fs-base)}.ph-summary{margin:var(--s-3) 0 var(--s-1);color:var(--text-muted);font-size:var(--fs-sm)}.ph-summary:empty{display:none}.ph-diag{margin-top:var(--s-3);white-space:pre-line}.ph-input{flex:1;width:100%;min-width:0;padding:10px var(--s-4);border:1px solid var(--border);border-radius:var(--r-full);background:var(--surface-2);color:var(--text);outline:none;font-size:var(--fs-md);transition:border-color .15s ease,box-shadow .15s ease}.ph-input::placeholder{color:var(--text-muted)}.ph-input:hover{border-color:var(--border-strong)}.ph-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.ph-input:focus-visible,.ph-textarea:focus-visible{outline:none}.ph-input-tel{font-size:var(--fs-lg);font-variant-numeric:tabular-nums}.ph-input-box{border-radius:var(--r-md)}.ph-textarea{width:100%;padding:10px var(--s-3);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);color:var(--text);outline:none;resize:vertical}.ph-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.ph-select{height:38px;padding:0 var(--s-3);border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text);font:inherit;font-size:var(--fs-base)}.ph-check{display:inline-flex;align-items:center;gap:var(--s-2);color:var(--text-dim);font-size:var(--fs-base)}.ph-check input{accent-color:var(--primary)}.ph-btn{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;gap:6px;padding:9px var(--s-4);border:1px solid var(--primary-soft-strong);border-radius:var(--r-full);background:var(--primary-soft);color:var(--primary);cursor:pointer;font-size:var(--fs-base);font-weight:650;text-decoration:none;white-space:nowrap;transition:background .15s ease,border-color .15s ease,transform .06s ease}.ph-btn:hover{border-color:var(--primary);background:var(--primary-soft-strong)}.ph-btn:active{transform:translateY(1px)}.ph-btn:disabled{cursor:not-allowed;opacity:.5}.ph-btn.is-green{border-color:transparent;background:var(--ok);color:#fff}.ph-btn.is-green:hover{background:var(--ph-ok-hover)}.ph-btn.is-red{border-color:transparent;background:var(--danger);color:#fff}.ph-btn.is-red:hover{background:#f25f52}.ph-btn.is-secondary{border-color:var(--border);background:var(--surface-2);color:var(--text)}.ph-btn.is-secondary:hover{border-color:var(--border-strong);background:var(--surface-3)}.ph-btn.is-soft-danger{border-color:transparent;background:var(--danger-soft);color:var(--ph-danger-text)}.ph-btn.is-soft-danger:hover{background:var(--danger);color:#fff}.ph-inline{display:inline-flex}.ph-link{padding:0;border:0;background:none;color:var(--primary);cursor:pointer;font-size:var(--fs-base);font-weight:500}.ph-link:hover{color:var(--primary-hover)}.ph-link:disabled{cursor:wait;opacity:.6}.ph-ext{display:inline-flex;align-items:center;gap:4px;color:var(--primary);text-decoration:none}.ph-ext:hover{text-decoration:underline}.ph-icon-btn{display:inline-grid;flex:none;place-items:center;width:34px;height:34px;padding:0;border:1px solid transparent;border-radius:var(--r-full);background:transparent;color:var(--text-muted);cursor:pointer;transition:background .15s ease,color .15s ease}.ph-icon-btn:hover{background:var(--surface-2);color:var(--text)}.ph-icon-btn.is-call{background:var(--ph-ok-soft);color:var(--ok)}.ph-icon-btn.is-call:hover{background:var(--ok);color:#fff}.ph-icon-space{flex:none;width:34px}.ph-star.is-on{color:var(--ph-star)}.ph-chip-btn{display:inline-flex;align-items:center;gap:4px;margin-left:var(--s-2);padding:1px 8px;border:1px solid var(--primary-soft-strong);border-radius:var(--r-full);background:transparent;color:var(--primary);cursor:pointer;font-size:var(--fs-xs);font-weight:600;vertical-align:1px;white-space:nowrap}.ph-chip-btn svg{width:12px;height:12px}.ph-chip-btn:hover{background:var(--primary-soft)}.ph-chip-btn:disabled{border-color:var(--border);color:var(--text-muted);cursor:default}.ph-segmented{display:inline-flex;gap:2px;padding:2px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2)}.ph-segmented button{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;border:0;border-radius:4px;background:transparent;color:var(--text-muted);cursor:pointer;font-size:var(--fs-base);font-weight:600}.ph-segmented button:hover{color:var(--text)}.ph-segmented button.active{background:var(--primary-soft);color:var(--primary)}.ph-segmented span{font-size:var(--fs-xs)}.ph-list{margin:0;padding:0;list-style:none}.ph-list>li+li{border-top:1px solid var(--border)}.ph-row{display:flex;flex:1;align-items:center;gap:var(--s-3);width:100%;min-width:0;padding:10px var(--s-2);border:0;border-radius:var(--r-sm);background:none;cursor:pointer;text-align:left;transition:background .12s ease}.ph-row:hover{background:var(--surface-2)}.ph-row-name{overflow:hidden;color:var(--text);font-weight:600;text-overflow:ellipsis;white-space:nowrap}.ph-row-data{margin-left:auto;color:var(--text-muted);font-size:var(--fs-base);font-variant-numeric:tabular-nums;white-space:nowrap}.ph-row-mark{flex:none;width:1.2em;color:var(--text-muted);font-size:var(--fs-base);text-align:center}.ph-contact{display:flex;align-items:center;gap:var(--s-1)}.ph-avatar{display:grid;flex:none;place-items:center;width:36px;height:36px;border-radius:var(--r-full);background:var(--primary-soft);color:var(--primary);font-size:var(--fs-sm);font-weight:700}.ph-contact-text{display:flex;min-width:0;flex-direction:column}.ph-contact-sub{overflow:hidden;color:var(--text-muted);font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap}.ph-contact-num{display:none;font-variant-numeric:tabular-nums}.ph-toolbar{display:flex;gap:var(--s-2)}.ph-filters{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2);margin-top:var(--s-3)}.ph-dialer{display:flex;gap:var(--s-2)}.ph-suggestions{margin-top:var(--s-3)}.ph-sims{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2);margin-top:var(--s-3)}.ph-sims>.ph-sim{flex:1 1 0;min-width:0}.ph-sims>.ph-note{flex-basis:100%}.ph-sim .ph-sim-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;text-align:left}.ph-sim .ph-sim-input{flex:1 1 auto;width:auto;min-width:0}.ph-sim{display:inline-flex;align-items:stretch;overflow:hidden;border:1px solid var(--border);border-radius:var(--r-full);background:var(--surface-2)}.ph-sim button{display:inline-flex;align-items:center;padding:6px var(--s-3);border:0;background:none;color:var(--text-dim);cursor:pointer;font-size:var(--fs-base)}.ph-sim .ph-sim-icon{flex:none;padding:6px;color:var(--text-muted)}.ph-sim .ph-sim-icon:last-child{padding-right:10px}.ph-sim .ph-sim-icon:hover{color:var(--text)}.ph-sim .ph-star.is-on{color:var(--ph-star)}.ph-sim.is-active{border-color:var(--primary-soft-strong);background:var(--primary-soft)}.ph-sim.is-active .ph-sim-name{color:var(--primary);font-weight:650}.ph-sim.is-editing{border-color:var(--primary)}.ph-sim-input{width:15em;max-width:60vw;padding:6px var(--s-3);border:0;background:transparent;color:var(--text);outline:none;font-size:var(--fs-base)}.ph-ask{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:var(--s-3);padding:var(--s-4);border:1px solid var(--primary-soft-strong);border-radius:var(--r-md);background:var(--primary-soft)}.ph-ask-text{color:var(--text);font-weight:600}.ph-ask-options{display:flex;flex-wrap:wrap;gap:var(--s-2)}.ph-pair{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-5);margin-bottom:var(--s-3)}.ph-qr{flex:none;width:200px;min-height:200px;padding:var(--s-2);border-radius:var(--r-md);background:#fff}.ph-qr svg{display:block;width:100%;height:auto}.ph-steps{flex:1 1 220px;margin:0;padding-left:var(--s-5);color:var(--text-dim)}.ph-steps li{margin:6px 0}.ph-steps strong{color:var(--text)}.ph-models{display:grid;grid-template-columns:max-content 1fr;gap:4px var(--s-4);font-size:var(--fs-base)}.ph-models dt{color:var(--text-muted)}.ph-models dd{color:var(--text-dim);font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:var(--fs-sm);overflow-wrap:anywhere}.ph-sms{padding:var(--s-3) var(--s-2)}.ph-sms.is-new{padding-left:var(--s-3);border-left:3px solid var(--primary)}.ph-sms-head{display:flex;align-items:baseline;gap:var(--s-3)}.ph-sms-text{margin-top:var(--s-1);color:var(--text-dim);font-size:var(--fs-base);overflow-wrap:anywhere;white-space:pre-wrap}.ph-sms-code{margin-top:var(--s-2);padding:4px var(--s-3);border:1px solid var(--primary-soft-strong);border-radius:var(--r-sm);background:var(--primary-soft);color:var(--primary);cursor:pointer;font-size:var(--fs-lg);font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:.08em}.ph-sms-code:hover{background:var(--primary-soft-strong)}.ph-rec{padding:10px 0}.ph-rec-head{display:flex;align-items:center;gap:10px}.ph-rec audio{width:100%;height:36px;margin-top:6px}.ph-rec-status{margin-top:var(--s-2);color:var(--text-muted);font-size:var(--fs-sm)}.ph-rec-status .ph-link{margin-left:var(--s-2);font-size:var(--fs-sm)}.ph-minutes{margin-top:var(--s-2);padding:var(--s-3);border:1px solid var(--primary-soft-strong);border-radius:var(--r-md);background:var(--primary-soft)}.ph-minutes-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-3);margin-bottom:var(--s-1)}.ph-minutes-head .ph-minutes-title{margin:0}.ph-minutes-head .ph-link{font-size:var(--fs-sm);white-space:nowrap}.ph-minutes-title{margin:var(--s-2) 0 2px;color:var(--text-muted);font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase}.ph-minutes-text{font-size:var(--fs-base)}.ph-minutes-list{margin:0;padding-left:var(--s-5);color:var(--text-dim);font-size:var(--fs-base)}.ph-minutes-tasks li{margin:3px 0}.ph-minutes-next{margin-top:var(--s-2);color:var(--primary);font-size:var(--fs-base);font-weight:600}.ph-transcript{margin-top:var(--s-2)}.ph-transcript summary{display:inline;color:var(--text-muted);cursor:pointer;font-size:var(--fs-base)}.ph-transcript-copy{margin-left:var(--s-3);font-size:var(--fs-sm)}.ph-turn{margin-top:6px;color:var(--text-dim);font-size:var(--fs-base)}.ph-turn-time{margin-right:4px;padding:0 4px;border:0;border-radius:4px;background:var(--surface-3);color:var(--text-muted);cursor:pointer;font-size:var(--fs-xs);font-variant-numeric:tabular-nums}.ph-turn-time:hover{background:var(--primary-soft);color:var(--primary)}.ph-turn-who{color:var(--text);font-weight:650}.ph-turn-who.is-me{color:var(--primary)}.ph-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:150;display:flex;align-items:center;justify-content:center;padding:var(--s-4);background:#000000a6;overscroll-behavior:contain}.ph-sheet{width:min(520px,100%);max-height:calc(100dvh - 48px);overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--border-strong);border-radius:var(--r-lg);background:var(--surface-1);box-shadow:var(--elev-3);color:var(--text)}.ph-sheet.is-wide{width:min(600px,100%)}.ph-dialog-body{display:flex;flex-direction:column;gap:var(--s-3);padding:var(--s-5)}.ph-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3)}.ph-dialog-head h2{overflow:hidden;color:var(--text);font-size:var(--fs-lg);letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap}.ph-dialog-foot{display:flex;align-items:center;gap:var(--s-2);margin-top:var(--s-2)}.ph-gap{flex:1}.ph-field{display:flex;flex-direction:column;gap:6px}.ph-field>span{color:var(--text-muted);font-size:var(--fs-sm);font-weight:600}.ph-field .ph-link{align-self:flex-start}.ph-numbers{display:flex;flex-direction:column;gap:var(--s-2)}.ph-number{display:flex;align-items:center;gap:var(--s-2)}.ph-number .ph-select{flex:none;width:104px;height:42px;border-radius:var(--r-md)}@media (max-width: 480px){.ph-view{gap:var(--s-3)}.ph-card{padding:var(--s-3)}.ph-tabs button{padding:7px 10px}.ph-tabs-ext{padding:7px 6px}.ph-dialer .ph-btn{padding:9px var(--s-3)}.ph-call-who{font-size:var(--fs-lg)}.ph-call-actions{width:100%}.ph-call-actions .ph-btn{flex:1}.ph-overlay{align-items:flex-end;padding:var(--s-2)}.ph-dialog-body{padding:var(--s-4)}.ph-number{flex-wrap:wrap}.ph-contact-data{display:none}.ph-contact-num{display:block}.ph-contact{gap:0}.ph-number .ph-input{flex:1 1 100%}.ph-number .ph-select{flex:1;width:auto}.ph-qr{width:180px;min-height:180px}.ph-code-toast{bottom:calc(var(--s-5) + 64px)}}.vault-app{width:100%;max-width:680px;margin:0 auto;padding:0 var(--s-4) var(--s-6)}.vault-actions{display:flex;align-items:center;gap:var(--s-2)}.vault-main{display:flex;flex-direction:column;gap:var(--s-4)}.vault-box{display:flex;flex-direction:column;gap:var(--s-3)}.vault-box .ph-title{margin:0}.vault-box .ph-note strong{color:var(--text)}.vault-form{display:flex;flex-direction:column;gap:var(--s-2);max-width:380px}.vault-form .ph-btn{align-self:flex-start}.vault-danger{align-self:flex-start;color:var(--ph-danger-text)}.vault-danger:hover{color:var(--danger)}.vault-subactions{display:flex;gap:var(--s-4);margin-top:var(--s-2)}.vault-subactions .ph-link{display:inline-flex;align-items:center;gap:4px}.vault-account{display:flex;align-items:center;gap:var(--s-2);padding:var(--s-2)}.vault-account-text{flex:1}.vault-code{padding:4px var(--s-3);border:1px solid transparent;border-radius:var(--r-sm);background:none;color:var(--primary);cursor:pointer;font-size:var(--fs-xl);font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:.06em;white-space:nowrap}.vault-code:hover{border-color:var(--primary-soft-strong);background:var(--primary-soft)}.vault-clock{width:3ch;color:var(--text-muted);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;text-align:right}.vault-clock.is-low{color:var(--ph-danger-text);font-weight:700}.vault-steps{flex:none}.vault-video{width:100%;max-height:300px;border-radius:var(--r-md);background:#000;object-fit:contain}.vault-import-list{max-height:180px;overflow-y:auto}.vault-import-list li{padding:6px var(--s-2);font-size:var(--fs-base)}.vault-import-list li.is-skipped{color:var(--text-muted)}.vault-paste summary{cursor:pointer}.vault-paste .ph-textarea{margin:var(--s-2) 0;font-size:var(--fs-sm)}.vault-advanced{display:flex;gap:var(--s-3);margin-top:var(--s-2)}.vault-advanced .ph-select{width:100%}@media (max-width: 480px){.vault-app{padding:0 var(--s-3) var(--s-6)}.vault-code{font-size:var(--fs-lg)}.vault-account{gap:2px;padding:var(--s-2) 0}}
