@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;600;700&family=Fraunces:opsz,wght@9..144,700&display=swap');
:root{--ink:#171310;--cream:#f1e8d8;--paper:#f8f2e8;--rust:#c95131;--gold:#d7a53d;--muted:#786e63;--line:#d9cdbb}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif}button{font:inherit;cursor:pointer}header{height:76px;padding:0 clamp(16px,5vw,72px);background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;font-weight:700}.brand i{width:38px;height:38px;border:1px solid #ffffff55;border-radius:50%;display:grid;place-items:center;font:700 20px 'Fraunces';color:var(--gold)}header>div{display:flex;align-items:center;gap:9px}header button{height:40px;border:1px solid #ffffff31;background:none;color:#fff;padding:0 14px}.primary,.save{background:var(--rust)!important;border-color:var(--rust)!important;color:#fff!important}#online{font-size:10px;color:#bfc895}#pending{background:var(--gold);color:var(--ink);border-radius:12px;padding:2px 6px}.hero{min-height:405px;padding:75px clamp(20px,8vw,120px) 55px;background:radial-gradient(circle at 82% 48%,#d7a53d26 0 8%,transparent 8.3%),repeating-radial-gradient(circle at 82% 48%,transparent 0 24px,#17131009 25px 27px),linear-gradient(125deg,#faf4e9,#e5d6c0)}.kicker{font-size:9px;letter-spacing:.26em;font-weight:700;color:var(--rust);margin:0 0 13px}.hero h1{font:700 clamp(48px,7vw,84px)/.94 'Fraunces';margin:0;letter-spacing:-.035em}.hero h1 em{color:var(--rust)}.hero>p:not(.kicker){color:var(--muted)}.search{display:flex;align-items:center;gap:12px;max-width:650px;height:56px;padding:0 18px;background:#fff;border:1px solid var(--line);margin-top:30px;font-size:25px}.search input{flex:1;min-width:0;border:0;outline:0;font:14px 'DM Sans'}.shelf{padding:47px clamp(18px,5vw,72px) 95px}.sectionTitle{display:flex;align-items:end;gap:20px;margin-bottom:28px}.sectionTitle h2,dialog h2{font:700 32px 'Fraunces';margin:0}.sectionTitle #count{margin-left:auto;color:var(--muted);font-size:12px}.sectionTitle #back{border:0;background:none;color:var(--rust)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:38px 24px}.card{min-width:0;user-select:none;-webkit-touch-callout:none}.cover{aspect-ratio:1/1;position:relative;background:#cbbca8;box-shadow:4px 10px 22px #2e211d31;overflow:hidden}.cover img{width:100%;height:100%;object-fit:cover;pointer-events:none}.cover.placeholder{display:grid;place-items:center;background:radial-gradient(circle,#d8aa4a 0 10%,#8f3825 10.5% 22%,#1a1715 22.5% 65%,#27211d 66%);color:#f8ebd6}.cover.placeholder b{z-index:1;font:700 24px 'Fraunces'}.groove{position:absolute;inset:7%;border-radius:50%;border:1px solid #ffffff20;box-shadow:0 0 0 12px #00000008,0 0 0 25px #ffffff0c;pointer-events:none}.cover:not(.placeholder) .groove{display:none}.todo,.copies{position:absolute;z-index:2;top:8px;background:var(--rust);color:#fff;padding:5px 7px;font-size:8px;font-style:normal;font-weight:700;letter-spacing:.08em}.todo{left:8px}.copies{right:8px;background:var(--ink);border-radius:20px}.meta{padding-top:13px}.meta small{color:var(--rust);font-size:9px;font-weight:700;letter-spacing:.15em}.meta h3{font:700 17px 'Fraunces';white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:5px 0}.meta p{font-size:10px;color:var(--muted);margin:0}.empty{text-align:center;color:var(--muted);padding:70px}.empty>div{font-size:50px;color:var(--rust)}.empty h3{font:26px 'Fraunces';color:var(--ink)}dialog{width:min(540px,calc(100vw - 28px));border:0;padding:0;background:var(--paper);box-shadow:0 30px 90px #0008}dialog::backdrop{background:#171310c9;backdrop-filter:blur(4px)}dialog form,dialog>div{padding:31px}.dialogHead{display:flex;justify-content:space-between}.dialogHead>button{border:0;background:none;font-size:28px}dialog label{display:block;font-size:11px;font-weight:700;margin:14px 0}dialog label small{float:right;color:#958a7d;font-weight:400}dialog input{display:block;width:100%;height:47px;margin-top:7px;border:1px solid var(--line);background:#fff;padding:0 12px;font:16px 'DM Sans'}.split,.twocol{display:flex;gap:8px}.split button{flex:1;height:44px;border:1px solid var(--line);background:transparent}.textButton{display:block;border:0;background:none;color:var(--rust);margin:14px auto}.error{color:#ad352c;font-size:11px;min-height:16px;line-height:1.45}.preview{display:flex;align-items:center;gap:15px;background:#e8ddcd;padding:11px}.preview .record{width:68px;height:68px;border-radius:50%;background:#171310;padding:4px}.preview img{width:100%;height:100%;border-radius:50%;object-fit:cover}.preview small,.preview span{display:block;color:var(--rust);font-size:8px;margin-bottom:3px}.preview strong{font:700 16px 'Fraunces'}.preview span{color:var(--muted);margin-top:4px}.twocol>label{flex:1}.check{display:flex;align-items:center;gap:9px}.check input{width:20px;height:20px;margin:0}.save{width:100%;height:51px;border:0;margin-top:9px}.coverActions button:last-child{flex:0 0 90px}.coverActions{margin-bottom:12px}#scanner video{width:100%;min-height:260px;background:#111}#scanner{text-align:center}#scanner button,#menu button{display:block;width:100%;height:45px;margin-top:8px;border:1px solid var(--line);background:#fff}#menu #delete{color:#ad352c}#toast{position:fixed;z-index:40;bottom:22px;left:50%;transform:translate(-50%,30px);background:var(--ink);color:#fff;padding:12px 17px;opacity:0;transition:.2s;pointer-events:none;white-space:nowrap}#toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:650px){header{height:68px;padding:0 13px}.brand span,#online{display:none}header button{font-size:0;width:41px;padding:0}header button:first-letter{font-size:18px}.hero{min-height:360px;padding:48px 19px}.hero h1{font-size:48px}.shelf{padding:38px 16px 75px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 14px}.sectionTitle{flex-wrap:wrap}.search input{font-size:16px}.twocol{display:block}}
.passwordDialog{text-align:center;width:min(430px,calc(100vw - 28px))}.passwordDialog::backdrop{background:#171310f2;backdrop-filter:blur(8px)}.passwordDialog form{padding:43px 37px}.passwordMark{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 24px;border-radius:50%;background:var(--ink);color:var(--gold);border:2px solid var(--gold);font:700 27px 'Fraunces'}.passwordDialog h2{font-size:30px}.passwordDialog form>p:not(.kicker):not(.error){font-size:13px;color:var(--muted);line-height:1.5}.passwordDialog input{text-align:center;letter-spacing:.12em;font-size:19px}.passwordDialog .error{min-height:18px}.passwordDialog button:disabled{opacity:.65}
.card,.card *{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.card{touch-action:manipulation}.card img{-webkit-user-drag:none;user-drag:none}.recordCard{cursor:pointer}
.resultsDialog{width:min(620px,calc(100vw - 28px))}.resultsHint{color:var(--muted);font-size:12px;line-height:1.5}.result{display:flex;width:100%;align-items:center;gap:13px;text-align:left;padding:9px;margin-top:8px;border:1px solid var(--line);background:#fff;color:var(--ink)}.result img,.resultCover{width:62px;height:62px;flex:0 0 62px;object-fit:cover}.resultCover{display:grid;place-items:center;background:var(--ink);border-radius:50%;color:var(--gold);font-size:25px}.result span:last-child{min-width:0}.result strong{display:block;font:700 14px 'Fraunces';margin-bottom:5px}.result small{display:block;color:var(--muted);font-size:9px;line-height:1.45}.result:active{border-color:var(--rust);background:#f4e7d8}
.signature{height:86px;background:var(--ink);display:flex;align-items:center;justify-content:center;border-top:1px solid #ffffff12}.signature img{display:block;width:122px;height:auto;opacity:.92}
