:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f2f1ec;--ink:#1a1a18;--ink-muted:#6b6b63;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box}html,body,#app{height:100%}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,sans-serif;overflow:hidden}#app{height:100dvh;position:relative}button{font:inherit}.screen{padding:calc(var(--safe-top) + 20px) 20px calc(var(--safe-bottom) + 20px);flex-direction:column;display:flex;position:absolute;inset:0}.landing-header{text-align:center;letter-spacing:.3em;text-transform:lowercase;margin-bottom:24px;font-size:14px}.landing-content{text-align:center;color:var(--ink-muted);flex:1;justify-content:center;align-items:center;padding:0 8px;font-size:14px;line-height:1.8;display:flex;overflow-y:auto}.engine-stage{background:#111;width:100%;height:100dvh;position:relative;overflow:hidden}.engine-canvas-wrap{position:absolute;inset:0}.engine-canvas{object-fit:cover;width:100%;height:100%;display:block}.engine-status,.engine-error{text-align:center;color:#fff;justify-content:center;align-items:center;padding:0 32px;font-size:14px;display:flex;position:absolute;inset:0}.engine-error{color:#ffb4b4}.screen-capture{color:#fff}.capture-header{letter-spacing:.15em;justify-content:space-between;align-items:center;font-size:13px;display:flex;position:relative}.capture-header-actions{gap:8px;display:flex}.switch-camera-button{color:#fff;cursor:pointer;background:#ffffff26;border:1px solid #fff9;border-radius:50%;width:36px;height:36px;font-size:16px;line-height:1}.settings-panel{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0000008c;border-radius:12px;margin-top:12px;padding:14px;position:relative}.settings-panel-header{letter-spacing:.1em;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:13px;display:flex}.settings-panel-close{color:#fff;cursor:pointer;background:0 0;border:none;font-size:18px;line-height:1}.settings-panel-row{margin-bottom:10px}.settings-panel-row:last-child{margin-bottom:0}.settings-panel-row input[type=range]{accent-color:#fff;width:100%}.settings-panel-label{color:#ffffffd9;justify-content:space-between;margin-bottom:4px;font-size:12px;display:flex}.switch-camera-error{color:#ffb4b4;text-shadow:0 1px 4px #0009;margin-top:8px;font-size:12px;position:relative}.capture-footer{flex-direction:column;align-items:center;gap:12px;margin-top:auto;display:flex;position:relative}.zoom-slider{accent-color:#fff;width:200px;max-width:70%}.zoom-kind-label{letter-spacing:.1em;color:#fff9;font-size:10px}.composition-grid{pointer-events:none;position:absolute;inset:0}.composition-grid-line{border-style:dashed;border-color:#ffffff59;position:absolute}.composition-grid-line-v1,.composition-grid-line-v2{border-left-width:.5px;top:0;bottom:0}.composition-grid-line-v1{left:33.333%}.composition-grid-line-v2{left:66.666%}.composition-grid-line-h1,.composition-grid-line-h2{border-top-width:.5px;left:0;right:0}.composition-grid-line-h1{top:33.333%}.composition-grid-line-h2{top:66.666%}.shutter-button{cursor:pointer;background:#ffffff47;border:3px solid #fff;border-radius:50%;width:72px;height:72px}.shutter-button:active{background:#ffffff73}.wordmark{letter-spacing:.2em;color:#fffc;font-size:12px}.screen-preview{color:#fff;padding:0}.preview-image{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.preview-caption{left:20px;bottom:calc(var(--safe-bottom) + 96px);letter-spacing:.08em;text-shadow:0 1px 4px #0009;font-size:12px;position:absolute}.preview-hint{left:20px;bottom:calc(var(--safe-bottom) + 80px);color:#ffffffbf;text-shadow:0 1px 4px #0009;font-size:11px;position:absolute}.preview-status{left:20px;right:20px;bottom:calc(var(--safe-bottom) + 64px);text-shadow:0 1px 4px #0009;font-size:12px;position:absolute}.preview-actions{left:20px;right:20px;bottom:calc(var(--safe-bottom) + 20px);gap:12px;display:flex;position:absolute}.btn{cursor:pointer;border:none;border-radius:999px;padding:14px 20px;font-size:14px}.btn-block{width:100%}.btn-primary{background:var(--ink);color:#fff;flex:1}.landing-cta{flex:none;align-self:center;padding:10px 32px;font-size:13px}.btn-ghost{color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff26}
