:root{font-family:DM Sans,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;color:#19322c;background:#f5f2eb;font-synthesis:none;--ink: #19322c;--forest: #153d34;--mint: #b9f0d5;--cream: #f5f2eb;--paper: #fffdfa;--line: #dcd9d1;--muted: #6f7c77;--danger: #a63737}*{box-sizing:border-box}html{background:var(--cream);overscroll-behavior:none}body{margin:0;min-width:320px;min-height:100dvh}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}button:focus-visible{outline:3px solid #39b98c;outline-offset:3px}.page-shell{min-height:100dvh;padding-bottom:calc(32px + env(safe-area-inset-bottom))}.brand{display:flex;align-items:center;gap:10px;font:600 20px Manrope,sans-serif;letter-spacing:-.5px}.brand strong{color:#169568}.brand--inverse{color:#fff}.brand--inverse strong{color:var(--mint)}.brand__mark{width:24px;height:24px;display:flex;align-items:flex-end;gap:3px;padding:3px;border-radius:7px;background:var(--forest);transform:rotate(-3deg)}.brand--inverse .brand__mark{background:var(--mint)}.brand__mark i{flex:1;background:var(--mint);border-radius:2px}.brand--inverse .brand__mark i{background:var(--forest)}.brand__mark i:nth-child(1){height:45%}.brand__mark i:nth-child(2){height:82%}.brand__mark i:nth-child(3){height:62%}.topbar{height:calc(64px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 18px 0;display:flex;align-items:center;justify-content:space-between;background:var(--cream);border-bottom:1px solid rgba(25,50,44,.08)}.topbar--dark{color:#fff;background:#0f211d;border:0}.topbar h1{margin:0;font:600 16px Manrope}.icon-button{width:44px;height:44px;border:0;border-radius:50%;display:grid;place-items:center;color:inherit;background:transparent}.icon-button svg{width:22px}.topbar__balance{width:44px}.home__header{max-width:720px;margin:auto;padding:calc(22px + env(safe-area-inset-top)) 22px 10px}.hero{max-width:720px;margin:0 auto;padding:54px 22px 58px;text-align:center}.eyebrow{color:#168764!important;font-size:12px!important;font-weight:700;letter-spacing:2.1px}.hero h1{margin:14px 0 18px;font:700 clamp(38px,11vw,64px)/1.04 "Manrope";letter-spacing:-2.3px}.hero h1 em{color:#169568;font-style:normal}.hero>p:not(.eyebrow){max-width:450px;margin:0 auto 30px;color:var(--muted);font-size:17px;line-height:1.55}.primary-button,.secondary-button{min-height:54px;padding:0 22px;border-radius:16px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:700;cursor:pointer}.primary-button{color:#fff;background:var(--forest);box-shadow:0 8px 20px #153d342e}.primary-button:disabled{opacity:.45;box-shadow:none}.primary-button svg,.secondary-button svg{width:21px}.primary-button--large{width:min(100%,380px);min-height:62px;font-size:17px}.secondary-button{color:var(--ink);background:var(--paper);border-color:var(--line)}.privacy-note{margin-top:17px;color:var(--muted);display:flex;justify-content:center;align-items:center;gap:7px;font-size:13px}.privacy-note svg{width:16px;color:#169568}.recent{max-width:720px;margin:auto;padding:0 18px}.section-heading{display:flex;align-items:center;gap:9px;margin-bottom:14px}.section-heading h2{margin:0;font:700 20px Manrope}.section-heading span{min-width:23px;padding:3px 7px;text-align:center;border-radius:20px;background:#e2e5df;color:var(--muted);font-size:12px}.empty-state{padding:36px 22px;text-align:center;border:1px dashed #cbc9c1;border-radius:22px;background:#ffffff57}.empty-state>span{margin:auto;width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:#e2eee8;color:#168764}.empty-state h3{margin:14px 0 3px;font-size:16px}.empty-state p{margin:0;color:var(--muted);font-size:14px}.scan-list{display:grid;gap:10px}.scan-row{position:relative;display:flex;border:1px solid var(--line);border-radius:18px;background:var(--paper);box-shadow:0 3px 12px #19322c0a}.scan-row__main{min-width:0;flex:1;min-height:80px;padding:12px 5px 12px 12px;border:0;display:flex;align-items:center;text-align:left;background:transparent;color:var(--ink)}.scan-icon{width:48px;height:54px;display:grid;place-items:center;border-radius:10px;background:#e5efe9;color:#168764}.scan-icon svg{width:22px}.scan-copy{min-width:0;flex:1;padding:0 12px;display:grid;gap:5px}.scan-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scan-copy small{color:var(--muted)}.scan-row__main>svg{width:18px;color:#98a19d}.scan-row__menu{width:48px;border:0;background:transparent;color:var(--muted)}.scan-row__menu svg{width:21px}.context-menu{position:absolute;right:12px;top:60px;z-index:4;padding:6px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 10px 30px #00000024}.context-menu button{min-height:42px;border:0;display:flex;align-items:center;gap:8px;color:var(--danger);background:transparent}.context-menu svg{width:18px}.home__footer{padding:48px 20px 8px;color:#929a96;text-align:center;font-size:12px}.capture-screen{min-height:100dvh;color:#fff;background:#0f211d;display:flex;flex-direction:column;overflow:hidden}.camera-stage{min-height:0;flex:1;position:relative;overflow:hidden;isolation:isolate;background:#0a1311}.camera-stage video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transition:opacity .2s}.camera-stage video.is-visible{opacity:1}.camera-frame{position:absolute;top:9%;right:7%;bottom:9%;left:7%;border-radius:6px}.camera-frame i{position:absolute;width:34px;height:34px;border-color:var(--mint);border-style:solid}.camera-frame i:nth-child(1){top:0;left:0;border-width:3px 0 0 3px}.camera-frame i:nth-child(2){top:0;right:0;border-width:3px 3px 0 0}.camera-frame i:nth-child(3){bottom:0;right:0;border-width:0 3px 3px 0}.camera-frame i:nth-child(4){bottom:0;left:0;border-width:0 0 3px 3px}.camera-hint{position:absolute;left:50%;bottom:7%;transform:translate(-50%);width:max-content;max-width:88%;padding:9px 14px;border-radius:30px;background:#070f0db8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:13px}.camera-message{position:absolute;top:0;right:0;bottom:0;left:0;padding:40px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#d8dfdc}.camera-message>svg{width:45px;height:45px;color:var(--mint)}.camera-message p{max-width:330px;line-height:1.5}.camera-message button{min-height:44px;border:1px solid #668078;border-radius:12px;padding:0 14px;color:#fff;background:transparent;display:flex;align-items:center;gap:8px}.camera-message button svg{width:18px}.camera-controls{height:116px;padding:18px 30px;display:grid;grid-template-columns:1fr 80px 1fr;align-items:center}.shutter{width:76px;height:76px;padding:5px;border-radius:50%;border:3px solid white;background:transparent}.shutter span{display:block;width:100%;height:100%;border-radius:50%;background:#fff}.shutter:disabled{opacity:.35}.gallery-button{border:0;justify-self:start;display:grid;place-items:center;gap:4px;color:#fff;background:transparent;font-size:11px}.gallery-button svg{width:25px}.control-spacer{width:40px}.capture-privacy{padding:0 20px calc(12px + env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:center;gap:6px;color:#9dafaa;font-size:11px}.capture-privacy svg{width:14px}.review-screen{min-height:100dvh;display:flex;flex-direction:column;background:#ebe8e1}.review-copy{padding:14px 20px;display:flex;align-items:center;justify-content:center;gap:8px;color:var(--muted);font-size:13px}.review-copy p{margin:0}.review-copy svg{width:18px;color:#168764}.corner-editor-wrap{min-height:0;flex:1;padding:8px 16px 18px;display:flex;align-items:center;justify-content:center}.corner-editor{position:relative;max-width:100%;max-height:100%;box-shadow:0 12px 40px #15201d38;touch-action:none}.corner-editor img{display:block;max-width:100%;max-height:calc(100dvh - 235px);object-fit:contain;-webkit-user-select:none;user-select:none}.corner-editor svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;pointer-events:none}.corner-editor polygon{fill:#33e6a41f;stroke:#55e9b4;stroke-width:7;vector-effect:non-scaling-stroke}.corner-editor circle{fill:#fff;stroke:#169568;stroke-width:6;vector-effect:non-scaling-stroke}.corner-handle{position:absolute;width:50px;height:50px;transform:translate(-50%,-50%);border:0;border-radius:50%;background:transparent;touch-action:none}.processing-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#fff;background:#08120fa8}.processing-overlay svg{position:static;width:34px;height:34px}.review-actions{padding:14px 16px calc(14px + env(safe-area-inset-bottom));display:grid;grid-template-columns:.85fr 1.4fr;gap:10px;background:var(--cream);border-top:1px solid var(--line)}.scan-title{max-width:760px;margin:auto;padding:28px 20px 22px;display:flex;justify-content:space-between;align-items:center}.scan-title p{margin:0 0 5px;color:#168764;font-size:11px;font-weight:700;letter-spacing:1.5px}.scan-title h2{margin:0 0 3px;font:700 24px Manrope}.scan-title span{color:var(--muted);font-size:13px}.scan-title button{width:44px;height:44px;border:1px solid var(--line);border-radius:13px;color:var(--ink);background:var(--paper)}.scan-title svg{width:18px}.pages-grid{max-width:760px;margin:auto;padding:0 18px 120px;display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.page-card{overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--paper)}.page-card__image{position:relative;aspect-ratio:.74;background:#e5e3dd}.page-card__image img{width:100%;height:100%;display:block;object-fit:cover}.page-card__image span{position:absolute;left:8px;bottom:8px;width:26px;height:26px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--forest);font-size:12px;font-weight:700}.page-card__actions{height:48px;display:flex}.page-card__actions button{min-width:44px;flex:1;border:0;border-right:1px solid #ece9e3;color:var(--muted);background:transparent}.page-card__actions button:last-child{border:0;color:var(--danger)}.page-card__actions button:disabled{opacity:.25}.page-card__actions svg{width:17px}.add-page-card{min-height:220px;border:1.5px dashed #b8bdb8;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;color:var(--muted);background:#ffffff40}.add-page-card svg{width:30px;height:30px;color:#168764}.add-page-card span{font-weight:600}.pages-footer{position:fixed;left:0;right:0;bottom:0;z-index:5;padding:12px 16px calc(12px + env(safe-area-inset-bottom));display:grid;grid-template-columns:1fr 1.1fr;gap:10px;background:#f5f2ebf0;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.pdf-loading,.error-card{min-height:60dvh;padding:50px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.pdf-loading>svg{width:38px;height:38px;color:#169568}.pdf-loading h2,.error-card h2{margin:18px 0 7px;font:700 24px Manrope}.pdf-loading p,.error-card p{margin:0 0 20px;color:var(--muted)}.pdf-success{padding:32px 20px 18px;text-align:center}.pdf-success>span{width:54px;height:54px;margin:auto;display:grid;place-items:center;border-radius:50%;color:#168764;background:#dff1e8}.pdf-success>span svg{width:28px}.pdf-success p{margin:13px 0 5px;color:#168764;font-size:11px;font-weight:700;letter-spacing:1.5px}.pdf-success h2{margin:0 0 4px;font:700 24px Manrope}.pdf-success small{color:var(--muted)}.pdf-preview{width:min(88%,520px);height:min(46dvh,520px);margin:0 auto 18px;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 8px 30px #19322c1c}.pdf-preview iframe{width:100%;height:100%;border:0}.pdf-actions{width:min(100% - 32px,520px);margin:auto;display:grid;gap:10px}.pdf-actions .primary-button,.pdf-actions .secondary-button{width:100%}.text-button{min-height:44px;border:0;color:var(--muted);background:transparent;font-weight:600}.inline-error{width:min(100% - 32px,520px);margin:0 auto 12px;color:var(--danger);text-align:center;font-size:13px}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:700px){.pages-grid{grid-template-columns:repeat(3,1fr)}.pages-footer{position:sticky;max-width:760px;margin:auto;border:1px solid var(--line);border-radius:18px 18px 0 0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
