:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#182537;background:#f3f6f9;font-size:16px;line-height:1.55;--navy:#101f32;--muted:#5c6c7e;--accent:#08796d;--border:#dce3eb;--red:#ae2938}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}a{color:var(--accent)}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}h1,h2,h3,p{margin:0}h1{font-size:2rem;line-height:1.2;letter-spacing:-.055rem}h2{font-size:1.2rem;letter-spacing:-.025rem}h3{font-size:1rem}p{color:var(--muted)}small,.small{font-size:.875rem;color:var(--muted)}label{display:grid;gap:.4rem;font-size:.875rem;font-weight:600}input,select{width:100%;min-width:0;border:1px solid #bdcbd9;padding:.72rem .8rem;border-radius:7px;background:white;color:#182537}input:focus,select:focus{outline:2px solid #08796d}input[readonly]{background:#f3f6f9}button.primary,.button{background:var(--accent);color:white;border:1px solid var(--accent);font-weight:600;border-radius:7px;padding:.65rem 1rem;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;gap:.5rem}button.secondary{background:white;border:1px solid var(--border);color:#24364b;padding:.5rem .85rem;border-radius:7px;font-weight:600}button.danger{color:var(--red)}button.link{background:none;border:0;color:var(--accent);padding:.25rem 0;font-weight:600}.row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.between{justify-content:space-between}.stack{display:grid;gap:1rem}.muted{color:var(--muted)}.brand{font-size:1.55rem;font-weight:750;letter-spacing:-.08rem;display:flex;align-items:center;gap:.6rem}.brandmark{background:#42d4b5;color:#102e30;border-radius:8px;width:32px;height:32px;display:grid;place-content:center;letter-spacing:-.1rem;font-size:1.25rem}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.sidebar{background:var(--navy);color:white;padding:2rem 1.2rem;display:flex;flex-direction:column;gap:2.5rem}.sidebar .brand{padding:0 .55rem}.workspace-name{padding:0 .55rem;overflow-wrap:anywhere}.sidebar small{color:#acbdd0}.sidebar nav{display:grid;gap:.4rem}.sidebar nav button{border:0;background:transparent;color:#b6c6d9;text-align:left;padding:.7rem .85rem;border-radius:7px;font-weight:600}.sidebar nav button.active{background:#23394f;color:white;box-shadow:inset 3px 0 #42d4b5}.sidebar nav button:hover{background:#213348}.sidebar-foot{margin-top:auto;display:grid;gap:.75rem;padding:.5rem}.sidebar-foot .badge{justify-self:start}.sidebar-foot button{color:#c7d5e6}.content{min-width:0}.topbar{min-height:70px;border-bottom:1px solid var(--border);background:white;padding:1rem 2.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.topbar .email{font-size:.875rem;overflow-wrap:anywhere}.page{max-width:1180px;margin:auto;padding:2.5rem}.page-head{margin-bottom:1.75rem}.page-head p{margin-top:.6rem}.card{border:1px solid var(--border);background:white;border-radius:12px;padding:1.5rem;box-shadow:0 2px 4px #19324c03}.card+.card{margin-top:1.2rem}.card-head{margin-bottom:1.2rem}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem}.stat{padding:1.3rem}.stat strong{font-size:2rem;line-height:1.2;display:block;margin:.5rem 0 .25rem}.badge{display:inline-flex;align-items:center;border-radius:20px;padding:.2rem .6rem;background:#e8f5ef;color:#176149;font-size:.75rem;font-weight:650;white-space:nowrap}.badge.wait{background:#fff1d6;color:#815413}.badge.error{background:#fdebed;color:#9a2633}.badge.neutral{background:#eaf0f7;color:#445770}.empty{padding:2.25rem 1rem;text-align:center;display:grid;justify-items:center;gap:.7rem}.empty-icon{font-size:1.6rem;line-height:1;width:54px;height:54px;background:#eaf5f2;border-radius:14px;display:grid;place-content:center;color:var(--accent)}.empty p{max-width:460px;margin-bottom:.5rem}.two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:1.2rem}.two-col .card+.card{margin-top:0}.steps{display:grid;gap:1.2rem;margin-top:1.4rem}.step{display:flex;gap:.85rem;align-items:flex-start}.step-num{border:1px solid var(--border);width:28px;height:28px;border-radius:50%;display:grid;place-content:center;flex-shrink:0;font-size:.875rem}.step.done .step-num{background:#e8f5ef;border-color:#b6ddcb;color:#08796d}.step p{font-size:.875rem;margin-top:.15rem}.callout{border-left:3px solid #dda843;background:#fff8e8;padding:1rem 1.1rem;border-radius:0 7px 7px 0;font-size:.875rem;color:#71582b}.callout.info{background:#ebf6f3;color:#21574d;border-color:var(--accent)}.inline-form{display:flex;gap:.75rem;align-items:end;margin-bottom:1.2rem}.inline-form label{flex:1}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.875rem}th{font-size:.75rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-weight:600;text-align:left;padding:.8rem .6rem;border-bottom:1px solid var(--border)}td{padding:1rem .6rem;border-bottom:1px solid #edf1f5;vertical-align:top}tr:last-child td{border-bottom:0}td strong{font-weight:600}code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.8rem;overflow-wrap:anywhere}.dns-value{max-width:380px;display:block;white-space:pre-wrap;word-break:break-all;background:#f3f6f9;padding:.5rem .6rem;border-radius:4px}.domain-panel{margin-top:1rem;padding:1.25rem;background:#fbfcfe;border:1px solid var(--border);border-radius:8px}.domain-panel .checks{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.form-grid .full{grid-column:1/-1}.invite-result{margin-top:1rem;word-break:break-all;padding:1rem;background:#eaf6f1;border:1px solid #b7ddcc;border-radius:7px}.invite-result input{font-size:.875rem;margin:.6rem 0}.mailbox-actions{display:flex;gap:.5rem;flex-wrap:wrap}details{border-top:1px solid var(--border);padding-top:1rem;margin-top:1rem}summary{cursor:pointer;font-weight:600;color:var(--accent)}details form{margin-top:1rem}.login-shell{display:grid;grid-template-columns:minmax(340px,44%) 1fr;min-height:100vh}.login-aside{background:var(--navy);color:white;padding:3rem 4rem;display:flex;flex-direction:column;justify-content:space-between;gap:4rem}.login-aside h1{font-size:clamp(2.3rem,4vw,3.6rem);max-width:470px;line-height:1.12;letter-spacing:-.1rem}.login-aside p{color:#b5c6da;max-width:410px;margin-top:1.5rem;font-size:1.05rem}.login-aside .eyebrow{color:#67d9be;margin-bottom:1.25rem}.login-main{display:grid;align-items:center;padding:3rem 2rem}.login-form{max-width:430px;width:100%;margin:auto}.login-form form{display:grid;gap:1.15rem;margin-top:2rem}.login-form>p{margin-top:.7rem}.login-form .button{margin-top:.3rem}.login-note{margin-top:1.5rem;font-size:.875rem}.error-text{color:var(--red);font-size:.875rem;min-height:1.4rem}.loading{padding:4rem;color:var(--muted)}#notice{position:fixed;bottom:1.5rem;right:1.5rem;max-width:min(440px,90vw);background:#162b40;color:white;padding:0;border-radius:8px;box-shadow:0 8px 24px #10203020;z-index:10}#notice.visible{padding:.9rem 1.2rem}#notice.error{background:#942b37}dialog{width:min(480px,90vw);border:1px solid var(--border);border-radius:12px;padding:1.8rem}dialog::backdrop{background:#10203566}dialog form{margin-top:1.2rem}.settings-list{display:grid;grid-template-columns:150px 1fr;gap:.7rem;font-size:.875rem}.settings-list dt{color:var(--muted)}.settings-list dd{margin:0;font-weight:600}.hr{height:1px;background:var(--border);margin:1.25rem 0}@media(max-width:900px){.shell{grid-template-columns:190px 1fr}.page{padding:1.5rem}.topbar{padding:1rem 1.5rem}.two-col{grid-template-columns:1fr}.login-aside{padding:2rem}.sidebar{padding:1.5rem .7rem}}@media(max-width:640px){.shell{display:block}.sidebar{padding:1rem;gap:1rem}.sidebar .brand{font-size:1.3rem}.sidebar .workspace-name,.sidebar-foot{display:none}.sidebar nav{display:flex;overflow:auto;gap:.2rem}.sidebar nav button{white-space:nowrap;font-size:.875rem;padding:.5rem .75rem}.topbar{padding:.85rem 1rem}.page{padding:1.25rem 1rem}.stats{gap:.5rem}.stat{padding:.8rem}.stat strong{font-size:1.6rem}.stat small{font-size:.75rem}.card{padding:1.1rem}.form-grid{grid-template-columns:1fr}.inline-form{align-items:stretch;flex-direction:column}.login-shell{display:block}.login-aside{padding:1.5rem;gap:1.5rem}.login-aside h1{font-size:2rem}.login-aside p,.login-aside>small{display:none}.login-main{padding:2rem 1.25rem}.login-aside .eyebrow{margin-bottom:.6rem}h1{font-size:1.7rem}.settings-list{grid-template-columns:100px 1fr}}
.dns-updated{background:#fff6da}.domain-panel .callout[role=status]{line-height:1.65;margin-top:16px}.domain-panel .badge{white-space:normal}
.sidebar nav button{display:flex;align-items:center;gap:.65rem}.domain-dot{display:inline-block;width:8px;height:8px;flex-shrink:0;border-radius:50%;background:#ffc45e;box-shadow:0 0 0 3px #ffc45e18;margin-left:auto}.domain-dot[hidden]{display:none}
.domain-name{display:inline-flex;align-items:center;gap:.55rem}.domain-name-dot{display:inline-block;width:8px;height:8px;flex-shrink:0;border-radius:50%;background:#d99413;box-shadow:0 0 0 3px #d9941318}
.clipboard-helper{position:fixed;left:-9999px;top:0;width:1px;height:1px;opacity:0}.manual-copy-value{display:block;width:100%;min-height:150px;margin:1rem 0;padding:.75rem;font:13px/1.6 ui-monospace,monospace;word-break:break-all;border:1px solid var(--border);border-radius:7px}
.validation-summary{margin:.6rem 0 1rem;color:#8a611c}.validation-summary.complete{color:#08796d}

.signup-agreement{margin-top:22px;padding:18px;border:1px solid #dce4e9;border-radius:10px;background:#f6f8fa}.signup-agreement h3{margin:0 0 10px;font-size:16px}.signup-agreement p,.signup-agreement li{font-size:13px;line-height:1.5}.signup-agreement ul{padding-left:20px}.signup-agreement li{margin:5px 0}.signup-agreement .agreement-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.5}.signup-agreement input[type=checkbox]{width:18px;height:18px;flex:0 0 18px;margin:2px 0 0;accent-color:#167864}

/* Domains: keep long DNS values within the workspace and stack records on tablets. */
.domains-card{min-width:0}
.domains-card #domain-form{padding-bottom:1.25rem;border-bottom:1px solid var(--border);gap:1rem}
.domains-card #domain-form button{min-height:46px;flex-shrink:0}
.domains-card .domain-name{overflow-wrap:anywhere;min-width:0}
.domains-card>.table-wrap td{vertical-align:middle}
.domains-card .domain-actions{min-width:150px}
.domains-card .domain-actions button{margin:.2rem .2rem .2rem 0}
.domains-card .domain-panel{margin-top:1.5rem;padding:1.5rem;min-width:0}
.domain-panel>.row{align-items:flex-start;gap:1rem}
.domain-panel>.row>div{flex:1;min-width:0}
.domain-panel>.row>button{flex-shrink:0}
.domain-panel h3{font-size:1.15rem;margin-bottom:.35rem}
.domain-panel .callout p{margin-top:.65rem}
.domain-panel .dns-records-table{table-layout:fixed}
.dns-records-table th:nth-child(1){width:20%}
.dns-records-table th:nth-child(2){width:27%}
.dns-records-table th:nth-child(4){width:54px}
.dns-records-table td{overflow-wrap:anywhere;padding:1rem .65rem}
.dns-records-table .dns-value{max-width:none;width:100%;line-height:1.65}
.dns-records-table td>.small{margin-top:.65rem}
.dns-records-table .badge{margin-top:.45rem}
.dns-records-table details{font-size:.8rem;margin-top:.75rem;padding-top:.65rem}
.dns-records-table details p+p{margin-top:.5rem}
.dns-copy-cell button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0}
@media(max-width:1100px){
 .domain-panel .dns-records-table,.dns-records-table tbody{display:block;width:100%}
 .dns-records-table thead{display:none}
 .dns-records-table tr{display:grid;grid-template-columns:minmax(0,1fr) 44px;border:1px solid var(--border);border-radius:8px;background:white;margin-top:1rem;padding:.75rem}
 .dns-records-table tr.dns-updated{background:#fff6da}
 .dns-records-table td{display:block;border:0;padding:.45rem;min-width:0;grid-column:1/-1}
 .dns-records-table td:first-child{grid-column:1;grid-row:1}
 .dns-records-table td.dns-copy-cell{grid-column:2;grid-row:1;padding:.25rem}
 .dns-records-table td[data-label]::before{content:attr(data-label);display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:.3rem}
}
@media(max-width:640px){
 .domains-card .domain-panel{padding:1rem;margin-top:1rem}
 .domains-card>.table-wrap>table,.domains-card>.table-wrap>table>tbody{display:block}
 .domains-card>.table-wrap>table>thead{display:none}
 .domains-card>.table-wrap>table>tbody>tr{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;border-bottom:1px solid var(--border);padding:1rem 0}
 .domains-card>.table-wrap>table>tbody>tr>td{display:block;padding:0;border:0;min-width:0}
 .domains-card>.table-wrap td:first-child,.domains-card .domain-actions{grid-column:1/-1}
 .domains-card>.table-wrap td[data-label]::before{content:attr(data-label);display:block;font-size:.7rem;text-transform:uppercase;color:var(--muted);margin-bottom:.4rem}
 .domain-panel>.row>button{width:100%}
}

/* Mailbox forms, account rows, and connection settings. */
.mailboxes-card{min-width:0}
.mailboxes-card .card-head{gap:.75rem;align-items:center}
.mailboxes-card #mailbox-form{gap:1.25rem;align-items:start}
.mailboxes-card #mailbox-form input,.mailboxes-card #mailbox-form select{height:46px;min-height:46px;width:100%;max-width:100%;font-size:16px;font-weight:400;line-height:1.4}
.mailboxes-card #mailbox-form select{appearance:none;-webkit-appearance:none;display:block;padding:.6rem 2.5rem .6rem .8rem;text-overflow:ellipsis;background-color:white;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235c6c7e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .8rem center;background-size:16px}
.mailboxes-card #mailbox-form select option{font-size:16px;font-weight:400}
.mailboxes-card #mailbox-form label{min-width:0}
.mailboxes-card #mailbox-form small{font-weight:400}
.mailboxes-card #mailbox-form>.row{padding-top:1rem;border-top:1px solid var(--border);gap:1rem}
.mailboxes-table{table-layout:fixed}
.mailboxes-table th:first-child{width:32%}
.mailboxes-table th:nth-child(2){width:17%}
.mailboxes-table th:nth-child(3){width:17%}
.mailboxes-table td{vertical-align:middle;overflow-wrap:anywhere;padding:1.1rem .6rem}
.mailboxes-table .badge{white-space:normal}
.mailboxes-card .mailbox-actions{gap:.5rem}
.mailboxes-card .mailbox-actions button{font-size:.8rem;min-height:36px}
.mailboxes-card .settings-list{margin:1.25rem 0;grid-template-columns:150px minmax(0,1fr);gap:1rem 1.25rem}
.mailboxes-card .settings-list dd{overflow-wrap:anywhere}
.mailboxes-card .callout{overflow-wrap:anywhere}
@media(max-width:1000px){
 .mailboxes-table,.mailboxes-table tbody{display:block;width:100%}
 .mailboxes-table thead{display:none}
 .mailboxes-table tr{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:1.25rem 0;border-bottom:1px solid var(--border)}
 .mailboxes-table tr:last-child{border-bottom:0;padding-bottom:0}
 .mailboxes-table td{display:block;border:0;padding:0;min-width:0}
 .mailboxes-table td:first-child,.mailboxes-table td:last-child{grid-column:1/-1}
 .mailboxes-table td[data-label]::before{content:attr(data-label);display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:.4rem}
}
@media(max-width:640px){
 .mailboxes-card #mailbox-form>.row{align-items:stretch;flex-direction:column}
 .mailboxes-card #mailbox-form>.row button{width:100%}
 .mailboxes-card .settings-list{grid-template-columns:minmax(0,1fr);gap:.3rem}
 .mailboxes-card .settings-list dd{margin-bottom:.85rem}
 .mailboxes-card .mailbox-actions button{flex:1;min-height:42px}
}

/* Overview summary cards and setup panels. */
.overview-layout{min-width:0;display:grid;gap:1.5rem}
.overview-stats{margin:0;align-items:stretch;grid-template-columns:repeat(3,minmax(0,1fr))}
.overview-stats .card+.card{margin-top:0}
.overview-stats .stat{min-width:0;padding:1.5rem;display:flex;flex-direction:column;align-items:flex-start}
.overview-stats .stat>small:first-child{font-weight:600;color:#24364b}
.overview-stats .stat strong{min-height:44px;margin:.6rem 0;display:flex;align-items:baseline;gap:.35rem;flex-wrap:wrap}
.overview-stats .stat>small:last-child{margin-top:auto}
.overview-panels{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.overview-panels>.card{min-width:0;padding:1.5rem}
.overview-panels>.stack{align-content:start;gap:1.1rem}
.overview-panels .step>div:last-child{min-width:0}
.overview-panels .steps{gap:1.4rem}
.overview-panels .settings-list{grid-template-columns:90px minmax(0,1fr);margin:.25rem 0;gap:.85rem 1rem}
.overview-panels .settings-list dd,.overview-panels .callout{overflow-wrap:anywhere}
.overview-panels button.link{justify-self:start;text-align:left}
@media(max-width:1050px){.overview-panels{grid-template-columns:minmax(0,1fr)}.overview-stats .stat{padding:1.1rem}}
@media(max-width:640px){
 .overview-layout{gap:1rem}
 .overview-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
 .overview-stats .stat:last-child{grid-column:1/-1}
 .overview-stats .stat{padding:1rem}
 .overview-stats .stat small{font-size:.8rem}
 .overview-panels{gap:1rem}
 .overview-panels>.card{padding:1.1rem}
 .overview-panels .primary{width:100%}
}

/* Administration: scoped card rhythm and responsive account tables. */
.admin-layout{display:grid;gap:1.5rem;min-width:0}
.admin-layout>.card+.card,.admin-stats .card+.card{margin-top:0}
.admin-layout>.card{min-width:0}
.admin-stats{margin:0;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.admin-stats .stat{padding:1.5rem;min-width:0}
.admin-stats .stat>small{font-weight:600;color:#24364b}
.admin-stats strong{display:flex;align-items:baseline;flex-wrap:wrap;gap:.35rem;min-height:44px;margin:.65rem 0 0}
.admin-layout #invite-form{gap:1rem;align-items:end}
.admin-layout #invite-form label{min-width:0}
.admin-layout #invite-form input,.admin-layout #invite-form button{min-height:46px}
.admin-layout #invite-form button{flex-shrink:0}
.admin-layout .invite-result{padding:1.25rem}
.admin-layout .invite-result>p{margin-top:.75rem}
.admin-table{table-layout:fixed}
.admin-table th:first-child{width:35%}
.admin-table th:last-child{width:20%}
.admin-table td{vertical-align:middle;overflow-wrap:anywhere;padding:1.1rem .6rem}
.admin-table .badge{white-space:normal}
.admin-actions button{min-height:36px;font-size:.8rem}
.admin-task{padding:1rem 0;border-bottom:1px solid var(--border);align-items:flex-start;gap:1rem}
.admin-task:last-child{border-bottom:0;padding-bottom:0}
.admin-task>div{flex:1;min-width:0;display:flex;align-items:baseline;gap:.6rem;flex-wrap:wrap}
.admin-task .small{overflow-wrap:anywhere;min-width:0;flex:1 1 160px}
.admin-task>button{flex-shrink:0}
@media(max-width:1000px){
 .admin-table,.admin-table tbody{display:block;width:100%}
 .admin-table thead{display:none}
 .admin-table tr{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:1.25rem 0;border-bottom:1px solid var(--border)}
 .admin-table tr:last-child{border-bottom:0;padding-bottom:0}
 .admin-table td{display:block;border:0;padding:0;min-width:0}
 .admin-table td:first-child,.admin-table .admin-actions{grid-column:1/-1}
 .admin-table .admin-actions:empty{display:none}
 .admin-table td[data-label]::before{content:attr(data-label);display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:.4rem}
 .admin-stats .stat{padding:1rem}
}
@media(max-width:640px){
 .admin-layout{gap:1rem}
 .admin-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
 .admin-stats .stat:last-child{grid-column:1/-1}
 .admin-layout #invite-form{align-items:stretch}
 .admin-actions button{min-height:42px}
 .admin-task>div{flex-basis:100%}
}
