@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600;9..40,700;9..40,800&family=Fraunces:opsz,wght@9..144,600;9..144,700&display=swap";:root{--ink:#292723;--paper:#fffdf7;--canvas:#f6f1e7;--line:#d8d0c2;--muted:#766f63;--coral:#d95d45;--moss:#557e6e;--yolk:#edbf55;--display:"Fraunces", Georgia, serif;--sans:"DM Sans", sans-serif;--mono:"DM Mono", monospace;color:var(--ink);background:var(--canvas);font-family:var(--sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 15% 2%,#edbf552e,transparent 25rem),var(--canvas);min-width:320px;margin:0}button,input{font:inherit}.app-shell{width:min(100%,760px);margin:0 auto;padding:22px 22px 64px}.site-header,.brand,.local-badge,.section-heading,.image-summary{align-items:center;display:flex}.site-header{justify-content:space-between}.brand{color:var(--ink);font:800 20px/1 var(--display);letter-spacing:-.05em;gap:9px;text-decoration:none}.bead-mark{grid-template-columns:repeat(2,8px);gap:3px;display:grid;transform:rotate(-8deg)}.bead-mark i{background:var(--coral);border-radius:3px;width:8px;height:8px;box-shadow:inset 0 -2px #0000001f}.bead-mark i:nth-child(2){background:var(--moss)}.bead-mark i:nth-child(3){background:var(--yolk)}.bead-mark i:nth-child(4){background:var(--ink)}.local-badge{border:1px solid var(--line);color:var(--muted);font:600 11px/1 var(--sans);border-radius:100px;gap:6px;padding:7px 9px}.local-badge b{background:var(--moss);border-radius:50%;width:6px;height:6px}.hero{padding:72px 0 48px}.eyebrow{color:var(--coral);font:800 12px/1 var(--sans);letter-spacing:.13em;text-transform:uppercase;margin:0 0 14px}.hero h1,.promise h2{color:var(--ink);font:700 clamp(44px,10vw,76px)/.95 var(--display);letter-spacing:-.075em;margin:0}.hero h1 em{color:var(--coral);font-style:normal}.hero-copy{max-width:450px;color:var(--muted);margin:24px 0 0;font-size:16px;line-height:1.65}.workspace,.review{border:1px solid var(--ink);background:var(--paper);box-shadow:5px 5px 0 var(--ink);border-radius:18px;overflow:hidden}.section-heading{border-bottom:1px solid var(--line);justify-content:space-between;padding:20px 21px 17px}.section-heading>div{align-items:baseline;gap:10px;display:flex}.section-heading h2{color:var(--ink);font:750 19px/1 var(--display);letter-spacing:-.045em;margin:0}.section-heading>p{color:var(--muted);margin:0;font-size:12px}.step{color:var(--coral);font:800 11px/1 var(--mono);letter-spacing:.08em}.drop-zone{width:100%;min-height:310px;color:var(--ink);cursor:pointer;background-color:#f3eee3;background-image:linear-gradient(#29272313 1px,#0000 1px),linear-gradient(90deg,#29272313 1px,#0000 1px);background-size:18px 18px;border:0;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:30px;display:flex;position:relative}.upload-icon{background:var(--coral);width:44px;height:44px;box-shadow:3px 3px 0 var(--ink);color:#fffaf0;font:800 26px/40px var(--sans);border-radius:14px;place-items:center;display:grid}.drop-zone strong{font:750 19px/1.2 var(--display)}.drop-zone>span:not(.upload-icon){color:var(--muted);font-size:13px}.drop-zone small{color:var(--muted);font-size:11px;position:absolute;bottom:16px}.scanner{background:#f3eee3;padding:16px}.image-summary{justify-content:space-between;gap:12px;padding:2px 3px 16px}.file-label{color:var(--muted);margin-bottom:4px;font-size:11px;display:block}.image-summary strong{max-width:240px;color:var(--ink);font:700 14px/1.2 var(--sans);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.text-button,.add-row{color:var(--coral);font:700 13px var(--sans);cursor:pointer;background:0 0;border:0}.crop-preview{border:1px solid var(--ink);background:#fff;border-radius:10px;place-items:center;min-height:90px;display:grid;overflow:hidden}.crop-preview img{object-fit:contain;max-width:100%;max-height:260px;display:block}.crop-controls{grid-template-columns:1fr auto;gap:8px 12px;padding:18px 2px;display:grid}.crop-controls label{color:var(--ink);font-size:12px;font-weight:700}.crop-controls output{color:var(--coral);font:700 12px var(--mono)}.crop-controls input{width:100%;accent-color:var(--coral);grid-column:1/-1}.primary-button{border:1px solid var(--ink);background:var(--moss);width:100%;box-shadow:3px 3px 0 var(--ink);color:#fffdf5;font:800 16px/1 var(--display);cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.primary-button b{font-size:21px}.primary-button:disabled{cursor:wait;opacity:.72}.review{margin-top:68px;padding:22px}.review .section-heading{padding:0 0 16px}.review .section-heading p{margin-top:10px;line-height:1.45}.table-head,.inventory-row{grid-template-columns:1fr 92px 30px;align-items:center;gap:8px;display:grid}.table-head{color:var(--muted);padding:0 4px 7px;font-size:11px}.inventory-row{border-top:1px solid var(--line);padding:8px 0}.inventory-row input,.total-check input{border:1px solid var(--line);width:100%;color:var(--ink);font:700 14px var(--mono);background:#fffdf7;border-radius:8px;padding:10px}.inventory-row button{width:28px;height:28px;color:var(--muted);cursor:pointer;background:#efe8dc;border:0;border-radius:50%}.add-row{margin-top:10px}.total-check{color:var(--ink);background:#f3eee3;border-radius:10px;gap:9px;margin-top:20px;padding:16px;font-size:13px;display:grid}.total-check label{align-items:center;gap:8px;font-weight:700;display:flex}.total-check input{width:82px;padding:7px}.total-check p{color:var(--coral);margin:0;line-height:1.4}.total-check .good{color:var(--moss)}details{color:var(--muted);margin-top:16px;font-size:12px}details summary{cursor:pointer}details pre{white-space:pre-wrap;background:#f3eee3;border-radius:8px;padding:12px;overflow:auto}.promise{background:var(--ink);color:#fffaf0;border-radius:18px;align-items:center;gap:23px;margin-top:58px;padding:28px;display:flex}.promise .eyebrow{color:var(--yolk);margin-bottom:10px}.promise h2{color:#fffaf0;font-size:clamp(27px,6vw,42px)}.promise-orb{background:var(--coral);border-radius:50%;flex:0 0 62px;width:62px;height:62px;position:relative;box-shadow:inset -7px -7px #0000001f}.promise-orb span{background:var(--yolk);border-radius:50%;width:12px;height:12px;position:absolute}.promise-orb span:first-child{top:12px;left:14px}.promise-orb span:nth-child(2){background:#e4e0d2;bottom:14px;right:12px}.promise-orb span:nth-child(3){background:#b7d4ce;bottom:7px;left:16px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=560px){.app-shell{padding:18px 16px 42px}.hero{padding:58px 3px 42px}.hero h1{font-size:47px}.hero-copy{font-size:15px}.section-heading{padding:18px 16px 15px}.section-heading>p{display:none}.drop-zone{min-height:286px}.review{margin-top:48px;padding:17px}.crop-preview img{max-height:190px}.promise{gap:16px;padding:23px 19px}.promise-orb{flex-basis:50px;width:50px;height:50px}}.project-name{color:var(--muted);gap:6px;margin:0 0 15px;font-size:11px;font-weight:700;display:grid}.project-name input,.auth-form input{border:1px solid var(--line);width:100%;color:var(--ink);font:700 14px var(--sans);background:#fffdf7;border-radius:8px;padding:10px}.save-panel{margin-top:16px}.save-panel p,.save-hint{color:var(--muted);margin:10px 0 0;font-size:12px}.cloud-panel{border:1px solid var(--ink);box-shadow:5px 5px 0 var(--ink);background:#f3eee3;border-radius:18px;margin-top:50px;padding:22px}.cloud-panel h2{font:750 19px var(--display);margin:0 0 0 10px;display:inline}.cloud-panel>p{color:var(--muted);margin:14px 0;font-size:13px;line-height:1.5}.auth-form,.cloud-account{align-items:center;gap:8px;display:flex}.auth-form input{min-width:0}.auth-form button{border:1px solid var(--ink);background:var(--yolk);box-shadow:2px 2px 0 var(--ink);cursor:pointer;border-radius:8px;flex:none;padding:11px 12px;font-weight:800}.cloud-panel small{color:var(--moss);margin-top:10px;display:block}.cloud-account{justify-content:space-between;margin-top:14px;font-size:13px;font-weight:700}.saved-list{gap:7px;margin:14px 0 0;padding:0;list-style:none;display:grid}.saved-list li{background:#fffdf7;border-radius:8px;justify-content:space-between;gap:12px;padding:10px;font-size:13px;display:flex}.saved-list span{color:var(--muted)}@media (width<=560px){.auth-form{flex-direction:column;align-items:stretch}.auth-form button{width:100%}}
