:root{--bg:#f5f7fb;--panel:#fff;--text:#1d2433;--muted:#65758b;--brand:#14213d;--accent:#c99a2e;--header-bg:#14213d;--header-text:#fff;--button-bg:#14213d;--button-text:#fff;--button-border:#14213d;--logo-preview-bg:#14213d;--border:#d9e0ea;--danger:#9b1c1c;--success:#17683a}*{box-sizing:border-box}body{margin:0;background:var(--bg);font-family:Arial,Helvetica,sans-serif;color:var(--text)}.topbar{background:var(--header-bg);color:var(--header-text);padding:16px 28px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(0,0,0,.08)}.brand{font-size:26px;font-weight:700;letter-spacing:.08em;color:var(--header-text)}.topbar a{color:var(--header-text);text-decoration:none;margin-left:16px}.container{max-width:1180px;margin:28px auto;padding:0 18px}.card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:26px;box-shadow:0 8px 24px rgba(20,33,61,.06)}.narrow{max-width:520px;margin:0 auto}h1{margin-top:0}label{display:block;margin:14px 0;font-weight:600}input,select,button{font:inherit}input[type=text],input[type=email],input[type=password],input[type=date],input[type=color],select{width:100%;padding:10px;border:1px solid var(--border);border-radius:8px;margin-top:6px}button,.button{background:var(--button-bg);color:var(--button-text);border:1px solid var(--button-border);border-radius:8px;padding:10px 16px;text-decoration:none;display:inline-block;cursor:pointer;font-weight:700}.secondary{background:var(--muted);color:#fff;border-color:var(--muted)}.actions{display:flex;gap:10px;margin-top:20px}.error{color:var(--danger);font-weight:700}.success{color:var(--success);font-weight:700}.warning{background:#fff8df;border:1px solid #f0d889;border-radius:8px;padding:10px}fieldset{border:1px solid var(--border);border-radius:8px;margin:14px 0;padding:12px}table{width:100%;border-collapse:collapse;font-size:14px}th,td{border-bottom:1px solid var(--border);padding:10px;text-align:left;vertical-align:top}th{background:#f0f3f8}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.stats div{background:#f7f9fc;border:1px solid var(--border);border-radius:10px;padding:16px}.stats strong{display:block;font-size:28px}.stats span{color:var(--muted)}.hint{color:var(--muted);font-size:14px}.brand-wrap{display:flex;align-items:center;min-width:120px;background:transparent!important}.site-logo{max-height:52px;max-width:210px;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;object-fit:contain;box-shadow:none!important}.broker-top-logo{max-height:52px;max-width:210px;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;margin-left:16px;object-fit:contain;box-shadow:none!important}.logo-preview{display:block;max-width:260px;max-height:110px;background:var(--logo-preview-bg)!important;border:1px solid rgba(0,0,0,.18);border-radius:8px;padding:12px;margin:10px 0;object-fit:contain}.logo-preview-note{color:var(--muted);font-size:13px;margin-top:-4px}.transparent-logo-preview{background:var(--logo-preview-bg)!important}textarea{font:inherit}h2{font-size:18px;margin-top:24px}.colour-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.colour-grid label{margin:8px 0}@media(max-width:800px){.stats{grid-template-columns:1fr 1fr}.topbar{display:block}.topbar a{display:inline-block;margin:8px 10px 0 0}table{display:block;overflow:auto}.broker-top-logo{margin:12px 0 0 0}.site-logo{max-width:150px}.colour-grid{grid-template-columns:1fr}}
.impersonation-bar{background:#fff3cd;border-bottom:1px solid #e2c76d;color:#3b2f00;padding:10px 28px;display:flex;justify-content:space-between;align-items:center;gap:12px}.impersonation-bar form{margin:0}.impersonation-bar button{padding:7px 12px}@media(max-width:800px){.impersonation-bar{display:block}.impersonation-bar form{margin-top:8px}}.small-cell{max-width:360px;word-break:break-word;font-size:12px;color:var(--muted)}

.actions-cell{width:92px;white-space:nowrap}.actions-menu{position:relative;display:inline-block}.actions-menu summary{list-style:none;cursor:pointer;background:var(--button-bg);color:var(--button-text);border:1px solid var(--button-border);border-radius:7px;padding:6px 10px;font-weight:700;font-size:12px}.actions-menu summary::-webkit-details-marker{display:none}.actions-menu[open] summary{border-bottom-left-radius:0;border-bottom-right-radius:0}.actions-menu-panel{position:absolute;right:0;top:100%;z-index:20;min-width:190px;background:var(--panel);border:1px solid var(--border);border-radius:8px 0 8px 8px;box-shadow:0 10px 28px rgba(20,33,61,.18);padding:8px}.actions-menu-panel form{margin:0 0 6px 0}.actions-menu-panel form:last-child{margin-bottom:0}.mini-action{width:100%;text-align:left;background:#f7f9fc;color:var(--text);border:1px solid var(--border);border-radius:6px;padding:7px 9px;font-size:12px;font-weight:700}.mini-action:hover{background:#eef2f7}.danger-action{color:#7f1d1d}@media(max-width:800px){.actions-menu-panel{position:static;margin-top:6px}.actions-cell{width:auto}}

.notice-card {
    border: 1px solid #d6d6d6;
    border-radius: 10px;
    padding: 16px;
    margin: 16px 0;
    background: #f7f7f7;
}
.warning-card {
    border-color: #d9a441;
    background: #fff8e6;
}
.temp-password-box {
    font-size: 20px;
    padding: 12px;
    background: #ffffff;
    border: 1px dashed #999999;
    border-radius: 8px;
    display: inline-block;
}
.temp-password-box code {
    font-size: 20px;
    font-weight: 700;
}


.warning-block {
    border: 1px solid #f1c40f;
    background: #fff8db;
    padding: 12px 14px;
    border-radius: 8px;
    margin: 12px 0;
}
.warning-block .warning { margin: 0 0 10px 0; }
.inline-form { display: inline-block; margin: 0; }
.button.small, button.small {
    padding: 7px 11px;
    font-size: 13px;
    line-height: 1.2;
}

.nav-inline-form{display:inline;margin:0}.nav-inline-form button.nav-switch-back{padding:7px 10px;border-radius:8px;font-size:12px;line-height:1;border:1px solid var(--button-border);background:var(--button-bg);color:var(--button-text);cursor:pointer}

.terms-card{max-width:980px;margin-left:auto;margin-right:auto;}
.terms-body{max-height:60vh;overflow:auto;border:1px solid #e3e7ee;border-radius:10px;background:#fff;padding:18px;margin:18px 0;}
.terms-body h2{font-size:1.08rem;margin:22px 0 8px;}
.terms-body h2:first-child{margin-top:0;}
.terms-body p{line-height:1.55;margin:0 0 12px;}
.terms-accept-form{border-top:1px solid #e3e7ee;padding-top:16px;}
.checkbox-label{display:flex;gap:10px;align-items:flex-start;margin-bottom:14px;}
.checkbox-label input{width:auto;margin-top:4px;}
