@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap";:root{--bg-a:#0a111d;--bg-b:#121d2c;--panel:#141f31de;--line:#8499ba3b;--text-main:#f3f8ff;--text-subtle:#9cafc6;--accent:#f8c259;--accent-alt:#76d7d1}*{box-sizing:border-box}body{background:radial-gradient(60vw 40vw at 10% -10%, #76d7d11c, transparent 70%), radial-gradient(45vw 30vw at 90% 0%, #f8c2591a, transparent 70%), linear-gradient(160deg, var(--bg-a), var(--bg-b));min-height:100vh;color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:Manrope,Segoe UI,sans-serif}#root{min-height:100vh}.wallet-shell{min-height:100vh;color:var(--text-main);grid-template-columns:320px minmax(0,1fr);animation:.45s fade-in;display:grid}.left-rail{border-right:1px solid var(--line);background:linear-gradient(175deg,#151f2f 0%,#0f1623 100%);flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.brand-lockup{align-items:center;gap:.8rem;display:flex}.brand-glyph{background:linear-gradient(145deg, var(--accent), var(--accent-alt));color:#0f1115;border-radius:14px;place-items:center;width:44px;height:44px;font-weight:700;display:grid}.brand-lockup h1{margin:0;font-size:1.1rem}.brand-lockup p{color:var(--text-subtle);margin:.15rem 0 0;font-size:.82rem}.rail-card,.action-card,.hero-card,.activity-card{border:1px solid var(--line);background:var(--panel);border-radius:16px;box-shadow:0 18px 45px #060a1240}.rail-card{flex-direction:column;gap:.55rem;padding:.9rem;display:flex}.label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-subtle);font-size:.68rem}input,select,button{font:inherit}input,select{box-sizing:border-box;border:1px solid var(--line);width:100%;color:var(--text-main);background:#0f1623;border-radius:10px;padding:.58rem .72rem}button{color:#0d1016;background:linear-gradient(145deg, var(--accent), var(--accent-alt));cursor:pointer;border:0;border-radius:10px;padding:.64rem .8rem;font-weight:700;transition:transform .16s,filter .16s}button:hover{filter:brightness(1.03);transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.65}.health{color:var(--text-subtle);margin:0;font-size:.85rem}.status-strip{border:1px solid var(--line);white-space:normal;overflow-wrap:anywhere;word-break:break-word;background:#111926a6;border-radius:12px;margin-top:auto;padding:.72rem;font-size:.9rem}.main-view{align-content:start;gap:1rem;padding:1.5rem;display:grid}.hero-card{background:linear-gradient(145deg,#202c42f2,#141c2bf2);grid-template-columns:1fr 1fr;gap:1rem;padding:1.15rem;display:grid}.hero-card h2{margin:.3rem 0;font-size:1.5rem}.totals-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.value{margin:.3rem 0 0;font-size:1rem;font-weight:700}.actions-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.action-card{gap:.7rem;padding:1rem;display:grid}.action-card h3,.activity-card h3{margin:0}.action-card label{color:var(--text-subtle);gap:.35rem;font-size:.88rem;display:grid}.activity-card{padding:1rem}.activity-card ul{gap:.65rem;margin:.8rem 0 0;padding:0;list-style:none;display:grid}.activity-row{border:1px solid var(--line);background:#0e1522bf;border-radius:12px;justify-content:space-between;align-items:center;gap:1rem;padding:.72rem;list-style:none;display:flex}.activity-row--link{color:inherit;cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s}.activity-row--link:hover{background:#ffffff0f;border-color:#ffffff40}.activity-card p,.activity-card strong{margin:0}.subtle{color:var(--text-subtle);white-space:normal;overflow-wrap:anywhere;word-break:break-word;font-size:.85rem}.mode-picker-shell{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.mode-picker-card{flex-direction:column;gap:2rem;width:100%;max-width:480px;display:flex}.brand-lockup--centered{text-align:left;justify-content:center}.brand-glyph--lg{width:52px;height:52px;font-size:1.6rem}.mode-options{flex-direction:column;gap:.75rem;display:flex}.mode-btn{text-align:left;border:1px solid var(--line);color:var(--text);cursor:pointer;background:#0e1522bf;border-radius:14px;flex-direction:column;gap:.3rem;width:100%;padding:1.1rem 1.2rem;transition:background .15s,border-color .15s;display:flex}.mode-btn:hover{background:#ffffff0f;border-color:#ffffff40}.mode-btn--admin{border-color:#6366f166}.mode-btn--admin:hover{background:#6366f114;border-color:#6366f1cc}.mode-btn__title{font-size:1rem;font-weight:600}.mode-btn__desc{color:var(--text-subtle);font-size:.82rem}.mode-toggle{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.mode-chip{color:var(--text-subtle);border:1px solid var(--line);background:#0e1522bf}.mode-chip--active{background:linear-gradient(145deg, var(--accent), var(--accent-alt));color:#0d1016;border-color:#0000}.wallet-connection,.wallet-summary{gap:.5rem;display:grid}.wallet-connection strong,.wallet-summary strong{word-break:break-all;font-size:.88rem}.wallet-summary{border:1px solid var(--line);background:#0e152273;border-radius:12px;padding:.75rem}.back-btn{color:var(--text-subtle);cursor:pointer;background:0 0;border:none;padding:0 .4rem 0 0;font-size:1rem;line-height:1;transition:color .15s}.back-btn:hover{color:var(--text)}.status-strip--success{color:#4ade80}.status-strip--error{color:#f87171}.actions-grid--single{grid-template-columns:1fr;max-width:480px}.login-shell{justify-content:center;align-items:center}.login-panel{flex-direction:column;gap:1.5rem;width:100%;max-width:420px;display:flex}.rail-tab-nav{border-top:1px solid var(--line);gap:.4rem;margin-top:auto;padding-top:1rem;display:flex}.rail-tab{border:1px solid var(--line);color:var(--text-subtle);cursor:pointer;background:0 0;border-radius:8px;flex:1;padding:.5rem;font-size:.85rem;transition:background .15s,color .15s}.rail-tab:hover{color:var(--text);background:#ffffff0f}.rail-tab--active{background:var(--accent);border-color:var(--accent);color:#fff}.admin-login-wrap{justify-content:center;padding:2rem 0;display:flex}.admin-login-card{width:100%;max-width:360px}.admin-wrap{flex-direction:column;gap:1.5rem;display:flex}.admin-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.admin-header h2{margin:0 0 .25rem}.btn-ghost{border:1px solid var(--line);color:var(--text-subtle);cursor:pointer;white-space:nowrap;background:0 0;border-radius:8px;padding:.4rem .9rem;font-size:.85rem}.btn-ghost:hover{color:var(--text);border-color:#ffffff4d}.admin-rules-card{flex-direction:column;gap:1.2rem;display:flex}.admin-rule-group{flex-direction:column;gap:.6rem;display:flex}.admin-rule-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.admin-rule-header h4{margin:0;font-size:1rem}.toggle-label{color:var(--text-subtle);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.4rem;font-size:.85rem;display:flex}.admin-rule-divider{border-top:1px solid var(--line);margin:.4rem 0}.admin-section-spacer{height:1.5rem}.off-peak-country-group{margin-bottom:.5rem}.country-code-label{letter-spacing:.05em;margin:0;font-size:1rem;font-weight:600}.off-peak-slot-row{flex-wrap:wrap;align-items:flex-end;gap:.6rem;margin-bottom:.5rem;display:flex}.slot-label{color:var(--text-subtle);flex-direction:column;gap:.2rem;font-size:.8rem;display:flex}.slot-label input[type=time]{width:auto;margin:0;padding:.35rem .5rem;font-size:.9rem}.slot-separator{color:var(--text-subtle);padding-bottom:.35rem;font-size:1.2rem}.slot-remove{padding:.35rem .6rem;font-size:.85rem;line-height:1}.btn-danger-ghost{color:#f87171;border-color:#f87171}.btn-danger-ghost:hover{background:#f871711a}.off-peak-add-country{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.75rem;padding-top:.75rem;display:flex}.input-suffix-wrap{align-items:center;gap:.5rem;display:flex}.input-suffix-wrap input{flex:1;margin:0}.input-suffix{color:var(--text-subtle);white-space:nowrap;font-size:.8rem}.rule-preview{margin:0}.admin-error{color:#f87171;white-space:normal;overflow-wrap:anywhere;word-break:break-word;margin:0;font-size:.85rem}.admin-success{color:#4ade80;white-space:normal;overflow-wrap:anywhere;word-break:break-word;margin:0;font-size:.85rem}.health{white-space:normal;overflow-wrap:anywhere;word-break:break-word}@keyframes fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (width<=1100px){.wallet-shell{grid-template-columns:1fr}.left-rail{border-right:0;border-bottom:1px solid var(--line)}.hero-card,.actions-grid,.totals-grid{grid-template-columns:1fr}}
