:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#f4f5fa;background:#080a12;--panel:#10131d;--panel2:#151925;--line:#252a39;--muted:#8f96a8;--accent:#8b5cf6;--accent2:#6338d9}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:radial-gradient(circle at 90% 0,#1b1536 0,transparent 28%),#080a12}
button,input{font:inherit}
button{cursor:pointer}
.app-shell{min-height:100vh;display:grid;grid-template-columns:240px 1fr}
.sidebar{position:sticky;top:0;height:100vh;padding:26px 18px 20px;border-right:1px solid var(--line);background:#0b0e16;display:flex;flex-direction:column}
.brand{display:flex;align-items:center;gap:12px;padding:0 8px 28px}.brand>span,.lock-logo{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(145deg,#a678ff,#6238da);font-weight:900;box-shadow:0 8px 30px #7141e647}.brand strong{font-size:17px}
nav{display:grid;gap:6px}.nav-item{border:0;background:transparent;color:#a9afbf;border-radius:11px;padding:12px 13px;display:grid;grid-template-columns:24px 1fr auto;text-align:left;align-items:center}.nav-item span{color:#777f92}.nav-item b{font-size:12px;background:#202431;padding:2px 7px;border-radius:10px}.nav-item.active{background:linear-gradient(90deg,#21193d,#171426);color:#fff}.nav-item.active span{color:#9d79ff}.nav-item:hover{background:#151925}
.sidebar-foot{margin-top:auto;border-top:1px solid var(--line);padding:18px 8px 0;display:flex;align-items:center;gap:10px}.sidebar-foot strong,.sidebar-foot small{display:block;font-size:12px}.sidebar-foot small{color:var(--muted);margin-top:3px}.sync-dot{width:9px;height:9px;border-radius:50%;background:#44d49f;box-shadow:0 0 0 5px #44d49f17}
main{padding:32px 4vw 70px;max-width:1450px;width:100%;margin:auto}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}h1{font-size:32px;margin:2px 0}.eyebrow{letter-spacing:.14em;font-size:11px;font-weight:800;color:#8f78d7;margin:0}.header-actions{display:flex;gap:10px}.add-button,.icon-button{border:1px solid transparent;border-radius:11px;color:#fff}.add-button{background:linear-gradient(135deg,var(--accent),var(--accent2));padding:11px 16px;font-weight:750;box-shadow:0 8px 24px #6738d62e}.icon-button{width:42px;background:var(--panel2);border-color:var(--line)}
.mobile-menu{display:none;background:transparent;color:#fff;border:0;font-size:22px}
.summary{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);background:#0e111a;border-radius:16px;margin-bottom:22px;overflow:hidden}.summary div{padding:20px 24px;border-right:1px solid var(--line)}.summary div:last-child{border:0}.summary strong,.summary span{display:block}.summary strong{font-size:22px}.summary span{color:var(--muted);font-size:12px;margin-top:5px}.summary .secure strong{color:#6ee7b7}
.toolbar{display:flex;gap:9px;align-items:center;margin-bottom:20px}.search{height:42px;max-width:360px;flex:1;border:1px solid var(--line);border-radius:11px;background:#0e111a;display:flex;align-items:center;padding:0 13px;color:var(--muted)}.search input{border:0;outline:0;background:transparent;color:#fff;width:100%;padding:0 10px}.filter{height:38px;border:1px solid var(--line);background:#10131c;color:#aeb4c2;border-radius:10px;padding:0 14px}.filter.active{background:#20193a;color:#bca7ff;border-color:#382a64}
.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:22px}.vault-card{min-width:0}.card-art{aspect-ratio:1.586;border-radius:17px;padding:22px;position:relative;overflow:hidden;box-shadow:0 18px 40px #0005;display:flex;flex-direction:column;justify-content:space-between;transition:transform .2s ease,box-shadow .2s ease}.vault-card:hover .card-art{transform:translateY(-3px);box-shadow:0 22px 50px #0008}.card-art:after{content:"";position:absolute;inset:0;background:linear-gradient(125deg,#fff0 30%,#ffffff1c 50%,#fff0 68%);transform:translateX(-100%)}.vault-card:hover .card-art:after{transform:translateX(100%);transition:transform .65s}.varo{background:linear-gradient(145deg,#27313a,#11161c 60%,#302314)}.chase{background:linear-gradient(135deg,#163e70,#0b1d36 65%,#081321)}.capital{background:radial-gradient(circle at 70% 10%,#793232 0,transparent 34%),linear-gradient(135deg,#461e28,#12131a 68%)}.issuer-mark{font-weight:900;letter-spacing:.08em}.contactless{position:absolute;right:22px;top:18px;transform:rotate(90deg);color:#ffffffb8}.chip{position:absolute;top:60px;left:22px;width:34px;height:26px;border-radius:6px;background:linear-gradient(135deg,#ebd9a0,#9c8254)}.card-number{font-size:16px;letter-spacing:.09em;margin-top:auto;margin-bottom:24px}.card-bottom{display:flex;justify-content:space-between;align-items:end;font-size:11px;letter-spacing:.08em}.card-bottom strong{font-size:18px;font-style:italic}.retailer-pills{position:absolute;top:17px;right:18px;display:flex;gap:5px}.varo .retailer-pills{top:52px}.retailer-pills i{font-style:normal;width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:#ffffffea;color:#171923;font-size:10px;font-weight:900}
.card-meta{display:flex;justify-content:space-between;align-items:center;padding:13px 5px}.card-meta strong,.card-meta span{display:block}.card-meta strong{font-size:14px}.card-meta span{font-size:12px;color:var(--muted);margin-top:4px}.card-meta button{background:transparent;border:0;color:#8d94a5;font-weight:900}
.add-card button{width:100%;aspect-ratio:1.586;border:1px dashed #3a4051;border-radius:17px;background:#0d1018;color:#c3c7d2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.add-card button>span{width:40px;height:40px;border-radius:50%;background:#1c2030;display:grid;place-items:center;color:#a888ff;font-size:23px}.add-card small{color:var(--muted)}
.lock-screen{position:fixed;inset:0;background:radial-gradient(circle at 50% 10%,#25184d,transparent 34%),#080a12;display:grid;place-items:center;padding:20px}.lock-screen[hidden]{display:none}.lock-card{width:min(420px,100%);text-align:center;border:1px solid var(--line);border-radius:24px;background:#0e111adc;padding:36px;box-shadow:0 30px 100px #000}.lock-logo{margin:0 auto 22px;width:52px;height:52px}.lock-card h1{font-size:28px}.lock-card>p:not(.eyebrow){color:var(--muted)}.lock-card label{text-align:left;display:grid;gap:7px;margin:24px 0 12px;color:#bdc1cc;font-size:13px}.lock-card input{width:100%;padding:14px;border-radius:11px;border:1px solid #313646;background:#0a0d14;color:#fff}.lock-card .add-button{width:100%}.lock-card>small{display:block;color:#777f92;margin-top:18px}
@media(max-width:800px){.app-shell{display:block}.sidebar{display:none}main{padding:max(22px,env(safe-area-inset-top)) 16px 90px}.mobile-menu{display:block}header>div:nth-child(2){margin-right:auto;margin-left:8px}h1{font-size:25px}.icon-button{display:none}.summary{grid-template-columns:1fr 1fr}.summary div{padding:15px;border-bottom:1px solid var(--line)}.summary div:nth-child(2){border-right:0}.summary div:nth-child(3){border-bottom:0}.summary div:nth-child(4){border-bottom:0}.toolbar{overflow:auto}.search{min-width:230px}.filter{white-space:nowrap}.card-grid{grid-template-columns:1fr;gap:16px}.card-art{padding:20px}.card-number{font-size:15px}}
@media(max-width:420px){.add-button{padding:10px 12px}.summary strong{font-size:18px}.summary span{font-size:11px}.card-grid{gap:12px}}

[hidden]{display:none!important}
.view h2,.section-heading h2{font-size:1.45rem;margin:0 0 5px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.section-heading p{color:var(--muted);margin:0}
.card-open{display:block;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left}.mobile-close{display:none;margin-left:auto;background:transparent;border:0;color:#fff;font-size:26px}
.address-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.address-card{min-height:190px;text-align:left;border:1px solid var(--line);background:linear-gradient(145deg,#121621,#0d1018);color:#fff;border-radius:16px;padding:20px;position:relative}.address-card>div{display:flex;gap:10px;align-items:center}.address-icon{width:34px;height:34px;border-radius:10px;background:#20193a;color:#a98aff;display:grid;place-items:center}.address-card p{line-height:1.55;color:#a9afbf}.address-linked{position:absolute;bottom:18px;left:20px;font-size:12px;color:#68d7af;background:#153029;padding:5px 9px;border-radius:20px}.add-address{display:grid;place-items:center;align-content:center;text-align:center;gap:8px;border-style:dashed;color:#b8bdca}.add-address>span{font-size:28px;color:#a888ff}
.retailer-grid,.settings-grid{display:grid;gap:14px}.retailer-card,.settings-card{border:1px solid var(--line);background:#0e111a;border-radius:16px;padding:18px;display:grid;grid-template-columns:auto minmax(170px,1fr) minmax(210px,360px);align-items:center;gap:16px}.retailer-card h3,.settings-card h3{margin:0 0 4px}.retailer-card p,.settings-card p{margin:0;color:var(--muted);font-size:13px}.retailer-card select{width:100%;padding:12px;border:1px solid var(--line);border-radius:10px;background:#151925;color:#fff}.retailer-brand,.setting-icon{width:45px;height:45px;border-radius:13px;display:grid;place-items:center;font-weight:900}.retailer-brand.target{background:#391821;color:#ff6574}.retailer-brand.pokemon{background:#17274a;color:#6b9cff}.retailer-brand.walmart{background:#12314a;color:#64b7f3}.setting-icon{background:#20193a;color:#a98aff}.settings-card{grid-template-columns:auto 1fr auto}.status-pill{font-size:12px;padding:6px 10px;border-radius:20px}.status-pill.waiting{color:#f1c36d;background:#302712}.status-pill.ready{color:#6ee7b7;background:#123126}.inline-actions{display:flex;gap:8px;margin-top:14px}
dialog{width:min(620px,94vw);max-height:90vh;overflow:auto;border:1px solid #303546;border-radius:20px;background:#0e111a;color:#fff;padding:24px;box-shadow:0 30px 100px #000b}dialog::backdrop{background:#02030aab;backdrop-filter:blur(6px)}.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:17px}.dialog-head h2{margin:4px 0;font-size:23px}.dialog-close{border:0;background:#1a1e2a;color:#adb3c2;border-radius:9px;width:36px;height:36px;font-size:20px}.dialog-head+label,dialog form>label{display:grid;gap:7px;margin:13px 0;color:#bdc1cc;font-size:13px;font-weight:650}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-row label{display:grid;gap:7px;color:#bdc1cc;font-size:13px;font-weight:650}dialog input,dialog select{width:100%;padding:12px;border-radius:10px;border:1px solid #313646;background:#0a0d14;color:#fff}dialog fieldset{border:1px solid #313646;border-radius:11px;margin:14px 0;padding:13px}dialog legend{font-size:13px;color:#bdc1cc;padding:0 6px}.check-row{display:flex;flex-wrap:wrap;gap:9px}.check-row label{background:#171b27;padding:9px 10px;border-radius:9px;font-size:13px}.dialog-actions{display:flex;gap:9px;align-items:center;margin-top:20px}.dialog-actions>span{flex:1}.ghost-button,.danger-button{border-radius:10px;padding:10px 13px;font-weight:700}.ghost-button{border:1px solid #34394a;background:#161a25;color:#d2d5de}.danger-button{border:1px solid #5b262e;background:#35171d;color:#ff929d}
.detail-art{max-width:480px;margin:0 auto}.detail-info{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.detail-info>div{border:1px solid var(--line);background:#111520;border-radius:11px;padding:12px}.detail-info span,.detail-info strong{display:block}.detail-info span{font-size:11px;color:var(--muted);margin-bottom:5px}.detail-info .detail-wide{grid-column:1/-1}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);opacity:0;background:#e9e5ff;color:#1c1532;border-radius:11px;padding:11px 16px;font-weight:750;z-index:50;transition:.2s}.toast.show{transform:translate(-50%,0);opacity:1}
.mobile-nav{display:none}
.import-label{display:inline-block;cursor:pointer}.import-label input{display:none}
@media(max-width:800px){.sidebar{display:flex;position:fixed;z-index:30;left:0;top:0;transform:translateX(-105%);transition:.22s;width:min(280px,86vw);box-shadow:20px 0 70px #000}.sidebar.open{transform:translateX(0)}.mobile-close{display:block}.mobile-nav{position:fixed;z-index:20;display:grid;grid-template-columns:repeat(4,1fr);left:0;right:0;bottom:0;padding:8px 8px max(8px,env(safe-area-inset-bottom));background:#0b0e16ef;border-top:1px solid var(--line);backdrop-filter:blur(14px)}.mobile-nav button{border:0;background:transparent;color:#777f92;display:grid;gap:3px;place-items:center;font-size:11px;padding:5px}.mobile-nav button span{font-size:17px}.mobile-nav button.active{color:#aa8bff}.retailer-card,.settings-card{grid-template-columns:auto 1fr}.retailer-card select,.settings-card .status-pill{grid-column:1/-1}.address-grid{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}.detail-info{grid-template-columns:1fr}.detail-info .detail-wide{grid-column:auto}}
