:root{color:#151716;font-synthesis:none;--canvas:#f3f1ec;--surface:#fbfaf7;--ink:#151716;--muted:#696e69;--line:#d9d9d2;--accent:#315e59;--caution:#9a6a31;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-drawer:cubic-bezier(.32, .72, 0, 1);background:#f3f1ec;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,sans-serif}*{box-sizing:border-box}html,body,#root{background:var(--canvas);min-width:320px;min-height:100%;margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.icon{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.brand{color:var(--ink);letter-spacing:-.02em;align-items:center;gap:9px;text-decoration:none;display:flex}.brand>span{color:#fff;background:var(--accent);border-radius:50%;place-items:center;width:30px;height:30px;font-family:Georgia,serif;font-style:italic;display:grid}.brand b{font-size:15px}.pill{color:#4f5752;letter-spacing:.055em;text-transform:uppercase;white-space:nowrap;background:#f3f1ece0;border:1px solid #ffffff38;border-radius:999px;align-items:center;min-height:25px;padding:0 9px;font-size:10px;font-weight:650;display:inline-flex}.pill-live:before{content:"";background:#5d8b70;border-radius:50%;width:6px;height:6px;margin-right:6px;box-shadow:0 0 0 3px #5d8b701f}.pill-caution{color:#765022;background:#f6ead8}.button{cursor:pointer;min-height:44px;transition:transform .14s var(--ease-out), background-color .18s ease, color .18s ease;border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:600;display:inline-flex}.button:active{transform:scale(.97)}.button-primary{color:#fff;background:var(--accent)}.button-quiet{color:#343a36;background:#fbfaf7e0;border:1px solid #d9d9d2c7;min-height:38px;padding:0 12px;font-size:12px}.button-ghost{color:var(--accent);background:0 0}.capture-shell{grid-template-rows:64px 1fr auto;width:min(1180px,100% - 32px);min-height:100dvh;margin:auto;display:grid}.capture-bar,.app-bar{justify-content:space-between;align-items:center;display:flex}.capture-bar{border-bottom:1px solid var(--line)}.mode-link{color:#58605a;font-size:12px;font-weight:600;text-decoration:none}.header-actions{align-items:center;gap:16px;display:flex}.library-trigger{border:1px solid var(--line);color:#4d5650;cursor:pointer;min-height:36px;transition:transform .14s var(--ease-out), background-color .18s ease;background:#fbfaf7b8;border-radius:10px;align-items:center;gap:7px;padding:0 11px;font-size:11px;font-weight:620;display:inline-flex}.library-trigger:active{transform:scale(.97)}.library-trigger .icon{width:15px;height:15px}.capture-card{border:1px solid var(--line);background:var(--surface);border-radius:28px;grid-template-columns:1fr 1fr;align-self:center;min-height:620px;display:grid;overflow:hidden;box-shadow:0 22px 70px #16181612}.capture-copy{background:linear-gradient(145deg,#e8ece4,#dde5dc);flex-direction:column;justify-content:center;padding:64px;display:flex}.capture-copy>.pill{align-self:flex-start}.capture-copy h1{letter-spacing:-.06em;margin:22px 0 20px;font-size:clamp(46px,5.5vw,74px);font-weight:560;line-height:.94}.capture-copy>p{color:#59615b;max-width:540px;margin:0;font-size:17px;line-height:1.6}.capture-copy ul{color:#4d574f;gap:11px;margin:38px 0 0;padding:0;font-size:13px;list-style:none;display:grid}.capture-copy li:before{content:"—";color:#829087;margin-right:10px}.capture-action{flex-direction:column;justify-content:center;align-items:center;padding:48px;display:flex}.upload-target{color:#677068;cursor:pointer;width:100%;min-height:390px;transition:transform .16s var(--ease-out), border-color .18s ease, background-color .18s ease;background:#f7f5ef;border:1px dashed #adb3ac;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;display:flex}.upload-target:active{transform:scale(.985)}.upload-target>span{width:48px;height:48px;color:var(--accent);border:1px solid #bac0b9;border-radius:50%;place-items:center;margin-bottom:17px;display:grid}.upload-target>b{color:var(--ink);font-size:16px}.upload-target small{margin-top:11px;font-size:11px}.error-copy{color:#8b3e32;font-size:12px}.capture-foot{text-align:center;color:#777d78;margin:0;padding:18px;font-size:10px}.app-shell{height:100dvh;max-height:100dvh;overflow:hidden}.app-bar{border-bottom:1px solid #d9d9d2cc;height:60px;padding:0 max(18px,50vw - 610px)}.app-status{align-items:center;gap:14px;display:flex}.focus-layout{grid-template-columns:minmax(0,1fr) 360px;gap:16px;width:min(1220px,100% - 32px);height:calc(100dvh - 76px);margin:16px auto 0;display:grid;position:relative}.focus-stage{border:1px solid var(--line);background:#202320;border-radius:28px;flex-direction:column;min-width:0;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 40px #16181614}.stage-media{background:#222622;flex:1;min-height:0;position:relative;overflow:hidden}.stage-image,.preview-clip{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.preview-clip{z-index:2}.preview-clip .stage-image{position:absolute}.stage-scrim{z-index:3;background:linear-gradient(#0000,#0c100fad);position:absolute;inset:45% 0 0}.stage-caption{z-index:5;color:#fff;max-width:640px;animation:caption-in .22s var(--ease-out);position:absolute;bottom:26px;left:28px;right:28px}.stage-caption h1{letter-spacing:-.055em;max-width:620px;margin:12px 0 8px;font-size:clamp(30px,4vw,50px);font-weight:570;line-height:1.02}.stage-caption p{color:#ffffffc2;max-width:600px;margin:0;font-size:14px;line-height:1.45}.stage-caption .pill{color:#29312c}.ai-badge{z-index:6;color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);letter-spacing:.04em;background:#0f12108f;border-radius:9px;padding:7px 10px;font-size:10px;position:absolute;top:16px;left:16px}.landmark-overlay{z-index:4;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.landmark-overlay circle{fill:#d8ffe1c7;stroke:#12412db8;stroke-width:.00065px;vector-effect:non-scaling-stroke}.compare-range{z-index:8;opacity:0;cursor:ew-resize;width:100%;height:100%;margin:0;position:absolute;inset:0}.compare-line{z-index:7;pointer-events:none;background:#ffffffe6;width:1px;position:absolute;top:0;bottom:0}.compare-line:after{content:"↔";color:#1d211e;background:#fff;border-radius:50%;place-items:center;width:38px;height:38px;display:grid;position:absolute;top:50%;left:0;transform:translate(-50%,-50%);box-shadow:0 4px 16px #0000002e}.photo-plane:has(.compare-range:focus-visible) .compare-line:after{outline-offset:3px;outline:2px solid #c28b43}.domain-rail{scrollbar-width:none;background:#f4f2ed;gap:7px;padding:12px 14px;display:flex;overflow-x:auto}.domain-rail::-webkit-scrollbar{display:none}.domain-chip{color:#676d68;cursor:pointer;min-height:36px;transition:transform .14s var(--ease-out), color .18s ease, background-color .18s ease;background:0 0;border:0;border-radius:10px;flex:none;padding:0 13px;font-size:12px;font-weight:600}.domain-chip:active{transform:scale(.97)}.domain-chip.active{color:#fff;background:var(--accent)}.stage-tools{background:#f4f2ed;gap:7px;padding:0 14px 12px;display:flex}.insight-sheet{border:1px solid var(--line);background:var(--surface);border-radius:20px;min-width:0;overflow:hidden}.sheet-handle{display:none}.sheet-content{height:100%;padding:28px;overflow:auto}.sheet-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.sheet-heading h2{letter-spacing:-.045em;margin:7px 0 0;font-size:28px;line-height:1.03}.kicker{color:#747a75;letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:650}.sheet-summary{color:#4e5650;margin:24px 0;font-size:15px;line-height:1.6}.evidence-row{color:#4b5650;background:#edf0eb;border-radius:12px;align-items:flex-start;gap:9px;padding:14px;font-size:12px;line-height:1.45;display:flex}.evidence-row .icon{flex:none;width:16px}.metric-strip{border-top:1px solid var(--line);grid-template-columns:1fr;margin-top:22px;display:grid}.metric-strip>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:14px 0;display:flex}.metric-strip span{color:#707671;text-transform:uppercase;font-size:11px}.metric-strip b{font-variant-numeric:tabular-nums;font-size:13px}.capture-quality{color:#5c6b61;font-size:11px;line-height:1.5}.server-note{border:1px solid var(--line);border-radius:14px;margin-top:18px;padding:16px}.server-note p{margin:7px 0 12px;font-size:13px;line-height:1.5}.server-note ul{color:#5a625d;margin:0;padding-left:18px;font-size:12px;line-height:1.5}.server-note small{color:#7a807b;margin-top:12px;font-size:10px;line-height:1.45;display:block}.source-note{color:#808580;margin:24px 0 0;font-size:10px;line-height:1.55}.source-note-button{cursor:pointer;text-align:left;text-underline-offset:3px;background:0 0;border:0;padding:0;-webkit-text-decoration:underline #c7cac4;text-decoration:underline #c7cac4}.library-backdrop{z-index:100;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#16191657;place-items:center;padding:22px;animation:.18s ease-out library-fade;display:grid;position:fixed;inset:0}.research-library{background:var(--surface);width:min(840px,100%);height:min(780px,100dvh - 44px);animation:library-in .28s var(--ease-drawer);border:1px solid #d9d9d2e6;border-radius:26px;grid-template-rows:auto auto auto minmax(0,1fr);display:grid;overflow:hidden;box-shadow:0 30px 90px #11141238}.library-header{justify-content:space-between;align-items:flex-start;padding:27px 28px 20px;display:flex}.library-header h2{letter-spacing:-.045em;margin:7px 0 0;font-size:31px;line-height:1}.library-close{color:#565d58;cursor:pointer;width:36px;height:36px;transition:transform .14s var(--ease-out);background:#ebeae5;border:0;border-radius:50%;place-items:center;font-size:24px;font-weight:300;line-height:1;display:grid}.library-close:active{transform:scale(.93)}.library-status{border-top:1px solid var(--line);border-bottom:1px solid var(--line);align-items:center;gap:14px;margin:0 28px;padding:14px 0;display:flex}.library-status p{color:#666d68;margin:0;font-size:11px;line-height:1.45}.library-controls{grid-template-columns:auto minmax(220px,1fr);gap:12px;padding:18px 28px;display:grid}.library-scope{background:#ecebe6;border-radius:11px;padding:3px;display:flex}.library-scope button{color:#696f6a;cursor:pointer;background:0 0;border:0;border-radius:8px;min-height:36px;padding:0 13px;font-size:11px;font-weight:620}.library-scope button.active{color:var(--ink);background:#fff;box-shadow:0 1px 5px #16181614}.library-search input{border:1px solid var(--line);width:100%;height:42px;color:var(--ink);background:#f7f6f2;border-radius:11px;outline:none;padding:0 14px;font-size:12px;transition:border-color .18s,box-shadow .18s}.library-search input:focus{border-color:#81968a;box-shadow:0 0 0 3px #315e591a}.library-list{overscroll-behavior:contain;min-height:0;padding:0 28px 28px;overflow:auto}.library-loading{color:#777d78;text-align:center;padding:42px 0;font-size:12px}.video-record{border-top:1px solid var(--line);grid-template-columns:42px minmax(0,1fr) 32px;gap:14px;padding:18px 0;display:grid;position:relative}.video-rank{color:#9b9f9b;letter-spacing:.05em;padding-top:2px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px}.video-meta{color:#818681;letter-spacing:.055em;text-transform:uppercase;gap:12px;font-size:9px;font-weight:650;display:flex}.video-copy h3{letter-spacing:-.018em;margin:6px 0;font-size:15px;line-height:1.25}.video-copy>p{color:#656c67;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:11px;line-height:1.5;display:-webkit-box;overflow:hidden}.video-categories{flex-wrap:wrap;gap:5px;margin-top:10px;display:flex}.video-categories span{color:#5e6962;text-transform:capitalize;background:#ecefe9;border-radius:7px;padding:4px 7px;font-size:9px}.video-link{color:#536159;background:#efeee9;border-radius:50%;place-items:center;width:32px;height:32px;font-size:14px;text-decoration:none;display:grid}.library-more{border:1px solid var(--line);color:#4f5953;cursor:pointer;background:#f2f1ec;border-radius:11px;width:100%;min-height:44px;margin-top:12px;font-size:11px;font-weight:620}@keyframes library-fade{0%{opacity:0}}@keyframes library-in{0%{opacity:0;transform:translateY(10px)scale(.985)}}.analysis-progress{z-index:9;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#1114129e;border:1px solid #fff3;border-radius:14px;gap:8px;width:min(260px,100% - 36px);padding:14px;display:grid;position:absolute;bottom:18px;right:18px}.analysis-progress>div{color:#ffffff80;align-items:center;gap:9px;font-size:12px;display:flex}.analysis-progress i{border:1px solid #ffffff52;border-radius:50%;place-items:center;width:17px;height:17px;font-size:9px;font-style:normal;display:grid}.analysis-progress [data-state=done]{color:#fff}.analysis-progress [data-state=done] i{background:#5c8d6e;border-color:#98c3a8}.analysis-progress [data-state=active] i{border-top-color:#fff;animation:.7s linear infinite spin}.analysis-progress [data-state=failed]{color:#e8c7bb}@keyframes spin{to{transform:rotate(360deg)}}@keyframes caption-in{0%{opacity:0;filter:blur(2px);transform:translateY(6px)}to{opacity:1;filter:blur();transform:none}}@media (hover:hover) and (pointer:fine){.upload-target:hover{background:#f0f2e9;border-color:#5f7665}.button-primary:hover{background:#254d49}.button-quiet:hover,.library-trigger:hover,.library-close:hover,.video-link:hover{background:#fff}.domain-chip:not(.active):hover{background:#e7e8e2}}@media (width<=820px){.capture-shell{width:min(100% - 24px,1180px)}.capture-card{grid-template-columns:1fr;min-height:0}.capture-copy{padding:40px}.capture-action{padding:24px}.upload-target{min-height:290px}.app-bar{height:54px;padding:0 14px}.app-status .mode-link{display:none}.app-status{gap:6px}.app-status .library-trigger span{display:none}.app-status .library-trigger{justify-content:center;width:44px;min-height:44px;padding:0}.focus-layout{width:100%;height:calc(100dvh - 54px);margin:0;display:block}.focus-stage{border:0;border-radius:0;height:100%}.stage-media{min-height:0}.stage-caption{bottom:18px;left:18px;right:18px}.stage-caption h1{font-size:31px}.stage-caption p{font-size:13px}.domain-rail{padding:10px 12px}.domain-chip,.button-quiet{min-height:44px}.stage-tools{padding:0 12px max(10px, env(safe-area-inset-bottom))}.insight-sheet{z-index:20;left:10px;right:10px;bottom:max(10px, env(safe-area-inset-bottom));height:min(48dvh,410px);transition:transform .28s var(--ease-drawer);border-radius:20px;position:fixed;transform:translateY(calc(100% - 72px));box-shadow:0 18px 50px #1618162e}.insight-sheet.open{transform:translateY(0)}.sheet-handle{background:var(--surface);text-align:left;border:0;grid-template-columns:32px 1fr auto;align-items:center;width:100%;height:70px;padding:0 17px;display:grid}.sheet-handle>span{background:#c9cbc5;border-radius:999px;width:28px;height:4px}.sheet-handle b{font-size:13px}.sheet-handle small{color:#727872}.sheet-content{height:calc(100% - 70px);padding:4px 20px 24px}.sheet-heading h2{font-size:24px}.sheet-summary{margin:18px 0}.analysis-progress{bottom:16px}.mode-link{font-size:11px}}@media (width<=520px){.capture-shell{width:100%;padding:0 14px;display:block}.capture-bar{height:58px}.capture-card{border-radius:22px;display:block}.capture-copy{padding:32px 24px}.capture-copy h1{font-size:45px}.capture-copy>p{font-size:15px}.capture-copy ul{margin-top:24px}.capture-action{padding:14px}.upload-target{min-height:230px}.capture-foot{font-size:9px}.app-status .pill{font-size:8px}.stage-caption h1{font-size:29px}.stage-caption p{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.button-quiet{flex:1;padding:0 8px}.stage-tools .icon{width:16px}.source-note{padding-bottom:10px}.library-backdrop{background:#16191647;align-items:end;padding:0}.research-library{border-width:1px 0 0;border-radius:24px 24px 0 0;width:100%;height:min(90dvh,760px)}.library-header{padding:22px 18px 16px}.library-header h2{font-size:27px}.library-close,.video-link{width:44px;height:44px}.library-status{align-items:flex-start;margin:0 18px}.library-controls{grid-template-columns:1fr;padding:14px 18px}.library-scope button{flex:1;min-height:44px}.library-list{padding:0 18px max(24px, env(safe-area-inset-bottom))}.video-record{grid-template-columns:34px minmax(0,1fr) 32px;gap:10px}}@media (prefers-reduced-motion:reduce){.button,.domain-chip,.insight-sheet{transition:none}.stage-caption{animation:none}.analysis-progress [data-state=active] i{animation-duration:1.2s}.library-backdrop,.research-library{animation:none}}.photo-plane{background:#222622;position:absolute;inset:0;overflow:hidden}.stage-media,.photo-plane{background:#e9e8e2}@media (width<=820px){.focus-stage{padding-bottom:78px}}@media (width<=520px){.capture-copy{padding:24px}.capture-copy h1{margin:16px 0 14px;font-size:41px}.capture-copy>p{font-size:14px;line-height:1.48}.capture-copy ul{gap:7px;margin-top:18px;font-size:12px}.capture-action{padding:12px 14px 10px}.upload-target{min-height:190px}.upload-target>span{margin-bottom:12px}.capture-foot{padding:8px 12px}}:where(button,a,input):focus-visible{outline-offset:3px;outline:2px solid #c28b43}@media (width<=820px){.insight-sheet:not(.open) .sheet-content{visibility:hidden}}@media (width<=520px) and (height<=720px){.capture-copy{padding:18px 22px}.capture-copy h1{margin:10px 0 12px;font-size:36px}.capture-copy>p{font-size:13px;line-height:1.4}.capture-copy ul{display:none}.capture-action{padding:10px 12px 8px}.upload-target{min-height:150px}.capture-foot{padding:5px 10px;font-size:8px}}
