:root {
  --a-bg:        #f7f4f1;
  --a-surface:   #ffffff;
  --a-surface-2: #f2ede9;
  --a-border:    rgba(0,0,0,0.09);
  --a-maroon:    #800020;
  --a-maroon-d:  #5c0016;
  --a-maroon-lt: rgba(128,0,32,0.07);
  --a-text:      #0d0608;
  --a-muted:     #888;
  --a-success:   #1a6b3c;
  --a-danger:    #c0392b;
  --a-sidebar-w: 260px;
  --ease: cubic-bezier(0.22,0.61,0.36,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:15px}
body.adm{font-family:'DM Sans',sans-serif;background:var(--a-bg);color:var(--a-text);min-height:100vh;display:flex;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none}
button{font-family:inherit;cursor:pointer;background:none;border:none}

body.adm-login{display:block;background:var(--a-bg)}
.login-wrap{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}
.login-left{background:var(--a-maroon);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:3rem}
.login-left::after{content:'SOFAX';position:absolute;bottom:-3rem;right:-1rem;font-family:'Cormorant Garamond',serif;font-size:14rem;font-weight:700;color:rgba(255,255,255,0.05);line-height:1;pointer-events:none;letter-spacing:-0.03em}
.ll-inner{position:relative;z-index:2;max-width:400px}
.ll-logo{height:70px;width:auto;display:block;opacity:0.97;margin-bottom:3rem;background:#fff;padding:4px 8px;border-radius:4px}
.ll-tagline{font-family:'Cormorant Garamond',serif;font-size:4rem;font-weight:300;color:#fff;line-height:0.95;margin-bottom:2rem}
.ll-tagline em{font-style:italic;color:rgba(255,255,255,0.65)}
.ll-quote{font-size:0.85rem;color:rgba(255,255,255,0.55);line-height:1.8;border-left:2px solid rgba(255,255,255,0.25);padding-left:1rem;margin-bottom:3rem}
.ll-stats{display:flex;gap:2rem}
.ll-stat-n{display:block;font-family:'Cormorant Garamond',serif;font-size:1.8rem;font-weight:600;color:#fff}
.ll-stat-l{font-family:'DM Mono',monospace;font-size:0.58rem;letter-spacing:0.16em;text-transform:uppercase;color:rgba(255,255,255,0.4)}
.login-right{background:#fff;display:flex;align-items:center;justify-content:center;padding:3rem}
.lr-inner{width:100%;max-width:400px}
.lr-badge{display:inline-block;font-family:'DM Mono',monospace;font-size:0.62rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--a-maroon);border:1px solid rgba(128,0,32,0.3);padding:0.3rem 0.85rem;margin-bottom:1.5rem}
.lr-inner h1{font-family:'Cormorant Garamond',serif;font-size:2.5rem;font-weight:300;color:#0d0608;margin-bottom:0.4rem}
.lr-inner>p{font-size:0.88rem;color:#888;margin-bottom:2rem}
.lf-group{display:flex;flex-direction:column;gap:0.4rem;margin-bottom:1.2rem}
.lf-group label{font-family:'DM Mono',monospace;font-size:0.62rem;letter-spacing:0.14em;text-transform:uppercase;color:#888}
.lf-group input{padding:0.85rem 1rem;border:1px solid #ddd;background:#fafafa;font-size:0.92rem;color:#0d0608;outline:none;transition:border-color 0.3s;width:100%}
.lf-group input:focus{border-color:var(--a-maroon);background:#fff}
.pw-wrap{position:relative}
.pw-wrap input{padding-right:3rem}
.pw-toggle{position:absolute;right:0.75rem;top:50%;transform:translateY(-50%);font-size:0.9rem;opacity:0.4;cursor:pointer}
.lf-error{display:none;background:rgba(192,57,43,0.08);border-left:3px solid var(--a-danger);color:var(--a-danger);font-size:0.82rem;padding:0.65rem 1rem;margin-bottom:1rem}
.lf-error.show{display:block}
.lr-back{text-align:center;margin-top:2rem;font-size:0.8rem;color:#888}
.lr-back a{color:var(--a-maroon)}

.adm-sidebar{width:var(--a-sidebar-w);background:var(--a-maroon);min-height:100vh;position:fixed;top:0;left:0;z-index:100;display:flex;flex-direction:column;transition:width 0.3s var(--ease);overflow:hidden;border-right:none;box-shadow:4px 0 20px rgba(128,0,32,0.15)}
.adm-sidebar.collapsed{width:62px}
.sb-brand{display:flex;align-items:center;gap:0.8rem;padding:1.5rem 1.25rem;border-bottom:1px solid rgba(255,255,255,0.12)}
.sb-logo{height:44px;width:auto;display:block;flex-shrink:0;background:#fff;padding:2px 5px;border-radius:3px}
.sb-gem{width:32px;height:32px;flex-shrink:0;background:rgba(255,255,255,0.2);clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);display:none}
.sb-title{font-family:'DM Mono',monospace;font-size:0.6rem;letter-spacing:0.2em;text-transform:uppercase;color:rgba(255,255,255,0.6);white-space:nowrap}
.adm-sidebar.collapsed .sb-title,.adm-sidebar.collapsed .sb-logo{display:none}
.adm-sidebar.collapsed .sb-gem{display:block}
.sb-nav{flex:1;padding:1.25rem 0;display:flex;flex-direction:column;gap:2px}
.sb-link{display:flex;align-items:center;gap:0.85rem;padding:0.85rem 1.25rem;font-family:'DM Mono',monospace;font-size:0.65rem;letter-spacing:0.08em;text-transform:uppercase;color:rgba(255,255,255,0.65);transition:all 0.25s;border-left:2px solid transparent;white-space:nowrap}
.sb-link:hover{color:#fff;background:rgba(255,255,255,0.1)}
.sb-link.active{color:#fff;background:rgba(255,255,255,0.15);border-left-color:#fff}
.sb-icon{width:18px;text-align:center;flex-shrink:0;font-size:0.85rem}
.adm-sidebar.collapsed .sb-link span:not(.sb-icon){display:none}
.sb-footer{padding:1.25rem;border-top:1px solid rgba(255,255,255,0.12);display:flex;flex-direction:column;gap:0.75rem}
.sb-viewsite{font-family:'DM Mono',monospace;font-size:0.6rem;letter-spacing:0.14em;text-transform:uppercase;color:rgba(255,255,255,0.8);opacity:0.9;transition:opacity 0.2s;white-space:nowrap}
.sb-viewsite:hover{opacity:1}
.sb-logout{font-family:'DM Mono',monospace;font-size:0.6rem;letter-spacing:0.14em;text-transform:uppercase;color:rgba(255,255,255,0.7);border:1px solid rgba(255,255,255,0.25);padding:0.5rem 0.75rem;transition:all 0.2s;text-align:left;white-space:nowrap}
.sb-logout:hover{color:#fff;border-color:rgba(255,255,255,0.6);background:rgba(255,255,255,0.1)}
.adm-sidebar.collapsed .sb-viewsite,.adm-sidebar.collapsed .sb-logout span{display:none}

.adm-main{margin-left:var(--a-sidebar-w);flex:1;min-height:100vh;display:flex;flex-direction:column;transition:margin-left 0.3s var(--ease)}
.adm-main.expanded{margin-left:62px}

.adm-top{height:64px;background:#fff;border-bottom:1px solid var(--a-border);display:flex;align-items:center;justify-content:space-between;padding:0 2rem;position:sticky;top:0;z-index:50;box-shadow:0 1px 4px rgba(0,0,0,0.06)}
.at-left{display:flex;align-items:center;gap:1.2rem}
.sb-toggle{font-size:1rem;color:var(--a-muted);padding:0.25rem;transition:color 0.2s}
.sb-toggle:hover{color:var(--a-text)}
.at-breadcrumb{display:flex;align-items:center;gap:0.5rem}
.at-bc{font-family:'DM Mono',monospace;font-size:0.62rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--a-muted)}
.at-bc.active{color:var(--a-text)}
.at-bc-sep{color:var(--a-muted);font-size:0.7rem}
.at-right{display:flex;align-items:center;gap:1rem}
.at-user{display:flex;align-items:center;gap:0.75rem}
.at-avatar{width:36px;height:36px;border-radius:50%;background:var(--a-maroon);display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-weight:600;font-size:1rem;color:#fff;flex-shrink:0}
.at-name{font-size:0.85rem;font-weight:500;color:var(--a-text)}
.at-role{font-family:'DM Mono',monospace;font-size:0.58rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--a-muted)}

.adm-content{padding:2.5rem;flex:1}
.ac-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}
.ac-title{font-family:'Cormorant Garamond',serif;font-size:2rem;font-weight:300;color:var(--a-text);margin-bottom:0.2rem}
.ac-sub{font-size:0.82rem;color:var(--a-muted)}
.sec-label{font-family:'DM Mono',monospace;font-size:0.62rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--a-muted);margin-bottom:1rem;padding-bottom:0.75rem;border-bottom:1px solid var(--a-border)}

.ab-primary{display:inline-flex;align-items:center;gap:0.5rem;background:var(--a-maroon);color:#fff;font-family:'DM Mono',monospace;font-size:0.65rem;letter-spacing:0.12em;text-transform:uppercase;padding:0.75rem 1.6rem;transition:all 0.25s;cursor:pointer;border:none}
.ab-primary:hover{background:var(--a-maroon-d)}
.ab-outline{display:inline-flex;align-items:center;gap:0.5rem;background:transparent;color:var(--a-muted);border:1px solid var(--a-border);font-family:'DM Mono',monospace;font-size:0.65rem;letter-spacing:0.12em;text-transform:uppercase;padding:0.75rem 1.6rem;transition:all 0.25s;cursor:pointer}
.ab-outline:hover{color:var(--a-text);border-color:rgba(0,0,0,0.3)}
.ab-sm{display:inline-flex;align-items:center;gap:0.4rem;font-family:'DM Mono',monospace;font-size:0.6rem;letter-spacing:0.1em;text-transform:uppercase;padding:0.4rem 0.85rem;border:1px solid var(--a-border);color:var(--a-muted);transition:all 0.2s;cursor:pointer;background:transparent}
.ab-sm:hover{color:var(--a-text);border-color:rgba(0,0,0,0.3)}
.ab-sm.danger{color:var(--a-danger);border-color:rgba(192,57,43,0.25)}
.ab-sm.danger:hover{background:var(--a-danger);color:#fff;border-color:var(--a-danger)}
.ab-gold{background:var(--a-maroon);color:#fff;border-color:var(--a-maroon)}
.ab-gold:hover{background:var(--a-maroon-d)}

.stat-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-bottom:2.5rem}
.sc{background:#fff;padding:2rem;border-top:3px solid var(--a-border);transition:border-color 0.3s;box-shadow:0 2px 8px rgba(0,0,0,0.04);border-radius:2px}
.sc.maroon{border-top-color:var(--a-maroon)}
.sc.gold{border-top-color:var(--a-maroon)}
.sc.green{border-top-color:#1a6b3c}
.sc-icon{font-size:1.2rem;margin-bottom:0.75rem;color:var(--a-maroon)}
.sc-num{font-family:'Cormorant Garamond',serif;font-size:2.5rem;font-weight:600;color:var(--a-text);line-height:1;display:block;margin-bottom:0.3rem}
.sc-maroon .sc-num{color:var(--a-maroon)}
.sc-label{font-family:'DM Mono',monospace;font-size:0.6rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--a-muted)}
.sc-link{font-family:'DM Mono',monospace;font-size:0.6rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--a-maroon);display:block;margin-top:0.75rem}
.sc-link:hover{opacity:0.7}

.qa-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2.5rem}
.qa-card{background:#fff;padding:1.8rem;display:flex;flex-direction:column;gap:0.4rem;cursor:pointer;transition:all 0.25s;border:1px solid var(--a-border);border-bottom:3px solid transparent;border-radius:2px;box-shadow:0 2px 8px rgba(0,0,0,0.04)}
.qa-card:hover{border-bottom-color:var(--a-maroon);transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,0.08)}
.qa-icon{font-size:1.4rem;margin-bottom:0.25rem;color:var(--a-maroon)}
.qa-label{font-family:'DM Mono',monospace;font-size:0.68rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--a-text)}
.qa-desc{font-size:0.8rem;color:var(--a-muted);line-height:1.6}

.act-wrap{background:#fff;border:1px solid var(--a-border);overflow-x:auto;box-shadow:0 2px 8px rgba(0,0,0,0.04)}
.act-table{width:100%;border-collapse:collapse}
.act-table th{font-family:'DM Mono',monospace;font-size:0.58rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--a-muted);padding:0.85rem 1.2rem;text-align:left;border-bottom:1px solid var(--a-border);background:var(--a-surface-2);white-space:nowrap}
.act-table td{padding:0.85rem 1.2rem;font-size:0.82rem;color:#555;border-bottom:1px solid var(--a-border)}
.act-table tr:hover td{background:var(--a-maroon-lt)}
.act-table .td-user{font-weight:500;color:var(--a-text)}
.act-table .td-ip{font-family:'DM Mono',monospace;font-size:0.65rem}
.act-table .td-time{font-family:'DM Mono',monospace;font-size:0.65rem;white-space:nowrap}
.act-badge{display:inline-block;font-family:'DM Mono',monospace;font-size:0.58rem;letter-spacing:0.08em;text-transform:uppercase;padding:0.2rem 0.6rem;border-radius:2px}
.ab-login{background:rgba(26,107,60,0.1);color:#1a6b3c}
.ab-logout{background:rgba(0,0,0,0.05);color:var(--a-muted)}
.ab-post{background:rgba(128,0,32,0.08);color:var(--a-maroon)}
.ab-delete{background:rgba(192,57,43,0.08);color:var(--a-danger)}
.ab-user{background:rgba(128,0,32,0.08);color:var(--a-maroon)}
.ab-settings{background:rgba(0,0,0,0.04);color:var(--a-muted)}
.empty-row{text-align:center;padding:2.5rem!important;color:var(--a-muted);font-size:0.85rem}

.tbl-wrap{background:#fff;border:1px solid var(--a-border);overflow-x:auto;box-shadow:0 2px 8px rgba(0,0,0,0.04)}
.adm-table{width:100%;border-collapse:collapse}
.adm-table th{font-family:'DM Mono',monospace;font-size:0.58rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--a-muted);padding:0.85rem 1.2rem;text-align:left;border-bottom:2px solid var(--a-maroon);background:var(--a-surface-2);white-space:nowrap}
.adm-table td{padding:0.85rem 1.2rem;font-size:0.85rem;color:#555;border-bottom:1px solid var(--a-border);vertical-align:middle}
.adm-table tr:hover td{background:var(--a-maroon-lt)}
.adm-table .td-title{font-weight:500;color:var(--a-text);max-width:280px}
.adm-table .td-actions{display:flex;gap:0.4rem;white-space:nowrap}
.t-badge{display:inline-block;font-family:'DM Mono',monospace;font-size:0.58rem;letter-spacing:0.1em;text-transform:uppercase;padding:0.2rem 0.6rem;border-radius:2px}
.t-badge{background:rgba(128,0,32,0.08);color:var(--a-maroon)}
.t-pub{background:rgba(26,107,60,0.1);color:#1a6b3c}
.t-draft{background:rgba(0,0,0,0.05);color:var(--a-muted)}

.editor-layout{display:grid;grid-template-columns:1fr 340px;gap:1.5rem;align-items:start}
.editor-card{background:#fff;border:1px solid var(--a-border);padding:2rem;margin-bottom:1.5rem;box-shadow:0 2px 8px rgba(0,0,0,0.04);border-radius:2px}
.ec-heading{font-family:'DM Mono',monospace;font-size:0.62rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--a-muted);margin-bottom:1.5rem;padding-bottom:0.75rem;border-bottom:1px solid var(--a-border)}
.ef-group{display:flex;flex-direction:column;gap:0.4rem;margin-bottom:1.25rem}
.ef-group label{font-family:'DM Mono',monospace;font-size:0.6rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--a-muted)}
.ef-group input,.ef-group select,.ef-group textarea{width:100%;padding:0.75rem 1rem;background:#fafafa;border:1px solid #ddd;color:var(--a-text);font-family:'DM Sans',sans-serif;font-size:0.9rem;outline:none;transition:border-color 0.3s}
.ef-group input:focus,.ef-group select:focus,.ef-group textarea:focus{border-color:var(--a-maroon);background:#fff}
.ef-group textarea{resize:vertical}
.ef-group select option{background:#fff}
.ef-big{font-size:1.1rem!important;font-weight:500}
.ef-note{font-size:0.75rem;color:var(--a-muted);line-height:1.5;margin-top:0.25rem}
.ef-row2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.toolbar{display:flex;gap:3px;padding:0.5rem;background:#f2ede9;border:1px solid #ddd;border-bottom:none}
.toolbar button{padding:0.25rem 0.6rem;background:#fff;border:1px solid #ddd;color:#555;font-size:0.75rem;font-weight:600;transition:all 0.2s;cursor:pointer;font-family:'DM Sans',sans-serif}
.toolbar button:hover{background:var(--a-maroon);color:#fff;border-color:var(--a-maroon)}
.toolbar+textarea{border-top:none}
.toggle-row{display:flex;align-items:center;gap:0.75rem;cursor:pointer;font-size:0.88rem;color:var(--a-text)}
.toggle-row input[type=checkbox]{display:none}
.tog{width:42px;height:22px;background:#ddd;border-radius:11px;position:relative;transition:background 0.3s;flex-shrink:0}
.tog::after{content:'';position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform 0.3s;box-shadow:0 1px 3px rgba(0,0,0,0.2)}
.toggle-row input:checked+.tog{background:var(--a-success)}
.toggle-row input:checked+.tog::after{transform:translateX(20px)}

/* Preview */
.preview-wrap{border:1px solid var(--a-border);box-shadow:0 2px 8px rgba(0,0,0,0.04)}
.pv-img{height:120px;background:var(--a-maroon);background-size:cover;background-position:center}
.pv-cat{font-family:'DM Mono',monospace;font-size:0.58rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--a-maroon);padding:0.75rem 0.75rem 0}
.pv-title{font-family:'Cormorant Garamond',serif;font-size:1rem;font-weight:600;color:var(--a-text);padding:0.4rem 0.75rem;line-height:1.4}
.pv-excerpt{font-size:0.78rem;color:var(--a-muted);padding:0 0.75rem 0.75rem;line-height:1.5}

.adm-form-card{background:#fff;border:1px solid var(--a-border);padding:2rem;margin-bottom:1.5rem;box-shadow:0 2px 8px rgba(0,0,0,0.04);border-radius:2px}
.afc-heading{font-family:'Cormorant Garamond',serif;font-size:1.4rem;color:var(--a-text);margin-bottom:1.2rem;padding-bottom:0.75rem;border-bottom:2px solid var(--a-maroon)}

.dropzone{border:2px dashed rgba(128,0,32,0.25);padding:3rem;text-align:center;cursor:pointer;transition:all 0.25s;background:#fafafa;border-radius:2px}
.dropzone:hover,.dropzone.drag{border-color:var(--a-maroon);background:var(--a-maroon-lt)}
.dropzone-icon{font-size:2.5rem;color:var(--a-maroon);margin-bottom:0.75rem;opacity:0.6}
.dropzone p{font-size:0.88rem;color:var(--a-muted);margin-bottom:0.3rem}
.dropzone small{font-family:'DM Mono',monospace;font-size:0.62rem;letter-spacing:0.1em;color:var(--a-muted);opacity:0.7}

.adm-alert{padding:1rem 1.2rem;border-radius:2px;font-size:0.85rem;margin-bottom:1rem;display:flex;align-items:center;gap:0.75rem}
.adm-alert.success{background:rgba(26,107,60,0.08);border-left:3px solid #1a6b3c;color:#1a6b3c}
.adm-alert.error{background:rgba(192,57,43,0.08);border-left:3px solid var(--a-danger);color:var(--a-danger)}
.adm-alert.info{background:var(--a-maroon-lt);border-left:3px solid var(--a-maroon);color:var(--a-maroon)}

.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.setting-group{background:#fff;border:1px solid var(--a-border);padding:1.8rem;border-radius:2px;box-shadow:0 2px 8px rgba(0,0,0,0.04)}
.sg-label{font-family:'DM Mono',monospace;font-size:0.6rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--a-maroon);margin-bottom:1.2rem;padding-bottom:0.6rem;border-bottom:1px solid var(--a-border)}

@media(max-width:900px){
  .adm-sidebar{width:62px}
  .adm-sidebar .sb-title,.adm-sidebar .sb-logo{display:none}
  .adm-sidebar .sb-gem{display:block}
  .adm-sidebar .sb-link span:not(.sb-icon){display:none}
  .adm-main{margin-left:62px}
  .stat-cards{grid-template-columns:1fr 1fr}
  .qa-grid{grid-template-columns:1fr 1fr}
  .editor-layout{grid-template-columns:1fr}
  .settings-grid{grid-template-columns:1fr}
  .login-wrap{grid-template-columns:1fr}
  .login-left{display:none}
}

.sc.danger{border-top-color:var(--a-danger);border-top-width:4px}
.sc-num.is-closed{color:var(--a-danger)!important;font-size:1.5rem!important;font-weight:700!important;letter-spacing:0.05em}
.sc-num.is-open{color:var(--a-success)!important}

/* Career portal toggle — make it big and visible */
.portal-toggle-wrap{display:flex;align-items:center;gap:1.5rem;padding:1.5rem 2rem;background:#fff;border:2px solid var(--a-border);border-radius:2px;margin-bottom:1.5rem;cursor:pointer;transition:border-color 0.25s}
.portal-toggle-wrap:hover{border-color:var(--a-maroon)}
.portal-toggle-wrap input[type=checkbox]{display:none}
.ptog{width:60px;height:32px;background:#ddd;border-radius:16px;position:relative;transition:background 0.3s;flex-shrink:0}
.ptog::after{content:'';position:absolute;top:4px;left:4px;width:24px;height:24px;border-radius:50%;background:#fff;transition:transform 0.3s;box-shadow:0 2px 6px rgba(0,0,0,0.2)}
.portal-toggle-wrap input:checked+.ptog{background:var(--a-success)}
.portal-toggle-wrap input:checked+.ptog::after{transform:translateX(28px)}
.ptog-label{flex:1}
.ptog-title{font-size:1rem;font-weight:600;color:var(--a-text);margin-bottom:0.2rem}
.ptog-desc{font-size:0.82rem;color:var(--a-muted)}
.ptog-status{font-family:'DM Mono',monospace;font-size:0.7rem;letter-spacing:0.12em;text-transform:uppercase;font-weight:700;padding:0.4rem 1rem;border-radius:2px}
.ptog-status.open{background:rgba(26,107,60,0.1);color:#1a6b3c;border:1px solid rgba(26,107,60,0.25)}
.ptog-status.closed{background:rgba(192,57,43,0.1);color:var(--a-danger);border:1px solid rgba(192,57,43,0.3)}

.rp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:rgba(0,0,0,0.1)}
.rp-card{background:#1a0d0f;display:flex;flex-direction:column;overflow:hidden}
.rp-img{height:160px;background:var(--a-maroon) center/cover no-repeat;flex-shrink:0}
.rp-body{padding:1.2rem 1.4rem;display:flex;flex-direction:column;gap:0.4rem;flex:1}
.rp-cat{font-family:'DM Mono',monospace;font-size:0.58rem;letter-spacing:0.14em;text-transform:uppercase;color:#c9a84c}
.rp-title{font-family:'Cormorant Garamond',serif;font-size:1.05rem;font-weight:600;color:#fff;line-height:1.3;flex:1}
.rp-meta{font-size:0.75rem;color:rgba(255,255,255,0.35);margin-top:0.2rem}
.rp-actions{display:flex;gap:0.5rem;margin-top:0.75rem}
.rp-actions .ab-sm{border-color:rgba(255,255,255,0.15);color:rgba(255,255,255,0.6);font-size:0.58rem}
.rp-actions .ab-sm:hover{color:#fff;border-color:rgba(255,255,255,0.4);background:transparent}

.ab-flagged{background:rgba(192,57,43,0.15);color:#c0392b;border:1px solid rgba(192,57,43,0.3);font-weight:700}
.ab-fail{background:rgba(192,57,43,0.08);color:#c0392b}
.flagged-row td{background:rgba(192,57,43,0.05)!important}
.flagged-row:hover td{background:rgba(192,57,43,0.1)!important}
.fail-row td{background:rgba(192,57,43,0.02)!important}

/* Flagged login block on login page */
.lf-flagged{background:rgba(192,57,43,0.1)!important;border-left-color:#c0392b!important;color:#c0392b!important;font-size:0.85rem!important;line-height:1.6}
.lf-flagged-block{text-align:center;padding:2rem;background:rgba(192,57,43,0.06);border:1px solid rgba(192,57,43,0.2);border-radius:2px;margin:1.5rem 0}
.lf-flagged-block i{font-size:2rem;color:#c0392b;display:block;margin-bottom:0.75rem}
.lf-flagged-block p{color:#c0392b;font-size:0.88rem;line-height:1.7;margin:0}

.portal-card{background:#fff;border:1px solid var(--a-border);padding:2rem;margin-bottom:1.5rem;box-shadow:0 2px 8px rgba(0,0,0,0.04)}
.portal-top{display:flex;justify-content:space-between;align-items:center;gap:2rem;margin-bottom:1.5rem;flex-wrap:wrap}
.portal-email-row{display:flex;gap:1.5rem;align-items:flex-end;flex-wrap:wrap;margin-top:1rem}

/* Big toggle switch */
.big-tog{position:relative;display:inline-flex;cursor:pointer;user-select:none}
.big-tog input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}
.big-tog-sl{
  display:block;width:80px;height:40px;
  background:#ccc;border-radius:20px;
  position:relative;transition:background 0.3s;
  border:2px solid #bbb;
}
.big-tog-sl::after{
  content:'';position:absolute;
  top:4px;left:4px;
  width:28px;height:28px;
  background:#fff;border-radius:50%;
  transition:transform 0.3s;
  box-shadow:0 2px 6px rgba(0,0,0,0.25);
}
.big-tog input:checked + .big-tog-sl{background:#2e7d52;border-color:#2e7d52}
.big-tog input:checked + .big-tog-sl::after{transform:translateX(38px)}

/* Status label */
.portal-label{font-family:'DM Mono',monospace;font-size:1.1rem;font-weight:700;letter-spacing:0.1em}
.portal-label.is-open{color:#2e7d52}
.portal-label.is-closed{color:#c0392b}

.adm-flash{padding:0.85rem 1.2rem;background:rgba(46,125,82,0.08);border-left:3px solid #2e7d52;color:#2e7d52;font-size:0.85rem;margin-bottom:1.5rem}
.adm-flash.err{background:rgba(192,57,43,0.08);border-left-color:#c0392b;color:#c0392b}
