/* v4 interface — calm, dense, accessible */
:root{
  --bg:#f4f1ea;--bg-mesh-1:#d5ddd5;--bg-mesh-2:#e8d8c5;--bg-mesh-3:#dbe5e8;
  --panel:rgba(255,253,248,.9);--panel-solid:#fffdf8;--panel-2:#f2eee6;--panel-3:#e8e2d8;
  --border:rgba(30,43,45,.18);--border-strong:#1d625b;--border-soft:rgba(30,43,45,.1);
  --text:#334240;--text-strong:#142422;--muted:#697875;--accent:#17665e;--accent-2:#23847a;
  --accent-3:#b95d2b;--danger:#b6423d;--danger-2:#8f2d2b;--warn:#c26a25;
  --shadow:0 1px 2px rgba(20,36,34,.05),0 14px 40px rgba(20,36,34,.08);
  --shadow-lg:0 2px 4px rgba(20,36,34,.07),0 24px 60px rgba(20,36,34,.14);
  --radius:22px;--radius-sm:12px;
}
html[data-theme="dark"]{--bg:#101715;--bg-mesh-1:#16302b;--bg-mesh-2:#34251d;--bg-mesh-3:#172a2c;--panel:rgba(24,34,32,.92);--panel-solid:#1b2724;--panel-2:#202e2b;--panel-3:#2a3a36;--border:rgba(197,219,211,.2);--border-strong:#62b6a9;--border-soft:rgba(220,240,233,.1);--text:#d4dfdc;--text-strong:#f7fbfa;--muted:#93a5a0;--accent:#75c8ba;--accent-2:#4ba99b;--accent-3:#e2915d;--danger:#f07d78;--danger-2:#b84642}
@media(prefers-color-scheme:dark){html[data-theme="auto"]{--bg:#101715;--bg-mesh-1:#16302b;--bg-mesh-2:#34251d;--bg-mesh-3:#172a2c;--panel:rgba(24,34,32,.92);--panel-solid:#1b2724;--panel-2:#202e2b;--panel-3:#2a3a36;--border:rgba(197,219,211,.2);--border-strong:#62b6a9;--border-soft:rgba(220,240,233,.1);--text:#d4dfdc;--text-strong:#f7fbfa;--muted:#93a5a0;--accent:#75c8ba;--accent-2:#4ba99b;--accent-3:#e2915d;--danger:#f07d78;--danger-2:#b84642}}
body{font-size:15px;letter-spacing:.005em;background:var(--bg)}
body::before{opacity:.42;filter:saturate(.65);animation-duration:55s}
.layout{max-width:1240px;grid-template-columns:236px minmax(0,1fr);gap:28px;padding:28px 20px 42px}
main{gap:16px;min-width:0}
.sidebar{top:28px;padding:18px 12px;border-radius:24px;border-color:var(--border);box-shadow:var(--shadow);background:var(--panel)}
.sidebar .brand{padding:7px 10px 20px;font-size:18px;letter-spacing:-.02em}
.sidebar .brand-dot{width:29px;height:29px;border-radius:9px;background:var(--text-strong);box-shadow:none;position:relative}
.sidebar .brand-dot::after{content:'T';position:absolute;inset:0;display:grid;place-items:center;color:var(--panel-solid);font:800 13px/1 ui-monospace,monospace}
.sidebar nav{gap:5px}
.sidebar nav a{min-height:48px;padding:10px 11px;border-radius:13px;font-weight:650;gap:11px}
.sidebar nav a:hover{transform:none;background:var(--panel-2)}
.sidebar nav a.active{background:var(--text-strong);color:var(--panel-solid);box-shadow:none}
.sidebar nav a .ico{width:28px;height:28px;border-radius:9px;align-items:center;background:var(--panel-2);color:var(--muted);font:700 10px/1 ui-monospace,monospace}
.sidebar nav a.active .ico{background:rgba(255,255,255,.12);color:inherit}
.sidebar .side-tools{margin-top:16px;padding:14px 4px 0}
.icon-btn{border-radius:12px;background:transparent;border-color:var(--border)}
.panel{padding:26px;border-color:var(--border);box-shadow:var(--shadow);border-radius:var(--radius)}
.panel.hero{background:var(--panel);overflow:visible}
.panel.hero::after{width:180px;height:180px;right:12px;top:-28px;background:radial-gradient(circle,rgba(35,132,122,.12),transparent 68%)}
.panel h1{font-size:clamp(1.65rem,3vw,2.35rem);letter-spacing:-.045em;margin-bottom:8px;line-height:1.12}
.panel .lead{max-width:680px;font-size:14px}
hr{margin:22px 0}
.input,.textarea,select{border:1px solid var(--border);box-shadow:none;border-radius:12px;padding:11px 13px;background:var(--panel-solid);font-weight:500}
.input:focus,.textarea:focus,select:focus{border-color:var(--border-strong);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent);background:var(--panel-solid)}
.textarea{min-height:160px}
.btn{min-height:40px;border-radius:12px;padding:9px 16px;background:var(--text-strong);color:var(--panel-solid);box-shadow:none;font-weight:700}
.btn:hover{transform:translateY(-1px);filter:none;box-shadow:0 8px 20px rgba(20,36,34,.15)}
.btn.ghost{background:transparent;color:var(--text-strong);border:1px solid var(--border);box-shadow:none}
.btn.ghost:hover,.btn.subtle:hover{background:var(--panel-2);box-shadow:none}
.btn.subtle{background:var(--panel-2);color:var(--text);border:1px solid transparent;box-shadow:none}
.btn.danger{background:transparent;color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 38%,transparent);box-shadow:none}
.btn-sm{min-height:34px;padding:6px 11px}
.toolbar{margin:0}.toolbar .search-input{background:var(--panel);box-shadow:var(--shadow);border-color:var(--border);padding:13px 16px}
#list{gap:12px}.acc-card{padding:20px 22px}.acc-card:hover{transform:none;border-color:var(--border-strong);box-shadow:var(--shadow)}
.acc-name{font-size:16px}.acc-issuer{margin-top:2px}.otp{font-size:clamp(1.65rem,5vw,2.1rem);letter-spacing:.14em;color:var(--text-strong)}
.ring .ring-fg{stroke:var(--accent-3)}.ring .ring-text{font-size:12px}.acc-ctrl{max-width:226px;justify-content:flex-end}
.acc-ctrl .btn{width:35px;padding:0;font-size:14px}.empty-state .ico{font:300 52px/1 sans-serif;color:var(--accent);opacity:1}
.tabs{gap:5px;padding:5px;border-radius:14px;overflow-x:auto;flex-wrap:nowrap}.tab{white-space:nowrap;border-radius:10px}.tab.active{background:var(--text-strong);color:var(--panel-solid);box-shadow:none}
.dropzone{padding:42px 24px;border-color:var(--border);background:transparent}.dropzone:hover,.dropzone.over{border-color:var(--accent);background:var(--panel-2);transform:none}
table.rates th{font-size:11px;text-transform:uppercase;letter-spacing:.08em}table.rates th,table.rates td{padding:12px 10px}
.notification{background:var(--text-strong);border:1px solid rgba(255,255,255,.12);border-radius:13px}
.modal-content{border-radius:22px;border-color:var(--border)}
.foot{padding:8px 0 0}.color-swatch{border-radius:18px}
@media(max-width:820px){.layout{grid-template-columns:minmax(0,1fr);padding:12px 12px 28px;gap:14px}.sidebar{width:100%;min-width:0;position:sticky;top:8px;z-index:100;padding:7px 8px;border-radius:17px}.sidebar .brand{padding:0 4px}.sidebar .brand-dot{width:32px;height:32px}.sidebar nav{justify-content:flex-start;overflow-x:auto}.sidebar nav a{flex:0 0 auto;min-height:38px;padding:7px 11px}.sidebar nav a .ico{display:none}.sidebar .side-tools{padding:0;margin:0}.sidebar .side-tools a{display:none}.panel{padding:20px}.panel h1{padding-right:20px}}
@media(max-width:560px){.layout{padding-inline:8px}.sidebar .brand{display:none}.sidebar nav a{font-size:12px;padding-inline:9px}.panel{padding:18px;border-radius:18px}.acc-row{gap:10px}.acc-ctrl{max-width:none;justify-content:space-between}.acc-ctrl .btn{flex:1}.otp-block{justify-content:space-between}.swap-row{align-items:stretch;flex-direction:column}.swap-row select{flex:auto}.grid-2{gap:18px}.row{gap:8px}.row>.btn{flex-grow:1}.tabs{margin-inline:-4px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
