:root{--ink:#201711;--paper:#f0e5d1;--cream:#ead6b4;--rust:#b36d39;--coffee:#5c3926;--muted:#a58c74;--line:#6b4b37;--panel:#2a1e17;--font-head:'Barlow Condensed',Impact,Arial Narrow,sans-serif;--font-main:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{background:var(--ink);scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--font-main);-webkit-tap-highlight-color:transparent}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--rust);outline-offset:3px}button:disabled{opacity:.45;cursor:default}.app-shell{max-width:1160px;margin:0 auto;padding:0 22px 105px}.topbar{height:84px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #463123}.brand{display:flex;align-items:center;gap:13px;background:none;border:0;color:inherit;text-align:left;padding:0}.brand-icon{width:42px;height:42px;border:2px solid var(--rust);display:grid;place-items:center;font:900 29px var(--font-head);transform:rotate(-7deg);color:var(--cream);position:relative}.small-brand{position:absolute;font-size:14px;right:4px;bottom:1px;color:var(--rust)}.brand-name{font:900 26px/.87 var(--font-head);letter-spacing:.06em}.brand-name em{font-style:normal;color:var(--rust)}.brand-name small{display:block;font:600 8px/1.7 var(--font-main);letter-spacing:.18em;color:var(--muted)}.top-add{width:42px;height:42px;border:1px solid #80563a;background:#3a291e;color:var(--paper);font-size:29px;line-height:1}.view{display:none;animation:appear .18s ease}.view.active{display:block}@keyframes appear{from{opacity:.6;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.hero{margin-top:26px;position:relative;overflow:hidden;min-height:458px;background:radial-gradient(circle at 72% 47%,#62432c 0,#37271c 38%,#211912 80%);border:1px solid #785338;isolation:isolate}.hero:before{content:'VINYL VAULT';position:absolute;bottom:48px;right:-4%;font:900 clamp(100px,16vw,240px)/.8 var(--font-head);white-space:nowrap;letter-spacing:-.06em;transform:rotate(-9deg);color:#bc8b5e;opacity:.06;z-index:-1}.hero-grain{position:absolute;inset:0;pointer-events:none;opacity:.17;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.62' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");z-index:2}.hero-meta,.hero-footer{display:flex;justify-content:space-between;gap:15px;color:#c3a17f;font-size:9px;font-weight:700;letter-spacing:.18em;position:relative;z-index:3}.hero-meta{padding:24px 28px 0}.hero-main{display:flex;align-items:center;position:relative;padding:22px 28px 34px;z-index:1;min-height:370px}.hero-copy{position:relative;z-index:2;flex:1}.scribble{font:20px 'Permanent Marker',cursive;transform:rotate(-5deg);color:#d08b52;display:inline-block;margin-bottom:16px}.hero h1{font:900 clamp(78px,11.3vw,154px)/.72 var(--font-head);letter-spacing:-.025em;margin:4px 0 21px;text-transform:uppercase;text-shadow:4px 5px 0 #21150c}.hero h1 span:not(.dot){color:#c78e5b}.hero h1 .dot{color:#d37d37}.hero p{color:#d2b89a;font-size:13px;line-height:1.7}.hero-cta,.primary-btn{color:#24180f;background:#cf9561;border:0;padding:15px 19px;font:800 15px var(--font-head);letter-spacing:.09em}.hero-cta{margin-top:14px;min-width:183px;display:flex;justify-content:space-between;gap:20px}.hero-vinyl{width:46%;position:relative;display:flex;align-items:center;justify-content:center;transform:rotate(10deg)}.record{aspect-ratio:1;border-radius:50%;width:min(100%,420px);background:repeating-radial-gradient(circle at center,#12100e 0 2px,#292621 3px 4px,#151412 5px 7px,#39342d 8px 9px,#100f0e 10px 12px);box-shadow:16px 21px 22px #120b07a6,0 0 0 3px #0b0b0a,0 0 0 7px #513927;display:grid;place-items:center;position:relative}.record:before{content:'';position:absolute;inset:9%;border-radius:50%;border:1px solid #b2a29030}.record:after{content:'';position:absolute;inset:2%;border-radius:50%;background:conic-gradient(from 130deg,transparent 0deg,#ffffff12 30deg,transparent 60deg,transparent 180deg,#ffffff12 220deg,transparent 260deg);pointer-events:none}.record-label{width:35%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at center,#c39160 0 5%,#4d3021 6% 11%,#aa7043 12% 67%,#321e16 68%);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 0 0 3px #1a1210}.record-label span{font:900 clamp(20px,3.6vw,46px) var(--font-head);color:#2a1b15}.record-label small{font:700 7px var(--font-main);letter-spacing:.1em;color:#321c12}.hero-footer{border-top:1px solid #715139;padding:17px 28px}.quick-stats{display:grid;grid-template-columns:repeat(3,1fr);background:#312219;border:1px solid #65442c;border-top:0}.quick-stats>div{padding:19px 25px;display:flex;align-items:baseline;gap:14px}.quick-stats>div+div{border-left:1px solid #65442c}.quick-stats b{font:800 39px var(--font-head);color:#e4c69f}.quick-stats span{font:700 10px var(--font-main);letter-spacing:.08em;color:#b29375}.section-head{display:flex;justify-content:space-between;align-items:end;gap:10px;margin:52px 0 19px}.eyebrow{font:700 10px var(--font-main);letter-spacing:.2em;color:#c18858}.section-head h2,.page-heading h2,.dialog-header h2{font:900 clamp(45px,6vw,74px)/.9 var(--font-head);margin:8px 0 0;letter-spacing:-.005em}.section-head h2 i,.page-heading h2 i,.dialog-header h2 i{font-style:normal;color:#ba7b4d}.text-btn{font:800 13px var(--font-head);letter-spacing:.1em;color:#d9ae83;background:transparent;border:0;border-bottom:1px solid #936342;padding:5px 0}.text-btn span{margin-left:8px}.album-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:23px 19px}.album-card{min-width:0;cursor:pointer}.album-art{aspect-ratio:1;position:relative;overflow:hidden;background:#493425;display:grid;place-items:center;border:1px solid #78543b;box-shadow:4px 6px 0 #130e0b;transition:transform .15s ease}.album-card:active .album-art{transform:scale(.985)}.album-art img,.detail-cover img{width:100%;height:100%;object-fit:cover;display:block}.album-art .fallback-art{width:100%;height:100%}.album-card-meta{padding:15px 0 0;display:flex;justify-content:space-between;align-items:start;gap:8px}.album-card h3{font:800 21px/.95 var(--font-head);margin:0 0 7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:.02em}.album-card p{font-size:12px;color:#c1a68a;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fav-mark{background:none;border:0;color:#bd7b4f;font-size:21px;line-height:1}.tag{display:inline-flex;position:absolute;top:9px;left:9px;background:#19130fcf;color:#e9c7a0;padding:5px 7px;letter-spacing:.1em;font:700 9px var(--font-main)}.fallback-art{background:linear-gradient(145deg,var(--art-a),var(--art-b));display:flex;justify-content:center;align-items:center;flex-direction:column;position:relative;isolation:isolate;padding:12%;text-align:center;color:#f4ddbc}.fallback-art:before{content:'';position:absolute;inset:8%;border:1px solid #ffffff5c;z-index:-1}.fallback-art:after{content:'';width:40%;aspect-ratio:1;border-radius:50%;background:repeating-radial-gradient(circle,#24170f 0 2px,#3d2d24 3px 5px);position:absolute;bottom:-8%;right:-11%;opacity:.7;z-index:-1}.fallback-art strong{font:900 clamp(23px,3vw,48px)/.87 var(--font-head);text-transform:uppercase;overflow-wrap:anywhere;max-width:100%}.fallback-art small{font:600 10px var(--font-main);letter-spacing:.13em;margin-top:12px;text-transform:uppercase}.empty{border:1px dashed #795539;background:#291c14;padding:42px 24px;text-align:center;grid-column:1/-1}.empty .empty-icon{font:70px var(--font-head);color:#aa7147}.empty h3{font:900 34px var(--font-head);margin:0 0 6px}.empty p{color:#b89b7c;font-size:13px;max-width:320px;line-height:1.7;margin:0 auto 22px}.outline-btn{border:1px solid #94613e;background:transparent;color:#e2bd96;font:800 13px var(--font-head);letter-spacing:.08em;padding:12px 15px;white-space:nowrap}.now-playing{margin-top:44px;display:flex;align-items:center;gap:18px;padding:20px 22px;border:1px solid #765035;background:linear-gradient(120deg,#503422,#2c2018)}.now-icon{width:58px;height:58px;background:#221713;display:grid;place-items:center;flex-shrink:0}.mini-disc{width:46px;height:46px;border-radius:50%;background:repeating-radial-gradient(circle,#211f1d 0 2px,#4a4541 3px 4px,#131210 5px 6px);position:relative}.mini-disc:after{content:'';position:absolute;inset:35%;border-radius:50%;background:#c08650}.now-text{flex:1;min-width:0}.now-text>span{font-size:9px;letter-spacing:.18em;color:#d09a6c;font-weight:700;display:block;margin-bottom:6px}.now-text strong{font:800 24px var(--font-head);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.now-text small{color:#ceb296;font-size:12px}.now-playing button{background:none;color:#d4b18c;border:0;font-size:25px}.wishlist-head{margin-top:50px}.wishlist-preview{display:flex;align-items:center;gap:15px;padding:20px;background:#2e2118;border-left:3px solid #ad754d;color:#cab194;font-size:13px}.site-footer{text-align:center;border-top:1px solid #513827;padding:30px 0;margin-top:55px;font:800 12px var(--font-head);letter-spacing:.19em;color:#9f7758}.site-footer span{color:#cc8d56;margin:0 9px}.page-heading{padding:44px 0 22px}.page-heading p{color:#b59a7e;font-size:13px;margin:12px 0 0}.tools{display:flex;gap:12px;margin:20px 0 13px}.search{flex:1;display:flex;align-items:center;border:1px solid #725038;background:#2d2119;min-width:0}.search>span{font-size:25px;padding:0 12px;color:#c29268}.search input{background:none;border:0;color:#f0dfcb;outline:0;width:100%;padding:14px 7px 14px 0;font-size:13px}.search input::placeholder{color:#9e8066}.tools select{background:#2d2119;color:#e8cbaa;border:1px solid #725038;padding:0 11px;max-width:162px;font-size:12px}.filterbar{display:flex;gap:8px;overflow-x:auto;padding-bottom:5px;scrollbar-width:none}.filterbar::-webkit-scrollbar{display:none}.chip{flex-shrink:0;color:#ab8c6d;background:#2a1e17;border:1px solid #57402f;padding:10px 13px;font:800 12px var(--font-head);letter-spacing:.07em}.chip.selected{background:#b98051;color:#21150d;border-color:#b98051}.result-count{font-size:11px;letter-spacing:.14em;color:#9e7d61;margin:18px 0}.stats-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0 28px}.stats-tiles>div{padding:19px;background:linear-gradient(140deg,#3a281c,#271b14);border:1px solid #684630;display:flex;flex-direction:column;gap:12px}.stats-tiles span{font:700 9px var(--font-main);letter-spacing:.11em;color:#b99a7a}.stats-tiles strong{font:900 53px var(--font-head);color:#deb68c}.stats-panel{background:#2d2119;border:1px solid #62452f;padding:25px;margin-bottom:16px}.stats-panel h3{font:900 35px var(--font-head);margin:7px 0 22px}.bar-row{margin:16px 0}.bar-caption{display:flex;justify-content:space-between;font-size:12px;color:#ddc0a0;margin-bottom:7px}.bar-track{height:8px;background:#4c3525}.bar-fill{height:100%;background:#b77b4f;min-width:2px}.chart-empty{font-size:13px;color:#a88c71}.settings-card{display:flex;align-items:center;gap:20px;background:#2c2119;border:1px solid #62452f;padding:20px;margin-bottom:13px}.settings-icon{font:900 46px var(--font-head);color:#bd8458}.settings-card>div:nth-child(2){flex:1}.settings-card h3{font:800 24px var(--font-head);margin:0 0 4px}.settings-card p{margin:0;color:#bda185;font-size:12px;line-height:1.6}.settings-note{padding:20px;background:#432b1b;border:1px solid #8a5839;margin-top:25px}.settings-note b{font:900 21px var(--font-head);color:#e2ae78}.settings-note p{color:#d2af8d;line-height:1.65;font-size:12px}.credits{font:800 11px var(--font-head);letter-spacing:.1em;color:#936f54;padding:28px 0}.bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:30;background:#1c140ff5;border-top:1px solid #775138;display:flex;justify-content:space-evenly;padding:9px max(10px,env(safe-area-inset-right)) calc(9px + env(safe-area-inset-bottom));backdrop-filter:blur(14px)}.bottom-nav button{display:flex;align-items:center;flex-direction:column;justify-content:center;gap:3px;background:none;border:0;color:#9c8069;min-width:59px;padding:5px 3px;font:800 10px var(--font-head);letter-spacing:.08em}.bottom-nav button.active{color:#dea46f}.nav-ico{font:28px/1 var(--font-head)}dialog{border:1px solid #866041;padding:0;background:#251b15;color:var(--paper);box-shadow:0 30px 80px #0009;max-height:calc(100dvh - 24px)}dialog::backdrop{background:#070504d9;backdrop-filter:blur(4px)}.record-dialog{width:min(94vw,650px)}.record-form{display:flex;flex-direction:column;max-height:calc(100dvh - 28px)}.dialog-header{display:flex;justify-content:space-between;align-items:start;padding:22px 26px;border-bottom:1px solid #624431}.dialog-header h2{font-size:44px}.close,.detail-close{color:#edcaa7;background:none;border:0;font-size:34px;line-height:1}.form-scroll{overflow-y:auto;padding:21px 26px;display:grid;gap:18px}.cover-upload{display:flex;gap:20px;align-items:center}.cover-preview{width:145px;aspect-ratio:1;background:#4e3424;flex-shrink:0;border:1px dashed #94613f;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;overflow:hidden}.cover-preview img{width:100%;height:100%;object-fit:cover}.cover-preview .big-symbol{font-size:49px;color:#d1a073}.cover-preview span:last-child{font:800 12px var(--font-head);letter-spacing:.1em;color:#c59b75}.cover-controls{display:flex;flex-direction:column;align-items:start;gap:7px}.cover-controls p{color:#9b7e66;font-size:11px;line-height:1.5;margin:0}.subtle-btn{border:0;background:none;color:#ba8b68;padding:3px 0;font-size:11px;text-decoration:underline}.form-scroll label:not(.outline-btn){font:800 12px var(--font-head);letter-spacing:.07em;color:#cfa47e;display:block}.form-scroll label b{color:#d98d59}.form-scroll input:not([type=file],[type=checkbox]),.form-scroll select,.form-scroll textarea{display:block;width:100%;margin-top:7px;padding:13px 12px;background:#37281e;border:1px solid #705039;border-radius:0;color:#f3e5d3;font:500 13px var(--font-main);min-width:0}.form-scroll textarea{resize:vertical}.form-scroll input::placeholder,.form-scroll textarea::placeholder{color:#977c65}.form-row{display:grid;grid-template-columns:1fr;gap:16px}.form-row.two{grid-template-columns:repeat(2,minmax(0,1fr))}.optional{font:500 10px var(--font-main);color:#977b61}.barcode-group{display:flex;gap:7px;align-items:end}.barcode-group input{flex:1}.barcode-group button{margin-top:7px}.lookup-status{margin:-12px 0 -6px;font-size:11px;line-height:1.5;color:#c69e76}.switches{display:flex;flex-wrap:wrap;gap:20px}.switches label{display:flex!important;align-items:center;gap:8px;font:600 12px var(--font-main)!important;color:#e7c9aa!important;letter-spacing:0!important}.switches input{accent-color:#ba7d4d;width:17px;height:17px}.dialog-footer{border-top:1px solid #624431;padding:18px 26px;display:flex;justify-content:flex-end;gap:12px;align-items:center}.delete-btn{background:none;border:0;color:#db9077;margin-right:auto;font:800 13px var(--font-head)}.detail-dialog{width:min(94vw,720px)}.detail-body{position:relative;display:grid;grid-template-columns:43% 57%;min-height:350px}.detail-close{position:absolute;top:12px;right:15px;z-index:3}.detail-cover{background:#3c2b20;min-height:300px}.detail-cover>*{width:100%;height:100%;min-height:300px;object-fit:cover}.detail-content{padding:42px 30px 25px;min-width:0}.detail-content h2{font:900 clamp(34px,5vw,58px)/.88 var(--font-head);margin:14px 0 6px;overflow-wrap:anywhere}.detail-content h3{font:600 17px var(--font-main);color:#c49266;margin:0 0 20px}.detail-meta{display:flex;flex-wrap:wrap;gap:7px}.detail-meta span{font-size:11px;background:#453022;padding:8px;color:#dbc0a2}.detail-content p{font-size:12px;line-height:1.6;color:#ae937a;white-space:pre-wrap;overflow-wrap:anywhere}.detail-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.detail-actions button{font-size:12px;padding:11px}.scan-dialog{width:min(94vw,520px)}.scanner-content video{width:100%;max-height:60vh;object-fit:cover;background:#080707}.scanner-content p{padding:12px 20px;color:#ddbc9d;font-size:13px}.toast{position:fixed;bottom:calc(93px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%,16px);background:#c18c5e;color:#21170f;padding:11px 20px;font-size:12px;font-weight:700;z-index:100;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;max-width:90vw;text-align:center}.toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:750px){.app-shell{padding:0 17px 95px}.topbar{height:69px}.hero{min-height:440px;margin-top:17px}.hero-meta{padding:18px 17px 0;font-size:8px}.hero-index{display:none}.hero-main{padding:32px 17px;min-height:370px}.hero h1{font-size:clamp(72px,18vw,119px)}.hero-vinyl{position:absolute;width:70%;right:-26%;top:24%;opacity:.78}.hero-copy{max-width:95%}.hero p{font-size:12px}.hero-footer{padding:13px 16px;font-size:7px}.hero-footer span:last-child{display:none}.quick-stats>div{padding:12px 10px;display:block;text-align:center}.quick-stats b{font-size:33px;display:block}.quick-stats span{font-size:8px;display:block;line-height:1.4}.section-head{margin-top:41px}.section-head h2{font-size:49px}.album-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}.album-card h3{font-size:19px}.album-card p{font-size:11px}.home-grid .album-card:nth-child(n+5){display:none}.page-heading h2{font-size:63px}.stats-tiles{grid-template-columns:repeat(2,1fr)}.settings-card{flex-wrap:wrap;gap:12px}.settings-card>div:nth-child(2){flex-basis:70%}.settings-card .outline-btn{margin-left:auto}.detail-body{display:block}.detail-cover{height:250px;min-height:0}.detail-cover>*{min-height:0;height:250px}.detail-content{padding:22px}.detail-content h2{font-size:50px}.form-scroll{padding:16px}.dialog-header{padding:19px 16px}.dialog-footer{padding:15px 16px}.cover-preview{width:112px}.cover-upload{gap:12px}.barcode-group .outline-btn{padding:12px 8px}.brand-name{font-size:23px}}@media(max-width:360px){.hero h1{font-size:69px}.bottom-nav button{min-width:53px}.record-dialog{width:98vw}.cover-preview{width:99px}.cover-controls .outline-btn{padding:9px}.hero-vinyl{right:-33%}}
