:root{--ink:#251e1a;--muted:#756b63;--paper:#f6f2ed;--card:#fffdfa;--line:#e5ddd4;--accent:#b94f2d;--accent-dark:#8f351f;--green:#287559;--shadow:0 12px 30px rgba(55,38,26,.08)}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.45 system-ui,-apple-system,"Segoe UI",sans-serif}.topbar{height:72px;background:#231c17;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 max(20px,calc((100vw - 1160px)/2));position:sticky;top:0;z-index:10}.brand{color:inherit;text-decoration:none;display:flex;align-items:center;gap:11px}.brand-mark{background:var(--accent);border-radius:50%;width:39px;height:39px;display:grid;place-items:center;font-weight:850;font-size:13px}.brand strong,.brand small{display:block}.brand strong{letter-spacing:.08em;font-size:14px}.brand small{font-size:11px;color:#d3cbc4;margin-top:1px}.sync-status{font-size:13px;color:#d8d0c9;display:flex;gap:7px;align-items:center}.sync-status i{width:8px;height:8px;border-radius:50%;background:#69bf7e}.shell{max-width:1160px;margin:0 auto;padding:38px 24px 105px}.view{display:none}.view.active{display:block}.page-heading,.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.page-heading{margin-bottom:26px}.eyebrow{letter-spacing:.13em;font-size:11px;font-weight:750;color:var(--accent);margin:0 0 5px}h1,h2{margin:0;letter-spacing:-.035em}h1{font-size:32px}h2{font-size:19px}.primary,.secondary,.text-button,.icon-button{font:inherit;border:0;cursor:pointer}.primary{background:var(--accent);color:white;font-weight:700;border-radius:10px;padding:11px 16px}.primary:hover{background:var(--accent-dark)}.metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:13px;margin-bottom:28px}.metrics article,.recent,.record-item,.movement-item{background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:0 2px 6px rgba(55,38,26,.02)}.metrics article{padding:17px}.metrics span{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}.metrics strong{font-size:23px;letter-spacing:-.04em}.quick-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:28px}.quick-actions button{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:19px;text-align:left;cursor:pointer;color:var(--ink);min-height:106px}.quick-actions button:not(:disabled):hover{border-color:#d79f8c;box-shadow:var(--shadow)}.quick-actions button:disabled{opacity:.5;cursor:not-allowed}.quick-actions b,.quick-actions small{display:block}.quick-actions b{font-size:25px;color:var(--accent);line-height:1;margin-bottom:12px}.quick-actions small{color:var(--muted);font-size:12px;margin-top:2px}.recent{padding:22px}.text-button{background:transparent;color:var(--accent);font-size:14px;font-weight:700}.empty-state{color:var(--muted);padding:25px 0 5px}.search-row{display:flex;gap:12px;margin:0 0 20px}.search{flex:1;display:flex;align-items:center;gap:8px;padding:0 13px;background:#fff;border:1px solid var(--line);border-radius:10px}.search input{border:0;outline:0;width:100%;padding:13px 0;font:inherit}.search-row select{border:1px solid var(--line);border-radius:10px;padding:0 12px;background:#fff;color:var(--ink)}.record-list,.movement-list{display:grid;gap:10px}.record-item{display:grid;grid-template-columns:1fr auto;gap:15px;padding:16px 18px;cursor:pointer}.record-item:hover{border-color:#d79f8c}.record-item h2{font-size:17px}.record-meta,.movement-meta{color:var(--muted);font-size:13px;margin:4px 0 0}.stock-badge{align-self:center;text-align:right}.stock-badge strong{display:block;font-size:19px}.stock-badge span{font-size:12px;color:var(--muted)}.movement-item{padding:14px 17px;display:flex;align-items:center;gap:13px}.movement-symbol{width:35px;height:35px;display:grid;place-items:center;border-radius:50%;background:#e5f1eb;color:var(--green);font-weight:800}.movement-item strong{font-size:15px}.movement-meta{margin:1px 0 0}.bottom-nav{display:none}dialog{border:0;border-radius:17px;padding:0;max-width:710px;width:calc(100% - 32px);box-shadow:0 30px 70px rgba(0,0,0,.28)}dialog::backdrop{background:rgba(34,26,21,.52)}dialog form{padding:25px}.dialog-heading{display:flex;justify-content:space-between;align-items:start;margin-bottom:19px}.dialog-heading h2{font-size:24px}.icon-button{font-size:27px;line-height:1;background:transparent;color:var(--muted)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.form-grid label,.wide-label{font-size:13px;font-weight:650;color:#554b43}.form-grid input,.form-grid select,.wide-label input{display:block;width:100%;border:1px solid var(--line);background:#fff;border-radius:8px;padding:10px;margin-top:5px;font:inherit;color:var(--ink)}.wide-label{display:block;margin-top:13px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.secondary{background:#eee6df;color:var(--ink);font-weight:700;border-radius:10px;padding:11px 16px}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,100px);background:#2d2621;color:white;border-radius:9px;padding:12px 16px;opacity:0;transition:.2s;z-index:50;box-shadow:var(--shadow)}#toast.visible{transform:translate(-50%,0);opacity:1}@media(max-width:720px){.topbar{height:64px;padding:0 16px}.sync-status{font-size:11px}.shell{padding:25px 16px 94px}.page-heading{margin-bottom:20px}h1{font-size:27px}.metrics{grid-template-columns:repeat(2,1fr);gap:10px}.metrics article:last-child{grid-column:span 2}.metrics article{padding:14px}.quick-actions{grid-template-columns:repeat(2,1fr);gap:10px}.quick-actions button{min-height:95px;padding:15px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:74px;background:#fffdfa;border-top:1px solid var(--line);display:flex;z-index:11;justify-content:space-around}.bottom-nav button{border:0;background:transparent;color:var(--muted);font-size:19px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:58px}.bottom-nav span{font-size:10px}.bottom-nav .active{color:var(--accent)}.bottom-nav .nav-add{color:white;background:var(--accent);width:52px;height:52px;border-radius:50%;align-self:center;box-shadow:0 4px 10px #cc9c8c}.nav-add span{color:white}.search-row{display:block}.search-row select{width:100%;height:42px;margin-top:9px}.form-grid{grid-template-columns:1fr;gap:10px}dialog form{padding:20px}.record-item{padding:14px}.stock-badge strong{font-size:17px}}@media(max-width:380px){.brand small{display:none}.quick-actions{grid-template-columns:1fr 1fr}}
.auth-gate{position:fixed;inset:0;z-index:100;background:linear-gradient(145deg,#211914,#5e2f20);display:grid;place-items:center;padding:24px}.auth-gate[hidden]{display:none}.auth-card{width:min(100%,420px);background:var(--card);border-radius:20px;padding:34px 30px;text-align:center;box-shadow:0 24px 80px rgba(0,0,0,.32)}.auth-card .brand-mark{margin:0 auto 22px;width:54px;height:54px;font-size:16px}.auth-card h1{font-size:30px;letter-spacing:.06em;margin-bottom:10px}.auth-card>p:not(.eyebrow):not(.auth-message){color:var(--muted);margin:0 auto 22px;max-width:330px}.google-sign-in{display:flex;justify-content:center;min-height:42px}.auth-message{font-size:13px;color:var(--muted);margin:18px 0 0}
.brand-logo{width:42px;height:42px;border-radius:50%;object-fit:cover;object-position:center;border:2px solid rgba(255,255,255,.42);background:#111;flex:0 0 auto}.auth-card .brand-logo{display:block;width:78px;height:78px;margin:0 auto 22px;border-color:#231c17}
