/* Account UI uses the existing HereWord theme; no marketing display typography. */
.portal-shell{max-width:1240px;margin:3rem auto 5rem;padding:0 28px}
.portal-layout{display:grid;grid-template-columns:228px minmax(0,1fr);gap:44px;min-height:560px}
.portal-sidebar{padding:4px 0;min-width:0}
.portal-identity{display:flex;align-items:center;gap:11px;margin-bottom:30px}
.portal-identity>div{min-width:0}.portal-identity strong{display:block;font-size:14px;font-weight:650}
.portal-identity span:not(.portal-avatar){display:block;font-size:12px;color:var(--ink-soft);overflow-wrap:anywhere;margin-top:3px}
.portal-avatar{display:grid;place-items:center;flex-shrink:0;width:38px;height:38px;border-radius:50%;background:var(--accent-soft);color:var(--accent-strong);font-size:16px;font-weight:650}
.portal-nav{display:flex;flex-direction:column;gap:5px}
.portal-nav a{display:block;padding:11px 13px;border-radius:8px;font-size:14px;color:var(--ink-soft);text-decoration:none}
.portal-nav a:hover{background:var(--surface-3);color:var(--ink)}
.portal-nav a[aria-current=page]{background:var(--accent-soft);color:var(--accent-strong);font-weight:650}
.portal-nav .portal-nav-admin{margin-top:17px;border-top:1px solid var(--line);border-radius:0;padding-top:19px}
.portal-sidebar-bottom{display:flex;flex-direction:column;gap:14px;border-top:1px solid var(--line);margin-top:28px;padding:22px 13px;font-size:13px;color:var(--ink-soft)}
.portal-text-button{border:0;padding:0;background:transparent;color:inherit;font:inherit;cursor:pointer}
.portal-content{min-width:0}
.portal-page-heading,.portal-page-header,.portal-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:28px;flex-wrap:wrap}
.portal-shell h1{font-family:var(--font-ui);font-size:30px;line-height:1.25;letter-spacing:-.6px;margin:0 0 10px;font-weight:650;overflow-wrap:anywhere}
.portal-shell h2{font-family:var(--font-ui);font-size:19px;line-height:1.4;letter-spacing:-.2px;margin:0;font-weight:650}
.portal-shell h3{font-family:var(--font-ui);font-size:15px;line-height:1.4;margin:0 0 6px;font-weight:600}
.portal-muted{color:var(--ink-soft);font-size:13px;line-height:1.65;opacity:1}
.portal-page-heading p,.portal-page-header p{margin:0;max-width:65ch}
.portal-shell .button{font-size:13px;min-height:42px;padding:10px 16px;border-radius:8px;box-shadow:none;letter-spacing:0;white-space:normal}
.portal-shell .button-small{min-height:38px;padding:8px 14px}
.portal-panel,.portal-card{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;margin:0 0 22px;overflow:hidden}
.portal-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px 26px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.portal-panel-heading p{margin:6px 0 0}
.portal-badge{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:12px;font-weight:550;line-height:1.5;padding:5px 9px;border-radius:6px;color:var(--ink-soft);background:var(--surface-3);white-space:nowrap}
.portal-badge-success{color:var(--ok);background:color-mix(in srgb,var(--ok) 10%,transparent)}
.portal-badge-success::before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}
.portal-license-key{padding:24px 26px 0}.portal-license-key label{display:block;font-size:13px;font-weight:600;margin-bottom:9px}
.portal-key-row{display:flex;gap:10px}.portal-key-input{width:100%;min-width:0;border:1px solid var(--line-strong);background:var(--surface-1);color:var(--ink);border-radius:7px;padding:11px 13px;font:500 14px/1.5 var(--font-ui);letter-spacing:.4px}
.portal-license-key .portal-muted{margin:9px 0 0;font-size:12px}
.portal-facts{display:flex;gap:48px;margin:0;padding:25px 26px;flex-wrap:wrap}
.portal-facts dt{font-size:12px;color:var(--ink-soft);margin-bottom:5px}.portal-facts dd{font-size:14px;margin:0;font-weight:550}
.portal-facts a{margin-left:12px;font-size:12px;font-weight:450;color:var(--accent-strong)}
.portal-help{font-size:12px;line-height:1.7;color:var(--ink-soft);max-width:78ch;margin:18px 0}
.portal-help a,.portal-content a:not(.button):not(.portal-badge),.portal-auth-actions a{color:var(--accent-strong);text-decoration:underline;text-underline-offset:3px}
.portal-device{display:flex;gap:17px;align-items:flex-start;padding:23px 26px;border-bottom:1px solid var(--line)}
.portal-device:last-child{border-bottom:0}.portal-device-icon{flex:none;display:grid;place-items:center;width:43px;height:43px;border-radius:9px;background:var(--surface-3);color:var(--ink-soft)}
.portal-device-icon svg{width:25px;height:25px}.portal-device-info{flex:1;min-width:0}
.portal-device-info h3{overflow-wrap:anywhere}.portal-device-info p{font-size:12px;margin:4px 0;color:var(--ink-soft)}
.portal-inline-separator{margin:0 7px;color:var(--line-strong)}
.portal-device-action{display:flex;flex-direction:column;align-items:flex-end;gap:9px;max-width:230px;text-align:right}
.portal-remove{font-size:12px}.portal-remove summary{cursor:pointer;color:var(--accent-strong);text-decoration:underline;text-underline-offset:3px;list-style:none}
.portal-remove summary::-webkit-details-marker{display:none}.portal-remove form{margin-top:12px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--surface-1);text-align:left}
.portal-remove p{font-size:12px;margin:0 0 12px}.portal-remove .button{font-size:12px}
.portal-security{max-width:640px}.portal-form{padding:25px 26px}.portal-auth-form label{display:block;font-size:13px;font-weight:600;margin-bottom:8px}
.portal-auth-form input:not([type=hidden]),.portal-toolbar input,.portal-toolbar select,.portal-filter select{display:block;width:100%;padding:11px 12px;background:var(--surface-2);color:var(--ink);border:1px solid var(--line-strong);border-radius:7px;font:inherit;font-size:14px;min-height:44px;margin:0 0 21px}
.portal-auth-form .portal-field-hint{margin:-13px 0 21px;font-size:12px}
.portal-auth-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:24px;font-size:13px}
.portal-auth-form .portal-muted{max-width:65ch}.portal-error,.portal-notice{padding:13px 16px;border:1px solid var(--line-strong);border-radius:8px;font-size:13px;overflow-wrap:anywhere;margin-bottom:22px}
.portal-error{border-left:3px solid var(--accent);background:var(--accent-soft)}.portal-notice{border-left:3px solid var(--ok);background:color-mix(in srgb,var(--ok) 7%,var(--surface-2))}
.portal-empty{padding:42px 28px;text-align:center}.portal-empty p{font-size:14px;color:var(--ink-soft);max-width:55ch;margin:12px auto 20px}.portal-empty h2,.portal-empty h3{font-size:18px}
.portal-table{width:100%;overflow:auto;margin:0}.portal-table table{border-collapse:collapse;width:100%;text-align:left;font-size:13px}
.portal-table th{background:var(--surface-1);font-size:12px;font-weight:550;color:var(--ink-soft);white-space:nowrap}
.portal-table td,.portal-table th{padding:15px 20px;border-bottom:1px solid var(--line);vertical-align:middle}.portal-table tr:last-child td{border-bottom:0}
.portal-table tbody tr:hover{background:var(--surface-1)}.portal-table td{overflow-wrap:anywhere}.portal-cell-note{display:block;color:var(--ink-soft);font-size:11px;margin-top:4px}.portal-nowrap{white-space:nowrap}
.portal-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0;margin:0 0 24px;background:var(--surface-2);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.portal-stats>article,.portal-stats>div{padding:22px;border-right:1px solid var(--line)}.portal-stats>:last-child{border-right:0}
.portal-stats strong,.portal-stat-number{display:block;font-size:28px;line-height:1.3;font-weight:650;letter-spacing:-.5px}
.portal-stats p,.portal-stat-label{font-size:12px;color:var(--ink-soft);margin:5px 0 0}
.portal-stats dt{font-size:12px;color:var(--ink-soft);margin-bottom:8px}.portal-stats dd{font-size:28px;font-weight:650;line-height:1.3;letter-spacing:-.5px;margin:0 0 10px}.portal-stats a{font-size:12px}
.portal-panel>.portal-stats{border:0;border-radius:0;margin:0}.portal-panel>p{padding:0 26px;margin:18px 0;font-size:12px}.portal-panel>.portal-pagination{padding:18px 22px;border-top:1px solid var(--line)}
.portal-page-heading:has(>h1){display:block}.portal-page-heading>h1+.portal-muted{margin-top:8px}
.portal-toolbar,.portal-filter{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;margin:0 0 22px}.portal-toolbar label,.portal-filter label{font-size:12px;color:var(--ink-soft)}
.portal-toolbar input,.portal-toolbar select,.portal-filter select{margin:6px 0 0;min-width:140px}.portal-toolbar input[type=search]{min-width:230px}.portal-toolbar .button{min-height:44px}
.portal-panel-heading .portal-filter{margin:0;gap:10px}.portal-filter .button{min-height:44px}.portal-panel>details>summary{padding:20px 26px;cursor:pointer;font-size:14px}
.portal-toolbar.portal-form{gap:10px;margin:0;border-bottom:1px solid var(--line)}.portal-toolbar.portal-form>label{flex-basis:100%}.portal-toolbar.portal-form>input{width:auto;flex:1;margin:0}
.portal-pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:13px;padding:19px 0;flex-wrap:wrap}
.portal-detail-grid,.portal-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:20px}.portal-card{padding:24px}.portal-card p:last-child{margin-bottom:0}
.portal-narrow{max-width:510px;margin:55px auto 75px}.portal-narrow>p{font-size:14px;color:var(--ink-soft);line-height:1.65}.portal-narrow .eyebrow{letter-spacing:0;text-transform:none;color:var(--ink-soft);font-size:13px;margin:0 0 10px}
.portal-narrow .portal-card{padding:26px;margin-top:26px}.portal-narrow h1{font-size:28px}.portal-narrow a:not(.button){color:var(--accent-strong);text-decoration:underline;text-underline-offset:3px}
.portal-page .site-header{grid-template-columns:1fr auto;padding-top:0;border-bottom:1px solid var(--line);background:var(--surface-2)}.portal-page .nav-links{display:none}
.portal-page .site-footer{margin-top:0;padding-top:22px}.portal-page .footer-grid{display:none}.portal-page .footer-meta{padding-top:0;border-top:0;font-size:11px}
.portal-shell :is(a,button,input,select,summary):focus-visible{outline:2px solid var(--accent-strong);outline-offset:3px}
.portal-shell code{overflow-wrap:anywhere}
/* Consent UI is shared with the public site. */
.analytics-consent{position:fixed;bottom:1rem;left:1rem;right:1rem;z-index:100;background:var(--surface-2);color:var(--ink);padding:1rem 1.125rem;border:1px solid var(--line-strong);border-radius:12px;max-width:560px;box-shadow:var(--shadow-2)}
.analytics-consent[hidden]{display:none}.analytics-consent strong{font-size:1rem}.analytics-consent p{margin:.4rem 0 .8rem;font-size:.8125rem;line-height:1.6}.analytics-consent a{color:var(--accent-strong);text-decoration:underline;text-underline-offset:2px}
.analytics-actions .button{min-height:42px;padding:.5rem 1rem;font-size:.8125rem}.analytics-consent-status:empty{display:none}.analytics-consent a:focus-visible,.analytics-settings:focus-visible{outline:2px solid var(--accent-strong);outline-offset:3px}
.analytics-actions{display:flex;gap:.6rem;flex-wrap:wrap}.analytics-settings{border:0;background:transparent;color:inherit;text-decoration:underline;cursor:pointer;padding:.3rem}.analytics-consent-status{font-size:.9rem}
@media(max-width:950px){.portal-layout{grid-template-columns:190px minmax(0,1fr);gap:26px}.portal-page-heading .button{margin-top:0}.portal-stats{grid-template-columns:repeat(2,1fr)}.portal-stats>:nth-child(2){border-right:0}.portal-stats>:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:720px){.portal-shell{padding:0 18px;margin-top:24px}.portal-layout{display:block}.portal-sidebar{margin-bottom:28px}.portal-identity{margin-bottom:18px}.portal-nav{flex-direction:row;overflow:auto;padding-bottom:4px;gap:4px}.portal-nav a{white-space:nowrap;font-size:12px;padding:9px 11px}.portal-nav .portal-nav-admin{border:0;border-radius:8px;margin:0;padding:9px 11px}.portal-sidebar-bottom{flex-direction:row;gap:22px;margin-top:12px;padding:12px 0 0;font-size:12px}.portal-shell h1{font-size:26px}.portal-page-heading,.portal-page-header{gap:14px;margin-bottom:21px}.portal-panel-heading{padding:20px}.portal-license-key{padding:20px 20px 0}.portal-facts{padding:22px 20px;gap:22px}.portal-device{padding:20px;gap:12px;flex-wrap:wrap}.portal-device-action{flex-direction:row;align-items:center;justify-content:space-between;max-width:none;width:100%;padding-left:55px;text-align:left}.portal-remove[open]{width:100%}.portal-remove form{max-width:300px}.portal-key-row{flex-wrap:wrap}.portal-key-input{font-size:12px;letter-spacing:0}.portal-form{padding:20px}.portal-auth-actions{gap:16px}.portal-auth-form .button{width:100%}.portal-table td,.portal-table th{padding:12px 15px}.portal-page .header-download{display:none}.portal-page .footer-meta span:last-child{display:none}.portal-narrow{margin-top:35px}.portal-toolbar input[type=search]{min-width:0}.portal-toolbar label{flex:1}.portal-empty{padding:32px 20px}}
@media(prefers-reduced-motion:reduce){.portal-page *{scroll-behavior:auto!important;transition:none!important}}
