@font-face{font-family:ZenMaru;src:url('/assets/zen-maru-medium.ttf') format('truetype');font-style:normal;font-weight:400 800;font-display:swap}
:root{--paper:#faf7ef;--white:#fffdf8;--ink:#343f37;--muted:#7b8075;--line:#e6e4d9;--yellow:#f6b900;--yellow-soft:#fff0ba;--green:#4e7d68;--green-soft:#e9eee5;--coral:#d7795c;--radius:22px;--font:ZenMaru,'Hiragino Maru Gothic ProN','Yu Gothic',sans-serif}
*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);font-family:var(--font);scroll-behavior:smooth;-webkit-tap-highlight-color:transparent}body{margin:0;padding:0;min-width:320px}button,input,a{touch-action:manipulation}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer;border:0;background:none;font-weight:600}button:disabled{cursor:default;opacity:.38}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--green);outline-offset:4px}button:active:not(:disabled){transform:scale(.975)}button{transition:background .15s,transform .15s}a{color:var(--green)}img{max-width:100%;display:block}p{line-height:1.8;margin:0 0 16px}h1,h2,h3{margin:0;font-weight:700;line-height:1.5}h1{font-size:27px;letter-spacing:.045em}h2{font-size:20px;letter-spacing:.025em}h3{font-size:15px}small{font-size:12px}.icon{width:24px;height:24px;flex:none}.app-shell{max-width:820px;margin:auto;min-height:100svh}.boot{display:grid;place-items:center;min-height:100svh;color:var(--green)}.primary,.secondary{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:16px;padding:12px 20px;letter-spacing:.03em;font-size:15px}.primary{background:var(--yellow);color:#453718}.primary:hover{background:#edb000}.secondary{background:#fffdf8;border:1px solid #d9ddd1}.secondary:hover{background:#f0f1e9}.primary .icon,.secondary .icon{width:21px;height:21px}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;color:var(--green);font-size:14px;padding:9px 12px}.text-button .icon{width:19px;height:19px}.small{font-size:12px;min-height:42px;padding:9px 12px}.icon-button{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;flex:none}.icon-button:hover{background:var(--green-soft)}.subtle{font-size:12px;color:var(--muted);line-height:1.8}.center{text-align:center}.eyebrow{font-size:12px;color:var(--green);margin-bottom:5px;letter-spacing:.08em}.page-top{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 16px;min-height:68px;position:relative}.page-top h1{font-size:16px;letter-spacing:.03em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}.page-top>.text-button{padding:8px;flex:none}.top-spacer{width:44px;flex:none}.home-top{padding:26px 26px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:20px;letter-spacing:.12em}.brand img{border-radius:9px}.local-tag{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:10px;white-space:nowrap}.local-tag .icon{width:13px;height:13px}.gallery-main{padding:12px 26px 132px}.title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px;gap:12px}.count-badge{width:61px;height:61px;flex:none;background:#eeeee2;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:9px;line-height:1.3;color:#78816a;transform:none}.count-badge strong{font-size:25px;font-weight:500;color:var(--green)}.welcome{background:#f0eddf;border-radius:26px;overflow:hidden;position:relative;padding:4px 20px 25px;text-align:center}.welcome-art{position:relative;max-width:345px;margin:-7px auto -8px}.book-art{width:100%;height:204px;display:block}.paper-tag{position:absolute;right:14px;bottom:15px;background:#fffcf0;padding:5px 10px;font-size:10px;letter-spacing:.08em;color:#8e7953;transform:rotate(5deg);border-radius:2px}.welcome h2{font-size:23px;line-height:1.55;letter-spacing:.06em}.welcome-copy>p{font-size:13px;line-height:1.8;color:#727869;margin:10px 0 18px}.welcome .primary{width:100%;max-width:330px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.section-title h2{font-size:16px}.section-title>span{font-size:10px;color:var(--muted)}.sample-section{margin-top:28px}.samples-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.work-card{text-align:left;padding:0;min-width:0;position:relative}.card-image{aspect-ratio:1;border-radius:20px;overflow:hidden;background:#f0eee6;position:relative;border:1px solid rgba(48,65,42,.025)}.card-image>img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.work-card:hover .card-image>img{transform:scale(1.035)}.card-caption{padding:10px 4px 0}.card-caption h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}.card-caption>span{display:block;font-size:10px;color:var(--muted);margin-top:4px}.sample-card .card-caption>span{display:none}.step-badge{position:absolute;bottom:9px;left:9px;display:flex;align-items:center;gap:4px;background:#fffdf3eb;border-radius:7px;padding:4px 7px;font-size:9px;color:#586c57}.step-badge .icon{width:12px;height:12px}.card-heart{position:absolute;right:11px;top:11px;background:var(--white);color:var(--coral);display:grid;place-items:center;width:29px;height:29px;border-radius:50%}.card-heart .icon{width:15px;height:15px;fill:currentColor}.works-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 16px}.filter-row{display:flex;gap:8px;margin:-6px 0 22px}.chip{min-height:42px;padding:9px 15px;border-radius:22px;display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}.chip .icon{width:17px;height:17px}.chip.selected{color:var(--green);background:var(--green-soft)}.gallery-end{font-size:12px;color:#94998a;text-align:center;margin:35px 0 5px}.no-favorites{grid-column:1/-1;text-align:center;padding:70px 0;color:var(--muted);font-size:14px;line-height:1.9}.draft-banner{display:flex;align-items:center;gap:12px;background:#fff1ca;padding:13px 15px;width:100%;border-radius:16px;text-align:left;margin-bottom:25px;font-size:12px}.draft-banner>span{flex:1}.draft-banner strong{display:block;font-size:13px;margin-top:3px}.bottom-nav{position:fixed;z-index:20;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:600px;background:var(--paper);border-top:1px solid #e5e5d9;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end;padding:0 18px calc(9px + env(safe-area-inset-bottom));height:calc(85px + env(safe-area-inset-bottom))}.nav-item{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;padding:10px 0 5px;color:#8a8d80;font-size:10px;min-height:64px}.nav-item .icon{width:23px;height:23px}.nav-item.active{color:var(--green)}.nav-item.active:after{content:'';display:block;width:4px;height:4px;border-radius:50%;background:var(--green);position:absolute;bottom:calc(4px + env(safe-area-inset-bottom))}.nav-create{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:11px;padding:0 0 4px;margin-top:-16px;align-self:start}.create-circle{width:62px;height:62px;border-radius:50%;background:var(--yellow);display:grid;place-items:center;color:#4b3d17}.create-circle .icon{width:29px;height:29px;stroke-width:2}.detail-main{max-width:540px;margin:auto;padding:8px 25px 14px}.detail-photo-wrap{position:relative}.detail-photo{width:100%;background:#efece2;aspect-ratio:1.1;border-radius:26px;padding:0;overflow:hidden;position:relative}.detail-photo>img{height:100%;width:100%;object-fit:contain}.photo-expand{position:absolute;bottom:13px;right:13px;padding:7px;width:34px;height:34px;background:#fffdf6e0;border-radius:50%;color:#637163}.demo-ribbon{position:absolute;top:15px;left:-6px;background:var(--green);color:white;font-size:11px;padding:6px 13px;border-radius:3px;transform:rotate(-4deg);letter-spacing:.05em}.detail-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:24px 0 20px}.detail-heading h2{font-size:22px;overflow-wrap:anywhere}.detail-heading .eyebrow{font-size:10px;margin-bottom:5px}.favorite{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#efeee5;color:#868979;flex:none}.favorite.is-favorite{background:#f8e7dd;color:var(--coral)}.favorite.is-favorite .icon{fill:currentColor}.detail-actions>.primary{width:100%}.detail-actions>p{font-size:11px;color:var(--muted);text-align:center;margin:9px 0 19px}.step-peek{display:flex;gap:8px;align-items:center;margin-bottom:24px}.step-peek button{position:relative;padding:0;flex:1;min-width:0}.step-peek img{aspect-ratio:1;width:100%;object-fit:cover;border-radius:10px}.step-peek button>span{position:absolute;left:5px;bottom:5px;background:#fffdf3e3;border-radius:50%;font-size:9px;width:18px;height:18px;display:grid;place-items:center}.peek-more{font-size:12px;color:var(--muted)}.page-bottom{padding:8px 20px 24px;text-align:center}.photo-only{background:#eeeee3;text-align:center;padding:20px 15px;border-radius:18px}.photo-only p{font-size:13px}.editor-main{max-width:540px;margin:0 auto;padding:5px 24px 180px}.capture-empty{min-height:66svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px}.capture-empty h2{font-size:22px;margin-top:10px}.capture-empty>p{font-size:12px;color:var(--muted);margin-bottom:14px}.capture-empty>.primary,.capture-empty>.secondary{width:100%;max-width:320px}.capture-empty>small{color:var(--muted);font-size:11px;margin-top:12px}.camera-emblem{width:120px;height:120px;border-radius:39px;background:#edeede;display:grid;place-items:center;transform:rotate(-6deg)}.camera-emblem .icon{width:53px;height:53px;color:var(--green);transform:rotate(6deg);stroke-width:1.4}.cover-edit{width:100%;height:220px;background:#eeece3;border-radius:22px;position:relative;overflow:hidden}.cover-edit>img{height:100%;width:100%;object-fit:contain}.cover-replace{position:absolute;right:12px;bottom:12px;background:#fffdf2ed;border-radius:20px;padding:8px 11px;display:flex;align-items:center;gap:5px;font-size:11px}.cover-replace .icon{width:16px;height:16px}.cover-label{position:absolute;top:13px;left:13px;background:#fffdf2e8;border-radius:7px;padding:5px 10px;font-size:10px}.name-field{display:block;margin:22px 0 26px}.name-field>span{display:flex;align-items:center;gap:10px;font-size:13px;margin-bottom:8px}.name-field small{font-size:10px;color:var(--muted);font-weight:400}.name-field input{width:100%;border:1px solid #dcdfd3;background:#fffef8;border-radius:13px;padding:13px 15px;font-size:16px;color:var(--ink)}input::placeholder{color:#a1a291}.optional-label{font-weight:400;font-size:10px;color:var(--muted);margin-left:7px}.steps-start{background:#efeee3;border-radius:18px;text-align:center;padding:18px 14px 8px}.steps-start>p{font-size:12px;line-height:1.8;color:#7a806f;margin-bottom:15px}.steps-start>.secondary{width:100%;font-size:14px}.steps-start>.text-button{font-size:12px;margin-top:5px}.draft-status{text-align:center;font-size:10px;color:#8c9384;margin:24px 0 0}.editor-footer{position:fixed;bottom:0;width:100%;max-width:540px;left:50%;transform:translateX(-50%);padding:14px 24px calc(8px + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);display:flex;flex-direction:column;align-items:stretch;z-index:10}.editor-footer>.text-button{font-size:10px;min-height:32px;color:#8b9082;padding:5px}.step-list{padding:0;list-style:none;margin:0 0 18px;display:grid;gap:12px}.step-list li{display:grid;grid-template-columns:20px 60px minmax(0,1fr);grid-template-rows:33px 28px;gap:0 10px;align-items:center;padding:10px;background:#fffdf8;border:1px solid #e4e6db;border-radius:15px}.step-number{grid-row:1/3;font-size:12px;color:var(--green)}.step-thumb{grid-row:1/3;padding:0;align-self:stretch;border-radius:8px;overflow:hidden}.step-thumb img{width:100%;height:100%;object-fit:cover}.step-note{min-width:0;width:100%;border:0;border-bottom:1px solid #efeee4;background:transparent;font-size:14px;padding:4px 0;color:var(--ink);border-radius:0}.step-tools{display:flex;justify-content:flex-end;gap:4px}.step-tools .icon-button{width:36px;height:32px}.step-tools .icon{width:16px;height:16px}.step-tools .icon-button:first-child{margin-right:auto}.add-step-row{display:flex;gap:10px}.add-step-row>*{flex:1;font-size:12px}.building{height:100svh;min-height:540px;display:flex;flex-direction:column;max-width:620px}.building .page-top{flex:none;padding:9px 12px;min-height:63px}.building .page-top h1{font-size:13px;letter-spacing:0}.building .page-top .text-button{font-size:10px}.build-main{display:flex;flex-direction:column;flex:1;min-height:0;padding:8px 22px 12px}.build-status{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--green);margin-bottom:9px}.build-status strong{font-size:13px;font-weight:500;letter-spacing:.05em}.build-status b{font-size:23px;margin-right:3px}.progress-track{height:5px;background:#e5e6d9;border-radius:5px;margin-bottom:16px;flex:none}.progress-track>span{display:block;height:100%;background:#8aa387;border-radius:5px;transition:width .3s}.build-photo{padding:0;min-height:100px;flex:1;width:100%;border-radius:24px;background:#eeeade;overflow:hidden;position:relative;display:grid;place-items:center}.build-photo img{width:100%;height:100%;object-fit:contain;position:absolute;inset:0}.build-note{font-size:14px;text-align:center;margin:14px 0 15px;min-height:26px;flex:none;overflow-wrap:anywhere}.build-thumbs{display:flex;gap:8px;overflow-x:auto;padding:3px 3px 7px;flex:none;scrollbar-width:thin;scrollbar-color:#cbd2c0 transparent}.build-thumbs>button{flex:none;width:49px;height:49px;border-radius:10px;padding:0;position:relative;opacity:.6}.build-thumbs>button.current{outline:2px solid var(--green);outline-offset:2px;opacity:1}.build-thumbs img{width:100%;height:100%;object-fit:cover;border-radius:9px}.build-thumbs span{position:absolute;left:3px;bottom:3px;font-size:9px;border-radius:4px;background:#fffdf5e6;padding:0 4px}.build-footer{padding:12px 22px calc(17px + env(safe-area-inset-bottom));display:grid;grid-template-columns:.7fr 1.3fr;gap:12px;flex:none}.build-footer>*{min-height:56px;font-size:16px}.build-footer>.primary{flex-direction:row-reverse}.done-main{min-height:100svh;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:35px 25px;position:relative}.done-main h1{font-size:34px;color:var(--green)}.done-picture{width:min(65vw,290px);margin:25px 0 23px;transform:rotate(-4deg);background:#fffdf8;padding:10px;border-radius:20px;border:1px solid #e3e4d7}.done-picture img{aspect-ratio:1;object-fit:contain;width:100%;border-radius:12px}.done-main h2{font-size:20px}.done-main>p:not(.eyebrow){font-size:12px;color:var(--muted);margin:10px 0 25px}.done-main>.primary{width:100%;max-width:330px}.done-sparkles{position:absolute;inset:18% 10% auto;height:240px;pointer-events:none;color:#cfa940}.done-sparkles .icon{position:absolute;animation:twinkle 1s ease-out both}.done-sparkles .icon:nth-child(1){top:70px;left:0;transform:rotate(-10deg);width:34px;height:34px}.done-sparkles .icon:nth-child(2){top:0;right:0;color:var(--coral)}.done-sparkles .icon:nth-child(3){bottom:0;right:0;color:var(--green);width:17px;height:17px}.settings-main{max-width:540px;margin:auto;padding:10px 24px 130px}.storage-card{background:#eeeee1;border-radius:24px;padding:24px 20px;text-align:center}.section-kicker{color:var(--green);font-size:11px;display:block;margin-bottom:8px}.storage-card h2{font-size:21px;margin-bottom:12px}.storage-card p{font-size:12px;color:#727b69}.storage-count{display:flex;justify-content:center;align-items:center;gap:8px;margin:24px 0}.storage-count strong{font-size:30px;font-weight:500;color:var(--green)}.storage-count span{font-size:12px}.storage-card .storage-note{padding-top:18px;border-top:1px solid #daddcc;font-size:11px}.storage-card>.primary,.storage-card>.secondary{width:100%;margin-bottom:10px;font-size:13px}.storage-card>.subtle{font-size:10px;margin:6px 0 0}.settings-section{margin:32px 0;padding-bottom:25px;border-bottom:1px solid var(--line)}.settings-section>h2{font-size:16px;margin-bottom:12px}.settings-section>p{font-size:12px;color:var(--muted)}.settings-section>.secondary{font-size:12px}.settings-section>.subtle{font-size:10px;margin:10px 0 0}.how-list{counter-reset:how;padding:0;list-style:none;display:grid;gap:20px}.how-list>li{padding-left:34px;position:relative;font-size:13px}.how-list>li:before{counter-increment:how;content:counter(how);position:absolute;left:0;top:0;display:grid;place-items:center;background:#e7eddf;border-radius:50%;width:24px;height:24px;color:var(--green);font-size:11px}.how-list span{display:block;color:var(--muted);font-size:12px;line-height:1.8;margin-top:5px}.compass-link{display:flex;justify-content:space-between;align-items:center;padding:20px;background:#e9eee2;border-radius:17px;text-decoration:none;gap:10px}.compass-link small{display:block;font-size:10px;margin-bottom:5px}.compass-link strong{font-size:15px}.settings-brand{text-align:center;margin-top:42px;color:#8e9685}.settings-brand .brand{justify-content:center;font-size:18px;opacity:.75}.settings-brand .brand>img{width:26px;height:26px}.settings-brand>p{font-size:11px;margin:12px 0}.settings-brand>span{font-size:9px}.modal-open{overflow:hidden}.modal-backdrop{position:fixed;inset:0;z-index:100;background:#29362c73;display:flex;align-items:flex-end;justify-content:center;backdrop-filter:blur(4px);padding-top:20px}.sheet,.camera-sheet{width:100%;max-width:520px;background:var(--paper);border-radius:27px 27px 0 0;padding:21px 24px calc(24px + env(safe-area-inset-bottom));max-height:94svh;overflow-y:auto;animation:slide-up .2s ease-out}.sheet-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px}.sheet-heading h2{font-size:19px}.sheet-heading>.icon-button{margin-right:-8px}.sheet>.primary,.sheet>.secondary{display:flex;width:100%;margin:12px 0 0}.sheet>.text-button{display:flex;margin:6px auto 0}.sheet>p{font-size:13px}.menu-button{display:flex;align-items:center;gap:13px;min-height:57px;width:100%;padding:12px 5px;border-bottom:1px solid var(--line);font-size:14px;text-align:left}.menu-button:last-child{border-bottom:0}.menu-button .icon{width:21px;height:21px}.danger{color:#b45645}.camera-guide-icon{width:86px;height:86px;border-radius:27px;background:#e7ecde;color:var(--green);display:grid;place-items:center;margin:5px auto 24px}.camera-guide-icon .icon{width:42px;height:42px}.camera-instructions{padding-left:22px;font-size:14px;display:grid;gap:13px;line-height:1.8;margin-bottom:22px}.camera-instructions li::marker{color:var(--green)}.camera-sheet{padding:15px 20px calc(20px + env(safe-area-inset-bottom))}.camera-sheet>.secondary{width:100%;margin-top:8px}.camera-sheet .sheet-heading{margin-bottom:12px}.camera-view{position:relative;aspect-ratio:4/3;background:#26352c;border-radius:20px;overflow:hidden}.camera-view video{width:100%;height:100%;object-fit:contain}.camera-frame{position:absolute;inset:20px;border:1px dashed #ffffff7a;border-radius:12px;pointer-events:none}.camera-view>p{position:absolute;inset:40% 10px auto;text-align:center;color:white;font-size:12px}.camera-caption{font-size:13px;text-align:center;margin:17px 0 9px}.camera-controls{display:flex;align-items:center;justify-content:space-around;padding:10px 0}.camera-controls>.icon-button,.camera-controls>#shot-count{width:52px;font-size:13px;color:var(--green)}.shutter{width:76px;height:76px;border-radius:50%;border:3px solid #d7c689;padding:5px}.shutter>span{display:block;width:100%;height:100%;background:var(--yellow);border-radius:50%}.camera-view.flash:after{content:'';position:absolute;inset:0;background:white;animation:flash .4s ease-out forwards;pointer-events:none}.camera-sheet #shot-status{font-size:11px;margin:9px 0}.zoom-sheet{background:var(--paper);width:100%;max-width:750px;height:95svh;border-radius:24px 24px 0 0;padding:12px;display:flex;flex-direction:column}.zoom-toolbar{display:flex;justify-content:flex-end;gap:8px;align-items:center;margin-bottom:10px}.zoom-toolbar>.icon-button:not(:last-child){width:auto;padding:0 14px;font-size:13px;background:#e8edde;border-radius:25px}.zoom-pan{flex:1;min-height:0;overflow:auto;background:#eae9df;border-radius:15px}.zoom-pan img{max-width:none;min-width:100%;object-fit:contain;min-height:100%}.zoom-tip{text-align:center;font-size:11px;color:var(--muted);margin:12px 0}.error-box{font-size:13px;background:#ffe6d9;padding:15px;border-radius:13px}#toast{position:fixed;z-index:200;bottom:calc(108px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%,15px);opacity:0;pointer-events:none;background:#344b3eef;color:#fffdf4;border-radius:15px;padding:12px 18px;font-size:12px;line-height:1.7;width:max-content;max-width:calc(100% - 36px);text-align:center;transition:opacity .2s,transform .2s}#toast.visible{opacity:1;transform:translate(-50%,0)}.busy{cursor:progress}.busy [data-lock]{opacity:.6}
@keyframes slide-up{from{transform:translateY(30px);opacity:0}to{transform:none;opacity:1}}@keyframes flash{from{opacity:.85}to{opacity:0}}@keyframes twinkle{from{opacity:0;scale:.2}to{opacity:1;scale:1}}
@media(min-width:650px){.home-top{padding:35px 34px 22px}.gallery-main{padding:15px 34px 130px}.welcome{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;padding:18px 28px 22px;text-align:left;gap:20px}.welcome-art{width:100%;margin:0}.book-art{height:auto}.welcome-copy>h2{font-size:26px}.welcome .primary{font-size:13px;padding:12px 15px}.sample-section{margin-top:34px}.samples-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.sample-card{display:grid;grid-template-columns:130px 1fr;gap:20px;align-items:center;background:#f1eee4;padding:12px;border-radius:22px}.sample-card .card-caption{padding:0}.sample-card .card-caption h3{font-size:13px;white-space:normal}.sample-card .card-image{border-radius:15px}.works-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 22px}.bottom-nav{border-radius:24px 24px 0 0;border:1px solid var(--line);border-bottom:0}.title-row{margin-bottom:28px}.count-badge{width:65px;height:65px}.modal-backdrop{align-items:center;padding:24px}.sheet,.camera-sheet,.zoom-sheet{border-radius:26px;max-height:90svh}.detail-photo{aspect-ratio:1.2}.detail-main{padding-top:16px}.page-top{padding-top:20px}.building .page-top{padding-top:14px}.building{height:100svh}.editor-main{padding-top:15px}.cover-edit{height:270px}.local-tag{font-size:11px}.settings-main{padding-top:18px}}
@media(max-width:370px){.home-top{padding:20px 18px 12px}.brand{font-size:18px;gap:7px}.brand img{width:28px;height:28px}.local-tag{font-size:9px}.gallery-main{padding:10px 18px 120px}h1{font-size:24px}.count-badge{width:54px;height:54px}.welcome{padding:0 17px 21px}.book-art{height:175px}.welcome h2{font-size:21px}.welcome-copy>p{font-size:12px}.welcome .primary{font-size:13px}.card-caption h3{font-size:12px}.samples-grid{gap:12px}.editor-main,.detail-main,.settings-main{padding-left:18px;padding-right:18px}.step-list li{grid-template-columns:16px 52px minmax(0,1fr);gap:0 7px}.build-main{padding-left:17px;padding-right:17px}.build-footer{padding-left:17px;padding-right:17px}.build-note{font-size:12px}.settings-main h2{font-size:18px}}
@media(max-height:730px) and (max-width:649px){.home-top{padding-top:17px}.title-row{margin-bottom:18px}.book-art{height:158px}.welcome-art{max-width:290px}.welcome{padding-bottom:18px}.welcome h2{font-size:21px}.welcome-copy>p{margin:6px 0 12px}.sample-section{margin-top:22px}.sample-card .card-image{aspect-ratio:1.28}.sample-card .card-image>img{object-fit:cover}.section-title{margin-bottom:10px}.build-main{padding-top:2px}.build-note{margin:9px 0}.build-thumbs>button{width:42px;height:42px}.build-footer{padding-top:8px;padding-bottom:12px}.build-footer>*{min-height:50px}.cover-edit{height:180px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:649px){.welcome{padding:0 16px 18px}.welcome-art{max-width:300px;margin:-6px auto -6px}.book-art{height:150px}.welcome h2{font-size:21px;line-height:1.45}.welcome-copy>p{font-size:12px;line-height:1.7;margin:6px 0 14px}.paper-tag{right:20px;bottom:5px;font-size:9px}.sample-card .card-image{aspect-ratio:1.1}}
.primary,.secondary{white-space:nowrap}.build-footer>.secondary{padding:12px;gap:7px}.step-note{font-size:16px}

/* Video-led capture and a quiet wordmark. */
.brand{font-size:18px;letter-spacing:.035em;white-space:nowrap}.brand-continue{color:var(--green)}.brand img{display:none}.home-top{gap:8px}.count-badge{transform:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.video-add{text-align:center;margin:0 0 25px}.video-add>.secondary{width:100%}.video-add p{margin:8px 0 0}.video-saved{display:flex;align-items:center;gap:12px;padding:18px;background:var(--green-soft);border-radius:18px}.video-saved-icon{width:40px;height:40px;display:grid;place-items:center;color:var(--green);flex:none}.video-saved strong{font-size:13px;display:block}.video-saved div>span{font-size:10px;color:var(--muted);display:block;margin-top:5px}.video-edit-actions{display:flex;justify-content:space-between;margin:4px 0 14px}.photo-options{border-top:1px solid var(--line);padding-top:14px}.photo-options summary{font-size:12px;color:var(--green);cursor:pointer;padding:10px 0;min-height:44px}.photo-options[open] summary{margin-bottom:12px}
.camera-sheet>.primary{width:100%}.camera-sheet>.text-button{display:flex;margin:auto}.record-status{display:flex;justify-content:space-between;gap:10px;margin-top:18px;font-size:11px;color:var(--green)}.record-status strong{font-weight:500;font-variant-numeric:tabular-nums}.recording{color:#b8503f}
.video-build-main{flex:1;min-height:0;display:flex;flex-direction:column;padding:8px 22px max(15px,env(safe-area-inset-bottom))}.video-build-main .build-status{font-size:11px}.video-build-main .build-status strong{font-size:12px;font-variant-numeric:tabular-nums}.reverse-screen{position:relative;flex:1;min-height:100px;background:#edece1;border-radius:22px;overflow:hidden}.reverse-screen video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.video-loading{position:absolute;inset:0;display:grid;place-items:center;font-size:12px;background:#edece1}.video-hint{text-align:center;font-size:12px;line-height:1.6;margin:14px 0 8px;min-height:20px}.video-timeline{display:block;flex:none}.video-timeline input{display:block;width:100%;height:34px;accent-color:var(--green);margin:0;cursor:pointer}.timeline-labels{display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}.video-controls{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:8px;margin-top:18px}.video-controls>*{padding:12px 7px;min-height:56px}.video-controls>.small{font-size:11px;gap:3px}.video-controls>.small .icon{width:16px;height:16px}.video-controls>.primary{font-size:15px;gap:5px}.video-lower{display:flex;align-items:center;justify-content:space-between;margin-top:8px}.video-lower .text-button{padding:8px;font-size:12px}
@media(max-width:370px){.brand{font-size:16px}.local-tag{font-size:8px}.local-tag .icon{display:none}.video-build-main{padding-left:15px;padding-right:15px}.video-controls{gap:6px}.video-controls>.small{font-size:10px}.capture-empty h2{font-size:21px}.capture-empty{gap:10px}.camera-emblem{width:95px;height:95px}.camera-emblem .icon{width:44px;height:44px}}
@media(max-height:680px){.capture-empty{min-height:0;padding-top:18px;gap:9px}.capture-empty>p{margin-bottom:5px}.capture-empty>small{margin-top:0}.capture-empty h2{font-size:21px}.camera-emblem{width:85px;height:85px;border-radius:27px}.camera-emblem .icon{width:40px;height:40px}.video-controls{margin-top:12px}.video-controls>*{min-height:50px}.video-hint{margin:10px 0 4px}}

body{min-width:0}.editor-main:has(.capture-empty){padding-bottom:16px}.capture-empty{min-height:calc(100svh - 100px);gap:8px}.capture-empty h2{margin-top:0}.capture-empty>small{margin-top:0}.detail-actions>.text-button{display:flex;margin:0 auto 16px}
@media(max-height:680px){.capture-empty{padding-top:6px;min-height:0}.capture-empty .camera-emblem{width:68px;height:68px;border-radius:23px;margin:4px 0 8px}.capture-empty h2{line-height:1.4}.capture-empty>p{margin:0 0 4px}.capture-empty>.text-button{min-height:40px}.capture-empty>small{font-size:10px}}
