/* v1.12.0: compact header, account grouping, reports and announcements. */
.topbar .admin-nav{gap:7px}.topbar .topbar-inner>.row{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.topbar button.portal-icon-button{display:inline-flex;position:relative;align-items:center;justify-content:center;width:39px;height:39px;min-height:39px;flex:none;padding:9px;border-radius:10px;border:1px solid #454247;background:#252428;color:#d8d4cf;box-shadow:none;cursor:pointer}
.topbar button.portal-icon-button[hidden]{display:none!important}.portal-icon-button svg,.portal-action-icon svg{width:20px;height:20px;display:block;flex:none}
.topbar button.portal-icon-button:hover{border-color:#F78C1B;color:#F78C1B;background:#33271c}.topbar .admin-nav button.portal-icon-button.selected{background:#F78C1B!important;color:#171412!important;border-color:#F78C1B!important}
.portal-icon-button:focus-visible,.portal-action-icon:focus-visible{outline:2px solid #F78C1B;outline-offset:3px}.portal-report-badge{position:absolute;top:-6px;right:-6px;min-width:17px;height:17px;display:grid;place-items:center;padding:0 3px;background:#F78C1B;border-radius:20px;color:#171412;font-size:9px;line-height:1;font-weight:800;border:2px solid #1b1b1d}.portal-report-badge[hidden]{display:none!important}
.portal-account-tabs{display:flex;align-items:center;gap:8px;margin:0 0 20px;padding:5px;width:fit-content;background:#171719;border:1px solid #3c3936;border-radius:12px}.portal-account-tabs button{min-height:39px;padding:10px 21px;background:transparent;border:1px solid transparent;border-radius:8px;color:#bdb6af;font-size:13px;cursor:pointer}.portal-account-tabs button.selected{background:#F78C1B;color:#171412;border-color:#F78C1B;font-weight:700}
.portal-news{display:flex;align-items:flex-start;gap:13px;padding:14px 18px;margin:0 0 20px;border:1px solid #F78C1B42;border-radius:17px;background:linear-gradient(125deg,#32261b,#211f1e);box-shadow:0 8px 30px #0002}.portal-news[hidden]{display:none!important}.portal-news-icon{width:36px;height:36px;flex:none;display:grid;place-items:center;border-radius:12px;background:#F78C1B1c;color:#F78C1B}.portal-news-icon svg{width:24px;height:24px}.portal-news-content{min-width:0;flex:1}.portal-news-label{font-size:9px;letter-spacing:1.7px;color:#F78C1B;font-weight:750}.portal-news p{font-size:13px;line-height:1.8;color:#c9beb2;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;max-height:140px;overflow-y:auto}.portal-news-controls{display:flex;align-items:flex-end;flex-direction:column;gap:11px;flex:none;padding-top:4px}.portal-news-controls>span{font-size:10px;color:#ac9b89}.portal-news-controls>div{display:flex;gap:6px}.portal-news-controls button{width:27px;min-height:27px;height:27px;display:grid;place-items:center;padding:0;border:1px solid #63503b;background:#ffffff08;color:#e9c7a2;border-radius:6px;font-size:19px;cursor:pointer}.portal-news-controls button:disabled{opacity:.35;cursor:default}
#portalPaymentNote{white-space:pre-line;overflow-wrap:anywhere;line-height:1.85;font-size:13px}#portalPaymentNote[hidden]{display:none!important}.portal-note-form{display:grid;gap:10px;margin-top:17px}.portal-note-form>label{font-size:12px;color:#c8c0b6}.portal-note-form textarea{box-sizing:border-box;display:block;min-height:135px;width:100%;resize:vertical;padding:12px;border-radius:9px;border:1px solid #454348;background:#252529;color:#eee8e0;font:inherit;font-size:13px;line-height:1.8}.portal-note-form>button{justify-self:start;background:#F78C1B;color:#171412;border:1px solid #F78C1B;border-radius:8px;padding:10px 16px;font-weight:700;cursor:pointer}#portalPaymentReport{display:flex;align-items:center;justify-content:center;gap:7px}#portalPaymentReport svg{width:17px;height:17px;flex:none}
.portal-dialog{box-sizing:border-box;width:calc(100% - 28px);max-width:620px;max-height:90dvh;overflow:auto;padding:25px;background:#1d1e22;color:#f4f1ec;border:1px solid #454348;border-radius:19px;box-shadow:0 20px 80px #0008}.portal-dialog.portal-wide{max-width:930px}.portal-dialog::backdrop{background:#000c}.portal-dialog:not([open]),.portal-dialog [hidden]{display:none!important}.portal-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:15px}.portal-dialog-head h2{margin:0;font-size:23px}.portal-dialog .portal-close{display:grid;place-items:center;flex:none;border:1px solid #48454a;background:#29292d;color:#e7ded4;width:33px;height:33px;min-height:33px;font-size:24px;padding:0;border-radius:9px;cursor:pointer}.portal-dialog h3{font-size:16px;line-height:1.6;margin:20px 0 10px;overflow-wrap:anywhere}.portal-muted{font-size:12px;color:#a9a19a;line-height:1.85;overflow-wrap:anywhere}.portal-tabs{display:flex;gap:7px;margin-bottom:20px;border-bottom:1px solid #454348;padding-bottom:13px}.portal-tabs button{min-height:36px;padding:8px 14px;border-radius:8px;border:1px solid #454348;background:#27272b;color:#c7beb5;font-size:12px;cursor:pointer}.portal-tabs button.selected{background:#F78C1B;color:#171412;border-color:#F78C1B;font-weight:700}.portal-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.portal-full{grid-column:1/-1}.portal-dialog form label{display:grid;gap:6px;font-size:12px;line-height:1.6;color:#d8d0c7}.portal-dialog form input,.portal-dialog form textarea,.portal-dialog select{box-sizing:border-box;width:100%;min-height:41px;padding:9px 11px;background:#27272b;border:1px solid #454348;border-radius:8px;color:#f4eee6;font:inherit;font-size:13px}.portal-dialog form textarea{resize:vertical;line-height:1.8}.portal-dialog .portal-checkbox{display:flex;gap:9px;align-items:center}.portal-dialog .portal-checkbox input{width:17px;min-height:17px;height:17px;accent-color:#F78C1B}.portal-actions{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap;margin-top:20px}.portal-actions button{min-height:39px;padding:10px 17px;background:#F78C1B;border:1px solid #F78C1B;border-radius:8px;color:#171412;font-size:12px;font-weight:700;cursor:pointer}.portal-actions button.secondary{background:#2a2b30;border-color:#454348;color:#d6cdc3}.portal-status{font-size:12px;color:#d3b28b;line-height:1.8;overflow-wrap:anywhere;margin:15px 0 0}.portal-status:empty{display:none}.portal-report-filter{display:flex;gap:12px;align-items:flex-end;justify-content:flex-end;margin:0 0 17px}.portal-report-filter label{display:grid;gap:5px;color:#aaa196;font-size:11px}.portal-report-filter select{min-width:150px}.portal-report-filter button{min-height:39px;font-size:12px}.portal-dialog table{width:100%;min-width:580px}.portal-dialog th,.portal-dialog td{padding:12px 10px;text-align:left;font-size:12px;border-bottom:1px solid #36363a;vertical-align:middle}.portal-dialog table small{display:block;font-size:10px;color:#9f968c;margin-top:5px;line-height:1.7;overflow-wrap:anywhere;max-width:370px}.portal-table-actions{display:flex;gap:6px;align-items:center}.portal-action-icon{display:inline-flex;align-items:center;justify-content:center;flex:none;width:33px;height:33px;min-height:33px;padding:7px;border-radius:8px;border:1px solid #454348;background:#2a2a2e;color:#d8cfc6;cursor:pointer}.portal-action-icon svg{width:18px;height:18px}.portal-action-icon:hover{color:#F78C1B;border-color:#F78C1B}.portal-small{font-size:10px!important;min-height:33px;padding:7px 9px!important;white-space:nowrap}.portal-report-state{display:inline-block;white-space:nowrap;font-size:10px;padding:5px 8px;border-radius:7px;background:#51432a;color:#ffe1a2}.portal-state-in_progress{background:#343b4f;color:#c1d5ff}.portal-state-resolved{background:#26452e;color:#b1edb8}.portal-pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:15px;color:#a99e92;font-size:11px}.portal-pagination>div{display:flex;gap:7px}.portal-pagination button{min-height:31px;min-width:31px;padding:4px 9px;font-size:18px}.portal-message{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.9;padding:15px 17px;background:#242426;border:1px solid #3e3b37;border-radius:10px;color:#d9d0c5}.portal-dialog #portalReportAdminForm{display:grid;gap:15px;margin-top:21px}
@media(max-width:780px){.topbar .admin-nav{gap:6px}.topbar button.portal-icon-button{width:36px;height:36px;min-height:36px;padding:8px}.topbar .topbar-inner>.row{gap:6px}.portal-news{padding:18px;gap:13px}.portal-news p{font-size:12px}.portal-news-icon{width:37px;height:37px;border-radius:10px}.portal-news-icon svg{width:21px;height:21px}}
@media(max-width:560px){.topbar button.portal-icon-button{width:33px;height:33px;min-height:33px;padding:7px;border-radius:8px}.topbar .topbar-inner>.row{gap:5px}.portal-icon-button svg{width:18px;height:18px}.portal-news{gap:11px;padding:15px 13px;border-radius:13px}.portal-news-icon{width:32px;height:32px}.portal-news-icon svg{width:19px;height:19px}.portal-news-controls{gap:8px}.portal-news-controls button{width:24px;height:24px;min-height:24px;font-size:17px}.portal-news-controls>div{gap:4px}.portal-news-label{font-size:8px;letter-spacing:1.3px}.portal-news p{font-size:11px;max-height:160px}.portal-dialog{padding:19px;max-height:92dvh}.portal-dialog-head h2{font-size:20px}.portal-form-grid{grid-template-columns:1fr}.portal-full{grid-column:auto}.portal-report-filter{justify-content:space-between}.portal-account-tabs{margin-bottom:16px}.portal-account-tabs button{min-height:36px;padding:9px 15px;font-size:12px}}

/* Session validation is finished before either login or dashboard is shown. */
#login[hidden],#panel[hidden],#initialSessionScreen[hidden],#initialSessionRetry[hidden]{display:none!important}
.session-boot{max-width:420px;margin:20vh auto;text-align:center;padding:24px;color:#c9beb2;font:14px/1.8 inherit}.session-boot button{margin-top:12px}
.portal-news-controls button{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;min-height:28px;padding:0!important;margin:0;line-height:1;font-size:0;flex:none}
.portal-news-controls button svg{display:block;width:14px;height:14px;flex:none}
.portal-announcement-body{display:block;max-width:430px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}
#portalAnnouncementPosition{max-width:100px}
@media(max-width:560px){.portal-news{padding:12px;gap:10px}.portal-news-controls button{width:26px;height:26px;min-height:26px}}

/* v1.12.4: direct announcement content and borderless close controls. */
.portal-news{align-items:center}.portal-news-content{display:flex;align-items:center;min-height:36px}.portal-news p{margin:0}.portal-news-controls{padding:0;align-items:center;justify-content:center}.portal-news-controls[hidden]{display:none!important}
.portal-news p strong{font-weight:750}.portal-news p em{font-style:italic}.portal-news p u{text-decoration:underline;text-underline-offset:3px}
.portal-format-toolbar{display:flex;gap:6px;margin:8px 0}.portal-format-toolbar button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:32px;padding:0;line-height:1;border:1px solid #454348;border-radius:7px;background:#27272b;color:#ded5cb;cursor:pointer}.portal-format-toolbar button:hover{color:#F78C1B;border-color:#F78C1B}
.portal-rich-editor{box-sizing:border-box;min-height:105px;max-height:280px;overflow:auto;padding:11px 12px;border:1px solid #454348;border-radius:8px;background:#27272b;color:#f4eee6;font:inherit;font-size:13px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.portal-rich-editor:focus{outline:2px solid #F78C1B;outline-offset:1px}.portal-rich-editor strong,.portal-rich-editor b{font-weight:750}.portal-rich-editor em,.portal-rich-editor i{font-style:italic}.portal-rich-editor u{text-decoration:underline}
dialog h2{padding-right:38px}dialog .dialog-dismiss{position:absolute;inset:12px 12px auto auto;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;width:34px!important;height:34px!important;min-width:34px;min-height:34px!important;padding:7px!important;margin:0!important;border:0!important;border-radius:8px!important;background:transparent!important;box-shadow:none!important;color:#cfc6bc!important;line-height:1!important;font-size:0!important;cursor:pointer;float:none;flex:none}
dialog .dialog-dismiss svg{display:block;width:20px!important;height:20px!important;flex:none}dialog .dialog-dismiss:hover{color:#F78C1B!important;background:#ffffff08!important}dialog .dialog-dismiss:focus-visible{outline:2px solid #F78C1B;outline-offset:2px}dialog .dialog-dismiss[hidden]{display:none!important}
@media(max-width:560px){dialog .dialog-dismiss{top:9px;right:9px}.portal-news-content{min-height:32px}.portal-rich-editor{font-size:14px}}
