/* Amo7 Premium: unified black and gold design system */
:root{--alto-bg:#080808;--alto-surface:#141414;--alto-soft:#1d1d1d;--alto-red:#e8b75a;--alto-red-dark:#ffda91;--alto-gold:#e8b75a;--alto-gold-soft:#302616;--alto-ink:#f7f4ed;--alto-muted:#b7ada0;--alto-border:#383127;--alto-shadow:0 16px 42px rgba(0,0,0,.32);--bs-primary:#e8b75a;--bs-primary-rgb:232,183,90;--bs-body-bg:#080808;--bs-body-color:#f7f4ed;--bs-border-color:#383127;--bs-secondary-color:#b7ada0}
html{color-scheme:dark}
body,body.identity-page,body.portal-body{background:radial-gradient(ellipse at 80% 0%,#32230e 0%,transparent 35%),var(--alto-bg)!important;color:var(--alto-ink)!important;font-family:Manrope,Inter,system-ui,sans-serif}
a{color:var(--alto-gold)}a:hover{color:#ffdfa3}
h1,h2,h3,h4,h5,h6,.navbar-brand{color:var(--alto-ink)}
:focus-visible{outline:2px solid var(--alto-gold)!important;outline-offset:3px}
.navbar,.portal-nav,.identity-header{background:#101010!important;border-color:var(--alto-border)!important;box-shadow:0 3px 28px #0007}
.navbar .nav-link,.navbar-brand,.portal-nav a,.identity-home-link{color:var(--alto-ink)!important}
.navbar .nav-link:hover,.navbar .nav-link.active,.identity-home-link:hover{color:var(--alto-gold)!important}
.navbar-toggler{background:#e8b75a!important}
footer,.footer,.identity-footer{background:#0c0c0c!important;color:var(--alto-muted)!important;border-color:var(--alto-border)!important}
.text-muted,.form-text,small,.identity-card p,.portal-intro p{color:var(--alto-muted)!important}
.card,.manager-card,.manager-stats,.portal-card,.history-item,.identity-card,.wallet-current-balance,.wallet-deposit-address,.rate-summary p,.modal-content,.dropdown-menu,.list-group-item{background:linear-gradient(140deg,#1d1b18,#111)!important;color:var(--alto-ink)!important;border:1px solid var(--alto-border)!important;border-radius:16px;box-shadow:var(--alto-shadow)}
.card-header,.manager-card__toolbar{background:#231d13!important;border-color:var(--alto-border)!important}
.btn-primary,.manager-save,.identity-card .btn-primary,.portal-card button:not(.wallet-action),.portal-card a:not(.wallet-action),.empty a{background:linear-gradient(110deg,#bd8738,#ffdc94,#dba54c)!important;border:1px solid #e8b75a!important;color:#15100a!important;box-shadow:none!important;font-weight:700}
.btn-primary:hover,.manager-save:hover,.identity-card .btn-primary:hover{background:#ffdb8e!important;color:#15100a!important}
.btn-outline-primary{border-color:var(--alto-gold)!important;color:var(--alto-gold)!important}
.btn-outline-primary:hover{background:var(--alto-gold)!important;color:#111!important}
.btn-secondary,.registration-back{background:#292218!important;color:#f4ddad!important;border:1px solid #80622d!important}
input:not([type=checkbox]):not([type=radio]),select,textarea,.form-control,.form-select,.portal-card input,.wallet-select-wrap select,.identity-card .form-control{background:#191919!important;color:#f7f4ed!important;border:1px solid #4c4234!important;border-radius:10px}
input::placeholder,textarea::placeholder{color:#9a9286!important}
.form-floating>label,.portal-card label,.identity-card .form-label{color:var(--alto-muted)!important}
.form-check-input:checked{background-color:#dba54c!important;border-color:#dba54c!important}
table,.table,.manager-table,.wallets-table{color:var(--alto-ink)!important;--bs-table-color:#f7f4ed;--bs-table-bg:#141414;--bs-table-border-color:#383127}
.table th,.manager-table th,.manager-users-table th,.wallets-table th{background:#292218!important;color:#f7f4ed!important;border-color:var(--alto-border)!important}
.table td,.manager-table td,.manager-users-table td,.wallets-table td{background:#151515!important;color:#f7f4ed!important;border-color:var(--alto-border)!important}
.table tbody tr:hover td,.manager-table tbody tr:hover td{background:#282014!important}
.alert-info{background:#2d2416;border-color:#81642f;color:#f4dfb4}
.pagination .page-link{background:#181818;color:#e8b75a;border-color:#383127}
.pagination .active .page-link{background:#e8b75a;border-color:#e8b75a;color:#111}
.manager-page{--manager-ink:#f7f4ed;--manager-muted:#b7ada0;--manager-border:#383127;--manager-primary:#e8b75a}
.manager-page__eyebrow,.request-operation-buy,.identity-eyebrow{color:#e8b75a!important}
.portal-body{--portal-green:#e8b75a;--portal-panel:#171717;--portal-line:#383127;--portal-nav-height:82px}
.portal-sidebar{background:#111!important;border-color:#383127!important}
.portal-sidebar a{color:#c5bdb1!important}
.portal-sidebar a.active,.portal-sidebar a:hover{background:#302515!important;color:#f8d28a!important}
.portal-intro em,.portal-card h1,.wallet-card h1,.operation-buttons button span,.status,.wallet-current-balance small{color:#e8b75a!important}
.portal-card p,.portal-card label,.history-item dt,.wallet-current-balance>span,.wallet-network-field label,.wallets-table td,.rate-summary strong,.wallet-current-balance strong,.wallet-deposit-address strong{color:#f7f4ed!important}
.rate-buttons button,.operation-buttons button,.wallet-card .wallet-action{background:#171717!important;color:#f7f4ed!important;border-color:#51432d!important}
.rate-buttons button.selected,.operation-buttons button.selected{background:#332817!important;border-color:#e8b75a!important}
.progress li{border-color:#51432d!important;color:#b7ada0!important}
.progress li.active,.progress li.done{border-color:#e8b75a!important;color:#e8b75a!important}
.identity-page{--amo7-bg:#080808;--amo7-panel:#171717;--amo7-line:#383127;--amo7-text:#f7f4ed;--amo7-muted:#b7ada0;--amo7-green:#e8b75a;--amo7-green-dark:#ffda91;--amo7-danger:#ef6262}
.identity-bg path{stroke:rgba(232,183,90,.15)!important}
.identity-orb{background:rgba(232,183,90,.08)!important}
.identity-card__mark{background:linear-gradient(135deg,#9a6b29,#ffdf99)!important;box-shadow:0 0 30px #b9894055!important}
.identity-card:before{background:#302616!important}
.identity-card h2,.identity-card h3,.identity-card a,.identity-card .nav-pills .nav-link.active{color:#e8b75a!important}
.identity-card .form-control:focus{border-color:#e8b75a!important;color:#fff!important}
.identity-benefits li,.client-type-card,.client-type-card small{color:#f7f4ed!important}
.client-type-card{background:#24201a!important;border-color:#51432d!important}
.identity-logo img,.portal-nav img{filter:none;opacity:1;object-fit:contain}
.identity-header{box-sizing:border-box;padding-inline:28px;gap:24px}
.identity-logo{min-width:0;max-width:240px;max-height:72px;overflow:hidden}
.identity-logo img{display:block!important;width:auto!important;max-width:100%!important;height:56px!important;object-fit:contain!important}
.identity-home-link{flex:0 0 auto;margin-right:4px;white-space:nowrap}
.portal-nav img{width:auto!important;height:54px!important;max-width:220px!important;object-fit:contain!important}
@media(max-width:600px){.identity-header{padding-inline:16px;gap:12px}.identity-logo{max-width:min(52vw,200px)}.identity-logo img{height:44px!important}.portal-nav img{height:44px!important;max-width:180px!important}}

/* Identity login/register: restore Bootstrap floating-label behavior.
   Keep placeholders visually hidden so labels never overlap them. */
body.identity-page .identity-card .form-floating{position:relative;isolation:isolate;margin-bottom:20px!important}
body.identity-page .identity-card .form-floating>.form-control{
 height:64px!important;min-height:64px!important;
 padding:1.65rem 1rem .45rem!important;
 line-height:1.4!important;background:#191919!important;
 color:#f7f4ed!important;border:1px solid #655139!important;
}
body.identity-page .identity-card .form-floating>.form-control::placeholder{
 color:transparent!important;opacity:0!important;
}
body.identity-page .identity-card .form-floating>label{
 position:absolute!important;top:0!important;left:0!important;
 width:100%!important;height:100%!important;
 padding:1rem!important;line-height:1.4!important;
 color:#c7bba9!important;pointer-events:none!important;
 transform:none;transform-origin:0 0!important;
 background:transparent!important;opacity:1!important;
 transition:transform .15s ease-in-out,color .15s ease-in-out!important;
}
body.identity-page .identity-card .form-floating>label::after{
 background:transparent!important;display:none!important;
}
body.identity-page .identity-card .form-floating>.form-control:focus~label,
body.identity-page .identity-card .form-floating>.form-control:not(:placeholder-shown)~label{
 transform:scale(.78) translateY(-.38rem) translateX(.25rem)!important;
 color:#e8b75a!important;
}
body.identity-page .identity-card .form-floating>.form-control:focus{
 border-color:#e8b75a!important;box-shadow:0 0 0 3px #e8b75a25!important;
}
body.identity-page .identity-card .form-floating>.form-control:-webkit-autofill{
 -webkit-text-fill-color:#f7f4ed!important;
 -webkit-box-shadow:0 0 0 1000px #191919 inset!important;
}

/* Gold operation buttons need dark labels as well as dark rate values. */
.portal-card .operation-buttons button span,
.portal-card .operation-buttons button strong {
    color: #15100a !important;
}
.portal-card .operation-buttons button:focus-visible {
    outline: 2px solid #ffdc94;
    outline-offset: 3px;
}
/* Keep the manager rate editor consistent with the black and gold theme. */
.rates-page {
    --rates-ink: #f7f4ed;
    --rates-muted: #b7ada0;
    --rates-border: #51432d;
    --rates-primary: #e8b75a;
}
.rates-page .rate-card {
    background: linear-gradient(140deg, #1d1b18, #111);
    color: var(--rates-ink);
    box-shadow: var(--alto-shadow);
}
.rates-page .rate-card__header {
    background: #231d13;
    border-color: var(--rates-border);
}
.rates-page .rate-card__badge,
.rates-page .external-history-link {
    background: #302616;
    color: #f8d28a;
    border-color: #80622d;
}
.rates-page .external-history-link:hover {
    background: #45331c;
    color: #ffe4ac;
}
.rates-page .rate-field__heading label,
.rates-page .rate-card__title h2 { color: var(--rates-ink); }
.rates-page .rate-input__currency { color: var(--rates-muted); }
.rates-page .rate-note {
    background: #292218;
    color: #e6d8c1;
    border: 1px solid var(--rates-border);
}
.rates-page .rate-note svg { stroke: #e8b75a; }
.rates-page .rates-status {
    background: #14271e;
    color: #a1e5bd;
    border-color: #397754;
}
/* Dark panels and readable labels in the manager user list. */
.manager-page .manager-search {
    background: #191919;
    color: #b7ada0;
    border-color: #51432d;
}
.manager-page .manager-search:focus-within {
    border-color: #e8b75a;
    box-shadow: 0 0 0 3px rgba(232, 183, 90, .15);
}
.manager-page .manager-search input {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0;
}
.manager-page .status-pill--success {
    background: #142d21;
    color: #9ce4bd;
}
.manager-page .status-pill--neutral {
    background: #302c26;
    color: #d1c7b9;
}
.manager-page .user-contact strong,
.manager-page .passport-data strong { color: #f7f4ed; }
.manager-page .passport-data b,
.manager-page .manager-table__id { color: #c8ba9f !important; }
.manager-page .manager-table-scroll { scrollbar-color: #685638 #151515; }

/* Manager requests: one dark surface and explicit contrast for every table state. */
.requests-page {
    --requests-ink: #f7f4ed;
    --requests-muted: #c4b9a9;
    --requests-border: #483e30;
    --requests-primary: #e8b75a;
}
.requests-page .requests-summary,
.requests-page .requests-card { background: #151515; box-shadow: var(--alto-shadow); }
.requests-page .requests-card__header { background: #231d13; }
.requests-page .requests-summary__item--pending strong { color: #f3c96f; }
.requests-page .requests-summary__item--failed strong { color: #ff9ca6; }
.requests-page .requests-card__count,
.requests-page .rate-type { background: #332919; color: #f4d694; }
.requests-page .requests-table-wrapper { scrollbar-color: #806b46 #151515; }
.requests-page .requests-table { font-size: .85rem; line-height: 1.5; }
.requests-page .requests-table th {
    background: #292218;
    color: #e9dcc8;
    border-color: var(--requests-border);
    padding: 14px 16px;
}
.requests-page .requests-table td {
    background: #151515;
    color: var(--requests-ink);
    border-color: var(--requests-border);
    padding: 18px 16px;
    overflow-wrap: anywhere;
}
.requests-page .requests-table tbody tr:nth-child(even) td { background: #1b1a18; }
.requests-page .requests-table tbody tr.request-row--failed td { background: #291b1e; }
.requests-page .requests-table tbody tr:hover td { background: #2c251a; }
.requests-page .requests-table th:first-child,
.requests-page .requests-table td:first-child { box-shadow: 1px 0 0 var(--requests-border); }
.requests-page .request-number,
.requests-page .currency-pair-text,
.requests-page .request-contact strong { color: #f7f4ed; }
.requests-page .request-value { min-width: 180px; }
.requests-page .request-amount {
    color: #ffda91;
    font-size: 1rem;
    font-variant-numeric: tabular-nums;
    overflow-wrap: normal;
}
.requests-page .request-currency { display: inline-block; color: #f7f4ed; font-size: .8rem; }
.requests-page .requests-table time,
.requests-page .requests-table time span,
.requests-page .request-rate,
.requests-page .request-contact span,
.requests-page .request-comment,
.requests-page .request-no-data,
.requests-page .request-user-missing { color: var(--requests-muted); }
.requests-page .operation-badge--buy,
.requests-page .requests-empty__icon { background: #173126; color: #9ce4bd; }
.requests-page .operation-badge--sell { background: #3a2027; color: #ffacb6; }
.requests-page .request-wallet code { background: #24211c; border-color: #655437; color: #f5d799; }
.requests-page .request-wallet-copy { background: #24211c; border-color: #655437; color: #f5d799; }
.requests-page .request-wallet-copy:hover { background: #44351e; border-color: #e8b75a; }
.requests-page .request-aml-select { min-width: 125px; min-height: 38px; }
.requests-page .request-save-button {
    background: linear-gradient(110deg, #bd8738, #ffdc94, #dba54c);
    color: #15100a;
    padding: 9px 12px;
}
.requests-page .request-save-button:hover { background: #ffdc94; color: #15100a; }
.requests-page .request-finish-button { background: #173126; color: #9ce4bd; border-color: #397754; }
.requests-page .request-finish-button:hover { background: #224b37; color: #c3f7d9; border-color: #66a780; }
.requests-page .request-cancel-button { background: #3a2027; color: #ffacb6; border-color: #8c4650; }
.requests-page .request-cancel-button:hover { background: #522b35; color: #ffd1d7; border-color: #bb6975; }
.requests-page .request-finish-button:disabled,
.requests-page .request-cancel-button:disabled { background: #27241f; color: #bfb4a3; border-color: #514632; }
.requests-page .request-row--approved .request-aml-select { border-color: #397754 !important; color: #9ce4bd !important; }
.requests-page .request-row--failed .request-aml-select { border-color: #8c4650 !important; color: #ffacb6 !important; }
.requests-page .request-row--pending .request-aml-select { border-color: #80622d !important; color: #f4d694 !important; }
