:root{--green:#0b8f19;--green-dark:#056111;--green-soft:#ecf7e9;--lime:#72d72d;--ink:#071833;--muted:#58708f;--line:#d7e0ec;--surface:#ffffff;--paper:#f7faf6;--warning:#f59e0b;--danger:#ef4444;--shadow:0 18px 50px rgba(7,24,51,0.12)}*{box-sizing:border-box}html{background:var(--paper);touch-action:manipulation;-webkit-text-size-adjust:100%}body.is-account-prompt,html.is-account-prompt{background:transparent}body{margin:0;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;touch-action:manipulation}button,input,select,textarea{font:inherit}.app-shell,.report-page{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.app-shell input,.app-shell select,.app-shell textarea,.report-page input,.report-page select,.report-page textarea{-webkit-touch-callout:default;-webkit-user-select:text;-moz-user-select:text;user-select:text}button{color:var(--ink);-webkit-text-fill-color:currentColor}a{color:inherit;text-decoration:none}.app-shell{min-height:100svh;background:radial-gradient(circle at 20% 0,rgba(114,215,45,.16),transparent 34rem),linear-gradient(180deg,#ffffff,#f7faf6)}.app-shell.is-account-prompt{background:transparent}.phone-stage{display:grid;min-height:100svh;place-items:center;padding:28px 16px}.phone{position:relative;width:min(100%,430px);min-height:760px;overflow:visible;border:0;border-radius:26px;background:var(--surface);box-shadow:var(--shadow);-webkit-clip-path:inset(0 round 26px);clip-path:inset(0 round 26px)}.phone:after{position:absolute;inset:0;z-index:40;border:1px solid var(--line);border-radius:26px;pointer-events:none;content:""}.phone-header{position:-webkit-sticky;position:sticky;top:0;z-index:20;flex:0 0 auto;display:flex;align-items:center;justify-content:center;gap:10px;padding:18px 22px 10px;border-bottom:1px solid rgba(215,224,236,.7);border-radius:0;background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.back-button{left:20px;place-items:center;border:0;border-radius:50%;color:var(--ink);background:transparent;cursor:pointer}.account-header-button,.back-button{position:absolute;display:grid;width:36px;height:36px}.account-header-button{right:20px;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--ink);-webkit-text-fill-color:var(--ink);background:#ffffff}@media (display-mode:standalone) and (orientation:landscape){body:before{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:28px;color:var(--ink);background:#f7faf6;text-align:center;font-size:18px;font-weight:800;content:"Tournez votre téléphone en mode portrait pour utiliser Agriscan."}.app-shell{display:none}}.brand-logo{width:154px;height:auto}.screen{padding:18px 24px 28px}.home-screen,.main-tab-screen{padding-bottom:132px}.home-screen{padding-top:0}.home-screen .hero{margin-top:0}.hero{display:grid;min-height:560px;align-content:end;margin:-4px -24px 0;padding:0 24px 32px;color:#ffffff;background:linear-gradient(180deg,rgba(255,255,255,.84),rgba(255,255,255,.05) 28%,rgba(0,52,14,.8)),url(https://images.unsplash.com/photo-1500382017468-9049fed747ef?auto=format&fit=crop&w=1000&q=80) 50% /cover}.hero h1,.screen h1{margin:0 0 14px;font-size:clamp(28px,8vw,34px);line-height:1.16;letter-spacing:0}.hero p,.screen-intro{margin:0 0 22px;color:inherit;font-size:15px;line-height:1.55}.screen-intro{color:var(--muted)}.ghost-button,.primary-button,.secondary-button{display:inline-flex;width:100%;min-height:52px;align-items:center;justify-content:center;gap:10px;border-radius:8px;border:1px solid transparent;font-weight:800;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.primary-button{color:#ffffff;-webkit-text-fill-color:#ffffff;background:linear-gradient(180deg,#0c9d19,#087314);box-shadow:0 10px 24px rgba(8,115,20,.26)}.ghost-button,.secondary-button{color:var(--ink);-webkit-text-fill-color:var(--ink);background:#ffffff;border-color:var(--line)}.ghost-button{min-height:44px;color:var(--green-dark);border:0;background:transparent}.primary-button:disabled{cursor:not-allowed;opacity:.55;box-shadow:none}.button-spinner{border:2px solid rgba(255,255,255,.46)}.choice-list{display:grid;grid-gap:12px;gap:12px}.choice-card{display:grid;grid-template-columns:56px 1fr 24px;align-items:center;min-height:92px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#ffffff;cursor:pointer}.choice-card.is-selected{border-color:var(--green);background:#f7fff4;box-shadow:inset 0 0 0 1px var(--green)}.choice-icon{display:grid;width:48px;height:48px;place-items:center;color:var(--green)}.choice-card strong{display:block;margin-bottom:4px}.choice-card span{color:var(--muted);font-size:13px;line-height:1.35}.upload-box{display:grid;width:100%;min-height:210px;place-items:center;padding:22px;border:1.5px dashed rgba(8,115,20,.55);border-radius:12px;background:linear-gradient(180deg,#fbfff9,#f3fbef);color:var(--ink);-webkit-text-fill-color:var(--ink);text-align:center}.upload-button{cursor:pointer}.upload-preview{width:100%;max-height:260px;object-fit:cover;border-radius:10px}.form-grid{display:grid;grid-gap:14px;gap:14px;margin-top:18px}.field label{display:block;margin-bottom:7px;color:var(--ink);font-size:13px;font-weight:800}.field input,.field select,.field textarea{width:100%;min-height:52px;border:1px solid var(--line);border-radius:8px;background:#ffffff;color:var(--ink);padding:0 16px;font-size:16px;line-height:1.25}.input-action{position:relative}.input-action input[readonly]{padding-right:106px;color:var(--muted);-webkit-text-fill-color:var(--muted);background:#f7faf6}.input-action button{position:absolute;right:8px;top:50%;min-height:36px;transform:translateY(-50%);border:1px solid var(--line);border-radius:7px;color:var(--green-dark);-webkit-text-fill-color:var(--green-dark);background:#ffffff;font-size:12px;font-weight:800;cursor:pointer}.field select{min-height:64px;padding:0 52px 0 18px;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);background-position:calc(100% - 24px) 50%,calc(100% - 17px) 50%;background-size:7px 7px,7px 7px;background-repeat:no-repeat;font-size:18px;font-weight:500}.field textarea{min-height:86px;padding-top:12px;resize:vertical}.hint{color:var(--muted);font-size:12px;line-height:1.45}.install-card{display:grid;grid-template-columns:46px minmax(0,1fr) 38px;grid-gap:12px;gap:12px;align-items:center;width:100%;margin:16px 0 0;padding:12px;border:1px solid var(--line);border-radius:12px;background:#ffffff;text-align:left}.install-card:has(.install-manual-help){grid-template-rows:auto auto}.install-card span,.install-card strong{display:block}.install-card-button{color:inherit;-webkit-text-fill-color:inherit;cursor:pointer}.install-card-button:active{transform:translateY(1px)}.install-card strong{margin-bottom:2px;color:var(--ink);font-size:14px}.install-card span{color:var(--muted);font-size:12px;line-height:1.35}.install-action,.install-symbol{display:inline-flex;width:38px;height:38px;min-height:38px;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:8px;color:var(--ink);-webkit-text-fill-color:var(--ink);background:#ffffff;font-size:13px;font-weight:800}.install-action{width:auto;padding:0 12px;cursor:pointer}.install-card .install-symbol{display:grid;place-items:center;justify-self:end;padding:0;line-height:0}.install-action svg,.install-symbol svg{display:block;flex:0 0 auto}.install-card .install-symbol svg{margin:auto}.regional-alerts{margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#ffffff}.regional-empty{display:grid;grid-gap:10px;gap:10px;color:var(--muted)}.regional-empty>svg{color:var(--green)}.regional-empty strong{display:block;margin-bottom:4px;color:var(--ink);font-size:14px;line-height:1.25}.regional-empty p{margin:0;font-size:12px;line-height:1.4}.regional-alert-list{display:grid;grid-gap:10px;gap:10px}.regional-alert-card{position:relative;overflow:visible;border:1px solid var(--line);border-radius:10px;background:linear-gradient(180deg,#ffffff,#fbfff9)}.regional-alert-card.is-loading{box-shadow:inset 0 0 0 1px rgba(11,143,25,.16);background:linear-gradient(90deg,#ffffff,#f2fbef 48%,#ffffff);background-size:220% 100%;animation:regional-shimmer 1.3s ease-in-out infinite}.regional-alert-main{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:4px 10px;gap:4px 10px;width:100%;min-width:0;padding:12px;border:0;color:var(--ink);-webkit-text-fill-color:var(--ink);background:transparent;text-align:left;cursor:pointer}.crop-pill{width:-moz-fit-content;width:fit-content;min-height:26px;padding:0 10px;border-radius:999px;color:var(--green-dark);-webkit-text-fill-color:var(--green-dark);background:var(--green-soft)}.crop-pill,.risk-level{display:inline-flex;align-items:center;font-size:12px;font-weight:900}.risk-level{gap:5px;justify-self:end;color:#9a4d00;-webkit-text-fill-color:#9a4d00}.risk-low{color:#0a7a2a;-webkit-text-fill-color:#0a7a2a}.risk-moderate{color:#9a4d00;-webkit-text-fill-color:#9a4d00}.risk-high{color:#b42318;-webkit-text-fill-color:#b42318}.risk-unknown{color:var(--muted);-webkit-text-fill-color:var(--muted)}.regional-alert-main small,.regional-alert-main strong,.regional-detail-link{grid-column:1/-1;display:block;min-width:0;max-width:100%}.regional-alert-main strong{margin-top:3px;font-size:15px;line-height:1.2}.regional-alert-main small{display:block;width:100%;color:var(--muted);-webkit-text-fill-color:var(--muted);font-size:12px;line-height:1.35;overflow:visible;overflow-wrap:break-word;white-space:normal;text-overflow:clip}.regional-location-line{display:block;margin-bottom:2px;color:var(--ink);-webkit-text-fill-color:var(--ink);font-weight:800}.regional-summary-line{display:block;width:100%;overflow:visible;overflow-wrap:break-word;white-space:normal;text-overflow:clip}.regional-updated-line{grid-column:1/-1;display:block;min-width:0;max-width:100%;margin-top:3px;color:var(--muted);-webkit-text-fill-color:var(--muted);font-size:11px;font-weight:800}.regional-detail-link{display:inline-flex;width:-moz-fit-content;width:fit-content;align-items:center;gap:4px;margin-top:5px;color:var(--green-dark);-webkit-text-fill-color:var(--green-dark);font-size:12px;font-weight:900}.add-crop-row{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);grid-gap:8px;gap:8px;margin-top:12px}.add-crop-row.is-single{grid-template-columns:minmax(0,1fr)}.add-crop-row select{min-height:46px;padding:0 12px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#ffffff}.add-crop-row .secondary-button{min-height:46px;font-size:13px}.regional-modal-backdrop{position:fixed;inset:0;z-index:80;display:flex;align-items:flex-end;justify-content:center;padding:18px 18px calc(18px + env(safe-area-inset-bottom));background:rgba(7,24,51,.36)}.regional-modal{position:relative;display:grid;grid-gap:12px;gap:12px;width:min(100%,430px);max-width:calc(100vw - 36px);max-height:min(86vh,720px);overflow-y:auto;overflow-x:hidden;padding:18px;border-radius:22px 22px 16px 16px;background:#ffffff;box-shadow:var(--shadow)}.regional-modal>*{min-width:0}.regional-modal:before{justify-self:center;width:42px;height:4px;border-radius:999px;background:#d7e0ec;content:""}.regional-modal h3,.regional-modal p{margin:0}.regional-modal h3{color:var(--ink);font-size:21px;line-height:1.15}.modal-info-list,.regional-modal p{color:var(--muted);font-size:13px;line-height:1.45;overflow:visible;overflow-wrap:break-word;white-space:normal;text-overflow:clip}.regional-modal-actions{display:grid;grid-gap:8px;gap:8px}.notification-toggle{justify-content:center;min-height:44px;color:var(--green-dark);-webkit-text-fill-color:var(--green-dark)}.regional-delete-button{justify-content:center;min-height:42px;color:#a12222;-webkit-text-fill-color:#a12222}.modal-info-list{display:grid;grid-gap:8px;gap:8px;padding:12px;border-radius:10px;background:var(--green-soft)}.regional-source{font-size:12px;font-weight:700}.regional-source a{color:var(--green);text-decoration:underline;text-underline-offset:3px}.add-crop-modal .field{margin:0;min-width:0}.field-label{display:block;margin-bottom:8px;color:var(--ink);-webkit-text-fill-color:var(--ink);font-size:14px;font-weight:900}.crop-family-scroll{display:flex;max-width:100%;gap:8px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;padding:2px 0 6px;scrollbar-width:none}.crop-family-scroll::-webkit-scrollbar{display:none}.crop-family-button{flex:0 0 auto;min-height:38px;padding:0 13px;border:1px solid var(--line);border-radius:999px;color:var(--muted);-webkit-text-fill-color:var(--muted);background:#ffffff;font-size:12px;font-weight:900;white-space:nowrap;cursor:pointer}.crop-family-button.is-active{border-color:rgba(0,143,20,.24);color:var(--green-dark);-webkit-text-fill-color:var(--green-dark);background:var(--green-soft)}.add-crop-modal .field input,.add-crop-modal .field select{width:100%;min-width:0;min-height:56px}.location-button{min-width:0;min-height:48px;justify-content:center;color:var(--green-dark);-webkit-text-fill-color:var(--green-dark)}@keyframes regional-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.regional-conversion-box{display:grid;grid-gap:12px;gap:12px;padding:14px;border:1px solid rgba(8,115,20,.14);border-radius:12px;background:linear-gradient(180deg,#fbfff9,#f2fbef)}.regional-conversion-box h4{margin:0;color:var(--ink);font-size:17px;line-height:1.25}.regional-benefit-list{display:grid;grid-gap:8px;gap:8px}.regional-benefit-list span{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;grid-gap:8px;gap:8px;color:var(--ink);font-size:13px;font-weight:800;line-height:1.3}.regional-benefit-list svg{color:var(--green)}.modal-close{position:absolute;top:12px;right:12px;display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--line);border-radius:999px;background:#ffffff;cursor:pointer}.free-trial-status{display:flex;align-items:center;gap:10px;width:100%;margin-top:10px;padding:10px 12px;border:1px solid #d9ecd5;border-radius:10px;background:var(--green-soft)}.free-trial-status span{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:999px;color:var(--green-dark);background:#ffffff;font-weight:900}.free-trial-status p{margin:0;color:var(--ink);font-size:13px;font-weight:800;line-height:1.3}.install-manual-help{grid-column:1/-1;margin-top:2px;padding:10px 12px;border-radius:8px;color:var(--green-dark)!important;background:var(--green-soft);-webkit-text-fill-color:var(--green-dark);font-size:12px;line-height:1.45}.install-manual-help strong{margin-bottom:6px;color:var(--green-dark);font-size:13px}.install-manual-help ol,.install-manual-help p{margin:0;padding:0}.install-manual-help ol{display:grid;grid-gap:5px;gap:5px;padding-left:18px}.install-manual-help li{padding-left:2px}.install-manual-help .install-step-with-icon{display:flex;align-items:center;gap:6px}.install-step-icon{position:relative;display:inline-block;width:20px;height:20px;flex:0 0 20px;border:1px solid rgba(11,135,35,.2);border-radius:6px;color:var(--green);background:#ffffff}.install-step-icon svg{position:absolute;top:50%;left:50%;display:block;width:14px;height:14px;flex:0 0 14px;transform:translate(-50%,-50%)}.prelaunch-card{display:grid;grid-template-columns:38px 1fr;grid-gap:12px;gap:12px;margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(180deg,#ffffff,#fbfff9)}.prelaunch-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:10px;color:var(--green);background:var(--green-soft)}.prelaunch-card h2{margin:0 0 4px;color:var(--ink);font-size:17px;line-height:1.2}.prelaunch-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.4}.prelaunch-form{display:grid;grid-column:1/-1;grid-gap:10px;gap:10px;margin-top:2px}.prelaunch-form input{width:100%;min-height:46px;padding:0 13px;border:1px solid var(--line);border-radius:8px;color:var(--ink);-webkit-text-fill-color:var(--ink);background:#ffffff}.prelaunch-form input:disabled{color:var(--muted);-webkit-text-fill-color:var(--muted);background:#f7faf6}.prelaunch-form .primary-button{min-height:46px}.error-text,.success-text{grid-column:1/-1;font-size:12px}.success-text{color:var(--green-dark)}.error-text{color:#8a1f11}.session-history{margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#ffffff}.history-page-card{margin-top:0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.section-heading h2{margin:0;font-size:16px;line-height:1.2}.section-heading span{display:grid;min-width:28px;height:28px;place-items:center;border-radius:999px;color:var(--green-dark);background:var(--green-soft);font-size:12px;font-weight:800}.history-list{display:grid;grid-gap:8px;gap:8px}.history-item{display:grid;grid-template-columns:minmax(0,1fr) 18px;grid-gap:10px;gap:10px;align-items:center;padding:11px 0;border-top:1px solid var(--line)}.history-item:first-child{border-top:0}.history-item small,.history-item strong{display:block}.history-item strong{color:var(--ink);font-size:13px}.history-item small{margin-top:3px;color:var(--muted);font-size:12px}.history-empty,.history-item svg{color:var(--muted)}.history-empty{margin:0;font-size:13px;line-height:1.4}.history-empty-state{display:grid;grid-gap:8px;gap:8px;justify-items:start;color:var(--muted)}.history-empty-state svg{color:var(--green)}.history-empty-state p{margin:0;font-size:13px;line-height:1.4}.bottom-tab-nav{position:fixed;right:50%;bottom:calc(12px + env(safe-area-inset-bottom));left:auto;z-index:25;display:grid;grid-template-columns:repeat(3,1fr);grid-gap:6px;gap:6px;width:min(calc(100vw - 48px),382px);margin-top:0;padding:7px;transform:translateX(50%);border:1px solid rgba(215,224,236,.9);border-radius:14px;background:rgba(255,255,255,.96);box-shadow:0 14px 34px rgba(7,24,51,.12);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.bottom-tab-nav a{display:grid;grid-gap:3px;gap:3px;min-height:48px;place-items:center;border-radius:10px;color:var(--muted);-webkit-text-fill-color:var(--muted);font-size:11px;font-weight:900}.bottom-tab-nav a.is-active{color:var(--green-dark);-webkit-text-fill-color:var(--green-dark);background:var(--green-soft)}.bottom-tab-nav.is-hidden,body.is-editing-field .bottom-tab-nav{display:none;pointer-events:none}.analysis-loader{display:grid;min-height:560px;place-items:center;text-align:center}.loader-ring{position:relative;display:grid;width:148px;height:148px;place-items:center;margin:0 auto 28px;border-radius:50%}.loader-ring:before{position:absolute;inset:0;border:8px solid var(--green-soft);border-top-color:var(--green);border-radius:50%;content:"";animation:spin 1.1s linear infinite}.loader-leaf{position:relative;z-index:1}.status-list{display:grid;grid-gap:14px;gap:14px;margin:26px 0;text-align:left}.status-row{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:14px}.status-dot{position:relative;width:18px;height:18px;border-radius:50%;background:var(--line);flex:0 0 auto}.status-row.done .status-dot{background:var(--green)}.status-row.active{color:var(--ink);font-weight:700}.status-row.active .status-dot{border:2px solid var(--green);background:#ffffff}.status-row.active .status-dot:after{position:absolute;inset:3px;border-radius:inherit;background:var(--green);content:"";animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.35;transform:scale(.75)}50%{opacity:1;transform:scale(1)}}.error-box{margin-top:14px;color:#8a1f11;background:#fff0ec}.error-box,.success-box{padding:12px;border-radius:8px;font-size:14px}.success-box{margin:0;color:var(--green-dark);background:var(--green-soft);line-height:1.45}.account-card{margin-top:16px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#ffffff}.trial-benefits{display:grid;grid-gap:12px;gap:12px;margin:0 0 18px;padding:14px;border:1px solid #cfe1c9;border-radius:12px;background:linear-gradient(180deg,#f7fff4,#ffffff)}.trial-benefits p{margin:0;color:var(--ink);font-size:17px;font-weight:850;line-height:1.28}.trial-benefit-list{display:grid;grid-gap:8px;gap:8px}.trial-benefit-list span{display:flex;align-items:center;gap:9px;min-height:30px;color:var(--muted);font-size:13px;font-weight:750;line-height:1.25}.trial-benefit-list svg{flex:0 0 auto;color:var(--green)}.paywall-benefits{display:grid;grid-gap:14px;gap:14px;margin:0 0 18px;padding:16px;border:1px solid #cfe1c9;border-radius:12px;background:linear-gradient(180deg,#f7fff4,#ffffff 72%);box-shadow:0 12px 32px rgba(5,96,20,.06)}.paywall-benefits p{margin:0;color:var(--ink);font-size:17px;font-weight:850;line-height:1.32}.paywall-benefit-list{display:grid;grid-gap:9px;gap:9px}.paywall-benefit-list span{display:grid;grid-template-columns:24px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:center;min-height:32px;color:var(--muted);font-size:13px;font-weight:800;line-height:1.25}.paywall-benefit-list svg{width:24px;height:24px;padding:4px;border-radius:7px;color:var(--green);background:var(--green-soft)}.account-card.is-compact{background:linear-gradient(180deg,#ffffff,#fbfff9)}.account-card-heading{display:grid;grid-template-columns:38px minmax(0,1fr);grid-gap:12px;gap:12px;align-items:center}.account-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:10px;color:var(--green);background:var(--green-soft)}.account-card h2,.account-card h3{margin:0 0 4px;color:var(--ink);font-size:17px;line-height:1.2}.account-card h3{margin-top:18px;font-size:15px}.account-card.is-premium-compact .account-card-heading h2{margin-bottom:0}.account-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.4}.account-login-link{margin-top:14px}.account-legal-links{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 14px;margin-top:18px;color:var(--muted);font-size:12px;font-weight:700}.account-legal-links a{text-decoration:underline;text-underline-offset:3px}.legal-page{padding-bottom:34px}.legal-section{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.legal-section h2{margin:0 0 8px;color:var(--ink);font-size:17px;line-height:1.25}.legal-section p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}.pricing-grid{display:grid;grid-gap:10px;gap:10px;margin-top:14px}.pricing-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 18px;grid-gap:12px;gap:12px;align-items:center;width:100%;min-height:68px;padding:12px;border:1px solid var(--line);border-radius:8px;color:var(--ink);-webkit-text-fill-color:var(--ink);background:#ffffff;text-align:left;cursor:pointer}.pricing-card.has-badge{padding-top:25px}.pricing-card:disabled{cursor:wait;opacity:.74}.spin-icon{animation:spin .8s linear infinite}.pricing-card em,.pricing-card small,.pricing-card strong{display:block}.pricing-title-row{display:inline-flex;align-items:center;justify-content:flex-start;gap:10px;max-width:calc(100% - 10px)}.pricing-title-row>span{flex:0 0 auto;padding:3px 7px;border-radius:999px;color:var(--green-dark);background:var(--green-soft);font-size:10px;font-weight:800;line-height:1}.pricing-card strong{margin-bottom:3px;font-size:15px}.pricing-card small{color:var(--muted);font-size:12px}.pricing-card em{margin-top:4px;font-size:11px;font-style:normal}.pricing-badge,.pricing-card em{color:var(--green-dark);font-weight:800}.pricing-badge{position:absolute;top:8px;left:12px;display:inline-flex;max-width:calc(100% - 48px);padding:3px 7px;border-radius:999px;background:var(--green-soft);font-size:10px;line-height:1.1}.account-history{margin-top:16px}.account-danger-zone{display:grid;grid-gap:10px;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.danger-button{justify-self:center;width:auto;min-height:38px;padding:0 8px;color:#a12222;-webkit-text-fill-color:#a12222}.delete-account-confirm{display:grid;grid-gap:12px;gap:12px;padding:12px;border:1px solid #efc5c5;border-radius:8px;background:#fffafa}.delete-account-confirm p{margin:0;color:#783131;font-size:12px;line-height:1.45}.delete-account-confirm strong{color:#5c1717}.account-delete-modal-backdrop{position:fixed;inset:0;z-index:90;display:flex;align-items:flex-end;justify-content:center;padding:18px 18px calc(18px + env(safe-area-inset-bottom));background:rgba(7,24,51,.38)}.account-delete-modal{display:grid;grid-gap:14px;gap:14px;width:min(100%,430px);padding:18px;border:1px solid #efc5c5;border-radius:18px 18px 14px 14px;background:#ffffff;box-shadow:0 -18px 44px rgba(7,24,51,.18)}.account-delete-modal h3{margin:0;color:var(--ink);font-size:22px;line-height:1.15}.account-delete-modal p{margin:0;color:#783131;font-size:13px;line-height:1.45}.account-delete-modal strong{color:#5c1717}.delete-modal-actions{display:grid;grid-template-columns:.8fr 1.2fr;grid-gap:10px;gap:10px}.danger-confirm-button{color:#ffffff;-webkit-text-fill-color:#ffffff;border-color:#b42323;background:#b42323}.danger-confirm-button:disabled{cursor:not-allowed;opacity:.45}.report-page{position:relative;min-height:100svh;padding:28px 16px;background:var(--paper)}.report-scroll{width:100%}.admin-card,.report-card{width:min(100%,760px);margin:0 auto;border:1px solid var(--line);border-radius:18px;background:#ffffff;box-shadow:var(--shadow)}.report-card{padding:22px}.report-header{grid-template-columns:140px 1fr;align-items:center}.report-header,.report-hero-v2{display:grid;grid-gap:18px;gap:18px;padding-bottom:18px;border-bottom:1px solid var(--line)}.report-photo{aspect-ratio:4/3}.report-photo,.report-photo-v2{width:100%;object-fit:cover;border-radius:8px}.report-photo-v2{max-height:420px;aspect-ratio:16/10}.report-card-v2 h1{margin-top:6px;font-size:clamp(25px,5vw,36px);line-height:1.15;overflow-wrap:anywhere;word-break:normal}.confidence{display:inline-flex;margin:8px 0;padding:8px 12px;border-radius:8px;color:#ffffff;background:var(--green);font-size:14px;font-weight:800}.confidence.is-inconclusive{color:var(--ink);background:#eef3f8}.report-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px;margin-top:16px}.report-grid-v2{grid-template-columns:1fr}.useful-observation-panel{background:var(--green-soft)}.useful-observation-panel strong{display:block;color:var(--ink);font-size:18px;line-height:1.25}.info-panel{padding:16px;border:1px solid var(--line);border-radius:8px;background:#ffffff}.report-toggle{margin-top:12px}.report-toggle.info-panel{margin-top:0}.report-toggle-inline{margin-top:14px!important}.report-toggle summary{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--ink);font-size:15px;font-weight:900;line-height:1.25;cursor:pointer;list-style:none}.report-toggle summary::-webkit-details-marker{display:none}.report-toggle summary:after{flex:0 0 auto;color:var(--muted);font-size:18px;line-height:1;content:"+"}.report-toggle[open] summary{margin-bottom:10px}.report-toggle[open] summary:after{content:"−"}.report-toggle ul{display:grid;grid-gap:8px;gap:8px;margin:0;padding:0;list-style:none}.report-toggle li{color:var(--muted);font-size:14px;line-height:1.4}.urgency-label{display:inline-flex;margin-bottom:6px;color:#9a4d00;font-size:15px}.info-panel h2{margin:0 0 10px;font-size:15px}.info-panel ul{display:grid;grid-gap:8px;gap:8px;margin:0;padding:0;list-style:none}.info-panel li{color:var(--muted);font-size:14px;line-height:1.4}.disclaimer-box,.feedback-box{margin-top:18px;padding:16px;border-radius:8px;background:var(--green-soft)}.feedback-options{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}.feedback-option{min-height:56px;border:1px solid var(--line);border-radius:8px;background:#ffffff;color:var(--ink);-webkit-text-fill-color:var(--ink);font-weight:800;cursor:pointer}.feedback-option:disabled{cursor:default;opacity:.82}.field textarea:disabled{background:#f7faf6;color:var(--muted);-webkit-text-fill-color:var(--muted)}.feedback-option.is-selected{color:#ffffff;-webkit-text-fill-color:#ffffff;background:var(--green);border-color:var(--green)}.sticky-finish-bar{position:fixed;z-index:40;right:50%;bottom:0;width:min(100% - 24px,760px);padding:10px 12px calc(10px + env(safe-area-inset-bottom));border:1px solid var(--line);border-bottom:0;border-radius:14px 14px 0 0;background:rgba(255,255,255,.94);box-shadow:0 -8px 28px rgba(5,32,15,.12);opacity:0;pointer-events:none;transform:translate(50%,110%);transition:opacity .18s ease,transform .18s ease;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.sticky-finish-bar.is-visible{opacity:1;pointer-events:auto;transform:translate(50%)}.sticky-finish-button{min-height:48px}.admin-page{min-height:100svh;overflow:auto;padding:34px 18px;background:#f5f8f3;-webkit-overflow-scrolling:touch}.admin-card{max-width:100%;overflow:hidden;padding:22px}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px}.admin-header-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.admin-header-actions .secondary-button{text-decoration:none}.admin-sections,.admin-sections>section{max-width:100%;min-width:0}.admin-table{width:100%;border-collapse:collapse;font-size:14px}.admin-table-scroll{max-width:100%;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-load-more{width:auto;min-width:180px;margin-top:14px;padding:0 18px}.admin-report-actions{display:grid;margin-top:18px}.admin-table td,.admin-table th{padding:12px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}.admin-table th{color:var(--muted);font-size:12px;text-transform:uppercase}.thumb{width:64px;height:48px;object-fit:cover;border-radius:6px}.admin-sections{display:grid;grid-gap:28px;gap:28px}.admin-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:flex-start}.admin-inline-form{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.admin-inline-form input{min-height:38px;min-width:min(100%,320px);padding:0 11px;font:inherit;font-size:14px}.admin-action-button,.admin-inline-form input{border:1px solid var(--line);border-radius:7px;color:var(--ink);background:#ffffff}.admin-action-button{min-height:32px;padding:0 10px;font-size:12px;font-weight:800;cursor:pointer}.admin-action-button.is-danger{color:#a12222;border-color:#efc5c5;background:#fff7f7}.admin-delete-user{position:relative}.admin-delete-user summary{min-height:32px;padding:7px 10px;border:1px solid #efc5c5;border-radius:7px;color:#a12222;background:#fff7f7;font-size:12px;font-weight:800;cursor:pointer;list-style:none}.admin-delete-user summary::-webkit-details-marker{display:none}.admin-delete-user form{position:absolute;right:0;z-index:4;display:grid;width:280px;margin-top:8px;padding:12px;grid-gap:8px;gap:8px;border:1px solid #efc5c5;border-radius:8px;background:#ffffff;box-shadow:0 16px 38px rgba(13,31,61,.16)}.admin-delete-user label{display:grid;grid-gap:6px;gap:6px;color:var(--muted);font-size:11px;font-weight:800}.admin-delete-user input{min-height:36px;padding:0 9px;border:1px solid var(--line);border-radius:7px;color:var(--ink);font:inherit;font-size:13px}.compare-card .primary-button,.compare-card .secondary-button{width:auto;min-width:180px;padding:0 18px;text-decoration:none}.compare-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:18px;gap:18px;align-items:start}.compare-photo-panel{grid-column:1/-1}.compare-panel,.compare-photo-panel{display:grid;grid-gap:14px;gap:14px;padding:16px;border:1px solid var(--line);border-radius:8px;background:#ffffff}.compare-photo-panel img{width:100%;max-height:360px;aspect-ratio:16/7;object-fit:cover;border-radius:8px}.compare-panel h2,.compare-panel h3,.compare-panel h4,.compare-panel p{margin:0}.compare-panel h3{color:var(--ink);font-size:24px;line-height:1.1}.compare-panel li,.compare-panel p{color:var(--muted);line-height:1.45}.compare-panel ul{display:grid;grid-gap:8px;gap:8px;margin:0;padding-left:18px}.useful-observation{display:grid;grid-gap:10px;gap:10px;margin-top:4px;padding:14px;border-radius:8px;background:var(--green-soft)}.compare-footer{display:flex;justify-content:flex-end;margin-top:18px}.compare-error{margin-top:18px}.button-spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.45);border-top-color:#ffffff;border-radius:999px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:540px){.compare-layout{grid-template-columns:1fr}}@media (max-width:680px){body,html{height:100%;overflow:hidden}html.is-admin-page,html.is-admin-page body{height:auto;min-height:100%;overflow:auto}html.is-admin-page body{position:static}html.is-report-page,html.is-report-page body{height:100%;min-height:100%;overflow:hidden}.report-page{height:100svh;height:100dvh;min-height:100svh;min-height:100dvh;padding:0;overflow:hidden}.report-scroll{height:100%;overflow-x:hidden;overflow-y:auto;padding:28px 16px calc(112px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.report-page>.sticky-finish-bar{position:absolute}.app-shell{overflow:hidden}.app-shell,.phone-stage{height:100svh;height:100dvh;min-height:100svh;min-height:100dvh}.phone-stage{padding:0;place-items:stretch center}.phone{height:100svh;height:100dvh;min-height:100svh;min-height:100dvh;overflow-x:hidden;overflow-y:auto;border:0;border-radius:0;-webkit-clip-path:none;clip-path:none;box-shadow:none;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.phone>.screen:not(.home-screen){min-height:calc(100svh + 62px);min-height:calc(100dvh + 62px)}.phone:after{display:none}.report-grid,.report-header{grid-template-columns:1fr}.admin-page{height:auto;min-height:100svh;overflow:auto;padding:16px 10px}.admin-card{max-width:100%;overflow:hidden;padding:16px}.admin-table{min-width:920px}.admin-header{align-items:flex-start;flex-direction:column}}