:root{--ink:#10261c;--soft:#425348;--paper:#e4ebe3;--card:#f7f8f4;--brand:#006233;--earth:#7a523b;--red:#c1272d;--band-yellow:#d5e222;--orange:#d9982e;--blue:#356f91;--green:#006233;--line:#10261c22}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{margin:0;min-height:100%;background:#cbd7ce;color:var(--ink);font-family:"Nunito Sans",system-ui,sans-serif}
button{font:inherit;color:inherit}
.app-frame{position:relative;min-height:100svh;max-width:540px;margin:auto;background:var(--paper);overflow:hidden;box-shadow:0 0 60px #17251a35}
.safety-band{position:absolute;z-index:20;inset:0 0 auto;display:flex;height:7px}
.safety-band i{flex:1}
.safety-band i:nth-child(1){background:var(--red)}
.safety-band i:nth-child(2){background:var(--band-yellow)}
.safety-band i:nth-child(3){background:var(--blue)}
.safety-band i:nth-child(4){background:var(--green)}
.screen{min-height:100svh}
.catalogue-screen,.product-screen,.course-screen{background:var(--paper);padding-bottom:max(1.4rem,env(safe-area-inset-bottom))}
.catalogue-header{position:sticky;top:0;z-index:8;display:grid;grid-template-columns:2.8rem 1fr auto;align-items:center;gap:.75rem;padding:calc(env(safe-area-inset-top) + 1.2rem) 1.1rem .85rem;background:#e4ebe3ef;backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}
.icon-button{width:2.7rem;height:2.7rem;border:1px solid var(--line);background:var(--card);border-radius:.75rem;display:grid;place-items:center}.icon-button svg{width:1.25rem;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.catalogue-header div span{display:block;color:var(--brand);font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.catalogue-header h2{margin:.12rem 0 0;font-size:1.08rem;line-height:1.1}.catalogue-count{font-size:.75rem;font-weight:900;color:var(--brand);background:#cad8c3;padding:.35rem .55rem;border-radius:99px}.catalogue-main{padding:1rem 1.1rem}.source-notice{display:flex;gap:.75rem;align-items:flex-start;padding:.8rem;border-radius:.8rem;background:#f5ead2;color:#684c19}.source-notice svg{flex:none;width:1.25rem;height:1.25rem;fill:none;stroke:var(--orange);stroke-width:2;transform:rotate(45deg)}.source-notice p{margin:0}.source-notice strong,.source-notice small{display:block}.source-notice strong{font-size:.78rem}.source-notice small{font-size:.68rem;line-height:1.35;margin-top:.15rem}.search-form{margin-top:1.1rem}.search-form label{display:block;font-size:.82rem;font-weight:900;margin-bottom:.45rem}.search-box{height:3.3rem;border:1px solid #aab9a3;border-radius:.85rem;background:#f8faf5;display:flex;align-items:center;padding:0 .85rem;gap:.6rem;box-shadow:0 5px 14px #22331c0b}.search-box:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #2a6ea622}.search-box svg{width:1.3rem;fill:none;stroke:var(--brand);stroke-width:2}.search-box input{min-width:0;flex:1;border:0;outline:0;background:none;font-size:1rem}.clear-search{border:0;background:#dbe4d5;width:1.7rem;height:1.7rem;border-radius:50%;font-size:1.2rem;line-height:1}.category-filters{display:flex;gap:.45rem;overflow:auto;padding:.8rem 0 .25rem;scrollbar-width:none}.category-filters::-webkit-scrollbar{display:none}.category-filters button{flex:none;border:1px solid var(--line);background:var(--card);border-radius:99px;padding:.48rem .75rem;font-size:.74rem;font-weight:800}.category-filters button.selected{background:var(--ink);border-color:var(--ink);color:#fff}.results-heading{display:flex;justify-content:space-between;align-items:center;margin:1.15rem 0 .65rem}.results-heading strong{font-size:.93rem}.results-heading span{font-size:.72rem;color:var(--soft)}.catalogue-status{text-align:center;color:var(--soft);padding:2.5rem 1rem}.catalogue-status p{font-size:.85rem}.loader{display:block;width:2rem;height:2rem;margin:auto;border:3px solid #bdcbb6;border-top-color:var(--brand);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.product-list{display:grid;gap:.62rem}.product-result{width:100%;border:1px solid #fff;background:var(--card);border-radius:.9rem;padding:.85rem;text-align:left;display:grid;grid-template-columns:.35rem 1fr auto;gap:.75rem;align-items:stretch;box-shadow:0 5px 14px #26351f0e}.result-accent{border-radius:99px;background:var(--brand)}.product-result.fongicide .result-accent{background:var(--blue)}.product-result.insecticide .result-accent{background:var(--red)}.product-result.herbicide .result-accent{background:var(--orange)}.result-copy{min-width:0}.result-copy strong{display:block;font-size:.95rem}.result-ar{display:block;color:var(--brand);font-family:"Noto Kufi Arabic";font-size:.78rem;margin:.05rem 0}.result-meta{display:block;color:var(--soft);font-size:.7rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.result-amm{align-self:center;text-align:right;font-size:.64rem;color:var(--soft)}.result-amm b{display:block;color:var(--ink);font-size:.7rem}.empty-results{padding:2.2rem 1rem;text-align:center;color:var(--soft);font-size:.86rem}
.product-nav{position:sticky;top:0;z-index:8;display:grid;grid-template-columns:2.8rem 1fr 2.8rem;align-items:center;text-align:center;padding:calc(env(safe-area-inset-top) + 1rem) 1.1rem .8rem;background:#e4ebe3ef;backdrop-filter:blur(16px);border-bottom:1px solid var(--line);font-size:.85rem;font-weight:900}.product-main{padding:1.1rem}.product-hero{position:relative;border-radius:1.1rem;background:var(--ink);color:#fff;padding:1.2rem;overflow:hidden}.product-hero:after{content:"";position:absolute;right:-2.5rem;top:-2.5rem;width:8rem;height:8rem;border-radius:50%;background:var(--brand);opacity:.25}.product-category{display:inline-block;padding:.3rem .5rem;border-radius:99px;background:#ffffff17;color:#d9e5d4;font-size:.66rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.product-hero h2{position:relative;z-index:1;font-size:1.75rem;line-height:1.05;margin:.75rem 0 .25rem}.product-hero .arabic-product{display:block;color:#bcd2b5;font-family:"Noto Kufi Arabic";font-size:1.05rem}.amm-line{display:flex;justify-content:space-between;align-items:end;margin-top:1rem;padding-top:.8rem;border-top:1px solid #ffffff22}.amm-line small{display:block;color:#afc0ab;font-size:.65rem}.amm-line strong{font-size:.83rem}.validity{font-size:.75rem;text-align:right}.regulatory-warning{margin:1rem 0;padding:.85rem;border-left:4px solid var(--orange);border-radius:.25rem .75rem .75rem .25rem;background:#f5ead2;color:#674b17;font-size:.74rem;line-height:1.4}.detail-card{background:var(--card);border:1px solid #fff;border-radius:.9rem;padding:.95rem;margin-bottom:.75rem}.detail-card h3{margin:0 0 .8rem;font-size:.95rem}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.detail-field small{display:block;color:var(--soft);font-size:.63rem;text-transform:uppercase;letter-spacing:.05em}.detail-field strong{display:block;margin-top:.15rem;font-size:.8rem;line-height:1.35;word-break:break-word}.uses-title{display:flex;justify-content:space-between;align-items:center;margin:1.2rem 0 .65rem}.uses-title h3{margin:0;font-size:1rem}.uses-title span{background:#cbd8c5;color:var(--brand);font-size:.7rem;font-weight:900;border-radius:99px;padding:.25rem .5rem}.use-card{background:var(--card);border-radius:.85rem;padding:.9rem;margin-bottom:.6rem;border:1px solid #fff}.use-card h4{margin:0 0 .7rem;color:var(--brand);font-size:.86rem;line-height:1.3}.use-data{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.use-data small{display:block;color:var(--soft);font-size:.6rem;text-transform:uppercase}.use-data strong{display:block;margin-top:.16rem;font-size:.75rem}.missing{color:#8a571a!important;font-style:italic;font-weight:700}
.welcome{display:grid;grid-template-rows:auto 1fr auto auto;padding:calc(env(safe-area-inset-top) + 1.5rem) 1.35rem max(1.1rem,env(safe-area-inset-bottom));background:radial-gradient(circle at 90% 7%,#d9982e26,transparent 28%),radial-gradient(circle at 0 55%,#00623320,transparent 34%),var(--paper)}
.welcome-top{display:flex;justify-content:space-between;align-items:center}
.eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.16em;color:var(--soft)}
.language-wrap{position:relative}
.language{border:1px solid var(--line);border-radius:99px;background:#f8faf5;display:flex;align-items:center;gap:.45rem;padding:.65rem .8rem;font-weight:800}
.language svg{width:1.2rem;fill:none;stroke:currentColor;stroke-width:1.8}
.language .chevron{width:.9rem}
.language-menu{position:absolute;z-index:4;right:0;top:3.2rem;background:#fff;border-radius:.8rem;padding:.35rem;box-shadow:0 12px 30px #17251a25;min-width:8.5rem}
.language-menu button{display:block;width:100%;border:0;background:none;padding:.65rem;border-radius:.5rem;text-align:left}
.welcome-main{align-self:center;text-align:center;padding-top:1rem}
.mark-lockup{display:flex;flex-direction:column;align-items:center}
.scan-mark{width:7.25rem}
.corners{fill:none;stroke:var(--brand);stroke-width:8}
.plant-line{fill:none;stroke:var(--ink);stroke-width:7;stroke-linecap:round}
.plant-leaf{fill:var(--brand)}
h1{margin:.35rem 0 0;font-size:2.45rem;letter-spacing:.07em;line-height:1}
h1 .arabic{display:block;color:var(--brand);font-family:"Noto Kufi Arabic";font-size:1.25em;letter-spacing:0;margin-bottom:.42rem}
.welcome-copy{font-size:1.05rem;line-height:1.5;color:var(--soft);margin:1.25rem auto 1rem}
.promise-row{display:flex;align-items:center;justify-content:center;gap:.55rem;font-size:.76rem;font-weight:800;color:var(--brand);text-transform:uppercase;letter-spacing:.08em}
.promise-row b{width:4px;height:4px;border-radius:50%;background:var(--orange)}
.welcome-visual{position:relative;height:9.5rem;border-radius:1.4rem;overflow:hidden;margin:.7rem 0 1rem;box-shadow:0 14px 28px #26371d26}
.welcome-visual img{width:100%;height:100%;object-fit:cover;object-position:center 72%}
.welcome-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#17251aa6,transparent 65%)}
.visual-label{position:absolute;z-index:1;inset:auto 1rem .85rem;display:flex;justify-content:space-between;align-items:end;color:#fff;font-size:.9rem;font-weight:700}
.visual-label strong{font-size:2rem;line-height:1;font-weight:500;opacity:.72}
.start{width:100%;border:0;border-radius:.85rem;min-height:3.8rem;background:var(--ink);color:#fff;display:flex;justify-content:center;align-items:center;gap:.75rem;font-weight:800;box-shadow:0 10px 22px #17251a30}
.start svg{width:1.45rem;fill:none;stroke:currentColor;stroke-width:2.3}
.welcome-actions{text-align:center}
.install-app{margin:.7rem auto 0;border:1px solid #b78a3f;border-radius:99px;background:#fff8e9;color:var(--ink);min-height:2.75rem;padding:.55rem 1rem;display:flex;align-items:center;justify-content:center;gap:.55rem;font-size:.82rem;font-weight:900;box-shadow:0 6px 16px #17251a12}
.install-app svg{width:1.2rem;fill:none;stroke:#b07820;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}
.welcome-actions small{display:block;margin-top:.75rem;color:var(--soft);font-size:.78rem}
.install-guide{position:absolute;z-index:50;inset:0;display:grid;place-items:end center;padding:1rem;background:#0b170f99;backdrop-filter:blur(6px)}
.install-guide-card{position:relative;width:100%;max-width:30rem;padding:1.35rem;border-radius:1.3rem;background:#f8faf5;text-align:center;box-shadow:0 22px 60px #08110b66}
.install-guide-close{position:absolute;right:.75rem;top:.65rem;width:2.3rem;height:2.3rem;border:0;border-radius:50%;background:#e3e9df;font-size:1.45rem;line-height:1}
.install-guide-icon{display:grid;place-items:center;width:3.25rem;height:3.25rem;margin:0 auto .8rem;border-radius:.9rem;background:var(--ink);color:#f1c56f}
.install-guide-icon svg{width:1.65rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.install-guide-card h2{margin:0;font-size:1.15rem}.install-guide-card p{margin:.65rem auto 1rem;color:var(--soft);font-size:.88rem;line-height:1.5;max-width:24rem}
.install-guide-ok{width:100%;min-height:3rem;border:0;border-radius:.8rem;background:var(--brand);color:#fff;font-weight:900}

.dashboard{background:var(--paper);padding-bottom:6rem}
.dashboard-header{padding:calc(env(safe-area-inset-top) + 1.25rem) 1.2rem .7rem;display:flex;justify-content:space-between;align-items:center}
.mini-brand{border:0;background:none;display:flex;align-items:center;gap:.55rem;padding:0;text-align:left}
.mini-brand svg{width:2.5rem;height:2.5rem;padding:.4rem;border-radius:.65rem;background:var(--brand);fill:none;stroke:#fff;stroke-width:3}
.mini-brand span{font-weight:900;letter-spacing:.06em}
.mini-brand em{display:block;color:var(--brand);font-family:"Noto Kufi Arabic";font-size:.75rem;font-style:normal;letter-spacing:0}
.round-button{position:relative;width:2.7rem;height:2.7rem;border:1px solid var(--line);background:var(--card);border-radius:50%;display:grid;place-items:center}
.round-button svg{width:1.25rem;fill:none;stroke:var(--ink);stroke-width:1.8}
.round-button i{position:absolute;right:.2rem;top:.25rem;width:.52rem;height:.52rem;background:var(--orange);border:2px solid var(--paper);border-radius:50%}
.dashboard-main{padding:1rem 1.2rem 1.4rem}
.greeting p{margin:0;color:var(--brand);font-weight:800;font-size:.88rem}
.greeting h2{margin:.15rem 0 1.2rem;font-size:1.72rem;line-height:1.15}
.scan-card{width:100%;border:0;border-radius:1.15rem;background:var(--ink);color:#fff;padding:1.15rem;display:flex;align-items:center;gap:1rem;text-align:left;box-shadow:0 14px 28px #17251a2b}
.scan-icon{flex:none;width:3.75rem;height:3.75rem;border-radius:.9rem;background:var(--brand);display:grid;place-items:center}
.scan-icon svg{width:2.5rem;fill:none;stroke:#fff;stroke-width:2.7}
.scan-text{min-width:0;flex:1}
.scan-text small{display:block;color:#c8d5c3;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.scan-text strong{display:block;font-size:1.12rem;margin:.12rem 0}
.scan-text em{display:block;color:#d5ddd1;font-size:.79rem;font-style:normal}
.card-arrow{width:1.4rem;fill:none;stroke:#fff;stroke-width:2}
.section-heading{display:flex;align-items:center;gap:.55rem;margin:1.55rem 0 .8rem}
.section-heading h3{margin:0;font-size:1.08rem}
.section-heading span{display:grid;place-items:center;width:1.45rem;height:1.45rem;border-radius:50%;background:#cbd7c5;color:var(--brand);font-size:.72rem;font-weight:900}
.tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.tool-card{position:relative;min-height:9.2rem;border:1px solid #fff9;border-radius:1rem;background:var(--card);padding:1rem;text-align:left;display:flex;flex-direction:column;align-items:flex-start;box-shadow:0 7px 18px #2d422311;overflow:hidden}
.tool-card:after{content:"";position:absolute;right:-1.4rem;top:-1.4rem;width:4rem;height:4rem;border-radius:50%;background:currentColor;opacity:.07}
.tool-icon{width:2.65rem;height:2.65rem;border-radius:.7rem;background:#dfe8d9;display:grid;place-items:center;color:var(--brand)}
.tool-icon svg{width:1.7rem;fill:none;stroke:currentColor;stroke-width:2.3}
.tool-card strong{margin-top:auto;font-size:.91rem;line-height:1.15;color:var(--ink)}
.tool-card small{margin-top:.28rem;color:var(--soft);font-size:.7rem;line-height:1.2}
.notebook-primary{grid-column:1/-1;min-height:7.4rem;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;background:linear-gradient(135deg,#183523,#244b30);color:#fff;border-color:#ffffff26;box-shadow:0 12px 25px #17251a2b}
.notebook-primary:after{width:8rem;height:8rem;right:-2.5rem;top:-3rem;background:#70a45e;opacity:.22}
.notebook-primary .tool-icon{width:3.4rem;height:3.4rem;background:#ffffff18;color:#fff}
.notebook-primary .tool-icon svg{width:2rem}
.notebook-primary .tool-copy{min-width:0}
.notebook-primary strong{margin:0;color:#fff;font-size:1.08rem}
.notebook-primary small{display:block;color:#c8d7c9;font-size:.76rem}
.tool-arrow{position:relative;z-index:1;width:1.35rem;fill:none;stroke:#fff;stroke-width:2.2}
.citrus{color:var(--orange)}
.citrus .tool-icon{background:#f7ead1}
.red{color:var(--red)}
.red .tool-icon{background:#f1dddd}
.blue{color:var(--blue)}
.blue .tool-icon{background:#dae7ef}
.earth{color:var(--earth)}
.earth .tool-icon{background:#eadfd7}
.grape{color:#6a3b6e}
.grape .tool-icon{background:#e7dce8}
.green{color:var(--green)}
.green .tool-icon{background:#dce9dd}
.notebook-screen{background:linear-gradient(180deg,#dce4d6 0,#eef2eb 32rem);padding-bottom:max(1.5rem,env(safe-area-inset-bottom))}
.notebook-header{position:sticky;top:0;z-index:8;display:grid;grid-template-columns:2.8rem 1fr auto;align-items:center;gap:.75rem;padding:calc(env(safe-area-inset-top) + 1.2rem) 1.1rem .85rem;background:#dce4d6ef;backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}
.notebook-header div span{display:block;color:var(--brand);font-size:.66rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.notebook-header h2{margin:.12rem 0 0;font-size:1.08rem;line-height:1.1}
.notebook-badge{padding:.35rem .55rem;border-radius:99px;background:#f5ead2;color:#76551d;font-size:.68rem;font-weight:900}
.notebook-main{padding:1rem 1.1rem}
.notebook-hero{display:flex;gap:1rem;padding:1.2rem;border-radius:1.15rem;background:linear-gradient(145deg,#102417,#1f4129);color:#fff;box-shadow:0 14px 28px #17251a25}
.notebook-hero-icon{flex:none;width:3.35rem;height:3.35rem;border-radius:.8rem;background:#ffffff17;display:grid;place-items:center;color:#fff}
.notebook-hero-icon svg{width:2rem;fill:none;stroke:currentColor;stroke-width:2.2}
.notebook-hero small{color:#9fc39a;font-size:.62rem;font-weight:900;letter-spacing:.08em}
.notebook-hero h3{margin:.35rem 0 .5rem;font-size:1.15rem;line-height:1.22}
.notebook-hero p{margin:0;color:#cedacf;font-size:.78rem;line-height:1.45}
.notebook-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem;margin:1rem 0}
.notebook-metrics article{min-width:0;padding:.8rem .6rem;border:1px solid #fff;border-radius:.85rem;background:#f8faf5;text-align:center;box-shadow:0 5px 14px #17251a0a}
.notebook-metrics strong,.notebook-metrics span{display:block}.notebook-metrics strong{color:var(--brand);font-size:1.2rem}.notebook-metrics span{margin-top:.12rem;color:var(--soft);font-size:.62rem;font-weight:800;line-height:1.2}
.notebook-empty{padding:1.5rem 1.2rem;border:1px dashed #9caf95;border-radius:1rem;background:#f7f9f4;text-align:center}
.notebook-empty svg{width:3.25rem;fill:none;stroke:var(--brand);stroke-width:2}
.notebook-empty h3{margin:.7rem 0 .35rem;font-size:1rem}.notebook-empty p{margin:0;color:var(--soft);font-size:.78rem;line-height:1.5}
.notebook-safety{display:flex;gap:.8rem;align-items:flex-start;margin-top:1rem;padding:.9rem;border-radius:.85rem;background:#f5ead2;color:#674b17;font-size:.72rem;line-height:1.4}.notebook-safety strong{flex:none}.notebook-safety span{color:#7c6640}
.bottom-nav{position:absolute;z-index:10;inset:auto 0 0;min-height:5.2rem;padding:.55rem .5rem max(.55rem,env(safe-area-inset-bottom));background:#f7f8f3eb;backdrop-filter:blur(16px);border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(5,1fr);align-items:end}
.bottom-nav button{border:0;background:none;display:flex;flex-direction:column;align-items:center;gap:.2rem;color:var(--soft);font-size:.62rem;font-weight:800;padding:.3rem .1rem}
.bottom-nav svg{width:1.35rem;height:1.35rem;fill:none;stroke:currentColor;stroke-width:1.9}
.bottom-nav .active{color:var(--brand)}
.bottom-nav .nav-scan{align-self:start;width:3.7rem;height:3.7rem;margin:-1.75rem auto 0;border-radius:50%;background:var(--ink);color:#fff;border:5px solid var(--paper);box-shadow:0 8px 18px #17251a40}
.bottom-nav .nav-scan svg{width:1.8rem;height:1.8rem}
.nav-arabic{font-family:"Noto Kufi Arabic",sans-serif;font-size:.9rem;font-weight:800;line-height:1;color:#fff}
.toast{position:absolute;z-index:30;left:50%;bottom:6.4rem;transform:translateX(-50%);width:max-content;max-width:calc(100% - 2rem);padding:.8rem 1rem;border-radius:.8rem;background:var(--ink);color:#fff;font-size:.84rem;font-weight:700;box-shadow:0 10px 30px #0003}
.screen-enter{animation:screenIn .36s ease both}
@keyframes screenIn{from{opacity:0;transform:translateY(12px)}
to{opacity:1}
}
[dir="rtl"] .language-menu button,[dir="rtl"] .scan-card,[dir="rtl"] .tool-card{text-align:right}
[dir="rtl"] .start svg,[dir="rtl"] .card-arrow,[dir="rtl"] .tool-arrow{transform:scaleX(-1)}
button:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
@media(min-width:541px){body{padding:1.2rem}
.app-frame,.screen{min-height:calc(100svh - 2.4rem)}
.app-frame{border-radius:2rem}
.bottom-nav{border-radius:0 0 2rem 2rem}
}
@media(max-height:720px){.scan-mark{width:5.8rem}
h1{font-size:2rem}
.welcome-copy{font-size:.92rem;margin:.8rem auto}
.welcome-visual{height:7rem;margin:.4rem 0 .65rem}
.start{min-height:3.3rem}
.welcome-actions small{margin-top:.4rem}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important}
}
.status-inline{display:inline-block;margin-top:.35rem;padding:.2rem .42rem;border-radius:99px;background:#f5ead2;color:#76551d;font-size:.62rem;font-weight:800}
.regulatory-status,.conflict-warning{margin:1rem 0;padding:.9rem;border-radius:.75rem;background:#f5ead2;color:#674b17;font-size:.76rem;line-height:1.45}
.regulatory-status{border-left:4px solid var(--orange)}
.regulatory-status strong,.regulatory-status span{display:block}
.regulatory-status span{margin-top:.25rem}
.conflict-warning{background:#f8dddd;color:#7b2727;border-left:4px solid var(--red)}
.source-card{margin-top:1rem}
.use-data{grid-template-columns:repeat(2,minmax(0,1fr))}

/* Fiche produit professionnelle */
.product-main{padding:1rem;background:linear-gradient(180deg,#dfe7da 0,#eef2eb 34rem);color:var(--ink)}
.pro-hero{padding:1.35rem;border-radius:1.25rem;background:linear-gradient(145deg,#102417,#1e3925);box-shadow:0 16px 35px #10241726}
.pro-hero:after{width:10rem;height:10rem;right:-4rem;top:-4rem;background:#56804c;opacity:.22}
.hero-badges{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:.6rem}
.review-badge{padding:.35rem .58rem;border:1px solid #f2c87866;border-radius:99px;background:#e5a8371f;color:#f6d99f;font-size:.68rem;font-weight:800}
.pro-hero h2{font-size:2rem;margin:1.15rem 0 .3rem;letter-spacing:-.025em}
.pro-hero .arabic-product{display:flex;align-items:center;gap:.5rem}.pro-hero .arabic-product small{font-family:"Nunito Sans",sans-serif;font-size:.6rem;font-weight:700;color:#9fb49c}
.hero-reference{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.35rem;padding-top:1rem;border-top:1px solid #ffffff24}
.hero-reference>div:last-child{text-align:right}.hero-reference small{display:block;color:#aebfac;font-size:.7rem;font-weight:700}.hero-reference strong{display:block;margin-top:.18rem;color:#fff;font-size:1rem;letter-spacing:.02em}
.regulatory-panel{margin:1rem 0;padding:1rem;border:1px solid #ead2a2;border-left:5px solid var(--orange);border-radius:1rem;background:#fff8e9;box-shadow:0 7px 18px #5f45100c}
.panel-heading,.section-title{display:flex;align-items:center;gap:.72rem}.panel-heading h3,.section-title h3{margin:.05rem 0 0;font-size:1rem}.panel-heading small,.section-title small{display:block;color:var(--soft);font-size:.66rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.panel-number{flex:none;display:grid;place-items:center;width:2rem;height:2rem;border-radius:.58rem;background:var(--ink);color:#fff;font-size:.68rem;font-weight:900;letter-spacing:.05em}
.status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem;margin-top:.9rem}.status-grid>div{min-width:0;padding:.65rem;border-radius:.65rem;background:#f4ead5}.status-grid small{display:block;color:#7c6640;font-size:.6rem;line-height:1.2}.status-grid strong{display:block;margin-top:.22rem;font-size:.72rem;line-height:1.25}.regulatory-panel>p{margin:.8rem 0 0;color:#705322;font-size:.72rem;line-height:1.45}
.professional-card{padding:1rem;border:1px solid #fff;border-radius:1rem;box-shadow:0 7px 18px #17251a0a}.professional-card .section-title{margin-bottom:1rem}.professional-card .panel-number,.professional-title .panel-number{padding:0;border-radius:.58rem;background:var(--brand);color:#fff;font-size:.68rem}
.identity-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.identity-grid .field-wide{grid-column:span 1}.detail-field small{font-size:.66rem;font-weight:800;line-height:1.2}.detail-field strong{font-size:.86rem;margin-top:.25rem}
.composition-card{background:#f9fbf7}.composition-table{display:grid;grid-template-columns:2fr 1fr;border:1px solid #adc0a8;border-radius:.8rem;overflow:hidden}.composition-table>div{padding:.9rem;background:#fff}.composition-table>div+div{border-left:1px solid #adc0a8}.composition-table .detail-field strong{font-size:1rem;color:var(--brand)}
.uses-section{margin-top:1.15rem}.professional-title{align-items:center;margin-bottom:.7rem}.professional-title>.section-title{margin:0;flex:1}.professional-title>span{background:var(--ink);color:#fff;padding:.32rem .55rem;border-radius:99px;white-space:nowrap;font-size:.68rem;font-weight:900}
.usage-table{overflow:hidden;border:1px solid #c4d0bf;border-radius:1rem;background:#fff;box-shadow:0 8px 22px #17251a0b}.usage-header{display:none}.usage-row{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:.8rem;padding:1rem 1rem 1rem 2.9rem}.usage-row+ .usage-row{border-top:1px solid #d9e1d5}.usage-row:nth-child(even){background:#f8faf6}.usage-index{position:absolute;left:.8rem;top:1rem;display:grid;place-items:center;width:1.45rem;height:1.45rem;border-radius:.4rem;background:#dce8d8;color:var(--brand);font-size:.62rem;font-weight:900}.usage-cell small{display:block;color:var(--soft);font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.035em}.usage-cell strong{display:block;margin-top:.2rem;font-size:.82rem;line-height:1.3}.usage-crop strong,.usage-target strong{color:var(--brand);font-size:.9rem}.empty-uses{padding:1.2rem;color:var(--soft)}
.source-grid .field-wide{grid-column:1/-1}.source-footnote{margin:1rem 0 0;padding-top:.8rem;border-top:1px solid var(--line);color:var(--soft);font-size:.7rem;line-height:1.45}
[dir="rtl"] .hero-reference>div:last-child{text-align:left}[dir="rtl"] .regulatory-panel{border-left:1px solid #ead2a2;border-right:5px solid var(--orange)}[dir="rtl"] .usage-row{padding:1rem 2.9rem 1rem 1rem}[dir="rtl"] .usage-index{left:auto;right:.8rem}
@media(max-width:380px){.status-grid{grid-template-columns:1fr}.hero-reference{grid-template-columns:1fr}.hero-reference>div:last-child{text-align:left}.identity-grid,.composition-table{grid-template-columns:1fr}.composition-table>div+div{border-left:0;border-top:1px solid #adc0a8}.usage-row{grid-template-columns:1fr}}

/* Lecture du nom par la caméra */
.scanner-screen{background:#e7ece2;padding-bottom:max(1.5rem,env(safe-area-inset-bottom))}.scanner-main{padding:1rem}.scanner-intro{display:flex;gap:.8rem;align-items:flex-start;margin:.2rem 0 1rem}.scanner-step{flex:none;padding:.35rem .48rem;border-radius:.45rem;background:var(--ink);color:#fff;font-size:.68rem;font-weight:900;letter-spacing:.08em}.scanner-intro h2{margin:0;font-size:1.25rem;line-height:1.2}.scanner-intro p{margin:.35rem 0 0;color:var(--soft);font-size:.82rem;line-height:1.4}
.camera-stage{position:relative;aspect-ratio:3/4;max-height:62svh;border-radius:1.15rem;overflow:hidden;background:#122018;box-shadow:0 16px 32px #17251a2b}.camera-stage video,.camera-stage canvas{width:100%;height:100%;object-fit:cover}.camera-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;padding:2rem;color:#dce8d8;text-align:center}.camera-placeholder svg{width:3.3rem;fill:none;stroke:#93ae8b;stroke-width:1.8}.camera-placeholder strong{font-size:.9rem}
.focus-frame{position:absolute;left:8%;right:8%;top:38%;height:25%;border:1px solid #ffffff5c;background:#00000014}.focus-frame span{position:absolute;width:1.8rem;height:1.8rem;border-color:#fff;border-style:solid}.focus-frame span:nth-child(1){left:-2px;top:-2px;border-width:3px 0 0 3px}.focus-frame span:nth-child(2){right:-2px;top:-2px;border-width:3px 3px 0 0}.focus-frame span:nth-child(3){right:-2px;bottom:-2px;border-width:0 3px 3px 0}.focus-frame span:nth-child(4){left:-2px;bottom:-2px;border-width:0 0 3px 3px}.focus-frame em{position:absolute;left:50%;bottom:-2.25rem;transform:translateX(-50%);padding:.28rem .5rem;border-radius:.35rem;background:#0009;color:#fff;font-size:.64rem;font-style:normal;font-weight:900;letter-spacing:.08em;white-space:nowrap}
.scanner-actions{display:grid;grid-template-columns:1.7fr 1fr;gap:.65rem;margin-top:.8rem}.capture-text,.upload-text{min-height:3.25rem;border-radius:.82rem;font-weight:900;font-size:.82rem;display:flex;align-items:center;justify-content:center;gap:.5rem}.capture-text{border:0;background:var(--brand);color:#fff;box-shadow:0 8px 18px #4a6b3a30}.capture-text:disabled{opacity:.45}.capture-text svg{width:1.3rem;fill:none;stroke:currentColor;stroke-width:2}.upload-text{border:1px solid #aab9a3;background:#f7f9f4;color:var(--brand);cursor:pointer;text-align:center;padding:.4rem}.upload-text input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.ocr-progress{margin:1rem 0;padding:.9rem;border-radius:.8rem;background:#fff}.ocr-progress>div{height:.5rem;overflow:hidden;border-radius:99px;background:#dce4d6}.ocr-progress span{display:block;width:4%;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--brand),#78a267);transition:width .2s}.ocr-progress p{margin:.55rem 0 0;color:var(--soft);font-size:.76rem}
.detected-panel{margin-top:1rem;padding:1rem;border-radius:1rem;background:#fff;box-shadow:0 7px 18px #17251a0d}.detected-panel label{display:block;margin-bottom:.5rem;font-size:.75rem;font-weight:900;color:var(--soft)}.detected-panel textarea{display:block;width:100%;resize:vertical;border:1px solid #aab9a3;border-radius:.7rem;padding:.7rem;background:#f8faf6;color:var(--ink);font:700 .92rem/1.4 "Nunito Sans",sans-serif;text-transform:uppercase}.detected-panel textarea:focus{outline:3px solid #2a6ea622;border-color:var(--blue)}.detected-panel button{width:100%;margin-top:.65rem;padding:.75rem;border:0;border-radius:.65rem;background:var(--ink);color:#fff;font-weight:900}
.ocr-results{margin-top:1rem}.ocr-heading h3{margin:0;font-size:1rem}.ocr-heading p{margin:.25rem 0 .65rem;color:var(--soft);font-size:.75rem}.ocr-match-list{display:grid;gap:.55rem}.ocr-match-list button{width:100%;display:grid;grid-template-columns:1.7rem 1fr auto;gap:.7rem;align-items:center;border:1px solid #fff;border-radius:.85rem;padding:.8rem;background:#fff;text-align:left;box-shadow:0 6px 16px #17251a0c}.match-rank{display:grid;place-items:center;width:1.7rem;height:1.7rem;border-radius:.45rem;background:#dce8d8;color:var(--brand);font-size:.7rem;font-weight:900}.ocr-match-list strong,.ocr-match-list small{display:block}.ocr-match-list strong{font-size:.9rem}.ocr-match-list small{margin-top:.12rem;color:var(--soft);font-size:.65rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ocr-match-list em{padding:.25rem .4rem;border-radius:99px;background:#f5ead2;color:#79571b;font-size:.61rem;font-style:normal;font-weight:900}.ocr-message{padding:1rem;border-radius:.8rem;background:#fff;color:var(--soft);font-size:.8rem}.ocr-message.error{background:#f8dddd;color:#7b2727}.scanner-privacy{margin:1rem .4rem 0;color:var(--soft);font-size:.68rem;line-height:1.4;text-align:center}
[dir="rtl"] .ocr-match-list button{text-align:right}
@media(max-width:380px){.scanner-actions{grid-template-columns:1fr}.camera-stage{aspect-ratio:4/5}.ocr-match-list button{grid-template-columns:1.7rem 1fr}.ocr-match-list em{grid-column:2}}
.ocr-heading.no-match{padding:1rem;border:1px solid #e5c88d;border-radius:.85rem;background:#fff8e9}.ocr-heading.no-match h3{color:#76551d}.ocr-heading.no-match p{margin-bottom:0}

/* Formation pilote */
.course-pilot{justify-self:end;padding:.25rem .4rem;border-radius:99px;background:#f5ead2;color:#76551d;font-size:.58rem;letter-spacing:.08em}.course-main{padding:1rem;background:linear-gradient(180deg,#dce8df,#eef2eb 27rem);min-height:calc(100svh - 4.5rem)}.course-cover{padding:1.25rem;border-radius:1.2rem;background:linear-gradient(145deg,#10261c,#064b31);color:#fff;box-shadow:0 15px 32px #10261c2b}.course-kicker{color:#e8c873;font-size:.66rem;font-weight:900;letter-spacing:.1em}.course-cover h2{margin:.7rem 0 .45rem;font-size:1.75rem;line-height:1.1}.course-cover p{margin:0;color:#d4e3da;font-size:.85rem;line-height:1.5}.course-progress{display:flex;align-items:center;gap:.7rem;margin-top:1rem}.course-progress>span{flex:1;height:.4rem;border-radius:99px;background:#ffffff25;overflow:hidden}.course-progress i{display:block;width:16%;height:100%;border-radius:99px;background:#e8c873}.course-progress strong{font-size:.65rem;color:#d9e7df}.course-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:.35rem;margin:1rem 0;padding:.3rem;border-radius:.8rem;background:#cddacd}.course-tabs button{border:0;border-radius:.58rem;background:transparent;padding:.62rem .25rem;font-size:.72rem;font-weight:900}.course-tabs button.active{background:#fff;color:var(--brand);box-shadow:0 4px 12px #17331f14}.course-panel{display:none}.course-panel.active{display:block}.lesson-meta{color:var(--red);font-size:.66rem;font-weight:900;letter-spacing:.09em}.course-panel>h3{margin:.25rem 0 .8rem;font-size:1.45rem}.lesson-card,.course-answer{padding:1rem;border:1px solid #fff;border-radius:1rem;background:#f8faf6;box-shadow:0 7px 18px #17331f0b}.lesson-card h4{margin:0 0 .45rem;font-size:1rem}.lesson-card p,.course-answer p{margin:0;color:var(--soft);font-size:.82rem;line-height:1.55}.course-panel blockquote{margin:.75rem 0;padding:1rem;border:0;border-radius:1rem;background:var(--brand);color:#fff;font-size:1.05rem;font-weight:900;line-height:1.35}.lesson-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem}.lesson-steps article{padding:.7rem;border-radius:.75rem;background:#fff}.lesson-steps b{display:grid;place-items:center;width:1.55rem;height:1.55rem;border-radius:.4rem;background:#e3eee6;color:var(--brand);font-size:.62rem}.lesson-steps strong,.lesson-steps small{display:block}.lesson-steps strong{margin-top:.6rem;font-size:.78rem}.lesson-steps small{margin-top:.18rem;color:var(--soft);font-size:.64rem;line-height:1.35}.course-warning{margin-top:.75rem;padding:.8rem;border-left:4px solid var(--red);border-radius:.3rem .75rem .75rem .3rem;background:#fff3f1;color:#6f3030;font-size:.72rem;line-height:1.45}.course-source{display:block;margin-top:.8rem;padding:.8rem;border:1px solid #aab9a3;border-radius:.75rem;background:#f8faf6;color:var(--brand);font-size:.76rem;font-weight:900;text-align:center;text-decoration:none}.course-modules{display:grid;gap:.55rem}.course-modules article{display:flex;align-items:center;gap:.75rem;padding:.85rem;border:1px solid #fff;border-radius:.85rem;background:#f8faf6}.course-modules article>b{display:grid;place-items:center;flex:none;width:2rem;height:2rem;border-radius:.55rem;background:#e3eee6;color:var(--brand);font-size:.7rem}.course-modules strong,.course-modules small{display:block}.course-modules strong{font-size:.88rem}.course-modules small{margin-top:.12rem;color:var(--soft);font-size:.68rem}.demo-label{margin-bottom:.8rem;padding:.55rem;border-radius:.6rem;background:#f5ead2;color:#76551d;text-align:center;font-size:.62rem;font-weight:900;letter-spacing:.05em}.course-question{margin-left:12%;padding:.9rem;border-radius:1rem 1rem .3rem 1rem;background:#dcebe1;font-size:.84rem;font-weight:800;line-height:1.45}.course-answer{margin: .65rem 8% 0 0}.course-answer>strong{display:block;margin-bottom:.4rem;color:var(--brand);font-size:.82rem}.course-answer small{display:block;margin-top:.75rem;padding-top:.65rem;border-top:1px solid var(--line);color:var(--soft);font-size:.67rem}[dir="rtl"] .course-warning{border-left:0;border-right:4px solid var(--red)}[dir="rtl"] .course-question{margin-left:0;margin-right:12%;border-radius:1rem 1rem 1rem .3rem}[dir="rtl"] .course-answer{margin:.65rem 0 0 8%}@media(max-width:380px){.lesson-steps{grid-template-columns:1fr}.course-cover h2{font-size:1.5rem}}

/* Écran d'ouverture : l'icône Fallah fait un zoom arrière puis disparaît (3 s) */
#launch-splash{position:fixed;inset:0;z-index:200;display:grid;place-items:center;background:#fff1d7;pointer-events:none;animation:splash-bg 3s ease-in forwards}
#launch-splash img{width:min(56vw,240px);height:auto;filter:drop-shadow(0 18px 30px rgba(0,60,30,.28));animation:splash-logo 3s cubic-bezier(.4,0,.2,1) forwards}
@keyframes splash-bg{0%,60%{opacity:1}100%{opacity:0;visibility:hidden}}
@keyframes splash-logo{0%{opacity:0;transform:scale(1.5)}12%{opacity:1;transform:scale(1.4)}45%{opacity:1;transform:scale(1.25)}100%{opacity:0;transform:scale(.3)}}
@media (prefers-reduced-motion:reduce){#launch-splash{animation:splash-bg 1.2s ease-in forwards}#launch-splash img{animation:none;opacity:1}}

/* Retour par balayage : pastille qui suit le geste */
.swipe-hint{position:fixed;top:50%;z-index:150;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:rgba(0,98,51,.88);color:#fff;font-size:2rem;line-height:1;pointer-events:none;box-shadow:0 8px 20px rgba(0,50,25,.3);transition:background .12s}
.swipe-hint-left{left:10px}.swipe-hint-right{right:10px}
.swipe-hint.ready{background:#e8891d}
