.porto-workspace { min-width: 0; }
.porto-toolbar, .porto-link-tools { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.porto-toolbar { justify-content:space-between; }
.porto-login, .porto-manager, .porto-row, .porto-search { display:grid; gap:8px; }
.porto-login[hidden], .porto-manager[hidden], [data-link-result][hidden], [data-add-earpiece][hidden] { display:none; }
.porto-login { max-width:440px; }
.porto-workspace label { display:grid; gap:4px; }
.porto-workspace input { box-sizing:border-box; min-width:0; width:100%; }
.porto-workspace .porto-check { display:flex; align-items:center; gap:8px; }
.porto-workspace input[type=checkbox] { width:20px; height:20px; }
.porto-add { display:flex; align-items:end; flex-wrap:wrap; gap:10px; }
.porto-add .porto-check { align-self:center; }
.porto-manager { border-bottom:1px solid var(--pp-ui-border,#cad5e2); padding-bottom:12px; margin-bottom:12px; }
.porto-search { max-width:440px; margin:14px 0; }
.porto-rows { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; }
.porto-row { border:1px solid var(--pp-ui-border,#cad5e2); border-radius:8px; padding:12px; align-content:start; background:var(--pp-ui-panel,#fff); }
.porto-row header { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.porto-row header span { font-size:12px; color:#166534; }
.porto-issued header span { color:#92400e; }
.porto-row p { margin:0; }
.porto-recipient { font-size:18px; font-weight:600; }
.porto-time { font-size:12px; }
.porto-row button { min-height:42px; }
.porto-row details { font-size:12px; }
.porto-row details label { margin:8px 0; }
.porto-conflict { color:#a34000; }
.porto-history { margin-top:16px; }
.porto-history p { border-bottom:1px solid var(--pp-ui-border,#cad5e2); padding:5px 0; font-size:12px; }
.porto-phone { margin:0; padding:16px; font:16px/1.4 "Segoe UI",sans-serif; background:#f1f5f9; color:#172e49; }
.porto-phone main { max-width:720px; margin:auto; }
.porto-phone h1 { font-size:22px; margin:0 0 10px; }
.porto-phone button,.porto-phone input { font:inherit; border:1px solid #b8c8da; border-radius:6px; padding:10px; }
.porto-phone button { background:#1766ba; color:white; cursor:pointer; }
.porto-phone button:disabled { opacity:.55; cursor:default; }
.porto-phone input { background:white; color:#172e49; }
.porto-phone a { color:#1766ba; }
.porto-phone :focus-visible { outline:3px solid #1d70cc; outline-offset:2px; }
.porto-phone [data-porto-status] { min-height:24px; }

.porto-tabs { display:flex; gap:8px; margin:12px 0; }
.porto-tabs [aria-pressed="true"] { background:#123c6b; color:white; border-color:#123c6b; }
.porto-tabs button { min-height:44px; }
