/* Independent Slero dashboard shell. No third-party admin-template dependency. */
:root{--sidebar-width:280px;--topbar-height:86px;--dashboard-navy:#182b40;--dashboard-line:#dbe3eb;--dashboard-muted:#475569}
.portal-app,.portal-guest{background:#f3f6fa;color:#1f2937;font-size:18px;line-height:1.55}
.portal-header{position:fixed;inset:0 0 auto;z-index:60;height:var(--topbar-height);border-bottom:1px solid var(--dashboard-line);box-shadow:0 2px 8px #182b4006}
.portal-topbar{display:flex;align-items:center;gap:20px;padding:0 28px;height:100%;max-width:none}
.portal-brand{display:flex;align-items:center;gap:12px;min-width:228px;text-decoration:none;color:#23374b}
.portal-brand img{width:130px;height:48px;object-fit:contain}.portal-brand span{font-size:16px;font-weight:700;border-left:1px solid var(--dashboard-line);padding-left:12px}
.portal-icon{flex-shrink:0}.sidebar-toggle{display:flex;align-items:center;justify-content:center;min-height:48px;min-width:48px;padding:10px;background:#f4f7fa;border:1px solid var(--dashboard-line);border-radius:9px;color:#23374b;cursor:pointer}
.topbar-page{display:flex;flex-direction:column;min-width:0;line-height:1.3}.topbar-page>span{color:var(--dashboard-muted);font-size:14px}.topbar-page strong{font-size:18px}.topbar-account{margin-left:auto;flex-shrink:0}.topbar-account summary{border:0;background:#f4f7fa;min-height:48px}
.topbar-account .account-menu-panel{width:280px}.account-identity{font-size:16px;color:var(--dashboard-muted);padding:8px 12px;margin:0;overflow-wrap:anywhere}.account-menu-panel>a{display:block;padding:11px 14px;font-size:18px;color:#1f2937;text-decoration:none;font-weight:600}.account-menu-panel>a:hover{background:#f3f6fa}
.portal-sidebar{position:fixed;top:var(--topbar-height);bottom:0;left:0;width:var(--sidebar-width);background:var(--dashboard-navy);color:#fff;z-index:50;overflow-y:auto;padding:24px 16px;scrollbar-width:thin}
.sidebar-workspace{display:flex;gap:10px;align-items:center;padding:0 12px 22px;font-size:16px;color:#d9e3ed;border-bottom:1px solid #ffffff20;margin-bottom:20px}.workspace-dot{width:9px;height:9px;background:#71c2b8;border-radius:50%;flex-shrink:0}
.sidebar-section-label{text-transform:uppercase;letter-spacing:.1em;font-size:13px;font-weight:700;color:#bccbd9;padding:0 12px;margin:20px 0 10px}
.sidebar-link,.sidebar-group>summary{display:flex;align-items:center;gap:12px;border-radius:8px;margin:3px 0;padding:11px 12px;min-height:48px;text-decoration:none;color:#e7edf3;font-size:18px;line-height:1.35;font-weight:500;cursor:pointer;list-style:none}
.sidebar-link:hover,.sidebar-group>summary:hover{background:#ffffff12;color:#fff}.sidebar-link.is-active{background:#e87722;color:#182b40;font-weight:700}.sidebar-link.is-active .portal-icon{color:#182b40}.sidebar-group>summary::-webkit-details-marker{display:none}.sidebar-group>summary>span:last-child{margin-left:auto}.sidebar-group[open]>summary{background:#ffffff0b}.sidebar-group>div{padding-left:12px;border-left:1px solid #ffffff26;margin-left:20px}.sidebar-group>div .sidebar-link{font-size:17px;padding-left:10px}.sidebar-group>div .portal-icon{width:19px;height:19px}
.sidebar-help{margin:30px 10px 0;padding:20px 0 0;border-top:1px solid #ffffff24;display:flex;flex-direction:column;gap:6px;font-size:15px;color:#c7d5e2}.sidebar-help>a{color:#fff;font-size:18px;font-weight:700;text-decoration:none}.sidebar-help strong{font-size:16px}
.portal-app .portal-main{margin:var(--topbar-height) 0 0 var(--sidebar-width);padding:28px 34px 48px;max-width:none;width:calc(100% - var(--sidebar-width));min-height:calc(100vh - 200px)}
.portal-breadcrumb{display:flex;gap:12px;color:var(--dashboard-muted);font-size:15px;margin-bottom:22px}.portal-main>h1{font-size:34px;line-height:1.25;margin:0 0 20px;letter-spacing:-.02em}.portal-main>h2{font-size:26px}.portal-main>.eyebrow{font-size:14px;letter-spacing:.09em;color:#526477;margin:0 0 6px}.portal-main>.lead{font-size:19px;color:var(--dashboard-muted)}
.portal-grid{gap:20px}.portal-card{border:1px solid var(--dashboard-line);border-radius:12px;padding:24px;background:#fff;box-shadow:0 3px 12px #182b4005}.portal-card h2{font-size:23px;margin:14px 0 20px}.portal-card .number{font-size:46px;color:#23374b}.portal-card .btn{width:100%;border-radius:8px;font-size:18px;min-height:48px}.portal-actions{gap:10px}.portal-actions .btn{background:#fff;color:#23374b;border:1px solid #c7d2de;border-radius:8px}.portal-actions .btn:hover{background:#eaf0f6}
.form-card{max-width:none;padding:26px;border:1px solid var(--dashboard-line);border-radius:12px;box-shadow:none;background:#fff}.form-card h2{font-size:25px}.field input,.field select,.field textarea,.portal-main>form>input,.portal-main>form>textarea,.portal-table input,.portal-table select{border:1px solid #b8c6d4;border-radius:7px;background:#fff;color:#1f2937;font-size:18px;min-height:48px}.field label{font-size:18px;font-weight:600}.portal-main textarea{min-height:130px}.portal-main>form:not(.form-card){padding:20px;background:#fff;border:1px solid var(--dashboard-line);border-radius:10px;margin:16px 0 24px}.portal-main>form input:not([type=hidden]),.portal-main>form textarea{max-width:100%}
.portal-main button:not(.password-toggle),.portal-main .btn{font-size:18px;border-radius:7px;min-height:46px}.portal-main form>button:not(.password-toggle){margin-top:12px}.portal-table{font-size:18px}.portal-table th{font-size:16px;background:#f7f9fc;color:#34465a;font-weight:700;padding:16px}.portal-table td{padding:18px 16px;border-color:#e6ecf2}.portal-table tbody tr:hover{background:#fafcff}.portal-table td>form{display:grid;gap:9px;min-width:210px}.portal-table td>form label{font-size:16px}.portal-table input[type=checkbox]{width:20px;min-height:20px;accent-color:#bf570f}.portal-table input[type=password]{min-width:180px}.table-wrap{border:1px solid var(--dashboard-line);border-radius:12px;margin:18px 0 26px}.status{font-size:15px;line-height:1.5}.message{border-radius:10px;border:1px solid var(--dashboard-line);border-left:4px solid var(--teal);padding:24px}.alert{border-radius:9px;font-size:18px}
.portal-footer{background:transparent;color:#475569;border-top:1px solid var(--dashboard-line);padding:22px 28px;font-size:16px}.portal-footer a{color:#334155}.portal-app .portal-footer{margin-left:var(--sidebar-width)}.portal-footer .container{padding:0;max-width:none}
.portal-guest .portal-main{margin-top:var(--topbar-height);padding-top:28px;padding-bottom:48px}.portal-guest .portal-brand{min-width:0}.guest-home-link{margin-left:auto;font-size:18px;color:#334155}.portal-guest .login-wrap{max-width:540px;margin:18px auto 40px;padding:34px}.portal-guest .portal-breadcrumb{max-width:1100px;margin-inline:auto}
.sidebar-collapsed .portal-sidebar{display:none}.sidebar-collapsed.portal-app .portal-main{margin-left:0;width:100%}.sidebar-collapsed.portal-app .portal-footer{margin-left:0}.sidebar-backdrop[hidden]{display:none}
.sidebar-link:focus-visible,.sidebar-group>summary:focus-visible,.sidebar-toggle:focus-visible{outline:3px solid #ffb776;outline-offset:2px}
.portal-main input[type=checkbox],.portal-main input[type=radio]{width:20px;min-width:20px;height:20px;min-height:20px;padding:0;margin:4px 8px 0 0;display:inline-block;vertical-align:middle;accent-color:#bf570f}.portal-main label:has(>input[type=checkbox]),.portal-main label:has(>input[type=radio]){display:flex;align-items:flex-start;gap:6px;min-height:44px}
.sidebar-group>div .sidebar-link{font-size:18px}
.portal-main .btn{color:#182b40!important}.portal-main .btn:hover{background:#f49a52;border-color:#f49a52;color:#182b40!important}.portal-main .btn-secondary:hover,.portal-main .portal-actions .btn:hover{background:#eaf0f6;border-color:#b8c6d4;color:#23374b!important}.portal-main button:not(.btn):not(.password-toggle){border:1px solid #b8c6d4;background:#fff;color:#23374b;padding:10px 14px;font-family:inherit;font-weight:600;cursor:pointer}.portal-main button:not(.btn):not(.password-toggle):hover{background:#eaf0f6}
.dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-metrics .portal-card{position:relative}.metric-icon{position:absolute;top:24px;right:24px;background:#edf3f8;color:#344f69;padding:12px;border-radius:12px;display:flex}.create-account-panel{margin:20px 0}.create-account-panel>summary{list-style:none;width:max-content}.create-account-panel>summary::-webkit-details-marker{display:none}.create-account-panel[open]>summary{margin-bottom:16px}.row-editor>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;min-height:46px;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:7px;font-size:18px;font-weight:600;color:#23374b;cursor:pointer;list-style:none}.row-editor>summary:after{content:'+'}.row-editor[open]>summary:after{content:'−'}.row-editor>summary::-webkit-details-marker{display:none}.row-editor>form{display:grid;gap:9px;padding-top:14px;min-width:210px}
.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:24px 0 10px;flex-wrap:wrap}.table-toolbar label{font-size:16px;color:#475569;display:flex;align-items:center;gap:10px}.table-toolbar input,.table-toolbar select{font:inherit;font-size:18px;min-height:46px;background:#fff;color:#1f2937;border:1px solid #b8c6d4;border-radius:7px;padding:8px 12px}.table-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 28px;font-size:16px;color:#475569}.table-pagination>div{display:flex;gap:8px}.table-pagination button{margin:0!important}.table-pagination button:disabled{opacity:.55;cursor:default}.table-toolbar input{max-width:260px}.portal-main>form[method=get]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.portal-main>form[method=get]>label{width:100%}.portal-main>form[method=get]>input:not([type=hidden]){flex:1;min-width:180px}.portal-main>form[method=get]>button{margin:0}
@media(min-width:1600px){.dashboard-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:650px){.dashboard-metrics{grid-template-columns:1fr}.table-toolbar{align-items:stretch}.table-toolbar label{width:100%;justify-content:space-between}.table-toolbar input{min-width:0;width:65%;max-width:none}.table-pagination{flex-wrap:wrap}.table-pagination>span{width:100%}}
@media(min-width:1600px){.portal-app .portal-main{padding-inline:48px}.portal-grid{gap:26px}}
@media(max-width:1150px){.topbar-page{display:none}.portal-topbar{gap:12px}.portal-grid{grid-template-columns:1fr}}
@media(max-width:1024px){.portal-sidebar{display:none;width:280px;max-width:85vw;box-shadow:8px 0 30px #0002}.sidebar-open .portal-sidebar{display:block}.portal-app .portal-main{margin-left:0;width:100%;padding:26px 24px}.portal-app .portal-footer{margin-left:0}.sidebar-backdrop:not([hidden]){position:fixed;inset:var(--topbar-height) 0 0;border:0;border-radius:0;background:#0f172a80;z-index:40}.portal-topbar{padding-inline:20px}.portal-brand{min-width:0}.portal-brand span{display:none}}
@media(max-width:650px){:root{--topbar-height:76px}.portal-topbar{padding-inline:14px;gap:10px}.portal-brand img{width:100px;height:40px}.topbar-account summary{padding:9px;gap:7px}.topbar-account summary>span:not(.account-chevron){font-size:16px}.topbar-account .account-menu-panel{position:absolute;width:260px;margin:0;box-shadow:0 10px 30px #1f293729}.sidebar-toggle{min-width:44px;min-height:44px}.portal-app .portal-main{padding:22px 16px 36px}.portal-main>h1{font-size:29px}.form-card,.portal-card{padding:20px}.portal-main>.portal-actions .btn{width:100%}.portal-table{font-size:18px}.portal-breadcrumb{margin-bottom:16px}.portal-guest .portal-main{padding-inline:16px}.portal-guest .login-wrap{padding:24px}.guest-home-link{font-size:16px}.portal-footer{padding:20px 16px}.sidebar-group>div .sidebar-link{font-size:18px}}
