/* LenCapital 3.1: responsive admin workspace and cross-browser select listboxes */
select:not(.native-enhanced){
 appearance:none;-webkit-appearance:none;-moz-appearance:none;
 background-color:var(--field);
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' stroke='%23ffc000' stroke-width='1.7' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
 background-position:right .85rem center;background-size:1rem;background-repeat:no-repeat;
 padding-right:2.5rem;cursor:pointer;
}
select:not(.native-enhanced) option{background:var(--surface);color:var(--text);}
.ui-select{position:relative;min-width:0;width:100%;isolation:isolate;}
.ui-select .native-enhanced{position:absolute!important;inset:0 auto auto 0;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;clip-path:inset(50%);padding:0!important;border:0!important;}
.ui-select-button{
 display:flex;align-items:center;justify-content:space-between;gap:.85rem;width:100%;min-width:0;
 min-height:2.9rem;padding:.75rem .95rem;text-align:left;line-height:1.4;
 color:var(--text);background:var(--field);border:1px solid var(--line);
 border-radius:.65rem;font:inherit;font-size:.82rem;font-weight:500;cursor:pointer;
 transition:border-color .15s,background .15s,box-shadow .15s;
}
.ui-select-button::after{content:"";width:.55rem;height:.55rem;flex:0 0 .55rem;
 border-right:2px solid var(--gold-text);border-bottom:2px solid var(--gold-text);
 transform:rotate(45deg) translateY(-.15rem);transition:transform .15s;}
.select-placeholder{color:var(--muted)}
.ui-select-button:hover{border-color:#ffc00080;background:var(--surface-2)}
.ui-select-button:focus-visible,.ui-select.select-open>.ui-select-button{outline:none;border-color:var(--gold);box-shadow:0 0 0 .16rem #ffc00025;}
.ui-select.select-open>.ui-select-button::after{transform:rotate(225deg) translateY(-.12rem)}
.ui-select-button:disabled{opacity:.5;cursor:not-allowed}
.ui-select-menu{
 position:absolute;z-index:105;top:calc(100% + .35rem);left:0;right:0;
 overflow-y:auto;overscroll-behavior:contain;max-height:18rem;max-height:min(18rem,48vh);max-height:min(18rem,48dvh);
 padding:.35rem;background:var(--surface-2);border:1px solid #ffc00065;
 border-radius:.75rem;box-shadow:0 1.25rem 2.5rem #0009;
 scrollbar-width:thin;scrollbar-color:var(--dark-gold) var(--surface);
}
.ui-select.select-open{z-index:95}
.ui-select.select-above>.ui-select-menu{top:auto;bottom:calc(100% + .35rem)}
.ui-select-menu.select-portal{position:fixed!important;z-index:160;right:auto;bottom:auto;max-height:min(18rem,48dvh)}
.ui-select-menu[hidden]{display:none!important}
.select-option{
 position:relative;display:block;width:100%;min-width:0;padding:.76rem 2rem .76rem .8rem;
 color:var(--text);background:transparent;border:0;border-radius:.45rem;
 font:inherit;font-size:.8rem;line-height:1.4;text-align:left;overflow-wrap:anywhere;cursor:pointer;
}
.select-option:hover,.select-option:focus-visible{outline:0;background:#ffc00016;color:var(--text)}
.select-option[aria-selected="true"]{background:#ffc00022;color:var(--gold-text);font-weight:600}
.select-option[aria-selected="true"]::after{content:"✓";position:absolute;right:.85rem;top:50%;transform:translateY(-50%);color:var(--gold-text)}
.select-option:disabled{opacity:.4;cursor:not-allowed}
/* Modals remain usable on narrow devices and with the on-screen keyboard. */
.modal{max-width:40rem;min-width:0;padding:clamp(1rem,2vw,1.7rem);}
.modal .form-grid{gap:.1rem 1rem}
.modal h2{min-width:0;overflow-wrap:anywhere}
.modal .ui-select-menu{max-height:min(12rem,35dvh)}
.admin-tabs{
 display:flex;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;gap:.45rem;
 margin:0 0 1.3rem;padding:0 0 .5rem;scrollbar-width:none;-ms-overflow-style:none;
 -webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;cursor:grab;position:relative;
}
.admin-tabs::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
.admin-tabs.is-pointer-ready{touch-action:pan-y pinch-zoom}
.admin-tabs.is-dragging,.admin-tabs.is-dragging *{cursor:grabbing!important;user-select:none!important;-webkit-user-select:none!important}
.admin-tabs:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:.5rem}
.admin-tabs .btn{white-space:nowrap;flex:0 0 auto;font-size:.75rem;padding:.65rem .85rem}
.admin-welcome{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.2rem}
.admin-welcome h2{font-size:clamp(1.35rem,2.3vw,1.8rem);margin:.1rem 0}
.admin-welcome p{font-size:.8rem;max-width:40rem;margin:0}
.admin-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-bottom:1rem}
.admin-stat{display:flex;flex-direction:column;gap:.35rem;min-width:0;padding:1.05rem;border-radius:.8rem;border:1px solid var(--line);background:var(--surface);text-decoration:none}
.admin-stat:hover,.admin-stat:focus-visible{border-color:#ffc00099;outline:0}
.admin-stat span,.admin-stat small{color:var(--muted);font-size:.72rem}
.admin-stat strong{font-size:clamp(1.4rem,3vw,2.1rem);font-variant-numeric:tabular-nums;line-height:1.2}
.admin-stat small{font-size:.66rem;color:var(--gold-text)}
.admin-grid-top,.admin-dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;margin-bottom:1rem}
.admin-grid-top>.panel,.admin-dashboard-grid>.panel{min-width:0}
.admin-chart-panel .section-bar{align-items:flex-start}
.chart-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;max-width:24rem}
.chart-controls .field{min-width:0;margin-bottom:.35rem}
.activity-chart{min-height:14rem;margin-top:.4rem;overflow:hidden}
.chart-summary{display:flex;align-items:baseline;gap:.75rem;flex-wrap:wrap}
.chart-summary strong{font-size:1.45rem;color:var(--gold-text)}
.chart-summary span{font-size:.72rem;color:var(--muted)}
.admin-activity-svg{display:block;width:100%;max-height:16rem;height:auto;overflow:visible}
.chart-labels{fill:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}
.admin-quick-links{display:grid;gap:.4rem;margin-top:1rem}
.admin-quick-links>a{display:flex;justify-content:space-between;align-items:center;gap:.6rem;padding:.85rem;border:1px solid var(--line);border-radius:.6rem;background:var(--field);font-size:.8rem}
.admin-quick-links>a:hover{border-color:#ffc00077}
.admin-quick-links strong{font-weight:500;font-size:.7rem;color:var(--gold-text);white-space:nowrap}
.admin-cards{display:grid;gap:.5rem}
.admin-item{display:flex;gap:.8rem;justify-content:space-between;align-items:center;padding:.8rem;border:1px solid var(--line);border-radius:.55rem;min-width:0}
.admin-item>div{min-width:0}
.admin-item strong{display:block;font-size:.8rem;overflow-wrap:anywhere}
.admin-item small,.admin-cell-small{display:block;font-size:.68rem;color:var(--muted);overflow-wrap:anywhere}
.admin-item button{flex:0 0 auto;font-size:.7rem}
.admin-section-head{align-items:flex-start;flex-wrap:wrap;gap:.8rem}
.admin-section-head .btn{flex:0 0 auto}
.rates-table{min-width:70rem}
.rates-table td{font-size:.75rem}
.number-cell{font-variant-numeric:tabular-nums;white-space:nowrap}
.admin-kyc-inline{display:flex;flex-direction:column;gap:.4rem;min-width:10rem}
.admin-kyc-inline .ui-select-button{font-size:.72rem;padding:.55rem .65rem;min-height:2.4rem}
.admin-kyc-inline .btn{font-size:.7rem}
.admin-thread{display:grid;gap:.7rem;max-height:15rem;overflow-y:auto;margin-bottom:1.2rem;padding:.4rem .2rem}
.admin-message{padding:.75rem .85rem;background:var(--field);border:1px solid var(--line);border-radius:.7rem;max-width:95%}
.admin-message.admin-message-staff{justify-self:end;background:#ffc0000f;border-color:#ffc00035}
.admin-message small{display:block;color:var(--muted);font-size:.64rem;margin-bottom:.2rem}
.admin-message p{margin:0;white-space:normal;overflow-wrap:anywhere;color:var(--text);font-size:.8rem}
@media (min-width:600px){.admin-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-stats>.admin-stat{padding:1.1rem}.admin-kyc-inline{min-width:11rem}}
@media (min-width:900px){.admin-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-dashboard-grid .admin-full-width{grid-column:1/-1}}
@media (min-width:1200px){.admin-grid-top{grid-template-columns:minmax(0,1.7fr) minmax(17rem,.8fr)}}
@media (max-width:599px){.admin-welcome>.btn{width:100%}.admin-quick-links>a{padding:.75rem}.admin-stats{gap:.5rem}.admin-stat{padding:.85rem}.modal-layer{padding:.5rem}.modal{max-height:calc(100dvh - 1rem)}.admin-kyc-inline{min-width:9rem}}
@media (prefers-reduced-motion:reduce){.ui-select-button,.ui-select-button::after{transition:none}}

/* LenCapital 3.1.1 FAQ administration */
.faq-public details{border-bottom:1px solid var(--line);padding:.75rem 0}
.faq-public details:last-child{border-bottom:0}
.faq-public summary{cursor:pointer;font-weight:600;line-height:1.5}
.faq-public details p{overflow-wrap:anywhere;white-space:pre-line;color:var(--muted);margin:.65rem 0 0}
.faq-admin-list{display:grid;gap:.8rem;margin-top:1rem}
.faq-admin-item{display:flex;flex-direction:column;gap:1rem;padding:1rem;border:1px solid var(--line);border-radius:.75rem;background:var(--field)}
.faq-admin-text{min-width:0}.faq-admin-text .badge{margin-right:.5rem}
.faq-admin-text h3{font-size:.95rem;line-height:1.35;overflow-wrap:anywhere;margin:.7rem 0 .35rem}
.faq-admin-text p{font-size:.78rem;line-height:1.6;color:var(--muted);white-space:pre-line;overflow-wrap:anywhere;margin:0}
.faq-admin-actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:flex-start}
.faq-admin-actions .btn{flex:0 0 auto}
@media(min-width:900px){.faq-admin-item{flex-direction:row;align-items:flex-start;justify-content:space-between}.faq-admin-text{flex:1}.faq-admin-actions{flex-shrink:0}}

/* LenCapital 3.1.2: themed thin scrollbars across all scrollable areas.
   Native overlay scrollbar visibility is ultimately controlled by the OS/browser. */
:root{
 --scroll-thumb:#76601c;--scroll-thumb-hover:#be9826;--scroll-track:#141717;
}
body.light-theme,html.light-scrollbars{
 --scroll-thumb:#a38a45;--scroll-thumb-hover:#86651b;--scroll-track:#e9eeeb;
}
html,*{scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) var(--scroll-track)}
::-webkit-scrollbar{width:6px;height:6px}
::-webkit-scrollbar-track{background:var(--scroll-track);border-radius:1rem}
::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:1rem}
::-webkit-scrollbar-thumb:hover{background:var(--scroll-thumb-hover)}
::-webkit-scrollbar-corner{background:var(--scroll-track)}
/* Hide only the admin tab scroll indicator; horizontal scrolling remains available. */
.admin-tabs{scrollbar-width:none!important;-ms-overflow-style:none!important}
.admin-tabs::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
/* Cross-browser accessible increment/decrement controls for number inputs. */
.ui-number{position:relative;width:100%;min-width:0;display:block}
.ui-number>input[type="number"]{
 width:100%;min-height:2.9rem;padding-right:3.65rem;
 -moz-appearance:textfield;appearance:textfield;
}
.ui-number>input[type="number"]::-webkit-outer-spin-button,
.ui-number>input[type="number"]::-webkit-inner-spin-button{
 -webkit-appearance:none;appearance:none;margin:0;
}
.ui-number-controls{
 position:absolute;top:.28rem;right:.35rem;bottom:.28rem;width:2.35rem;
 display:flex;flex-direction:column;overflow:hidden;
 border:1px solid var(--line);border-radius:.46rem;background:var(--surface-2);
}
.ui-number-step{
 display:flex;align-items:center;justify-content:center;flex:1;min-height:0;width:100%;
 color:var(--gold-text);background:transparent;border:0;border-radius:0;padding:0;
 font:inherit;cursor:pointer;touch-action:manipulation;
}
.ui-number-step+.ui-number-step{border-top:1px solid var(--line)}
.ui-number-step::before{
 content:"";display:block;width:.43rem;height:.43rem;
 border-top:2px solid currentColor;border-left:2px solid currentColor;
 transform:rotate(45deg) translate(.1rem,.1rem);
}
.ui-number-step[data-step="-1"]::before{transform:rotate(225deg) translate(.1rem,.1rem)}
.ui-number-step:hover:not(:disabled),.ui-number-step:focus-visible{background:#ffc0001c;color:var(--gold-text)}
.ui-number-step:focus-visible{outline:2px solid var(--gold);outline-offset:-2px;z-index:1}
.ui-number-step:disabled{opacity:.28;cursor:not-allowed}
.ui-number:focus-within>input{border-color:var(--gold);box-shadow:0 0 0 .13rem #ffc0001b}
.field-number>label{color:var(--muted);cursor:text}
.field-number>label>span{color:var(--muted)}
@media (pointer:coarse){.ui-number-controls{width:2.75rem}.ui-number>input[type="number"]{padding-right:4.05rem}}
@media print{.ui-number-controls{display:none}}

/* 3.1.4 — market cards and calculator in the supplied index.html layout. */
.market-tools{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;justify-content:flex-end}
.market-tools .text-button{font-size:.74rem;color:var(--gold-text);border:0;background:transparent;padding:.45rem}
.market-tools .text-button:hover{text-decoration:underline}
.quote-card{min-width:0;overflow:hidden}
.quote-top{min-width:0;align-items:flex-start}
.quote-value{flex:0 0 auto;min-width:0}
.quote-value small{display:block;font-size:.7rem;margin-top:.2rem}
.quote-value .positive{color:var(--green)}.quote-value .negative{color:var(--red)}
.quote-name{min-width:0;overflow:hidden}
.coin-letter{display:grid;place-items:center;border-radius:50%;background:#ffbf0040;color:var(--gold-text);font-size:.66rem;font-weight:700}
.quote-minmax{overflow-wrap:anywhere}
.calculator .segments button.active{background:#ffc0001c;color:var(--gold-text);box-shadow:inset 0 0 0 1px #ffc00065}
.calculator .segments button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.calculator .swap-row{height:.7rem}
.calculator .swap{width:2.7rem;height:2.7rem;display:grid;place-items:center;border-radius:50%;border:1px solid var(--gold);background:var(--surface);color:var(--gold-text);font-size:1.3rem;position:relative;top:-.85rem;box-shadow:0 .3rem 1rem #0005;z-index:2}
.calculator .swap:hover{background:var(--surface-2)}
.calculator .exchange-field{margin-top:.65rem}
.calculator .exchange-field .amount-line input{min-width:0;width:100%;padding:.45rem 0;border:0;box-shadow:none}
.calculator .exchange-field .amount-line input:focus{outline:none}
.calculator .exchange-field:focus-within{border-color:var(--gold);box-shadow:0 0 0 .13rem #ffc00018}
.calculator .currency-badge{white-space:nowrap;font-size:.85rem;flex-shrink:0}
.calculator .presets{margin-top:.9rem}
.calculator .coin-fields{margin-top:1rem}
.calculator .rate-row strong{font-variant-numeric:tabular-nums}
.calculator #quote-preview{margin-top:1rem;white-space:pre-line;overflow-wrap:anywhere}
.calculator #calc-error:not(:empty){color:var(--red);margin:.65rem 0}
.rate-icon-cell{display:flex;gap:.6rem;align-items:center;min-width:6.5rem}
.rate-icon-cell .coin-logo{width:1.75rem;height:1.75rem;object-fit:contain}
.modal input[type=file]{cursor:pointer;max-width:100%;font-size:.8rem;line-height:1.6}
.modal input[type=file]::file-selector-button{padding:.5rem .7rem;border:1px solid var(--gold);border-radius:.4rem;background:var(--surface-2);color:var(--gold-text);font:inherit;margin-right:.6rem;cursor:pointer}
@media(max-width:599px){.market-section>.section-bar{align-items:flex-start;gap:.6rem;flex-wrap:wrap}.market-tools{justify-content:flex-start}.calculator .currency-badge{font-size:.74rem}.calculator .segments button{font-size:.69rem}}
@media(min-width:900px) and (max-width:1199px){.quote-top{flex-wrap:wrap}.quote-value{margin-left:0;width:100%;text-align:left}.quote-value small{display:inline-block;margin-left:.35rem}}

/* 3.1.5 — one accessible market card per asset/network; click to choose sell direction. */
.quote-card-action{display:block;width:100%;margin:0;text-align:left;color:var(--text);font:inherit;cursor:pointer;appearance:none;-webkit-appearance:none;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}
.quote-card-action:hover{border-color:var(--gold);box-shadow:0 .15rem 1rem #0002}
.quote-card-action:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.quote-card-action.is-selected{border-color:#ffc00080;box-shadow:inset 0 0 0 1px #ffc00024}
.quote-card-action .quote-network{display:inline-block;max-width:100%;margin-top:.28rem;padding:.15rem .4rem;border-radius:.3rem;border:1px solid #ffc00050;background:#ffc00013;color:var(--gold-text);font-size:.63rem;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
#exchange-calculator{scroll-margin-top:5.7rem}
#exchange-calculator:focus{outline:0}
#calc-selection-status{margin:.8rem 0 0;color:var(--gold-text);min-height:1em}
@media(prefers-reduced-motion:reduce){.quote-card-action{transition:none}}
