:root{ --bg:#0c0c0c; --panel:#2a2a2a; --muted:#8a8a8a; --white:#fff; --red:#e10606; --green:#29c26a; --yellow:#f0c320; }
*{box-sizing:border-box} html,body{height:100%}
body{margin:0; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Helvetica Neue",Arial; background:var(--bg); color:var(--white); -webkit-font-smoothing:antialiased}
.brand{font-weight:900; letter-spacing:2px; font-size:44px; text-align:center}
.dot{color:var(--red)} .label-strong{font-weight:900; opacity:.55}
.screen{min-height:100vh; display:none} .screen.active{display:flex}
#app{flex-direction:column}
header{display:flex; align-items:center; justify-content:center; gap:12px; padding:18px 18px 0; position:relative}
header .gear{position:absolute; right:18px; width:28px; height:28px; cursor:pointer}
main{flex:1; padding:18px; padding-bottom:120px}

/* LOGIN */
#login{flex-direction:column; align-items:center; justify-content:flex-start; padding:6vh 18px 24px}
#login .inputs{margin-top:8vh; width:min(520px,92vw)}
.input{background:#f3f3f3; color:#111; border-radius:36px; padding:20px 26px; font-size:26px; font-weight:700; margin:16px 0; display:flex; align-items:center}
.input input{border:none; background:transparent; outline:0; width:100%; font-size:26px; font-weight:700; color:#111}
.btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; border:none; cursor:pointer; font-weight:800}
.btn-xl{padding:18px 36px; font-size:28px; border-radius:36px}
.btn-primary{background:#fff; color:#111}
.login-cta{position:fixed; left:0; right:0; bottom:0; padding:36px 24px 22px; border-top-left-radius:220px; border-top-right-radius:220px; background:radial-gradient(160% 90% at 50% 100%, #a10000 0%, #5c0000 65%, #2b0000 100%)}
.login-cta .center{display:flex; justify-content:center}
.login-help{margin-top:18px; text-align:center}
.login-help a{color:#dfe7ff}
.login-note{opacity:.9; font-size:18px; margin-top:10px}
.error{color:#ff8f8f; font-weight:700; text-align:center; min-height:24px; margin-top:6px}

/* CARDS/TEXT */
.card{background:linear-gradient(180deg,#3a3a3a 0%,#292929 100%); border-radius:28px; padding:22px; box-shadow:0 10px 25px rgb(0 0 0 / .45)}
.muted{color:var(--muted)} .big-amount{font-size:48px; font-weight:900}
.section-title{font-size:28px; font-weight:900; margin:10px 2px; text-align:center}

/* PILL BUTTONS */
.pillbar{display:flex; justify-content:center; gap:12px; margin:14px 0 18px}
.pill{background:#3a3a3a; color:#fff; border-radius:999px; padding:12px 20px; font-weight:800; cursor:pointer; user-select:none; box-shadow: inset 0 -2px 0 rgba(0,0,0,.25), 0 2px 0 rgba(255,255,255,.04)}
.pill.active{outline:2px solid rgba(255,255,255,.85); outline-offset:2px}

/* GRAPH */
.graph{height:220px; border-radius:26px; overflow:hidden; background:linear-gradient(180deg, rgba(255,0,0,0.18), rgba(255,0,0,0.02)); border:1px solid rgba(255,255,255,.06)}
canvas{width:100%; height:100%}

/* STATUS */
.status{display:flex; gap:26px; margin-top:18px}
.status .item{flex:1} .status .v{font-size:26px; font-weight:800}
.green{color:var(--green)} .yellow{color:var(--yellow)}

/* NAV */
nav{position:fixed; left:18px; right:18px; bottom:18px; background:linear-gradient(180deg,#b40000 0%,#700000 100%); border-radius:38px; padding:14px 18px; box-shadow:0 18px 35px rgb(0 0 0 / .55)}
.tabs{display:flex; justify-content:space-between; align-items:center}
.tab{width:54px; height:54px; border-radius:16px; display:flex; align-items:center; justify-content:center; cursor:pointer}
.tab.active{background:rgba(0,0,0,.22)} .tab svg{width:32px; height:32px; fill:#fff}

/* WITHDRAWALS LIST */
.withdraw-list{margin-top:12px}
.withdraw-list .item{display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:12px; padding:10px 14px; margin:8px 0; border-radius:10px; background:#3a3a3a}
.item .bullet{width:10px; height:10px; border-radius:50%; background:#575757}
.item .meta{opacity:.9}
.method{background:#1c1c1c; padding:6px 12px; border-radius:8px; font-weight:800}
.dots{text-align:center; font-size:28px; color:#bbb; margin:8px 0 10px}

/* FORM */
.form-group{margin:12px 0}
.text-input{width:100%; background:#3a3a3a; border:none; color:#fff; padding:18px; border-radius:22px; font-size:22px; outline: none}
.radios{display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:10px}
@media (max-width:720px){ .radios{grid-template-columns:1fr} }
.radio{background:#3a3a3a; padding:16px; border-radius:16px; display:flex; align-items:center; justify-content:space-between; gap:14px}
.checkline{display:flex; align-items:center; gap:8px}
.actions .btn-dark{margin-top:6px}
.btn-dark{background:#3a3a3a; color:#fff; border-radius:30px; padding:18px; font-size:22px; font-weight:800; width:100%; margin:12px 0; border:none; cursor:pointer}
.btn-bitcoin{background:linear-gradient(180deg,#ffa63a,#d96b00); color:#fff; font-weight:900; border-radius:36px; padding:18px; font-size:22px; width:100%; border:none; cursor:pointer; display:flex; align-items:center; gap:10px; justify-content:center}
.btc-icon{width:22px; height:22px; filter:invert(1)} /* icône en blanc */

/* SUCCESS */
.success-page{min-height:62vh; display:flex; align-items:center; justify-content:center; flex-direction:column; gap:24px; text-align:center}
.success-icon{width:120px; height:120px}

/* LOADING */
.loading{min-height:62vh; display:flex; align-items:center; justify-content:center; gap:18px; flex-direction:column}
.spinner{width:60px; height:60px; border-radius:50%; border:6px solid rgba(255,255,255,.25); border-top-color:#fff; animation:spin 1s linear infinite}
@keyframes spin { to { transform:rotate(360deg) } }
.loading-text{color:#ddd}

/* SETTINGS */
.sheet{position:fixed; right:18px; top:70px; width:min(680px,92vw); max-height:82vh; overflow:auto; background:#1a1a1a; border:1px solid rgba(255,255,255,.06); border-radius:24px; padding:18px; box-shadow:0 18px 35px rgb(0 0 0 / .55); display:none}
.sheet.active{display:block} .sheet h3{margin:6px 2px 14px}
.grid{display:grid; grid-template-columns: 1fr 1fr; gap:12px}
.sheet .text-input{background:#2b2b2b}
.close{position:sticky; bottom:0; display:flex; justify-content:flex-end; margin-top:12px}
.small{font-size:13px; color:var(--muted)}
.setting-row{display:grid; grid-template-columns: 1fr .9fr .9fr .9fr auto; gap:8px; align-items:center; padding:6px 0; border-bottom:1px dashed #333}
.setting-row > input, .setting-row > select{width:100%}
.setting-row:last-child{border-bottom:none}
