.portal-detail-card{margin:0 0 18px;padding:22px;border:1px solid #d9e3ec;border-radius:12px;background:#fff;box-shadow:0 2px 8px #17344c0c}.portal-detail-card h2{margin-top:0}.portal-detail-card small{display:block;color:#607182;margin-top:3px}.portal-total{margin:18px 0 0;font-size:20px;font-weight:800;text-align:right}.portal-button-row{display:flex;flex-wrap:wrap;gap:8px;margin:-10px 0 18px}.portal-button-row button,.portal-inline-button{border:1px solid #b7c7d4;border-radius:7px;padding:7px 10px;background:#fff;color:#1f4965;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.portal-button-row button:hover,.portal-inline-button:hover{background:#eef6fb}.portal-message-history{display:grid;gap:10px;margin:14px 0}.portal-message-card{border-left:3px solid #1774b3;padding:10px 12px;background:#f4f9fc}.portal-message-card.is-client{border-left-color:#317b51;background:#f1f9f3}.portal-message-card strong,.portal-message-card time{display:inline-block;font-size:12px}.portal-message-card time{margin-left:8px;color:#607182}.portal-message-card p{margin:7px 0 0;white-space:pre-wrap}.portal-decision-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.portal-decision-grid form{display:grid;gap:12px}.portal-danger{border:0;border-radius:8px;padding:12px 15px;background:#b73b38;color:#fff;font:inherit;font-weight:750;cursor:pointer}.portal-report-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-bottom:20px}.portal-report-grid article{padding:18px;border:1px solid #d9e3ec;border-radius:12px;background:#fff;box-shadow:0 2px 8px #17344c0c}.portal-report-grid h2{margin:0;font-size:18px}.portal-report-grid p{min-height:42px;color:#607182;font-size:13px}.portal-form select,.portal-detail-card input,.portal-detail-card textarea{width:100%;border:1px solid #bac8d5;border-radius:8px;padding:12px;font:inherit;background:#fff;color:#13273a}.portal-detail-card textarea{min-height:100px;resize:vertical}.portal-detail-card label{display:grid;gap:7px;font-size:13px;font-weight:700}.portal-detail-card form{display:grid;gap:12px}@media(max-width:760px){.portal-decision-grid{grid-template-columns:1fr}.portal-button-row{margin-top:0}}
.portal-knowledge-article{line-height:1.65;overflow-wrap:anywhere}.portal-kb-category{margin-top:0;color:var(--portal-muted);font-size:13px;font-weight:700}.portal-knowledge-article article h1,.portal-knowledge-article article h2,.portal-knowledge-article article h3{line-height:1.25}.portal-knowledge-article article img{display:block;width:min(100%,640px);height:auto;max-height:420px;object-fit:contain;margin:16px auto;border:1px solid var(--portal-border);border-radius:7px}.portal-knowledge-article article a{color:var(--portal-link)}

/* The portal keeps its masthead dark in either color mode, so the configured
   dark-mode logo always has the contrast it was designed for. */
:root,[data-theme="light"]{--portal-page:#f3f7fb;--portal-surface:#fff;--portal-surface-alt:#f4f9fc;--portal-text:#13273a;--portal-muted:#607182;--portal-border:#d9e3ec;--portal-control:#fff;--portal-control-border:#bac8d5;--portal-link:#126ba7;--portal-shadow:#17344c0c;--portal-top:#072942;--portal-top-raised:#0d3a5b;--portal-top-text:#dbeaf5}
[data-theme="dark"]{color-scheme:dark;--portal-page:#111a23;--portal-surface:#192632;--portal-surface-alt:#223443;--portal-text:#edf4fa;--portal-muted:#afc0cf;--portal-border:#3c5263;--portal-control:#14212c;--portal-control-border:#506879;--portal-link:#91cdf4;--portal-shadow:#0008;--portal-top:#071722;--portal-top-raised:#102b3f;--portal-top-text:#e8f5ff}
body,.portal-shell{background:var(--portal-page);color:var(--portal-text)}.portal-top{position:relative;z-index:10;gap:14px;overflow:visible;background:var(--portal-top);color:var(--portal-top-text)}.portal-logo img{width:150px;max-height:38px;object-fit:contain;object-position:left center}.portal-top nav{position:relative;min-width:0;align-items:center;gap:3px;overflow:visible;flex-wrap:wrap}.portal-top nav>button,.portal-nav-group>summary{border:0;border-radius:6px;padding:9px 11px;background:transparent;color:var(--portal-top-text);font:inherit;cursor:pointer;white-space:nowrap;list-style:none}.portal-nav-group>summary::-webkit-details-marker{display:none}.portal-nav-group>summary::after{content:'⌄';margin-left:7px;font-size:12px}.portal-nav-group[open]>summary,.portal-nav-group>summary:hover,.portal-top nav>button:hover,.portal-top nav .is-active{background:#ffffff1c;color:#fff}.portal-nav-group{position:relative}.portal-nav-group>div{position:absolute;z-index:50;top:calc(100% + 8px);left:0;display:grid;min-width:178px;padding:6px;border:1px solid var(--portal-border);border-radius:9px;background:var(--portal-surface);box-shadow:0 12px 28px var(--portal-shadow)}.portal-nav-group>div button{border:0;border-radius:6px;padding:10px 11px;background:transparent;color:var(--portal-text);font:inherit;text-align:left;cursor:pointer}.portal-nav-group>div button:hover,.portal-nav-group>div .is-active{background:var(--portal-surface-alt);color:var(--portal-link)}.portal-profile-control{position:relative;margin-left:auto}.portal-profile-control>summary{list-style:none}.portal-profile-control>summary::-webkit-details-marker{display:none}.portal-profile-dropdown{position:absolute;z-index:60;right:0;top:calc(100% + 9px);display:grid;min-width:250px;padding:12px;border:1px solid var(--portal-border);border-radius:10px;background:var(--portal-surface);box-shadow:0 14px 32px var(--portal-shadow);color:var(--portal-text)}.portal-profile-dropdown strong{font-size:14px}.portal-profile-dropdown small{margin:3px 0 10px;color:var(--portal-muted);overflow-wrap:anywhere}.portal-profile-dropdown>button{border:0;border-radius:6px;padding:10px;background:transparent;color:var(--portal-text);font:inherit;text-align:left;cursor:pointer}.portal-profile-dropdown>button:hover{background:var(--portal-surface-alt);color:var(--portal-link)}.portal-theme-menu{margin:8px 0;border-top:1px solid var(--portal-border);border-bottom:1px solid var(--portal-border);padding:10px 0}.portal-theme-menu>span{display:block;margin-bottom:7px;color:var(--portal-muted);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.portal-theme-menu>div{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.portal-theme-menu button{border:1px solid var(--portal-control-border);border-radius:7px;padding:8px;background:var(--portal-control);color:var(--portal-text);font:inherit;font-size:12px;cursor:pointer}.portal-theme-menu button[aria-pressed="true"]{border-color:#4da4db;background:var(--portal-surface-alt);box-shadow:inset 0 0 0 1px #4da4db}.portal-menu-sign-out{margin-top:5px!important;color:#b73b38!important}.portal-main{position:relative;z-index:0;color:var(--portal-text)}.portal-metrics article,.portal-welcome,.portal-table-card,.portal-form,.portal-profile,.portal-device-grid article,.portal-training-grid article,.portal-detail-card,.portal-report-grid article,.portal-loading,.portal-empty,.portal-error{border-color:var(--portal-border);background:var(--portal-surface);box-shadow:0 2px 8px var(--portal-shadow);color:var(--portal-text)}.portal-welcome p,.portal-device-grid p,.portal-device-grid small,.portal-training-grid p,.portal-training-grid small,.portal-detail-card small,.portal-message-card time,.portal-profile p,.portal-report-grid p{color:var(--portal-muted)}.portal-table-card th{background:var(--portal-surface-alt);color:var(--portal-muted)}.portal-table-card th,.portal-table-card td{border-color:var(--portal-border)}.portal-table-card td small{color:var(--portal-muted)}.portal-form input,.portal-form textarea,.portal-form select,.portal-detail-card input,.portal-detail-card textarea{border-color:var(--portal-control-border);background:var(--portal-control);color:var(--portal-text)}.portal-secondary,.portal-button-row button,.portal-inline-button{border-color:var(--portal-control-border);background:var(--portal-control);color:var(--portal-text)}.portal-button-row button:hover,.portal-inline-button:hover,.portal-secondary:hover{background:var(--portal-surface-alt)}.portal-message-card{background:var(--portal-surface-alt)}.portal-message-card.is-client{background:#1b3d31}.portal-status{background:var(--portal-surface-alt);color:var(--portal-link)}.portal-error{color:#ef9288}.portal-auth{background:radial-gradient(circle at 50% 0,#237bb64d,#061420 68%)}[data-theme="dark"] .portal-auth-card{background:var(--portal-surface);color:var(--portal-text)}[data-theme="dark"] .portal-auth-card input{background:var(--portal-control);border-color:var(--portal-control-border);color:var(--portal-text)}
.portal-account{cursor:pointer;color:var(--portal-top-text)}.portal-account .portal-avatar{display:grid;flex:0 0 auto}.portal-account-name{max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.portal-account-caret{font-size:11px;opacity:.85}
@media(max-width:760px){.portal-top{gap:10px}.portal-logo img{width:126px}.portal-top nav{order:3;flex-basis:100%;overflow:visible;flex-wrap:wrap}.portal-nav-group>div{position:absolute;left:0;right:auto;top:calc(100% + 8px);width:min(280px,calc(100vw - 24px));min-width:0}.portal-profile-dropdown{position:fixed;right:12px;left:12px;top:64px;min-width:0}.portal-profile-control{margin-left:auto}.portal-account-name,.portal-account-caret{display:none}}
