/* ===== Plantopia-style design system ===== */
@import url('https://fonts.googleapis.com/css2?family=Urbanist:wght@400;500;600;700;800&display=swap');

:root{
  /* ===== Plantify brand (exact, iz UI kita) ===== */
  --green:#00A86B;        /* Primary */
  --green-2:#2E7D32;      /* Secondary */
  --green-d:#008656;      /* tamna zelena akcija (Dis. Button) */
  --green-ink:#075235;
  --green-l:#12D18E;      /* Success / svetli akcenat */
  --green-soft:#e6f6ee; --green-soft2:#cce9d9;

  /* ===== Alert & Status (semantičke boje) ===== */
  --info:#00A86B; --success:#12D18E; --warning:#FACC15; --error:#F75555;
  --dis-light:#D8D8D8; --dis-dark:#23252B;

  /* ===== Greyscale (Material-style rampa) ===== */
  --g900:#212121; --g800:#424242; --g700:#616161; --g600:#757575; --g500:#9E9E9E;
  --g400:#BDBDBD; --g300:#E0E0E0; --g200:#EEEEEE; --g100:#F5F5F5; --g50:#FAFAFA;

  --bg:#ffffff; --bg2:#f5f8f5; --card:#ffffff; --line:#edf0ed;
  --text:#212121;         /* Greyscale/900 */
  --muted:#757575;        /* Greyscale/600 */
  --overdue:#F75555; --today:#f0871f; --soon:#E0A800; --ok:#00A86B;

  /* ===== Tipografska skala — Urbanist (iz UI kita) ===== */
  --h1:48px; --h2:40px; --h3:32px; --h4:24px; --h5:20px; --h6:18px;
  --t-xl:18px; --t-lg:16px; --t-md:14px; --t-sm:12px; --t-xs:10px;

  --radius:20px; --radius-sm:13px; --pill:999px;
  --shadow:0 8px 26px rgba(20,45,25,.07); --shadow-sm:0 3px 12px rgba(20,45,25,.06);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:'Urbanist',system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  background:var(--bg);color:var(--text);line-height:1.5;font-size:var(--t-md)}
body::before{content:"";position:fixed;inset:0 0 auto 0;height:340px;z-index:-1;
  background:linear-gradient(180deg,#e3f4e8 0%,#eef8f0 38%,rgba(255,255,255,0) 100%)}
a{color:var(--green-d);text-decoration:none}
a:hover{text-decoration:none}
img{max-width:100%;display:block}
h1{font-size:var(--h4);margin:.2em 0 .5em;font-weight:700}
h2{font-size:var(--h6);margin:0 0 .6em;font-weight:700}
h3{font-size:var(--t-lg);margin:.4em 0;font-weight:600}

/* ===== top bar (desktop) ===== */
.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;
  gap:12px;padding:12px 20px;background:#fff;border-bottom:1px solid var(--line)}
.topbar .brand{color:var(--green-d);font-weight:800;font-size:1.15rem;display:flex;gap:6px;align-items:center}
.topbar nav{display:flex;gap:4px;align-items:center}
.topbar nav a{color:var(--text);padding:8px 14px;border-radius:var(--pill);font-size:.92rem;font-weight:500}
.topbar nav a:hover{background:var(--green-soft);color:var(--green-d)}
.topbar nav a.active{background:var(--green);color:#fff}
.topbar nav a.nav-ico{padding:8px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center}
.topbar nav a.nav-ico svg{width:20px;height:20px;display:block}
.topbar .link{background:none;border:0;color:var(--muted);cursor:pointer;font:inherit;padding:8px 12px;border-radius:var(--pill);font-weight:500}
.topbar .link:hover{background:#f3f4f3;color:var(--text)}

.container{max-width:1000px;margin:0 auto;padding:18px 16px 28px}
.footer{display:none}
.inline{display:inline}
.muted{color:var(--muted)}
.small{font-size:var(--t-sm)}

/* ===== bottom nav (mobile) — full-width Menu Bar (Plantify) ===== */
.menubar{display:none}
@media(max-width:720px){
  .topbar{display:none}
  .menubar{display:block;position:fixed;left:0;right:0;bottom:0;z-index:40;
    background:var(--card);border-top:1px solid var(--line);
    -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
    padding-bottom:calc(env(safe-area-inset-bottom) + 6px);box-shadow:0 -4px 20px rgba(20,45,25,.06)}
  /* home-indicator zone (Figma Menu Bar) */
  .menubar::after{content:"";display:block;width:134px;height:5px;border-radius:100px;background:var(--g500);opacity:.55;margin:6px auto 4px}
  .menubar-row{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px 8px}
  .mb-item{flex:1 0 0;min-width:0;display:flex;flex-direction:column;align-items:center;gap:2px;color:#9E9E9E}
  .mb-item svg{width:24px;height:24px}
  .mb-lbl{font-size:10px;font-weight:500;letter-spacing:.2px;line-height:1.6;text-align:center}
  .mb-item.active{color:var(--green)}
  .mb-item.active .mb-lbl{font-weight:700}
  .mb-ico{position:relative;display:flex}
  .mb-cam{flex:0 0 auto;width:52px;height:52px;border-radius:50%;background:var(--green);color:#fff;border:0;
    display:flex;align-items:center;justify-content:center;cursor:pointer;
    box-shadow:0 6px 16px rgba(0,168,107,.42)}
  .mb-cam svg{width:26px;height:26px}
  .nav-badge{position:absolute;top:-5px;left:50%;transform:translateX(5px);min-width:17px;height:17px;padding:0 4px;border-radius:9px;
    background:var(--error);color:#fff;font-size:.62rem;font-weight:800;display:flex;align-items:center;justify-content:center;border:2px solid var(--card)}
  body{padding-bottom:104px}
}
/* snap sheet (izaberi biljku → kamera) */
.snap-list{display:flex;flex-direction:column;max-height:62vh;overflow-y:auto}
.snap-form{margin:0}
.snap-row{display:flex;align-items:center;gap:12px;padding:10px 2px;border-bottom:1px solid var(--line);cursor:pointer}
.snap-form:last-child .snap-row{border-bottom:0}
.snap-thumb{width:44px;height:44px;border-radius:11px;overflow:hidden;background:var(--bg2);display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex:0 0 auto}
.snap-thumb img{width:100%;height:100%;object-fit:cover}
.snap-name{flex:1;font-weight:600;color:var(--g900);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.snap-row .aa-go{color:#c2c8c3;flex:0 0 auto}

/* ===== flash ===== */
.flash{padding:11px 15px;border-radius:13px;margin-bottom:14px;font-weight:500}
.flash-success{background:var(--green-soft);color:var(--green-ink)}
.flash-error{background:#fdecec;color:#a82020}
/* Figma success bottom-sheet (frame 63) */
.ok-overlay{position:fixed;inset:0;z-index:200;background:rgba(18,28,22,.45);display:none;align-items:flex-end;justify-content:center}
.ok-overlay.show{display:flex;animation:okFade .2s ease}
.ok-overlay.ok-hide{animation:okFade .28s ease reverse forwards}
.ok-sheet{width:100%;max-width:480px;background:#fff;border-radius:24px 24px 0 0;padding:34px 28px calc(40px + env(safe-area-inset-bottom));text-align:center;box-shadow:0 -8px 30px rgba(0,0,0,.22);animation:okUp .3s cubic-bezier(.22,1,.36,1)}
.ok-check{display:flex;align-items:center;justify-content:center;width:64px;height:64px;margin:0 auto 18px;border-radius:50%;background:var(--green);color:#fff;box-shadow:0 8px 22px rgba(0,168,107,.34)}
.ok-check svg{width:32px;height:32px}
.ok-msg{font-size:16px;font-weight:600;line-height:1.4;color:var(--g900);margin:0;max-width:320px;margin-left:auto;margin-right:auto}
[data-theme="dark"] .ok-sheet{background:#181A20}
@keyframes okFade{from{opacity:0}to{opacity:1}}
@keyframes okUp{from{transform:translateY(100%)}to{transform:translateY(0)}}
/* Globalni loader (učitavanje/slanje slika) */
.proc-overlay{position:fixed;inset:0;z-index:300;background:rgba(18,28,22,.5);display:none;align-items:center;justify-content:center}
.proc-overlay.show{display:flex;animation:okFade .18s ease}
.proc-card{display:flex;flex-direction:column;align-items:center;gap:14px;background:#fff;border-radius:20px;padding:26px 30px;box-shadow:0 12px 36px rgba(0,0,0,.25)}
.proc-spin{width:42px;height:42px;border-radius:50%;border:4px solid var(--green-soft);border-top-color:var(--green);animation:procspin .7s linear infinite}
.proc-txt{font-size:15px;font-weight:600;color:var(--g900)}
[data-theme="dark"] .proc-card{background:#1F222A}
[data-theme="dark"] .proc-spin{border-color:#2a2f38;border-top-color:var(--green)}
@keyframes procspin{to{transform:rotate(360deg)}}

/* ===== buttons ===== */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:11px 20px;border-radius:var(--pill);
  border:1px solid transparent;font:inherit;font-weight:600;cursor:pointer;font-size:.92rem;background:#eef2ef;color:var(--text);transition:filter .12s,transform .06s}
.btn:hover{filter:brightness(.97)}
.btn:active{transform:scale(.98)}
.btn-primary{background:var(--green);color:#fff;box-shadow:0 4px 14px rgba(0,168,107,.28)}
.btn-ghost{background:#fff;border-color:var(--line);color:var(--text)}
.btn-danger-ghost{background:#fff;border-color:#f6d4d4;color:#c02e2e}
.btn-block{width:100%}
.btn-sm{padding:8px 15px;font-size:.88rem}
.btn-mini{padding:6px 10px;border-radius:10px;font-size:.85rem;background:#f1f4f1;border:1px solid var(--line);font-weight:600}
.btn-done{background:var(--green);color:#fff;border-color:var(--green)}
.btn-x{color:#c02e2e}

/* ===== login ===== */
.login-wrap{min-height:84vh;display:flex;align-items:center;justify-content:center}
.login-card{background:var(--card);border:1px solid var(--line);border-radius:26px;padding:38px 30px;width:min(370px,92vw);text-align:center;box-shadow:var(--shadow)}
.login-emoji{font-size:3.2rem}
.login-card h1{margin:.2em 0 0;color:var(--green-d)}
.login-card form{margin-top:20px;display:flex;flex-direction:column;gap:12px}
.login-card input{padding:13px 16px;border:1px solid var(--line);border-radius:var(--pill);font:inherit;font-size:1rem;background:var(--bg2)}
.login-card input:focus{outline:none;border-color:var(--green);background:#fff}

/* ===== greeting ===== */
.greet{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.greet-hi{font-size:1.4rem;font-weight:800;line-height:1.15}
.greet-sub{color:var(--muted);font-size:.9rem}
.greet-ava{width:46px;height:46px;border-radius:50%;background:var(--green-soft);display:flex;align-items:center;justify-content:center;font-size:1.4rem;border:1px solid var(--green-soft2)}
.greet-search{width:46px;height:46px;flex:0 0 auto;border-radius:50%;background:var(--green-soft);border:1px solid var(--green-soft2);color:var(--green-d);display:flex;align-items:center;justify-content:center}
.greet-search svg{width:22px;height:22px;display:block}
.greet-search:hover{background:var(--green);color:#fff;border-color:var(--green)}
.greet-actions{display:flex;gap:9px;align-items:center}
.greet-add{width:46px;height:46px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.7rem;font-weight:300;box-shadow:0 4px 14px rgba(0,168,107,.3)}
.greet-add:hover{filter:brightness(.97)}
/* ===== Home navbar (Figma 16_Dark_home) ===== */
.hm-nav{display:flex;align-items:center;gap:16px;margin:6px 0 16px}
.hm-banner{background:var(--green);color:#fff;border-radius:12px;padding:12px 14px;margin:0 0 16px;font-size:14px;font-weight:600;line-height:1.4}
.hm-logo{flex:1 1 0;display:flex;align-items:center}
.hm-logo svg{width:auto;height:28px;display:block}
.hm-title{flex:0 0 auto;text-align:center;margin:0;font-family:'Urbanist',sans-serif;font-size:24px;font-weight:700;letter-spacing:0;color:var(--g900);white-space:nowrap}
.hm-actions{flex:1 1 0;display:flex;align-items:center;justify-content:flex-end;gap:12px}
.hm-ic{position:relative;width:48px;height:48px;flex:0 0 auto;border:1px solid var(--line);background:none;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--g900);cursor:pointer}
.hm-ic svg{width:26px;height:26px}
.hm-ic:active{transform:scale(.94)}
.hm-bell .hm-dot{position:absolute;top:11px;right:11px;width:8px;height:8px;border-radius:50%;background:var(--error);box-shadow:0 0 0 2px var(--bg)}

/* ===== search ===== */
.search{position:relative;margin-bottom:14px}
.search input{width:100%;min-width:0;max-width:100%;-webkit-appearance:none;appearance:none;padding:13px 16px 13px 44px;border:1px solid var(--line);border-radius:var(--pill);font:inherit;font-size:16px;background:var(--bg2)}
.search input::-webkit-search-decoration,.search input::-webkit-search-cancel-button,.search input::-webkit-search-results-button,.search input::-webkit-search-results-decoration{-webkit-appearance:none;appearance:none}
.search input:focus{outline:none;border-color:var(--green);background:#fff}
.search .s-ic{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:1.05rem}

/* ===== featured banner ===== */
.featured{position:relative;overflow:hidden;border-radius:var(--radius);padding:18px 20px;margin-bottom:16px;color:#fff;
  background:linear-gradient(120deg,#00A86B,#007a45);box-shadow:0 10px 26px rgba(0,168,107,.28)}
.featured.calm{background:linear-gradient(120deg,#10b866,#00A86B)}
.featured-emoji{position:absolute;right:-6px;bottom:-14px;font-size:6rem;opacity:.22;transform:rotate(-10deg)}
.featured h2{margin:0 0 4px;color:#fff;font-size:1.15rem}
.featured p{margin:0 0 12px;opacity:.92;font-size:.9rem;max-width:80%}
.featured .btn{background:#fff;color:var(--green-d)}

/* ===== weather ===== */
.weather{background:linear-gradient(135deg,#eaf6ff,#eef8f0);border:1px solid #dceee2;border-radius:16px;padding:12px 14px;margin-bottom:14px;box-shadow:var(--shadow-sm)}
.weather-now{display:flex;align-items:center;gap:12px}
.w-emoji{font-size:2.1rem;line-height:1}
.w-cur{flex:1;min-width:0}
.w-temp{font-size:1.65rem;font-weight:800;line-height:1.05;color:var(--g900)}
.w-meta{color:var(--muted);font-size:.84rem}
.w-hl{text-align:right;font-weight:600;font-size:.88rem;color:#3a463d;white-space:nowrap}
.w-prob{display:block;color:#2b86c5;font-size:.8rem;margin-top:2px}
.w-tip{margin-top:10px;background:#e8f1fb;border:1px solid #cfe2f5;color:#1f5a8c;border-radius:10px;padding:8px 11px;font-size:.84rem;font-weight:500;line-height:1.4}
.w-days{display:flex;gap:6px;margin-top:10px;overflow-x:auto;scrollbar-width:none}
.w-days::-webkit-scrollbar{display:none}
.w-day{flex:1 0 auto;min-width:52px;display:flex;flex-direction:column;align-items:center;gap:1px;background:rgba(255,255,255,.6);border:1px solid var(--line);border-radius:12px;padding:7px 5px;font-size:.76rem}
.w-day.rainy{background:#e8f1fb;border-color:#cfe2f5}
.w-day.today{background:var(--green);border-color:var(--green);color:#fff}
.w-day.today .w-d-lbl,.w-day.today .w-d-prob,.w-day.today .muted{color:#eafff0}
.w-day.past{opacity:.62}
.w-d-lbl{font-weight:600;text-transform:capitalize;color:var(--muted)}
.w-d-emoji{font-size:1.15rem}
.w-day b{font-size:.88rem}
.w-d-sub{font-size:.66rem}
.w-d-prob{color:#2b86c5;font-size:.68rem;white-space:nowrap}
.w-legend{margin-top:8px;text-align:center}
/* weather — dark theme adaptation */
[data-theme="dark"] .weather{background:var(--card);border-color:#2A2E37;box-shadow:none}
[data-theme="dark"] .w-hl{color:var(--g700)}
[data-theme="dark"] .w-prob,[data-theme="dark"] .w-d-prob{color:#5BB0E8}
[data-theme="dark"] .w-tip{background:rgba(38,134,197,.13);border-color:rgba(38,134,197,.32);color:#A8D2F0}
[data-theme="dark"] .w-day{background:rgba(255,255,255,.045);border-color:#2A2E37}
[data-theme="dark"] .w-day.today{background:var(--green);border-color:var(--green);color:#fff}
[data-theme="dark"] .w-day.rainy{background:rgba(38,134,197,.16);border-color:rgba(38,134,197,.38)}
[data-theme="dark"] .w-day.past{opacity:.45}
/* ===== Home reminders — collapsible cards (Figma: My Plants Card / Reminders) ===== */
.hm-rem{display:flex;flex-direction:column;gap:16px;margin-bottom:8px}
.rcard{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:14px 16px}
.rcard-head{display:flex;align-items:center;gap:12px;width:100%;background:none;border:0;padding:0;cursor:pointer;color:inherit;font:inherit;text-align:left}
.rcard-tics{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.rcard-tic{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;flex:0 0 auto}
.rcard-tic svg{width:16px;height:16px;display:block}
.rcard-title{flex:1 1 auto;min-width:0;font-size:18px;font-weight:700;letter-spacing:0;color:var(--g900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rcard-count{flex:0 0 auto;font-size:16px;font-weight:500;letter-spacing:.2px;color:var(--g900)}
.rcard-chev{flex:0 0 auto;display:flex;color:var(--g700);transition:transform .2s}
.rcard-chev svg{width:20px;height:20px}
.rcard.is-open .rcard-chev{transform:rotate(180deg)}
.rcard-body{display:none;flex-direction:column;margin-top:14px}
.rcard.is-open .rcard-body{display:flex}
.rrow{display:flex;align-items:center;gap:12px;padding:13px 0;border-top:1px solid var(--line);color:inherit;text-decoration:none}
.rrow:active{opacity:.7}
.rrow-thumb{width:60px;height:60px;border-radius:4px;overflow:hidden;flex:0 0 auto;background:var(--bg2);display:flex;align-items:center;justify-content:center}
.rrow-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.rrow-emoji{font-size:1.7rem}
.rrow-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:4px}
.rrow-name{font-size:16px;font-weight:600;letter-spacing:.2px;color:var(--g900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rrow-sub{font-size:12px;font-weight:400;letter-spacing:.2px;color:var(--g700);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rrow-sub.rrow-late{color:#F75555;font-weight:600}
.rrow-chev{flex:0 0 auto;display:flex;color:var(--g500)}
.rrow-chev svg{width:20px;height:20px}
.rcard-empty{padding:13px 0 2px;font-size:14px;letter-spacing:.2px;color:var(--g600);border-top:1px solid var(--line)}
/* Late accent (red) */
.rcard-late .rcard-title,.rcard-late .rcard-count{color:#F75555}
/* ===== Popular Articles (Figma Articles Card) ===== */
.art-row{display:flex;gap:16px;overflow-x:auto;scrollbar-width:none;margin:0 -20px 8px;padding:0 20px;scroll-padding:0 20px}
.art-row::-webkit-scrollbar{display:none}
.art-card{flex:0 0 auto;width:240px;display:flex;flex-direction:column;gap:12px;text-decoration:none;color:inherit}
.art-card:active{opacity:.85}
.art-img{display:block;height:160px;border-radius:8px;overflow:hidden;background:var(--bg2)}
.art-img img{width:100%;height:100%;object-fit:cover;display:block}
.art-foot{display:flex;gap:12px;align-items:flex-start}
.art-title{flex:1 1 0;min-width:0;font-size:18px;font-weight:600;letter-spacing:.2px;line-height:1.4;color:var(--g900);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.art-dots{flex:0 0 auto;color:var(--g600);display:flex;padding-top:2px}
.art-dots svg{width:24px;height:24px}
/* relevantni članci na kraju članka */
.art-related{margin-top:26px;padding-top:18px;border-top:1px solid var(--line)}
.art-related .art-card{width:200px;gap:10px}
.art-related .art-img{height:130px}
.art-related .art-foot{flex-direction:column;gap:3px}
.art-related .art-title{font-size:16px;-webkit-line-clamp:2}
.art-kind{font-size:12.5px;font-weight:600;color:var(--g500)}
/* ===== Article detail page ===== */
.art-page{padding-bottom:8px}
.art-hero{margin:0 0 16px;border-radius:12px;overflow:hidden;background:var(--bg2)}
.art-hero img{width:100%;display:block;max-height:260px;object-fit:cover}
.art-h1{font-family:'Urbanist',sans-serif;font-size:24px;font-weight:700;line-height:1.3;letter-spacing:0;color:var(--g900);margin:0 0 14px}
.art-sec{font-size:19px;font-weight:700;letter-spacing:0;color:var(--g900);margin:20px 0 8px}
.art-p{font-size:16px;line-height:1.7;letter-spacing:.2px;color:var(--g800);margin:0 0 12px}
.art-fig{margin:16px 0}
.art-imgwrap{display:block;border-radius:12px;overflow:hidden;background:var(--bg2)}
.art-fig img{width:100%;display:block;border-radius:12px}
.art-fig figcaption{margin-top:7px;font-size:13px;letter-spacing:.2px;color:var(--g600);text-align:center}
/* ===== Skelet (shimmer) dok se slika u članku učitava ===== */
.art-hero,.art-imgwrap,.art-img{position:relative}
.art-hero.img-skel img,.art-imgwrap.img-skel img,.art-img.img-skel img{opacity:0}
.art-hero img,.art-imgwrap img,.art-img img{transition:opacity .25s ease}
.art-imgwrap.img-skel{min-height:180px}
.img-skel::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(100deg,var(--bg2) 30%,rgba(255,255,255,.55) 50%,var(--bg2) 70%);background-size:200% 100%;animation:imgshimmer 1.2s linear infinite}
[data-theme="dark"] .img-skel::after{background:linear-gradient(100deg,#1F222A 30%,rgba(255,255,255,.07) 50%,#1F222A 70%);background-size:200% 100%}
@keyframes imgshimmer{to{background-position:-200% 0}}
/* Univerzalni shimmer direktno na slici (thumbs, kartice, fotografije, popup) dok se učitava */
img.skel-img{background-image:linear-gradient(100deg,var(--bg2) 30%,rgba(255,255,255,.5) 50%,var(--bg2) 70%);background-size:200% 100%;background-repeat:no-repeat;animation:imgshimmer 1.2s linear infinite}
[data-theme="dark"] img.skel-img{background-image:linear-gradient(100deg,#1F222A 30%,rgba(255,255,255,.07) 50%,#1F222A 70%)}
.lb-stage img.skel-img{min-width:60vw;min-height:40vh;border-radius:12px}
/* ===== Dijagnoza placeholder ===== */
.diag-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:40px 24px 24px}
.diag-ic{width:84px;height:84px;border-radius:50%;background:rgba(0,168,107,.14);color:var(--green);display:flex;align-items:center;justify-content:center;margin-bottom:6px}
.diag-ic svg{width:42px;height:42px}
.diag-empty h2{margin:0;font-size:22px;font-weight:700;color:var(--g900)}
.diag-empty p{margin:0;max-width:340px;font-size:15px;line-height:1.6;letter-spacing:.2px;color:var(--g600)}
.diag-btn{margin-top:10px;opacity:.7;cursor:not-allowed}
/* ===== Diagnose page (Figma 35_Dark_diagnose) ===== */
.dg-hero{position:relative;display:block;height:200px;border-radius:8px;overflow:hidden;background:var(--card);margin:2px 0 24px;text-decoration:none}
.dg-hero-plant{position:absolute;left:-40px;top:calc(50% + 18px);transform:translateY(-50%);width:240px;height:240px;object-fit:contain;pointer-events:none}
.dg-hero-body{position:absolute;left:160px;right:16px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.dg-hero-title{font-family:'Urbanist',sans-serif;font-size:20px;font-weight:700;letter-spacing:0;line-height:1.4;color:var(--g900)}
.dg-hero-sub{font-size:14px;font-weight:400;letter-spacing:.2px;line-height:1.5;color:var(--g700)}
.dg-hero-btn{margin-top:12px;background:var(--green);color:#fff;border:0;padding:8px 20px;border-radius:1000px;font-size:16px;font-weight:600;letter-spacing:.2px;cursor:pointer}
.dg-drow{display:flex;gap:12px;overflow-x:auto;scrollbar-width:none;margin:0 -20px 24px;padding:0 20px}
.dg-drow::-webkit-scrollbar{display:none}
.dg-dcard{flex:0 0 auto;width:180px;display:flex;flex-direction:column;gap:8px;text-decoration:none;color:inherit}
.dg-dcard:active{opacity:.85}
.dg-dimg{display:block;height:120px;border-radius:4px;overflow:hidden;background:var(--bg2)}
.dg-dimg img{width:100%;height:100%;object-fit:cover;display:block}
.dg-dname{font-size:16px;font-weight:600;letter-spacing:.2px;color:var(--g900)}
.dg-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0 0 8px}
.dg-ecard{position:relative;height:100px;border-radius:4px;overflow:hidden;display:block;text-decoration:none}
.dg-ecard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.dg-ecard::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(24,26,32,.65) 46%,rgba(24,26,32,.3) 70%,rgba(24,26,32,0) 100%)}
.dg-ename{position:absolute;left:10px;right:10px;top:6px;z-index:1;font-size:16px;font-weight:600;letter-spacing:.2px;line-height:1.3;color:#fff}

/* ===== Disease detail (Figma 42) ===== */
.dd-hero{display:block;height:200px;border-radius:10px;overflow:hidden;background:var(--card);margin:2px 0 16px}
.dd-hero img{width:100%;height:100%;object-fit:cover}
.dd-name{margin:0 0 2px;font-family:'Urbanist',sans-serif;font-size:24px;font-weight:700;letter-spacing:0;color:var(--g900)}
.dd-latin{font-size:13px;font-style:italic;letter-spacing:.2px;color:var(--g500);margin-bottom:6px}
.dd-tabs{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin:14px -20px 18px;padding:0 20px}
.dd-tabs::-webkit-scrollbar{display:none}
.dd-tab{flex:0 0 auto;padding:9px 18px;border-radius:1000px;background:var(--bg2);font-size:15px;font-weight:600;letter-spacing:.2px;color:var(--g700);text-decoration:none;white-space:nowrap}
.dd-tab.active{background:var(--green);color:#fff}
.dd-sec{scroll-margin-top:calc(60px + env(safe-area-inset-top) + 8px);margin:0 0 22px}
.dd-h{margin:0 0 10px;font-family:'Urbanist',sans-serif;font-size:20px;font-weight:700;letter-spacing:0;color:var(--g900)}
.dd-text{margin:0;font-size:16px;line-height:1.6;letter-spacing:.2px;color:var(--g800)}
.dd-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}
.dd-list li{position:relative;padding-left:18px;font-size:16px;line-height:1.55;letter-spacing:.2px;color:var(--g800)}
.dd-list li::before{content:"";position:absolute;left:2px;top:9px;width:6px;height:6px;border-radius:50%;background:var(--green)}
.dd-plants{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none;margin:0 -20px;padding:0 20px}
.dd-plants::-webkit-scrollbar{display:none}
.dd-plant{flex:0 0 auto;display:flex;align-items:center;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:1000px;padding:6px 14px 6px 6px;text-decoration:none;color:var(--g900)}
.dd-plant-thumb{width:32px;height:32px;border-radius:50%;overflow:hidden;background:var(--bg2);display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.dd-plant-thumb img{width:100%;height:100%;object-fit:cover}
.dd-plant-emoji{font-size:18px}
.dd-plant-name{font-size:15px;font-weight:600;letter-spacing:.2px;white-space:nowrap}
.dd-help{margin:8px 0 8px}
.dd-help-q{font-size:16px;font-weight:700;letter-spacing:.2px;color:var(--g900);margin-bottom:12px}
.dd-help-btns{display:flex;gap:12px}
.dd-help-btn{flex:1;padding:12px;border-radius:12px;border:1.5px solid var(--line);background:var(--card);font:inherit;font-size:16px;font-weight:600;letter-spacing:.2px;color:var(--g900);cursor:pointer}
.dd-help-btn.on{border-color:var(--green);background:var(--green);color:#fff}

/* ===== Explore / Category / History list (Figma 44/45/43) ===== */
.dx-search{display:flex;align-items:center;gap:10px;background:var(--bg2);border:1px solid var(--line);border-radius:12px;padding:0 14px;height:52px;margin:2px 0 18px}
.dx-search svg{width:20px;height:20px;color:var(--g500);flex:0 0 auto}
.dx-search input{flex:1;border:0;background:transparent;font:inherit;font-size:16px;letter-spacing:.2px;color:var(--g900);outline:none}
.dx-search input::placeholder{color:var(--g500)}
.dx-cat-desc{margin:0 0 16px;font-size:15px;line-height:1.55;letter-spacing:.2px;color:var(--g700)}
.dx-list{display:flex;flex-direction:column}
.dx-row{display:flex;align-items:center;gap:14px;padding:10px 0;text-decoration:none;color:inherit}
.dx-row:active{opacity:.85}
.dx-thumb{width:64px;height:64px;border-radius:10px;overflow:hidden;background:var(--bg2);flex:0 0 auto}
.dx-thumb-lg{width:78px;height:78px}
.dx-thumb img{width:100%;height:100%;object-fit:cover}
.dx-main{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:3px}
.dx-rname{font-family:'Urbanist',sans-serif;font-size:17px;font-weight:700;letter-spacing:.2px;color:var(--g900)}
.dx-rsub{font-size:13px;line-height:1.45;letter-spacing:.2px;color:var(--g700);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dx-rsub-2{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.dx-chev{flex:0 0 auto;color:var(--g500)}
.dx-chev svg{width:22px;height:22px}
/* zaglavlje kategorije u explore listi */
.dx-sec{display:flex;align-items:center;gap:8px;margin:14px 0 2px;font-size:13px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:var(--g600)}
.dx-sec:first-child{margin-top:4px}
.dx-sec-ic{font-size:15px}
/* zaglavlje strane jedne kategorije (/diagnose/topic) */
.dt-head{display:flex;align-items:center;gap:12px;margin:2px 0 14px}
.dt-emoji{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:24px;background:var(--green-soft);flex:0 0 auto}
.dt-sub{font-size:14px;color:var(--g600)}
.dx-empty{padding:24px 0;text-align:center;color:var(--g500);font-size:15px}
.dh-date{display:flex;align-items:center;gap:12px;margin:16px 0 4px}
.dh-date span{font-size:14px;font-weight:600;letter-spacing:.2px;color:var(--g600,var(--g700))}
.dh-date i{flex:1;height:1px;background:var(--line)}
.dh-blank{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:64px 24px}
.dh-blank-ic{width:64px;height:64px;border-radius:50%;background:var(--bg2);display:flex;align-items:center;justify-content:center;color:var(--green);margin-bottom:6px}
.dh-blank-ic svg{width:32px;height:32px}
.dh-blank-t{font-family:'Urbanist',sans-serif;font-size:20px;font-weight:700;color:var(--g900)}
.dh-blank-s{font-size:15px;line-height:1.5;letter-spacing:.2px;color:var(--g700);max-width:260px}
.dh-blank-btn{margin-top:12px;background:var(--green);color:#fff;padding:10px 24px;border-radius:1000px;font-size:16px;font-weight:600;letter-spacing:.2px;text-decoration:none}

/* ===== Diagnosing (Figma 36) — full-screen scan ===== */
.dg-scan{position:fixed;inset:0;z-index:50;background:#000;overflow:hidden}
.dg-scan-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.dg-scan-grad{position:absolute;left:0;right:0;pointer-events:none}
.dg-scan-grad-top{top:0;height:180px;background:linear-gradient(to bottom,rgba(24,26,32,.85),rgba(24,26,32,0))}
.dg-scan-grad-bot{bottom:0;height:420px;background:linear-gradient(to bottom,rgba(24,26,32,0),rgba(24,26,32,.88))}
.dg-scan-bar{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;gap:16px;padding:calc(env(safe-area-inset-top) + 12px) 24px 12px;z-index:3}
.dg-scan-x{flex:0 0 auto;width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:#fff}
.dg-scan-x svg{width:24px;height:24px}
.dg-scan-title{flex:1 1 0;text-align:center;font-family:'Urbanist',sans-serif;font-size:24px;font-weight:700;color:#fff}
.dg-scan-frame{position:absolute;left:20px;right:28px;top:23%;height:44vh;z-index:1}
.dg-scan-frame .c{position:absolute;width:38px;height:38px;border:4px solid var(--green)}
.dg-scan-frame .c1{top:0;left:0;border-right:0;border-bottom:0;border-radius:18px 0 0 0}
.dg-scan-frame .c2{top:0;right:0;border-left:0;border-bottom:0;border-radius:0 18px 0 0}
.dg-scan-frame .c3{bottom:0;left:0;border-right:0;border-top:0;border-radius:0 0 0 18px}
.dg-scan-frame .c4{bottom:0;right:0;border-left:0;border-top:0;border-radius:0 0 18px 0}
.dg-scan-line{position:absolute;left:0;right:0;top:0;height:50%;border-bottom:4px solid var(--green);border-radius:16px 16px 0 0;background:linear-gradient(to bottom,rgba(0,168,107,0),rgba(0,168,107,.35));animation:dgscan 2.2s ease-in-out infinite alternate}
@keyframes dgscan{from{height:18%}to{height:82%}}
.dg-scan-prog{position:absolute;left:90px;right:90px;bottom:172px;display:flex;flex-direction:column;align-items:center;gap:10px;z-index:2;text-align:center}
.dg-scan-track{width:100%;height:8px;border-radius:1000px;background:#eee;overflow:hidden}
.dg-scan-fill{height:100%;width:42%;background:var(--green);border-radius:1000px}
.dg-scan-pct{font-family:'Urbanist',sans-serif;font-size:32px;font-weight:700;color:#fff;line-height:1.2}
.dg-scan-msg{font-size:16px;font-weight:400;letter-spacing:.2px;color:#fff}
.dg-scan-actions{position:absolute;left:0;right:0;bottom:0;height:140px;display:flex;align-items:center;justify-content:center;gap:32px;padding-bottom:env(safe-area-inset-bottom);z-index:2}
.dg-scan-side{width:60px;height:60px;border-radius:50%;background:rgba(240,240,240,.30);border:0;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.dg-scan-side svg{width:26px;height:26px}
.dg-scan-shutter{width:78px;height:78px;border-radius:50%;background:#fff;border:0;cursor:pointer;box-shadow:0 0 0 4px var(--green),0 14px 40px rgba(0,0,0,.35)}
.dg-scan-shutter:active{transform:scale(.96)}

/* home: section head + plant peek */
.section-head{display:flex;align-items:center;gap:8px;margin:18px 0 12px}
.section-head h2{margin:0;flex:1 1 0;min-width:0;font-family:'Urbanist',sans-serif;font-size:20px;font-weight:700;letter-spacing:0;line-height:1.6;color:var(--g900)}
.peek{display:flex;gap:12px;overflow-x:auto;padding:2px 2px 8px;scrollbar-width:none;scroll-snap-type:x mandatory}
.peek::-webkit-scrollbar{display:none}
.peek-card{flex:0 0 150px;scroll-snap-align:start}
.rain-tag{font-size:.95rem;flex:0 0 auto}

/* checkbox row */
.form-grid label.check{flex-direction:row;align-items:center;gap:9px;font-weight:600;background:var(--bg2);border:1px solid var(--line);border-radius:12px;padding:11px 13px}
.form-grid label.check input{width:auto;padding:0;accent-color:var(--green)}

/* ===== calendar (kompaktna horizontalna traka) ===== */
.cal-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:12px 12px 8px;margin-bottom:14px;box-shadow:var(--shadow-sm)}
.cal-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font-weight:700}
.cal-strip{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 6px;scrollbar-width:none;scroll-snap-type:x proximity}
.cal-strip::-webkit-scrollbar{display:none}
.cal-day{flex:0 0 auto;width:50px;height:66px;border:1px solid var(--line);background:#fff;border-radius:16px;
  font:inherit;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--text);
  position:relative;scroll-snap-align:start;padding:0}
.cd-dow{font-size:.66rem;font-weight:700;color:var(--muted)}
.cd-num{font-size:1.1rem;font-weight:700;line-height:1}
.cd-dot{min-width:16px;height:16px;line-height:16px;border-radius:8px;background:var(--green);color:#fff;font-size:.62rem;font-weight:800;padding:0 4px}
.cd-dot-empty{width:5px;height:5px;border-radius:50%;background:#e3e7e3}
.cal-day.today{border-color:var(--green);border-width:2px}
.cal-day.has{cursor:pointer}
.cal-day.past-due .cd-dot{background:var(--overdue)}
.cal-day.sel{background:var(--green);border-color:var(--green);color:#fff}
.cal-day.sel .cd-dow{color:#eafff0}
.cal-day.sel .cd-dot{background:#fff;color:var(--green-d)}
.cal-day[disabled]{opacity:.5}
.cal-clear{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--green-soft);border:1px solid var(--green-soft2);border-radius:12px;padding:8px 12px;margin-bottom:12px;font-size:.88rem}

/* ===== zones ===== */
.zone-attrs{display:inline-flex;gap:4px;font-size:1rem;margin-left:2px}
.zone-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:9px 11px;border:1px solid var(--line);border-radius:12px;margin-bottom:7px;background:var(--bg2)}
.zone-add{border-style:dashed;background:#fff;margin-top:6px}
.zone-row input,.zone-row select{padding:6px 9px;border:1px solid var(--line);border-radius:9px;font:inherit;font-size:13.5px;background:#fff}
.zone-row input:focus,.zone-row select:focus{outline:none;border-color:var(--green)}
.z-name{flex:1 1 120px;font-weight:600}
.z-notes{flex:1 1 100%}
.z-check{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:600;white-space:nowrap}
.z-check input{width:auto;accent-color:var(--green)}
.z-count{flex:0 0 auto;font-size:12px;color:var(--g500);font-weight:600}
.z-acts{flex:0 0 auto;display:flex;gap:5px;margin-left:auto}
.z-add-btn{flex:1 1 100%;margin-top:2px}

/* ===== segmented toggle (group by) ===== */
.seg{display:inline-flex;background:var(--bg2);border:1px solid var(--line);border-radius:var(--pill);padding:3px;margin-bottom:12px;gap:2px}
.seg a{padding:7px 15px;border-radius:var(--pill);font-size:.85rem;font-weight:600;color:var(--muted)}
.seg a:hover{color:var(--text)}
.seg a.active{background:var(--green);color:#fff}

/* ===== category chips (filter) ===== */
.chips-row{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 8px;margin-bottom:6px;scrollbar-width:none}
.chips-row::-webkit-scrollbar{display:none}
.chipf{flex:0 0 auto;display:flex;align-items:center;justify-content:center;padding:12px 26px;border-radius:var(--pill);
  background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm);font:inherit;font-size:.95rem;font-weight:600;color:var(--text);cursor:pointer;white-space:nowrap;transition:background .15s,color .15s,box-shadow .15s}
.chipf:hover{border-color:var(--green-soft2)}
.chipf.active{background:var(--green);border-color:var(--green);color:#fff;box-shadow:0 5px 16px rgba(0,168,107,.32)}

/* ===== reminders ===== */
.reminders{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;margin-bottom:18px;box-shadow:var(--shadow-sm)}
.reminders.empty-rem{color:var(--ok);font-weight:600;text-align:center}
.reminders-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.reminders-head h2{margin:0;font-size:1.05rem}
.reminder-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:280px;overflow-y:auto}
.reminder{display:flex;align-items:center;gap:8px;padding:9px 11px;border-radius:14px;background:var(--bg2);border:1px solid transparent}
.reminder.overdue{background:#fdeeee}
.reminder.due-today{background:#fff4e9}
.reminder-link{display:flex;align-items:center;gap:11px;flex:1;min-width:0;color:var(--text)}
.r-emoji{width:34px;height:34px;border-radius:11px;background:#fff;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:1.05rem;flex:0 0 auto}
.r-main{flex:1;min-width:0;display:flex;gap:7px;align-items:baseline;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.r-task{color:var(--muted);font-size:.88rem;overflow:hidden;text-overflow:ellipsis}
.r-due{font-weight:700;font-size:.8rem;white-space:nowrap}
.task-acts{display:flex;gap:5px;align-items:center;flex-shrink:0}
.task-acts .btn-mini{padding:6px 10px;font-size:.8rem}
/* tasks page: name on its own line, actions below-right */
.taskline{flex-wrap:wrap}
.taskline .reminder-link{flex:1 1 100%}
.taskline .task-acts{margin-left:auto}
.group-summary{cursor:pointer;font-weight:700;font-size:1.05rem;list-style:none}
.group-summary::-webkit-details-marker{display:none}
.group-summary::before{content:"▸ ";color:var(--muted)}
details[open] > .group-summary::before{content:"▾ "}
.r-due.overdue,.t-due.overdue{color:var(--overdue)}
.r-due.due-today,.t-due.due-today{color:var(--today)}
.r-due.soon,.t-due.soon{color:var(--soon)}
.r-due.ok,.t-due.ok{color:var(--ok)}

/* ===== page head ===== */
.page-head,.detail-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.page-head h1{margin:0}
/* page header with logo on the left + centered title */
.hm-logo,.mp-logo,.ph-logo{text-decoration:none}
.ph-logo{flex:1 1 0;display:flex;align-items:center}
.ph-logo svg{width:auto;height:28px;display:block}
.page-head-logo{flex-wrap:nowrap;gap:12px}
.page-head-logo>h1{flex:0 0 auto;font-family:'Urbanist',sans-serif;font-size:24px;font-weight:700;letter-spacing:0;color:var(--g900);white-space:nowrap;text-align:center}
.ph-end{flex:1 1 0;min-width:0;display:flex;align-items:center;justify-content:flex-end;white-space:nowrap}
.ph-iconbtn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;color:var(--g900);text-decoration:none}
.ph-iconbtn svg{width:24px;height:24px}
.ph-iconbtn:active{transform:scale(.94)}
.back{font-weight:600;color:var(--muted)}
.back:hover{color:var(--green-d)}
.detail-actions{display:flex;gap:8px}

/* ===== category groups ===== */
.cat-group{margin-bottom:22px}
.cat-head{display:flex;align-items:center;gap:9px;margin:0 0 12px}
.cat-head h2{margin:0;font-size:1.1rem}
.cat-emoji{width:34px;height:34px;border-radius:11px;background:var(--green-soft);display:flex;align-items:center;justify-content:center;font-size:1.15rem}
.cat-count{margin-left:auto;font-size:.78rem;font-weight:700;color:var(--green-d);background:var(--green-soft);border-radius:var(--pill);padding:3px 11px}
.cat-seeall{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;font-size:16px;font-weight:700;letter-spacing:.2px;color:var(--green);text-decoration:none;white-space:nowrap}
.cat-seeall svg{width:24px;height:24px;display:block}

/* ===== plant cards: compact (photo + 3 mini stats), home & biljke ===== */
.grid-lg{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.gcard-wrap{display:contents}
.gcard{display:block;background:var(--card);border:1px solid var(--line);border-radius:15px;padding:8px;box-shadow:var(--shadow-sm);color:var(--text);transition:transform .14s,box-shadow .14s}
.gcard:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.gcard-planned{opacity:.8}
.gcard-photo{position:relative;background:radial-gradient(120% 120% at 50% 12%,#f3faf4,#e6f4ea);border-radius:12px;aspect-ratio:1/1;overflow:hidden;display:flex;align-items:center;justify-content:center}
.gcard-photo img{width:100%;height:100%;object-fit:cover}
.gcard-noimg{font-size:2.6rem}
.gcard-photo .pcard-badge{width:26px;height:26px;font-size:.85rem}
.gcard-name{font-weight:700;font-size:.9rem;margin:8px 2px 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gcard-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;padding:7px 0 1px}
.gcard-stats .pc-stat{display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center;min-width:0}
.gcard-stats .pc-ic{width:30px;height:30px;font-size:.95rem}
.gcard-stats .pc-stat b{font-size:.68rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.gcard-stats .pc-lbl{display:none}

/* ===== plant cards (compact, legacy) ===== */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}
.pcard{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .14s,box-shadow .14s;color:var(--text);display:flex;flex-direction:column}
.pcard:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.pcard-planned{opacity:.82}
.pcard-img{position:relative;aspect-ratio:1/1;background:radial-gradient(120% 120% at 50% 15%,#f3faf4,#e6f4ea);display:flex;align-items:center;justify-content:center;overflow:hidden;margin:8px 8px 0;border-radius:15px}
.pcard-img img{width:100%;height:100%;object-fit:cover}
.pcard-noimg{font-size:3rem}
.pcard-badge{position:absolute;top:8px;right:8px;width:30px;height:30px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;font-size:.95rem;box-shadow:var(--shadow-sm)}
.pcard-qty{position:absolute;top:8px;left:8px;font-size:.72rem;font-weight:700;padding:3px 9px;border-radius:var(--pill);background:rgba(255,255,255,.92);color:var(--green-d)}
.pcard-body{padding:10px 12px 12px;display:flex;flex-direction:column;gap:2px;flex:1}
.pcard-name{font-weight:700;font-size:.98rem;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pcard-sub{font-size:.78rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pcard-foot{display:flex;align-items:center;justify-content:space-between;margin-top:8px;gap:6px}
.pcard-meta{font-size:.76rem;font-weight:600;color:var(--muted);display:inline-flex;align-items:center;gap:3px;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.pcard-meta.overdue{color:var(--overdue)} .pcard-meta.due-today{color:var(--today)} .pcard-meta.soon{color:var(--soon)} .pcard-meta.ok{color:var(--ok)}
.pcard-go{flex:0 0 auto;width:30px;height:30px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:700}

.empty-state{text-align:center;padding:46px 16px;color:var(--muted)}
.no-results{display:none;text-align:center;color:var(--muted);padding:30px}

/* ===== plant detail: reference-style card ===== */
.plant-card{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:12px;box-shadow:var(--shadow);margin:0 auto 16px;max-width:430px}
.pc-photo{position:relative;background:radial-gradient(120% 120% at 50% 12%,#f3faf4,#e3f1e7);border-radius:18px;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;overflow:hidden}
.pc-photo img{width:100%;height:100%;object-fit:cover}
.pc-noimg{font-size:5.5rem}
.pc-plan{position:absolute;top:10px;left:10px}
.pc-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:14px 4px 6px}
.pc-stat{display:flex;flex-direction:column;align-items:center;gap:5px;text-align:center;min-width:0}
.pc-ic{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.45rem}
.ic-weather{background:#fff3e0}
.ic-water{background:#e6f0fb}
.ic-care{background:#e8f6ea}
.pc-stat b{font-size:.98rem;font-weight:700}
.pc-stat b.overdue{color:var(--overdue)} .pc-stat b.due-today{color:var(--today)} .pc-stat b.soon{color:var(--soon)} .pc-stat b.ok{color:var(--ok)}
.pc-lbl{font-size:.72rem;color:var(--muted);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.pd-name{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin:0 0 2px;font-size:1.4rem}

/* weather chart */
.wchart{width:100%;height:auto;display:block;overflow:visible}
.wchart .cx{font-size:8px;fill:var(--muted);font-weight:600}
.wchart .cx-today{fill:var(--green-d);font-weight:800}
.chart-legend{display:flex;gap:16px;margin-bottom:8px;font-size:.8rem;color:var(--muted);font-weight:600}
.chart-legend .lg-dot{display:inline-block;width:10px;height:10px;border-radius:3px;vertical-align:middle;margin-right:4px}
.lg-temp{background:#f0871f}
.lg-prec{background:#bcdcf3}
.chart-foot{margin-top:8px;text-align:center}

/* ===== plant detail: title + journal ===== */
.pd-title{margin:14px 2px 2px}
.pd-title h1{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin:0;font-size:1.45rem}
.pd-sub{color:var(--muted);font-size:.95rem;margin-top:2px}

/* ===== plant detail: header bar + photo + facts (ref layout) ===== */
.pd-bar{display:flex;align-items:center;gap:16px;margin:2px 0 14px}
.pd-back{height:36px;display:flex;align-items:center;justify-content:flex-start;color:var(--g900);flex:1 1 0}
.pd-back:hover{background:var(--bg2);text-decoration:none}
.pd-back svg{width:26px;height:26px}
.pd-bartitle{flex:0 0 auto;text-align:center;margin:0;font-size:24px;font-weight:700;letter-spacing:0;color:var(--g900);white-space:nowrap}
.pd-baractions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:1 1 0}
.pd-bic{width:36px;height:36px;border:0;background:none;display:flex;align-items:center;justify-content:center;color:var(--g900);cursor:pointer;border-radius:50%}
.pd-bic:hover{background:var(--bg2)}
.pd-bic svg{width:24px;height:24px}
.pd-menu{position:relative}
.pd-menu>summary{list-style:none}
.pd-menu>summary::-webkit-details-marker{display:none}
.pd-menu-pop{position:absolute;right:0;top:42px;z-index:10;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);min-width:250px;overflow:hidden}
.pd-menu-pop form{margin:0}
.pd-menu-pop a,.pd-menu-pop button,.pd-menu-pop label{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:15px 18px;background:none;border:0;font:inherit;font-size:16px;font-weight:500;color:var(--g900);cursor:pointer}
.pd-menu-pop svg{width:22px;height:22px;flex:0 0 auto}
.pd-menu-pop a:hover,.pd-menu-pop button:hover,.pd-menu-pop label:hover{background:var(--bg2);text-decoration:none}
.pd-menu-pop>a,.pd-menu-pop>form{border-bottom:1px solid var(--line)}
.pd-menu-pop .pd-remove{color:var(--error)}
.pd-photo{position:relative;border-radius:15px;overflow:hidden;background:radial-gradient(120% 120% at 50% 12%,#f3faf4,#e3f1e7);aspect-ratio:16/9;display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.pd-photo img{width:100%;height:100%;object-fit:cover}
.pd-noimg{font-size:5.5rem}
.pd-plan{position:absolute;top:12px;left:12px}
.pd-pname{font-size:24px;font-weight:700;line-height:1.6;margin:0 0 10px;color:var(--g900);display:flex;align-items:center;gap:8px}
.pd-facts{display:grid;grid-template-columns:130px 10px 1fr;row-gap:3px;column-gap:6px;margin-bottom:10px}
.pd-frow{display:contents}
.pd-fk{color:var(--g900);font-size:16px;font-weight:500;letter-spacing:.2px;line-height:1.6}
.pd-fsep{color:var(--g400);line-height:1.6}
.pd-fv{color:var(--g900);font-size:16px;font-weight:500;letter-spacing:.2px;line-height:1.6;min-width:0}
.pd-menu-pop .pd-coverform{margin:0}

/* ===== modals (bottom sheet + success) ===== */
.modal-overlay{position:fixed;inset:0;z-index:60;background:rgba(18,28,22,.45);display:none;align-items:flex-end;justify-content:center}
.modal-overlay.show{display:flex}
.modal-overlay.center{align-items:center;padding:24px}
.modal-sheet{background:#fff;width:100%;max-width:480px;max-height:80vh;overflow-y:auto;border-top:1px solid var(--line);border-radius:16px 16px 0 0;padding:24px 24px 36px;text-align:center;box-shadow:0 -8px 30px rgba(0,0,0,.22)}
.modal-overlay.center .modal-sheet{border-radius:24px;border-top:0}
.modal-title{margin:0 0 16px;font-size:1.2rem;font-weight:700}
.modal-title.danger{color:var(--overdue)}
.modal-text{color:var(--text);margin:0 0 22px;border-top:1px solid var(--line);padding-top:18px;font-size:.98rem;line-height:1.5}
.modal-actions{display:flex;gap:12px}
.modal-actions form{flex:1;margin:0}
.modal-actions>.btn{flex:1}
.modal-cancel{background:var(--green-soft);color:var(--green-d);border:0}
.modal-success{padding:36px 24px}
.ok-check{width:66px;height:66px;border-radius:50%;background:var(--green);display:flex;align-items:center;justify-content:center;margin:0 auto 18px;box-shadow:0 6px 16px rgba(0,168,107,.4)}
.ok-check svg{width:34px;height:34px}
.modal-stext{margin:0;font-size:1.05rem;font-weight:600;color:var(--text);line-height:1.5}

.jchips{margin-bottom:10px}
.jchip{flex:0 0 auto;padding:8px 20px;border-radius:var(--pill);background:transparent;border:1px solid var(--line);font:inherit;font-size:16px;font-weight:600;letter-spacing:.2px;color:var(--g900);cursor:pointer;white-space:nowrap}
.jchip.active{background:var(--green);border-color:var(--green);color:#fff}

.add-action-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin:2px 0 16px;border:1.6px solid var(--green);border-radius:16px;background:transparent;color:var(--green-d);font:inherit;font-weight:700;font-size:14px;letter-spacing:.2px;padding:14px;cursor:pointer}
.add-action-btn svg{width:20px;height:20px}
/* ===== bottom sheet: lista akcija ===== */
.sheet-handle{width:44px;height:5px;border-radius:3px;background:#e3e3e3;margin:2px auto 12px}
.modal-sheet.sheet-list{text-align:left;padding:12px 18px calc(18px + env(safe-area-inset-bottom));max-height:88vh;overflow-y:auto}
.sheet-title{text-align:center;font-size:var(--h6);font-weight:700;margin:2px 0 8px;color:var(--g900)}
.sheet-title.danger{color:var(--error)}
.aa-grid{display:flex;flex-direction:column;gap:0}
.aa-pick{display:flex;align-items:center;gap:14px;padding:12px 2px;border:0;border-bottom:1px solid var(--line);background:#fff;font:inherit;font-size:var(--t-lg);font-weight:600;color:var(--g900);cursor:pointer;text-align:left;width:100%}
.aa-pick:last-child{border-bottom:0}
.aa-pick:active{background:var(--g100)}
.aa-txt{flex:1}
.aa-go{width:20px;height:20px;color:#c2c8c3;flex:0 0 auto}
.aa-ic{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:0 0 auto;color:#fff}
.aa-ic svg{width:21px;height:21px;display:block}
.aa-head{font-weight:700;color:var(--green-d);margin-bottom:2px}
.aa-btns{display:flex;gap:8px}
.aa-form[hidden]{display:none}
.aa-grid[hidden]{display:none}
.aa-sep{text-align:center;color:var(--muted);font-size:.85rem;font-weight:600;margin:16px 0 10px;border-top:1px solid var(--line);padding-top:12px}

.journal{list-style:none;margin:12px 0 0;padding:0 0 0 20px;position:relative}
.journal:before{content:"";position:absolute;left:5px;top:10px;bottom:10px;width:2px;background:var(--green)}
.j-item{position:relative;margin-bottom:9px}
.j-item:before{content:"";position:absolute;left:-21px;top:26px;width:10px;height:10px;border-radius:50%;background:var(--green);border:3px solid var(--bg);box-sizing:content-box}
.j-card{display:flex;flex-direction:column;background:var(--card);border:0;border-radius:8px;padding:16px}
.j-head{display:flex;align-items:center;gap:16px}
.j-htext{flex:1;min-width:0}
.j-ic{flex:0 0 auto;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;background:#757575}
.j-ic svg{width:20px;height:20px;display:block}
/* solid kolor krugovi (boje iz Plantify UI kita) */
.ji-watering{background:#1A96F0}.ji-fertilizing{background:#EA1E61}.ji-misting{background:#9D28AC}.ji-rotating{background:#FF981F}
.ji-note{background:#3F51B2}.ji-photo{background:#8BC255}.ji-pruning{background:#00BCD3}.ji-repotting{background:#B07A4B}
.ji-observation{background:#5C6BC0}.ji-harvest{background:#F2A33C}.ji-problem{background:#F75555}.ji-pest{background:#8D6E63}
.ji-rain{background:#2B8FD6}.ji-cold{background:#00BCD3}.ji-other{background:#757575}
.j-main{flex:1;min-width:0}
.j-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.j-t{font-weight:700;font-size:18px;line-height:1.6;letter-spacing:.2px}
.j-d{font-size:12px;font-weight:400;letter-spacing:.2px;margin-top:2px}
.j-h2{font-weight:600;font-size:16px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.j-body{margin-top:12px;padding-top:12px;border-top:1px solid var(--line);font-size:16px;font-weight:400;line-height:1.6;color:var(--g800);word-wrap:break-word}
.j-thumbs + .j-body,.j-h2 + .j-body{border-top:0;padding-top:0;margin-top:8px}
.j-photo{display:block;margin-top:9px;border-radius:12px;overflow:hidden;max-width:240px}
.j-photo img{width:100%;display:block}
.j-thumbs{display:flex;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line);overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px;scrollbar-width:none}
.j-thumbs::-webkit-scrollbar{display:none}
.j-thumb{flex:0 0 calc((100% - 16px) / 3);height:92px;border-radius:12px;overflow:hidden;display:block;padding:0;border:0;background:none;cursor:pointer}
.j-thumb img{width:100%;height:100%;object-fit:cover;display:block}

/* ===== foto lightbox (swipe) ===== */
.lightbox{position:fixed;inset:0;z-index:80;background:rgba(0,0,0,.92);display:none;flex-direction:column;align-items:center;justify-content:center}
.lightbox.show{display:flex}
.lb-stage{max-width:94vw;max-height:78vh;display:flex;align-items:center;justify-content:center}
.lb-stage img{max-width:94vw;max-height:78vh;border-radius:12px;object-fit:contain;user-select:none;-webkit-user-drag:none}
.lb-close{position:absolute;top:calc(14px + env(safe-area-inset-top));right:16px;width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.16);color:#fff;border:0;font-size:1.3rem;cursor:pointer;z-index:2}
.lb-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.16);color:#fff;border:0;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:2}
.lb-nav svg{width:24px;height:24px}
.lb-prev{left:12px}.lb-next{right:12px}
.lb-dots{display:flex;gap:7px;margin-top:18px}
.lb-dots span{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.4)}
.lb-dots span.active{background:#fff}
.j-menu{position:relative;flex:0 0 auto}
.j-menu>summary{list-style:none;cursor:pointer;color:var(--muted);font-weight:800;font-size:1.2rem;line-height:1;padding:0 4px}
.j-menu>summary::-webkit-details-marker{display:none}
.j-pop{position:absolute;right:0;top:24px;z-index:5;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);min-width:188px;max-height:62vh;overflow-y:auto;padding:4px}
.j-pop form{margin:0}
.j-act{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:none;border:0;border-radius:10px;padding:11px 12px;font:inherit;font-size:var(--t-md);font-weight:600;cursor:pointer;color:var(--g900)}
.j-act svg{width:18px;height:18px;flex:0 0 auto}
.j-act:hover{background:var(--bg2)}
.j-del{color:var(--error)}

/* reminders as on/off switches */
.rem-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}
.rem{display:flex;align-items:center;gap:0;padding:18px 8px 18px 20px;border:0;border-radius:12px;background:var(--card);min-height:86px;box-sizing:border-box}
.rem-off{opacity:.55}
.rem-open{flex:1;min-width:0;display:block;cursor:pointer}
.rem-doneicon{flex:0 0 auto;margin-left:12px;background:none;border:0;padding:0;cursor:pointer;border-radius:50%;line-height:0}
.rem-doneicon:active{transform:scale(.94)}
.rem .j-ic{width:50px;height:50px}
.rem .j-ic svg{width:25px;height:25px}
.rem-main{min-width:0}
.rem-title{font-weight:700;font-size:18px;letter-spacing:.2px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rem-meta{margin-top:3px;font-size:14px;letter-spacing:.2px;color:var(--g700)}
.rem-meta.rem-soon{color:#3FC08A;font-weight:600}
.rem-meta.rem-late{color:#F75555;font-weight:600}
.rem-menu{margin-left:2px}
.rem-menu>summary{font-size:1.2rem;color:var(--muted);padding:0 2px}
.rem-dots{flex:0 0 auto;margin-left:0;width:26px;height:36px;display:flex;align-items:center;justify-content:center;background:none;border:0;color:var(--muted);font-size:1.3rem;line-height:1;cursor:pointer}
/* ===== Set Reminder — full-screen modal (Figma 65) ===== */
.modal-overlay.rem-modal{align-items:stretch;justify-content:center;background:var(--bg);padding:0}
.rem-modal-card{display:flex;flex-direction:column;width:100%;max-width:480px;height:100%;background:var(--bg);margin:0 auto}
.rem-modal-head{position:relative;display:flex;align-items:center;justify-content:center;min-height:64px;padding:14px 24px}
.rem-modal-title{margin:0;font-size:20px;font-weight:700;letter-spacing:0;color:var(--g900)}
.rem-x{position:absolute;left:18px;top:50%;transform:translateY(-50%);width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:none;border:0;color:var(--g900);cursor:pointer}
.rem-x svg{width:24px;height:24px;display:block}
.rem-modal-form{flex:1;display:flex;flex-direction:column;min-height:0}
.rem-modal-body{flex:1;display:flex;flex-direction:column;gap:30px;padding:14px 24px 24px;overflow-y:auto}
.rem-field{display:flex;flex-direction:column;gap:10px;font-size:18px;font-weight:600;letter-spacing:.2px;color:var(--g900)}
.rem-select,.rem-timefield{position:relative;display:block}
.rem-select select,.rem-timefield input{width:100%;height:64px;background:var(--card);border:0;border-radius:16px;padding:0 20px;font:inherit;font-size:18px;font-weight:500;letter-spacing:.2px;color:var(--g900);-webkit-appearance:none;appearance:none;cursor:pointer}
.rem-select select{padding-right:48px}
.rem-select::after{content:"";position:absolute;right:24px;top:50%;width:9px;height:9px;border-right:2px solid var(--g700);border-bottom:2px solid var(--g700);transform:translateY(-70%) rotate(45deg);pointer-events:none}
.rem-timefield input::-webkit-calendar-picker-indicator{filter:invert(.75)}
.rem-modal-foot{display:flex;gap:16px;padding:16px 24px calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--line)}
.rem-btn{flex:1;height:56px;border:0;border-radius:1000px;font:inherit;font-size:16px;font-weight:700;letter-spacing:.2px;cursor:pointer}
.rem-btn-cancel{background:var(--g300);color:var(--g900)}
[data-theme="dark"] .rem-btn-cancel{background:#35383F}
.rem-btn-save{background:var(--green);color:#fff}
/* snooze popup options */
.sn-form{display:flex;flex-direction:column}
.sn-opt{display:flex;align-items:center;gap:14px;width:100%;padding:15px 2px;border:0;border-bottom:1px solid var(--line);background:none;font:inherit;font-size:16px;font-weight:600;letter-spacing:.2px;color:var(--g900);cursor:pointer;text-align:left}
.sn-opt:last-of-type{border-bottom:0}
.sn-opt svg{width:22px;height:22px;flex:0 0 auto;color:var(--green)}
.sn-opt:active{opacity:.6}
.sn-custom{display:flex;flex-direction:column;gap:12px;padding-top:14px}
.sn-custom[hidden]{display:none}
.sn-custom .aa-btns{display:flex;gap:10px}
.sn-custom .aa-btns .btn{flex:1}
/* ===== Care detail sheets (tap a reminder) ===== */
.care-modal{align-items:flex-end;justify-content:center;background:rgba(0,0,0,.5)}
.care-card{position:relative;width:100%;max-width:480px;background:#fff;border-top:1px solid var(--line);border-radius:16px 16px 0 0;height:57vh;overflow-y:auto;padding-bottom:calc(36px + env(safe-area-inset-bottom));box-shadow:0 -8px 34px rgba(0,0,0,.3)}
[data-theme="dark"] .care-card{background:#181A20}
/* done sheet: auto height so it grows with added photos (exempt from fixed height) */
#doneSheet .care-card,#aaSheet .care-card{height:auto;max-height:90vh}
.care-card::before{content:"";display:block;width:38px;height:3px;border-radius:100px;background:var(--g300);margin:8px auto 2px}
.care-head{position:sticky;top:0;z-index:2;background-color:inherit;display:flex;align-items:center;justify-content:center;min-height:46px;padding:6px 24px 12px}
.care-title{margin:0;font-size:24px;font-weight:700;letter-spacing:0;color:var(--g900);max-width:calc(100% - 96px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}
.care-x,.care-x2,.care-back{position:absolute;top:50%;transform:translateY(-50%);width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:none;border:0;color:var(--g600);cursor:pointer}
.care-x,.care-x2{right:14px}.care-back{left:14px}
.care-x svg,.care-x2 svg,.care-back svg{width:24px;height:24px}
.care-list{padding:2px 24px 22px}
.care-row{display:flex;align-items:center;gap:20px;width:100%;padding:16px 0;border:0;border-bottom:1px solid var(--line);background:none;font:inherit;cursor:pointer;text-align:left}
.care-row:last-child{border-bottom:0}
.care-ic{width:48px;height:48px;border-radius:50%;flex:0 0 auto;display:flex;align-items:center;justify-content:center}
.care-ic svg{width:24px;height:24px}
.ci-snooze{background:var(--g200);color:var(--g600)}
.ci-how,.ci-freq,.ci-last{background:rgba(0,168,107,.16);color:var(--green)}
.ci-unsch{background:rgba(245,85,85,.16);color:var(--error)}
.care-rmain{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.care-rt{font-size:18px;font-weight:600;letter-spacing:0;color:var(--g900)}
.care-rsub{font-size:14px;font-weight:600;letter-spacing:.2px;color:var(--green-d)}
.care-chev{flex:0 0 auto;color:var(--g500);display:flex}
.care-chev svg{width:22px;height:22px}
.care-body{padding:4px 24px 8px}
.care-note{margin:0 0 14px;text-align:center;font-size:16px;letter-spacing:.2px;line-height:1.6;color:var(--g600)}
.care-apply{display:block;width:100%;height:56px;border:0;border-radius:1000px;background:var(--green);color:#fff;font:inherit;font-size:16px;font-weight:700;letter-spacing:.2px;cursor:pointer;margin-top:14px}
/* done sheet: execute reminder + optional note/photo */
.done-body{display:flex;flex-direction:column}
.done-hint{margin:2px 0 18px;font-size:14px;letter-spacing:.2px;line-height:1.5;color:var(--g600);text-align:left}
.done-label{font-size:14px;font-weight:600;letter-spacing:.2px;color:var(--g700);text-align:left;margin-bottom:8px}
.done-note{width:100%;box-sizing:border-box;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px 16px;font:inherit;font-size:16px;letter-spacing:.2px;line-height:1.5;color:var(--g900);resize:vertical;min-height:88px;margin-bottom:16px}
.done-note::placeholder{color:var(--g500)}
.done-note:focus{outline:0;border-color:var(--green)}
.done-photo-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:56px;border:1.5px dashed var(--line);border-radius:14px;background:none;color:var(--g700);font:inherit;font-size:16px;font-weight:600;letter-spacing:.2px;cursor:pointer}
.done-photo-btn svg{width:22px;height:22px}
.done-photo-btn:active{opacity:.7}
.done-photo-btn[hidden]{display:none}
.done-previews{margin-top:12px}
.done-thumbs{display:flex;flex-wrap:wrap;gap:8px}
.done-thumb{width:72px;height:72px;object-fit:cover;border-radius:12px;display:block}
.done-clear{margin-top:10px;background:none;border:0;color:var(--error);font:inherit;font-size:14px;font-weight:600;letter-spacing:.2px;cursor:pointer;padding:4px 0}
/* add-action sheet (Journal): dropdown + date/time + title, sa istim izgledom kao done-sheet */
.aa-care{display:flex;flex-direction:column}
.aa-select,.aa-input{width:100%;box-sizing:border-box;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px 16px;font:inherit;font-size:16px;letter-spacing:.2px;color:var(--g900);margin-bottom:16px}
.aa-select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%238a8f99' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='m6 9 6 6 6-6'/></svg>");background-repeat:no-repeat;background-position:right 16px center;padding-right:44px}
.aa-select:focus,.aa-input:focus{outline:0;border-color:var(--green)}
.aa-input::placeholder{color:var(--g500)}
.aa-row2{display:flex;gap:12px;margin-bottom:0}
.aa-field{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600;letter-spacing:.2px;color:var(--g700);text-align:left;margin-bottom:16px}
.aa-field input{width:100%;box-sizing:border-box;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 14px;font:inherit;font-size:16px;color:var(--g900)}
.aa-field input:focus{outline:0;border-color:var(--green)}
/* snooze options (Until tomorrow / next time / custom date) */
.sn-pill{display:flex;align-items:center;gap:16px;width:100%;margin-bottom:16px;padding:20px;border:0;border-radius:16px;background:var(--card);font:inherit;font-size:18px;font-weight:600;letter-spacing:.2px;color:var(--g900);cursor:pointer;text-align:left}
[data-theme="dark"] .sn-pill{background:#1F222A}
.sn-pill:active{opacity:.7}
.sn-radio{flex:0 0 auto;width:22px;height:22px;border-radius:50%;border:2px solid var(--g500);box-sizing:border-box}
.sn-pill.sel .sn-radio{border-color:var(--green);background:radial-gradient(var(--green) 0 38%,transparent 42%)}
.care-how-sub{text-align:center;font-size:18px;font-weight:700;color:var(--green-d);margin:2px 0 16px}
.care-how-text{margin:0;font-size:16px;letter-spacing:.2px;line-height:1.6;color:var(--g800);white-space:pre-line}
.care-unsch{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:54px;margin-top:12px;border:0;border-radius:1000px;background:rgba(245,85,85,.14);color:var(--error);font:inherit;font-size:16px;font-weight:700;letter-spacing:.2px;cursor:pointer}
.care-unsch svg{width:20px;height:20px}
/* calendar — Figma design-system Calendar component */
#confirmSheet{z-index:90}
.dcal{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:12px}
[data-theme="dark"] .dcal{background:var(--card);border-color:#35383F}
.dcal-head{display:flex;align-items:center;gap:12px;padding:0 8px}
.dcal-prev,.dcal-next{width:24px;height:24px;flex:0 0 auto;background:none;border:0;color:var(--g700);cursor:pointer;display:flex;align-items:center;justify-content:center}
.dcal-prev svg,.dcal-next svg{width:20px;height:20px}
.dcal-prev[disabled]{opacity:.3;cursor:default}
.dcal-month{flex:1;text-align:center;font-size:20px;font-weight:700;color:var(--g900)}
.dcal-divider{height:1px;background:var(--line)}
.dcal-grid{display:grid;grid-template-columns:repeat(7,1fr);justify-items:center;align-items:center}
.dcal-dow{font-size:18px;font-weight:700;color:var(--g900);padding:6px 0}
.dcal-day{width:46px;height:46px;margin:1px 0;border:0;background:none;font:inherit;font-size:16px;font-weight:600;letter-spacing:.2px;color:var(--g900);cursor:pointer;border-radius:50%;display:flex;align-items:center;justify-content:center}
.dcal-day.adj{color:#9E9E9E;cursor:default}
.dcal-day.off{color:#9E9E9E;opacity:.5;cursor:default}
.dcal-day.today{box-shadow:inset 0 0 0 1.5px var(--green)}
.dcal-day.sel{background:var(--green);color:#fff}
/* frequency wheel */
.freq-wheel{position:relative;height:220px;display:flex;gap:10px;margin:6px 0}
.freq-col{flex:1;height:220px;overflow-y:scroll;scroll-snap-type:y mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.freq-col::-webkit-scrollbar{display:none}
.freq-col .it{height:44px;line-height:44px;scroll-snap-align:center;text-align:center;font-size:24px;font-weight:700;color:var(--g500);opacity:.45;transition:opacity .1s,color .1s}
.freq-col.freq-unit .it{font-size:22px}
.freq-col .it.on{color:var(--green);opacity:1}
.freq-pad{height:88px}
.freq-sel{position:absolute;left:0;right:0;top:88px;height:44px;border-radius:12px;background:var(--g200);z-index:-1;pointer-events:none}
.freq-pref{text-align:center;font-size:14px;letter-spacing:.2px;color:var(--g600);margin:6px 0 2px}
.freq-pref b{color:var(--g800)}
.switch{width:46px;height:27px;border-radius:14px;background:#d6dbd6;border:0;position:relative;cursor:pointer;padding:0;flex:0 0 auto;transition:background .15s}
.switch.on{background:var(--green)}
.switch .knob{position:absolute;top:3px;left:3px;width:21px;height:21px;border-radius:50%;background:#fff;transition:left .15s;box-shadow:0 1px 3px rgba(0,0,0,.25)}
.switch.on .knob{left:22px}

/* ===== plant detail ===== */
.plant-hero{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow-sm);margin-bottom:6px}
.hero-img{border-radius:18px;overflow:hidden;background:radial-gradient(120% 120% at 50% 12%,#f3faf4,#e3f1e7);aspect-ratio:16/11;display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.hero-img img{width:100%;height:100%;object-fit:cover}
.hero-noimg{font-size:5rem}
.hero-info h1{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin:0 0 2px;font-size:1.4rem}
.hero-common{color:var(--muted);font-size:1rem;margin-bottom:12px}
.facts{border-collapse:separate;border-spacing:0;width:100%}
.facts th{text-align:left;color:var(--muted);font-weight:500;padding:5px 14px 5px 0;vertical-align:top;white-space:nowrap;width:1%;font-size:.9rem}
.facts td{padding:5px 0;font-weight:500}
@media(min-width:721px){
  .plant-hero{display:grid;grid-template-columns:minmax(0,340px) 1fr;gap:22px}
  .hero-img{margin-bottom:0;aspect-ratio:1/1}
}

/* tabs — rectangular segmented control */
.tabs{display:flex;gap:0;background:#f5f5f5;border-radius:6px;padding:0;margin:6px 0 14px}
.tabs button{flex:1;padding:8px 12px;border-radius:6px;border:0;background:transparent;font:inherit;font-size:16px;font-weight:700;letter-spacing:.2px;color:var(--g900);cursor:pointer;white-space:nowrap}
.tabs button.active{background:var(--green);color:#fff}
.tabpane{display:none}
.tabpane.active{display:block}

/* ===== Moje biljke (lista po zonama) ===== */
.mp-head{display:flex;align-items:center;gap:16px;margin:6px 0 16px}
.mp-logo{flex:1 1 0;display:flex;align-items:center}
.mp-logo svg{width:auto;height:28px;display:block}
.mp-head h1{flex:0 0 auto;text-align:center;margin:0;font-family:'Urbanist',sans-serif;font-size:24px;font-weight:700;letter-spacing:0;color:var(--g900);white-space:nowrap}
.mp-actions{flex:1 1 0;display:flex;align-items:center;justify-content:flex-end;gap:8px}
.mp-ic{width:36px;height:36px;border:0;background:none;color:var(--g900);display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:50%}
.mp-ic:hover{background:var(--bg2)}
.mp-ic svg{width:24px;height:24px}
.mp-ic svg[viewBox="0 0 4.66667 21"]{height:22px;width:auto}
.mp-menu>summary.mp-ic{padding:0}
.mp-menu .j-pop{top:42px}
.mp-search{margin-top:-6px}
.prow-list{display:flex;flex-direction:column}
.prow{display:flex;align-items:center;gap:16px;padding:12px 2px;border-bottom:1px solid var(--line);color:var(--text)}
.prow:hover{text-decoration:none}
.prow:last-child{border-bottom:0}
.prow-img{flex:0 0 auto;width:100px;height:100px;border-radius:6px;overflow:hidden;background:#eee;display:flex;align-items:center;justify-content:center}
.prow-img img{width:100%;height:100%;object-fit:cover}
.prow-emoji{font-size:2.8rem}
.prow-main{flex:1;min-width:0}
.prow-name{font-weight:700;font-size:18px;line-height:1.6;color:var(--g900);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.prow-sci{color:var(--g700);font-size:14px;font-weight:500;letter-spacing:.2px;line-height:1.6;margin-top:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.prow-badges{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}
.pbadge{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;background:#9aa39c}
.pbadge svg{width:14px;height:14px;display:block}
.qty-badge{font-size:.9em;font-weight:700;color:var(--green-d);margin-left:5px}
.pbadge-emoji{font-size:.82rem;font-style:normal}
.bg-watering{background:#1A96F0}.bg-rain{background:#2B8FD6}.bg-fertilizing{background:#EA1E61}.bg-misting{background:#9D28AC}.bg-rotating{background:#FF981F}
.bg-pruning{background:#00BCD3}.bg-repotting{background:#B07A4B}.bg-note{background:#3F51B2}.bg-observation{background:#5C6BC0}
.bg-harvest{background:#F2A33C}.bg-pest{background:#8D6E63}.bg-problem{background:#F75555}.bg-cold{background:#00BCD3}.bg-umbrella{background:#1A96F0}
.prow-go{flex:0 0 auto;width:24px;height:24px;color:var(--g500)}
.mp-empty{padding-top:60px}
.mp-empty-logo svg{width:auto;height:54px;margin:0 auto 14px;display:block}
.mp-empty h2{margin:0 0 4px}
.fab-add{position:fixed;right:18px;bottom:calc(env(safe-area-inset-bottom) + 112px);z-index:35;width:56px;height:56px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:300;box-shadow:0 8px 20px rgba(0,168,107,.45)}
.fab-add:hover{filter:brightness(.97)}
@media(min-width:721px){.fab-add{bottom:28px}}

/* subnav */
.subnav{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 10px;position:sticky;top:60px;z-index:10}
.subnav a{background:var(--card);border:1px solid var(--line);padding:8px 14px;border-radius:var(--pill);font-size:.85rem;font-weight:600;color:var(--text);box-shadow:var(--shadow-sm)}
.subnav a:hover{border-color:var(--green);color:var(--green-d)}
@media(max-width:720px){.subnav{position:static}}

.block{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px;margin-bottom:16px;box-shadow:var(--shadow-sm);scroll-margin-top:16px}

/* Account (Figma 71) — profil + meni lista + pod-stranice */
.acc-profile{display:flex;align-items:center;gap:16px;padding:4px 2px 18px;color:var(--g900);text-decoration:none}
.acc-avatar{flex:0 0 auto;width:60px;height:60px;border-radius:50%;background:var(--bg2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:28px;overflow:hidden}
.acc-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.acc-profile-body{min-width:0;flex:1}
.acc-profile-name{font-family:'Urbanist',sans-serif;font-weight:700;font-size:18px;color:var(--g900);line-height:1.2}
.acc-profile-sub{margin-top:2px;font-size:14px;color:var(--g500);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.acc-menu{display:flex;flex-direction:column}
.acc-row{display:flex;align-items:center;gap:20px;width:100%;padding:16px 2px;color:var(--g900);text-decoration:none;background:transparent;border:0;border-bottom:1px solid var(--line);font:inherit;text-align:left;cursor:pointer}
.acc-row-static{cursor:default}
.acc-ic{flex:0 0 auto;width:24px;height:24px;color:var(--green);display:flex;align-items:center;justify-content:center}
.acc-ic svg{width:24px;height:24px}
.acc-label{flex:1;min-width:0;font-family:'Urbanist',sans-serif;font-weight:700;font-size:18px;color:var(--g900)}
.acc-rval{flex:0 0 auto;font-size:14px;color:var(--g500)}
.acc-sub{display:block;font-family:inherit;font-weight:400;font-size:13px;color:var(--g500);margin-top:2px;line-height:1.35}
.acc-row-del .acc-ic,.acc-row-del .acc-label{color:var(--error)}
.acc-chev{flex:0 0 auto;color:var(--g500);display:flex}
.acc-chev svg{width:20px;height:20px}
.acc-menu .acc-row:last-child{border-bottom:0}
.acc-logout .acc-ic,.acc-logout .acc-label{color:var(--error)}

/* bottom-sheet izbor (tema/jezik) */
.modal-sheet.sheet-choose{text-align:left;padding:12px 18px calc(20px + env(safe-area-inset-bottom))}
.choose-row{display:flex;align-items:center;gap:14px;padding:14px 2px;border-bottom:1px solid var(--line);font-size:16px;color:var(--g900);cursor:pointer}
.choose-row input{position:absolute;opacity:0;width:0;height:0}
.choose-rad{flex:0 0 auto;width:22px;height:22px;border-radius:50%;border:2px solid var(--g400);position:relative}
.choose-row input:checked+.choose-rad{border-color:var(--green)}
.choose-row input:checked+.choose-rad::after{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--green)}
.sheet-actions{display:flex;gap:12px;margin-top:16px}
.sheet-actions>.btn,.sheet-actions form{flex:1;margin:0}
.sheet-actions form .btn{width:100%}
.btn-danger{background:var(--error);color:#fff;border:0}

/* podešavanja dijagnoze (kompaktan sheet) */
.dgset-block{text-align:left}
.dgset-head{font-family:'Urbanist',sans-serif;font-weight:700;font-size:16px;color:var(--g900);margin-bottom:4px}
.dgset-desc{font-size:13px;line-height:1.5;color:var(--g600);margin:0 0 12px}
.dgset-all,.dgset-plant{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:15px;color:var(--g900);padding:9px 2px;user-select:none}
.dgset-all{font-weight:700;border-bottom:1px solid var(--line);margin-bottom:4px}
.dgset-all input,.dgset-plant input{position:absolute;opacity:0;width:0;height:0}
.dgset-cb{flex:0 0 auto;width:20px;height:20px;border:2px solid var(--line);border-radius:6px;display:flex;align-items:center;justify-content:center;transition:.15s}
.dgset-all input:checked+.dgset-cb,.dgset-plant input:checked+.dgset-cb{background:var(--green);border-color:var(--green)}
.dgset-all input:checked+.dgset-cb::after,.dgset-plant input:checked+.dgset-cb::after{content:"";width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);margin-top:-2px}
.dgset-plants{max-height:210px;overflow-y:auto;-webkit-overflow-scrolling:touch;margin-bottom:12px}
.dgset-plants.is-off{opacity:.4;pointer-events:none}
.dgset-run{width:100%}
.dgset-result{margin-top:12px;padding:12px 14px;border-radius:12px;font-size:14px;line-height:1.5;background:var(--bg2);border:1px solid var(--line);color:var(--g900)}
.dgset-result.is-ok{border-color:rgba(0,168,107,.5)}
.dgset-result.is-warn{border-color:rgba(247,85,85,.5)}
.dgset-rlist{margin:8px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:4px}
.dgset-show{width:100%;margin-top:12px}
.dgset-block-sep{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.dgset-field{display:flex;flex-direction:column;gap:8px;text-align:left}
.dgset-lbl{font-family:'Urbanist',sans-serif;font-weight:700;font-size:15px;color:var(--g900)}
.dgset-sel{width:100%;height:50px;padding:0 14px;border:1px solid var(--line);border-radius:12px;background:var(--bg2);font-family:'Urbanist',sans-serif;font-size:15px;color:var(--g900)}
.dgset-sel:disabled{opacity:.6}
.dr-journal-badge{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--g600);background:var(--bg2);border:1px solid var(--line);border-radius:12px;padding:10px 14px;margin:4px 0 14px}
.dr-journal-badge svg{width:18px;height:18px;flex:0 0 auto;color:var(--green)}

/* Vreme i zalivanje (Figma stil — kartice/switch/list-row, kompaktno) */
.w-intro{display:flex;gap:11px;align-items:flex-start;background:var(--bg2);border:1px solid var(--line);border-radius:14px;padding:11px 13px;margin:2px 0 14px}
.w-intro-ic{flex:0 0 auto;width:34px;height:34px;border-radius:10px;background:rgba(0,168,107,.12);color:var(--green);display:flex;align-items:center;justify-content:center}
.w-intro-ic svg{width:19px;height:19px}
.w-intro p{margin:0;font-size:12px;line-height:1.5;color:var(--g600)}
.w-intro b{color:var(--g900);font-weight:700}
.acc-sech{display:flex;align-items:center;gap:7px;font-family:'Urbanist',sans-serif;font-weight:700;font-size:12.5px;text-transform:uppercase;color:var(--g500);margin:14px 0 5px;letter-spacing:.03em}
.acc-sech svg{width:15px;height:15px;color:var(--green)}
.acc-menu .acc-row-static{gap:12px;padding:11px 2px}
.acc-menu .acc-row-static .acc-label{font-size:15px}
.acc-menu .acc-row-static .acc-sub{font-size:12px;margin-top:1px}
.w-help{font-size:12px;line-height:1.45;color:var(--g600);margin:-2px 0 7px}
.w-switch{flex:0 0 auto;position:relative;display:inline-flex}
.w-switch input{position:absolute;opacity:0;width:0;height:0}
.w-track{width:42px;height:24px;border-radius:999px;background:var(--g300);position:relative;transition:.18s;display:inline-block}
.w-knob{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:.18s;box-shadow:0 1px 3px rgba(0,0,0,.25)}
.w-switch input:checked+.w-track{background:var(--green)}
.w-switch input:checked+.w-track .w-knob{transform:translateX(18px)}
.w-val{flex:0 0 auto;width:58px;height:36px;padding:0 8px;border:1px solid var(--line);border-radius:10px;background:var(--bg2);font-family:'Urbanist',sans-serif;font-weight:700;font-size:15px;color:var(--g900);text-align:center}
.w-valwrap{flex:0 0 auto;display:inline-flex;align-items:center;gap:5px}
.w-valwrap .w-val{width:54px}
.w-unit{font-family:'Urbanist',sans-serif;font-weight:700;font-size:13px;color:var(--g500);min-width:16px}
.w-save{width:100%;margin:0}
/* Sticky „Sačuvaj" — uvek vidljiv na dnu (iznad bottom nav-a) */
.w-savebar{position:sticky;bottom:0;margin-top:18px;padding:12px 0 calc(12px + env(safe-area-inset-bottom));background:var(--bg);box-shadow:0 -14px 18px -10px var(--bg);z-index:18}
@media(max-width:720px){.w-savebar{bottom:calc(env(safe-area-inset-bottom) + 104px);padding-bottom:14px}}
/* Kompaktna forma za biljku (Nova/Izmena) */
.pf-form{padding-bottom:8px}
.pf-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px;margin:0 0 4px}
.pf-field{display:flex;flex-direction:column;gap:5px;min-width:0}
.pf-field.full{grid-column:1 / -1}
.pf-field>span{font-size:12.5px;font-weight:600;color:var(--g700)}
.pf-req{color:var(--green)}
.pf-in,.pf-field select,.pf-field textarea{width:100%;box-sizing:border-box;font-family:'Urbanist',sans-serif;font-size:16px;font-weight:600;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg2);color:var(--g900);-webkit-appearance:none}
.pf-field textarea{resize:vertical;min-height:60px;line-height:1.4}
.pf-in::placeholder,.pf-field textarea::placeholder{color:var(--g500);font-weight:500}
.pf-in:focus,.pf-field select:focus,.pf-field textarea:focus{outline:none;border-color:var(--green)}
.w-loc{display:flex;gap:8px;align-items:flex-start;margin:0 0 4px}
.w-loc-field{position:relative;flex:1;min-width:0}
.w-loc-in{width:100%;min-width:0;height:40px;padding:0 13px;border:1px solid var(--line);border-radius:11px;background:var(--bg2);font-family:'Urbanist',sans-serif;font-size:15px;color:var(--g900)}
.w-loc-in::placeholder{color:var(--g500)}
.w-loc-btn{flex:0 0 auto;width:auto;height:40px;padding:0 16px;margin:0;font-size:14px}
.w-loc-sug{position:absolute;top:44px;left:0;right:0;z-index:30;list-style:none;margin:0;padding:5px;background:var(--bg2);border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 28px rgba(0,0,0,.28);max-height:260px;overflow-y:auto}
.w-loc-opt{padding:10px 11px;border-radius:8px;font-size:14.5px;color:var(--g900);cursor:pointer}
.w-loc-opt:hover,.w-loc-opt:active{background:rgba(0,168,107,.12)}

/* Obaveštenja (feed — Figma 17_Dark_notification) */
.nf-list{display:flex;flex-direction:column}
.nf-item{display:flex;align-items:flex-start;gap:14px;padding:16px 2px;border-bottom:1px solid var(--line);color:var(--g900);text-decoration:none}
.nf-item:last-child{border-bottom:0}
a.nf-item:hover{text-decoration:none}
.nf-ic{flex:0 0 auto;width:44px;height:44px;border-radius:50%;border:1.5px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--green)}
.nf-ic svg{width:22px;height:22px}
.nf-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}
.nf-top{display:flex;align-items:center;gap:8px}
.nf-title{flex:1;min-width:0;font-family:'Urbanist',sans-serif;font-weight:700;font-size:16px;color:var(--g900);line-height:1.25}
.nf-badge{font-size:14px}
.nf-dot{flex:0 0 auto;width:9px;height:9px;border-radius:50%;background:var(--green)}
.nf-text{font-size:13.5px;line-height:1.5;color:var(--g600)}
.nf-time{font-size:12px;color:var(--g500);margin-top:1px}
.nf-go{flex:0 0 auto;width:20px;height:20px;color:var(--g500);align-self:center}
.nf-sep{font-family:'Urbanist',sans-serif;font-weight:700;font-size:13px;color:var(--g500);padding:14px 2px 8px;border-bottom:1px solid var(--line)}

/* premium baner (Figma 71, hardkodovano) */
.acc-premium{display:flex;align-items:center;gap:14px;width:100%;background:var(--green);border-radius:12px;padding:12px;margin:6px 0 18px;color:#fff}
.acc-prem-ill{flex:0 0 auto;width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center}
.acc-prem-ill svg{width:24px;height:24px;color:#ffd34d}
.acc-prem-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.acc-prem-title{font-family:'Urbanist',sans-serif;font-weight:700;font-size:17px;line-height:1.3}
.acc-prem-sub{font-size:11px;opacity:.92;line-height:1.4}
.acc-prem-chev{flex:0 0 auto;display:flex}.acc-prem-chev svg{width:20px;height:20px}

/* placeholder „uskoro" stranica */
.soon-wrap{display:flex;flex-direction:column;align-items:center;text-align:center;padding:48px 24px}
.soon-ic{width:80px;height:80px;border-radius:50%;background:var(--bg2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--green);margin-bottom:18px}
.soon-ic svg{width:36px;height:36px}
.soon-title{font-family:'Urbanist',sans-serif;font-size:20px;font-weight:700;color:var(--g900);margin:0 0 8px}
.soon-note{color:var(--g600);font-size:15px;line-height:1.6;max-width:300px;margin:0 0 18px}
.soon-badge{display:inline-block;background:color-mix(in srgb,var(--green) 14%,transparent);color:var(--green);font-weight:700;font-size:13px;padding:6px 16px;border-radius:999px}

/* profil */
.prof-avatar{display:flex;justify-content:center;padding:6px 0 18px}
.prof-avatar-img{width:96px;height:96px;border-radius:50%;background:var(--bg2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:44px}
.prof-form{margin-top:0}

/* profil 1:1 (Figma 78) */
.pf-form{padding:2px 0 28px}
.pf-avatar-wrap{position:relative;width:108px;margin:8px auto 22px}
.pf-avatar{width:108px;height:108px;border-radius:50%;overflow:hidden;background:var(--bg2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center}
.pf-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.pf-avatar-ph{font-size:48px}
.pf-edit{position:absolute;right:2px;bottom:2px;width:34px;height:34px;border-radius:50%;background:var(--green);border:3px solid var(--bg);display:flex;align-items:center;justify-content:center;cursor:pointer}
.pf-edit svg{width:16px;height:16px;color:#fff}
.pf-fields{display:flex;flex-direction:column;gap:6px}
.pf-label{font-family:'Urbanist',sans-serif;font-weight:600;font-size:14px;color:var(--g700);margin:12px 2px 4px}
.pf-input{display:flex;align-items:center;gap:8px;background:var(--bg2);border:1px solid var(--line);border-radius:14px;padding:0 14px;height:56px}
.pf-input input,.pf-input select{flex:1;min-width:0;border:0;background:transparent;outline:none;font-family:'Urbanist',sans-serif;font-size:16px;color:var(--g900);height:54px}
.pf-input select{-webkit-appearance:none;appearance:none}
.pf-ic{display:flex;color:var(--g500)}.pf-ic svg{width:20px;height:20px}
.pf-flag{font-size:20px;line-height:1}
.pf-select{position:relative}
.pf-chev{position:absolute;right:14px;color:var(--g500);pointer-events:none}.pf-chev svg{width:20px;height:20px}
.pf-save{margin-top:26px}

/* lang lista (Figma 89) */
.lang-list{display:flex;flex-direction:column;gap:12px;padding:8px 0}
.lang-form{margin:0}
.lang-card{display:flex;align-items:center;gap:14px;width:100%;background:var(--bg2);border:1.5px solid var(--line);border-radius:16px;padding:16px;cursor:pointer;text-align:left}
.lang-card.active{border-color:var(--green);background:color-mix(in srgb,var(--green) 8%,var(--bg2))}
.lang-flag{font-size:26px;line-height:1}
.lang-name{flex:1;font-family:'Urbanist',sans-serif;font-weight:700;font-size:17px;color:var(--g900)}
.lang-check{display:flex;color:var(--green)}.lang-check svg{width:22px;height:22px}
.lang-flagsvg{flex:0 0 auto;width:24px;height:16px;border-radius:3px;display:block;box-shadow:0 0 0 1px rgba(0,0,0,.08)}

/* faq akordeon (Figma 91) */
.faq-list{display:flex;flex-direction:column;gap:12px;padding:8px 0 24px}
.faq-item{background:var(--bg2);border:1px solid var(--line);border-radius:16px;padding:0 16px;overflow:hidden}
.faq-item summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0;cursor:pointer;font-family:'Urbanist',sans-serif;font-weight:700;font-size:15px;color:var(--g900)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-ic{display:flex;flex:none;color:var(--g500);transition:transform .2s}
.faq-ic svg{width:20px;height:20px}
.faq-item[open] .faq-ic{transform:rotate(180deg);color:var(--green)}
.faq-item p{margin:0 0 16px;color:var(--g700);font-size:14px;line-height:1.6}

/* legal */
.legal{padding:4px 2px 24px;color:var(--g800);font-size:15px;line-height:1.6}
.legal-upd{color:var(--g500);font-size:13px;margin:0 0 14px}
.legal h3{font-family:'Urbanist',sans-serif;font-size:17px;font-weight:700;color:var(--g900);margin:18px 0 6px}
.legal ul{margin:6px 0;padding-left:20px}
.legal li{margin:4px 0}

/* care */
.care-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.care-item{background:var(--bg2);border:1px solid var(--line);border-radius:15px;padding:12px 14px}
.care-lbl{font-weight:700;margin-bottom:3px}
.care-note{margin-top:14px}

/* tasks */
.task-list{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:9px}
.task{display:flex;align-items:center;gap:11px;padding:11px;border:1px solid var(--line);border-radius:15px;background:var(--bg2)}
.task-off{opacity:.55}
.t-emoji{width:38px;height:38px;border-radius:12px;background:#fff;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:1.15rem;flex:0 0 auto}
.t-main{flex:1;min-width:0}
.t-title{font-weight:600}
.t-meta{font-size:.82rem}
.t-due{font-weight:700;font-size:.82rem;white-space:nowrap}
.t-actions{display:flex;gap:4px}

/* add box */
.add-box{margin-top:8px;border:1px dashed #d6ddd6;border-radius:15px;padding:0 14px}
.add-box[open]{padding:14px}
.add-box summary{cursor:pointer;font-weight:600;color:var(--green-d);padding:12px 0}

/* forms */
.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}
.form-grid label{display:flex;flex-direction:column;gap:5px;font-size:.86rem;font-weight:600;color:#3a463d}
.form-grid .full{grid-column:1/-1}
.form-grid input,.form-grid select,.form-grid textarea{padding:11px 13px;border:1px solid var(--line);border-radius:12px;font:inherit;font-weight:400;background:var(--bg2)}
.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{outline:none;border-color:var(--green);background:#fff}
.form-grid textarea{resize:vertical}
.card-form{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow-sm)}
.section-sep{font-weight:700;color:var(--green-d);border-top:1px solid var(--line);padding-top:14px;margin-top:4px}
.form-buttons{display:flex;gap:10px}

/* gallery */
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px}
.photo{margin:0;background:var(--bg2);border:1px solid var(--line);border-radius:15px;overflow:hidden}
.photo img{aspect-ratio:1/1;object-fit:cover;width:100%}
.photo figcaption{padding:7px 9px;font-size:.8rem;display:flex;flex-direction:column;gap:2px}
.photo-actions{display:flex;justify-content:space-between;align-items:center;padding:0 9px 9px}
.cover-badge{font-size:.75rem;color:var(--green-d);font-weight:700}

/* timeline */
.timeline{list-style:none;margin:14px 0 0;padding:0;position:relative}
.timeline:before{content:"";position:absolute;left:18px;top:6px;bottom:6px;width:2px;background:var(--line)}
.tl-item{position:relative;padding:0 0 18px 48px}
.tl-dot{position:absolute;left:0;top:0;width:38px;height:38px;border-radius:12px;background:#fff;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:1rem}
.tl-head{display:flex;align-items:center;gap:8px}
.tl-date{font-weight:700}
.tl-title{font-weight:600;margin-top:2px}
.tl-text{margin-top:2px}
.tl-del{margin-left:auto}

/* settings row */
.set-row{display:flex;align-items:center;justify-content:space-between;gap:14px}
.set-title{font-weight:700;color:var(--g900)}

/* inline tag */
.tag{display:inline-block;font-size:.72rem;font-weight:700;padding:4px 11px;border-radius:var(--pill);background:#eef2ef;color:var(--text)}
.tag-planned{background:#efe6ff;color:#6b34d6}

@media(max-width:720px){
  .form-grid{grid-template-columns:1fr}
  h1{font-size:1.3rem}
  .container{padding:0 20px 24px}
  /* unified header bar — identična pozicija i visina na SVAKOJ stranici, sticky (kao footer) */
  .hm-nav,.mp-head,.pd-bar,.page-head{
    position:sticky;top:0;z-index:20;
    min-height:60px;margin:0 0 12px;
    padding-top:env(safe-area-inset-top);
    background:var(--bg);
    display:flex;align-items:center}
  /* tabs (Garten/Balkon · Journal/Care/Plant Info) float below the header */
  .tabs{position:sticky;top:calc(60px + env(safe-area-inset-top));z-index:19;box-shadow:0 0 0 10px var(--bg)}
}

/* =================== Plant Info (Figma 67) =================== */
.pi-sec{margin:0 0 24px}
.pi-title{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:700;color:var(--g900);margin:0 0 12px;letter-spacing:0}
.pi-title svg{width:22px;height:22px;color:var(--green);flex:0 0 auto}
.pi-title::after{content:"";margin-left:auto;width:8px;height:8px;border-right:2px solid var(--g500);border-top:2px solid var(--g500);transform:rotate(45deg);flex:0 0 auto}
.pi-text{font-size:16px;font-weight:400;line-height:1.6;letter-spacing:.2px;color:var(--g800);margin:0}
.pi-articles{display:flex;flex-direction:column;gap:10px}
.pi-art{display:flex;align-items:center;gap:12px;padding:10px;background:var(--card);border:1px solid var(--line);border-radius:16px;text-decoration:none;color:inherit}
.pi-art-img{flex:0 0 auto;width:64px;height:64px;border-radius:12px;overflow:hidden;background:var(--g200)}
.pi-art-img img{width:100%;height:100%;object-fit:cover;display:block}
.pi-art-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:3px}
.pi-art-kind{font-size:12px;font-weight:700;color:var(--green);letter-spacing:.2px}
.pi-art-title{font-size:15px;font-weight:700;color:var(--g900);line-height:1.3}
.pi-art-ex{font-size:13px;font-weight:400;color:var(--g700);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pi-art-go{flex:0 0 auto;width:20px;height:20px;color:var(--g500)}
.art-list{padding:4px 20px 24px;display:flex;flex-direction:column;gap:22px}
.art-list-sec{display:flex;flex-direction:column;gap:10px}
.art-list-head{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:700;color:var(--g900)}
.art-list-head a{color:inherit;text-decoration:none}
.art-list-emoji{font-size:20px}
.al-search{margin:0 20px 14px}
.pi-sub{margin-top:12px}
.pi-gallery{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin-top:8px;padding-top:0;padding-bottom:2px;border-top:0}
.pi-gallery::-webkit-scrollbar{display:none}
.pi-gphoto{flex:0 0 auto;width:120px;height:120px;border-radius:12px;overflow:hidden;display:block;border:0;padding:0;background:none;cursor:pointer}
.pi-gphoto img{width:100%;height:100%;object-fit:cover;display:block}
.pi-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pi-cond{background:var(--card);border-radius:16px;padding:16px;display:flex;align-items:center;gap:14px;min-height:76px;min-width:0;cursor:pointer;border:0;text-align:left;font:inherit;color:inherit}
.pi-cond:active{opacity:.7}
.pi-detail-top{display:flex;flex-direction:column;align-items:center;gap:12px;margin:6px 0 18px}
.pi-detail-ic{width:44px;height:44px;display:flex;align-items:center;justify-content:center}
.pi-detail-ic svg{width:44px;height:44px}
.pi-detail-val{font-size:20px;font-weight:700;letter-spacing:0;color:#3FC08A;text-align:center}
.pi-cic{width:24px;height:24px;flex:0 0 auto;display:flex;align-items:center;justify-content:center}
.pi-cic svg{width:24px;height:24px;display:block}
.pi-cbody{min-width:0;flex:1}
.pi-cl{font-size:14px;font-weight:500;color:var(--g600);line-height:1.4;letter-spacing:.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pi-cv{font-size:16px;font-weight:600;color:var(--g900);line-height:1.35;letter-spacing:.2px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pi-map{background:transparent;padding:0;overflow:visible}
.wmap-svg{width:100%;height:auto;display:block}
.wmap-svg path{fill:#607D8A;stroke:var(--bg);stroke-width:.3;transition:fill .2s}
.wmap-svg path.is-cult{fill:#FF981F}
.wmap-svg path.is-exotic{fill:#9D28AC}
.wmap-svg path.is-invasive{fill:#F54336}
.wmap-svg path.is-potential{fill:#1A96F0}
.wmap-svg path.is-native{fill:#00A86B}
.pi-legend{display:flex;flex-wrap:wrap;gap:9px 18px;margin-top:14px;font-size:14px;font-weight:500;letter-spacing:.2px;color:var(--g700)}
.pi-legend .lg{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:6px;vertical-align:middle}
.pi-legend .lg-native{background:#00A86B}
.pi-legend .lg-cult{background:#FF981F}
.pi-legend .lg-exotic{background:#9D28AC}
.pi-legend .lg-invasive{background:#F54336}
.pi-legend .lg-potential{background:#1A96F0}
.pi-legend .lg-none{background:#607D8A}
.pi-expert{display:flex;gap:12px;align-items:center;background:var(--card);border-radius:8px;padding:12px;margin:0 0 24px}
.pi-expert-img{width:128px;height:auto;flex:0 0 auto;display:block;align-self:stretch;object-fit:contain}
.pi-expert-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.pi-expert-t{font-size:18px;font-weight:700;color:var(--g900)}
.pi-expert-s{font-size:12px;font-weight:400;color:var(--g600);line-height:1.5}
.pi-expert-btn{background:var(--green);color:#fff;font-weight:600;font-size:14px;letter-spacing:.2px;padding:7px 16px;border-radius:999px;display:inline-block}
.pi-expert-btn:hover{color:#fff}
.pi-helpful{display:flex;gap:16px}
.pi-hchip{width:100px;padding:8px 20px;border-radius:999px;border:1px solid var(--line);background:transparent;font:inherit;font-size:16px;font-weight:600;letter-spacing:.2px;color:var(--g900);cursor:pointer}
.pi-hchip.active{background:var(--green);border-color:var(--green);color:#fff}

/* =================== DARK MODE — Plantify dark paleta =================== */
[data-theme="dark"]{
  color-scheme:dark;
  --bg:#181A20; --bg2:#1E2025; --card:#1F222A; --line:#35383F;
  --text:#F5F5F5; --muted:#9AA0A8;
  /* obrnuta greyscale rampa: g900 = svetli tekst … g50 = tamna pozadina */
  --g900:#F5F5F5; --g800:#E0E0E0; --g700:#CBD0D6; --g600:#9AA0A8; --g500:#7C828B;
  --g400:#5A5F69; --g300:#3A3E47; --g200:#262A35; --g100:#1E2025; --g50:#181A20;
  --green-soft:#123528; --green-soft2:#164635; --green-d:#34D88F; --green-ink:#BDF0D6;
  --shadow:0 10px 28px rgba(0,0,0,.5); --shadow-sm:0 3px 12px rgba(0,0,0,.4);
}
[data-theme="dark"] body::before{display:none}
[data-theme="dark"] .menubar{background:var(--bg)}
[data-theme="dark"] .nav-badge{border-color:var(--bg)}
/* uzdignute (floating) površine — meni/modali/sheet svetliji od kartica */
[data-theme="dark"] .pd-menu-pop,[data-theme="dark"] .j-pop{background:#262A35}
[data-theme="dark"] .modal-sheet{background:#181A20}
/* površine koje su imale fiksno #fff */
[data-theme="dark"] .topbar,
[data-theme="dark"] .botnav,
[data-theme="dark"] .btn-ghost,
[data-theme="dark"] .btn-danger-ghost,
[data-theme="dark"] .cal-day,
[data-theme="dark"] .zone-add,
[data-theme="dark"] .chipf,
[data-theme="dark"] .r-emoji,
[data-theme="dark"] .pcard-badge,
[data-theme="dark"] .pd-menu-pop,
[data-theme="dark"] .aa-pick,
[data-theme="dark"] .j-pop,
[data-theme="dark"] .t-emoji,
[data-theme="dark"] .tl-dot{background:var(--card)}
[data-theme="dark"] .journal:before{background:var(--green)}
[data-theme="dark"] .tabs{background:#1F222A}
[data-theme="dark"] .prow{border-color:#26292F}
[data-theme="dark"] .btn,[data-theme="dark"] .tag{background:var(--bg2);color:var(--text)}
[data-theme="dark"] .btn-primary{background:var(--green);color:#fff}
[data-theme="dark"] .btn-danger{background:var(--error);color:#fff}
[data-theme="dark"] .tabs button{color:var(--g900)}
[data-theme="dark"] .pd-back,[data-theme="dark"] .pd-bic{color:var(--g900)}
[data-theme="dark"] .sheet-handle{background:var(--g300)}
[data-theme="dark"] .switch{background:#4A4E57}
[data-theme="dark"] .switch.on{background:var(--green)}
[data-theme="dark"] .topbar .link:hover{background:var(--bg2)}
[data-theme="dark"] .zone-row input,[data-theme="dark"] .zone-row select{background:var(--bg2);color:var(--text)}
[data-theme="dark"] .search input:focus,
[data-theme="dark"] .login-card input:focus,
[data-theme="dark"] .form-grid input:focus,
[data-theme="dark"] .form-grid select:focus,
[data-theme="dark"] .form-grid textarea:focus{background:var(--card)}
[data-theme="dark"] .flash-error{background:#3a1d1d;color:#ffb4b4}
[data-theme="dark"] .reminder.due-today{background:#33260f}
[data-theme="dark"] .tag-planned{background:#2c2342;color:#c9b6ff}

/* ===== Dijagnoza: skener overlay (preko huba) ===== */
.dg-scan-overlay{position:fixed}
body.dg-scanning{overflow:hidden}
.dg-scan-fill-anim{width:35%;animation:dgfill 1.5s ease-in-out infinite}
@keyframes dgfill{0%{margin-left:0;width:15%}50%{width:55%}100%{margin-left:85%;width:15%}}
.dg-scan-err{color:#ffd2d2;background:rgba(247,85,85,.22);border:1px solid rgba(247,85,85,.5);padding:8px 12px;border-radius:10px;font-size:14px;max-width:280px}

/* ===== Dijagnoza: rezultat ===== */
.dr-photo{display:block;width:100%;margin:4px 0 16px;border:0;padding:0;border-radius:16px;overflow:hidden;aspect-ratio:16/10;background:var(--bg2);cursor:zoom-in}
.dr-photo img{width:100%;height:100%;object-fit:cover;display:block}
/* Kiša badge — procena je uzela u obzir izloženost kiši */
.dr-rain-badge{display:flex;align-items:flex-start;gap:10px;background:rgba(45,130,210,.12);border:1px solid rgba(45,130,210,.32);border-radius:14px;padding:11px 14px;margin:4px 0 14px}
.dr-rain-ic{flex:0 0 auto;color:#3a9be8;margin-top:1px}
.dr-rain-ic svg{width:22px;height:22px;display:block}
.dr-rain-body{display:flex;flex-direction:column;gap:2px;font-size:13px;line-height:1.4}
.dr-rain-body b{font-size:14px}
.dr-rain-body span{color:var(--g600)}
/* Lightbox */
.dr-lightbox{position:fixed;inset:0;z-index:120;background:rgba(0,0,0,.88);display:flex;align-items:center;justify-content:center;padding:24px}
.dr-lightbox[hidden]{display:none}
.dr-lightbox img{max-width:100%;max-height:90vh;border-radius:10px;object-fit:contain}
.dr-lb-close{position:absolute;top:calc(env(safe-area-inset-top,0px) + 14px);right:16px;width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,255,255,.16);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}
.dr-lb-close svg{width:22px;height:22px}
body.lb-open{overflow:hidden}
.dr-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px 20px;text-align:center;margin-bottom:16px}
.dr-badge{width:62px;height:62px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 12px}
.dr-badge svg{width:30px;height:30px}
.dr-disease .dr-badge{background:rgba(247,85,85,.14);color:var(--error,#F75555)}
.dr-healthy .dr-badge{background:rgba(0,168,107,.14);color:var(--green)}
.dr-unknown .dr-badge{background:rgba(158,158,158,.16);color:var(--g500)}
.dr-headline{font-size:13px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;color:var(--g500)}
.dr-name{font-family:'Urbanist',sans-serif;font-size:24px;font-weight:700;color:var(--g900);margin-top:4px}
.dr-latin{font-size:14px;color:var(--g700);margin-top:2px}
.dr-conf{margin:16px 0 4px;text-align:left}
.dr-conf-top{display:flex;justify-content:space-between;font-size:14px;color:var(--g700);margin-bottom:6px}
.dr-conf-top strong{color:var(--g900)}
.dr-conf-bar{height:8px;border-radius:1000px;background:var(--bg2);overflow:hidden}
.dr-conf-bar span{display:block;height:100%;background:var(--green);border-radius:1000px}
.dr-disease .dr-conf-bar span{background:var(--error,#F75555)}
.dr-overview{font-size:15px;line-height:1.55;color:var(--g700);margin:14px 0 0;text-align:left}
.dr-cta{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:18px;background:var(--green);color:#fff;font-family:'Urbanist',sans-serif;font-size:16px;font-weight:700;padding:14px;border-radius:1000px;text-decoration:none}
.dr-cta svg{width:20px;height:20px}
.dr-plant{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px;margin-bottom:16px}
.dr-plant-head{font-size:14px;font-weight:600;color:var(--g700);display:block;margin-bottom:10px}
.dr-plant-row{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit}
.dr-plant-emoji{font-size:26px;flex:0 0 auto}
.dr-plant-name{flex:1 1 auto;font-family:'Urbanist',sans-serif;font-size:17px;font-weight:700;color:var(--g900)}
.dr-attach-row{display:flex;gap:10px}
.dr-select{flex:1 1 auto;background:var(--bg2);color:var(--g900);border:1px solid var(--line);border-radius:12px;padding:12px;font-size:15px}
.dr-attach-btn{flex:0 0 auto;background:var(--green);color:#fff;border:0;border-radius:12px;padding:0 18px;font-family:'Urbanist',sans-serif;font-weight:700;font-size:15px;cursor:pointer}
.dr-again{display:block;text-align:center;color:var(--green);font-family:'Urbanist',sans-serif;font-weight:700;font-size:16px;text-decoration:none;padding:8px}

/* ===== Istorija: dodaci ===== */
.dx-conf{font-size:13px;font-weight:700;color:var(--green);margin-left:4px}
.dx-rplant{display:flex;align-items:center;gap:4px;color:var(--g800);font-weight:600}
.dx-thumb-ok{display:flex;align-items:center;justify-content:center}

/* ===== Dijagnoza: izbor biljke na hubu ===== */
.dg-pick{margin:14px 0 4px}
.dg-pick-label{display:block;font-size:14px;font-weight:600;color:var(--g700);margin-bottom:8px}
.dg-pick-label span{font-weight:400;color:var(--g500)}
.dg-pick-sel{width:100%;background:var(--card);color:var(--g900);border:1px solid var(--line);border-radius:12px;padding:13px 14px;font-size:15px}

/* ===== Dijagnoza: više slika (skeniranje iz uglova) ===== */
.dg-shots{margin:14px 0 4px}
.dg-shots-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;margin-bottom:12px}
.dg-shot{position:relative;aspect-ratio:1/1;border-radius:12px;overflow:hidden;background:var(--bg2);border:1px solid var(--line)}
.dg-shot img{width:100%;height:100%;object-fit:cover;display:block}
.dg-shot-x{position:absolute;top:4px;right:4px;width:22px;height:22px;border:0;border-radius:50%;background:rgba(0,0,0,.6);color:#fff;font-size:15px;line-height:22px;text-align:center;cursor:pointer;padding:0}
.dg-shots-actions{display:flex;gap:8px;margin-bottom:12px}
.dg-shots-add{flex:1 1 0;display:flex;align-items:center;justify-content:center;gap:6px;background:var(--card);color:var(--g800);border:1px solid var(--line);border-radius:12px;padding:11px 8px;font-size:13px;font-weight:600;cursor:pointer}
.dg-shots-add svg{width:18px;height:18px}
.dg-shots-go{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--green);color:#fff;border:0;border-radius:1000px;padding:14px;font-family:'Urbanist',sans-serif;font-size:16px;font-weight:700;cursor:pointer}
.dg-shots-go svg{width:20px;height:20px}
/* popup: izbor uživo / galerija */
.dg-choose{position:fixed;inset:0;z-index:60;display:flex;align-items:flex-end;justify-content:center}
.dg-choose[hidden]{display:none}
.dg-choose-back{position:absolute;inset:0;background:rgba(0,0,0,.5)}
.dg-choose-card{position:relative;width:100%;max-width:430px;background:var(--sheet,var(--card));border-top-left-radius:24px;border-top-right-radius:24px;padding:20px 20px calc(20px + env(safe-area-inset-bottom));box-shadow:0 -8px 30px rgba(0,0,0,.3);animation:dgChooseUp .2s ease}
@keyframes dgChooseUp{from{transform:translateY(100%)}to{transform:translateY(0)}}
.dg-choose-h{font-family:'Urbanist',sans-serif;font-size:18px;font-weight:700;color:var(--g900);text-align:center;margin-bottom:16px}
.dg-choose-opt{width:100%;display:flex;align-items:center;gap:14px;text-align:left;background:var(--bg2);border:1px solid var(--line);border-radius:16px;padding:14px;margin-bottom:10px;cursor:pointer}
.dg-choose-ic{flex:0 0 auto;width:44px;height:44px;border-radius:12px;background:rgba(0,168,107,.14);color:var(--green);display:flex;align-items:center;justify-content:center}
.dg-choose-ic svg{width:24px;height:24px}
.dg-choose-txt{display:flex;flex-direction:column}
.dg-choose-txt b{font-size:16px;font-weight:700;color:var(--g900)}
.dg-choose-txt small{font-size:13px;color:var(--g500);margin-top:2px}
.dg-choose-cancel{width:100%;margin-top:6px;background:transparent;color:var(--g700);border:0;padding:12px;font-size:15px;font-weight:600;cursor:pointer}
body.dg-choose-open{overflow:hidden}

/* ===== In-app kamera (live skener) ===== */
body.cam-open{overflow:hidden}
.cam{position:fixed;inset:0;z-index:80;background:#000;display:flex;flex-direction:column}
.cam[hidden]{display:none}
.cam-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cam-grad{position:absolute;left:0;right:0;height:160px;pointer-events:none;z-index:2}
.cam-grad-top{top:0;background:linear-gradient(to bottom,rgba(0,0,0,.6),transparent)}
.cam-top{position:relative;z-index:3;display:flex;align-items:center;gap:14px;padding:calc(12px + env(safe-area-inset-top)) 16px 0}
.cam-top-sp{flex:1 1 auto}
.cam-icon{width:42px;height:42px;border-radius:50%;border:0;background:rgba(0,0,0,.4);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}
.cam-icon svg{width:22px;height:22px}
.cam-icon.cam-on{background:var(--green);color:#fff}
.cam-frame{position:absolute;z-index:3;left:8%;right:8%;top:50%;transform:translateY(-54%);aspect-ratio:1/1;pointer-events:none}
.cam-frame .cc{position:absolute;width:34px;height:34px;border:3px solid rgba(255,255,255,.92);border-radius:6px}
.cam-frame .cc1{top:0;left:0;border-right:0;border-bottom:0}
.cam-frame .cc2{top:0;right:0;border-left:0;border-bottom:0}
.cam-frame .cc3{bottom:0;left:0;border-right:0;border-top:0}
.cam-frame .cc4{bottom:0;right:0;border-left:0;border-top:0}
.cam-mid{position:absolute;z-index:3;left:0;right:0;bottom:128px;display:flex;flex-direction:column;align-items:center;gap:12px;padding:0 20px;pointer-events:none}
.cam-hint{color:#fff;font-size:17px;font-weight:700;text-align:center;text-shadow:0 1px 6px rgba(0,0,0,.6)}
.cam-thumbs{display:flex;gap:8px}
.cam-thumb{width:52px;height:52px;border-radius:10px;object-fit:cover;border:2px solid rgba(255,255,255,.9)}
.cam-bar{position:absolute;z-index:3;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:space-between;padding:0 36px calc(26px + env(safe-area-inset-bottom));background:linear-gradient(to top,rgba(0,0,0,.55),transparent);padding-top:24px}
.cam-side{width:60px;display:flex;flex-direction:column;align-items:center;gap:5px;background:none;border:0;color:#fff;cursor:pointer}
.cam-side-ic{width:48px;height:48px;border-radius:50%;background:rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center}
.cam-side-ic svg{width:24px;height:24px}
.cam-side small{font-size:12px;color:rgba(255,255,255,.85)}
.cam-done{opacity:.5;pointer-events:none}
.cam-done.cam-has{opacity:1;pointer-events:auto}
.cam-done-ic{background:var(--green)}
.cam-shutter{width:74px;height:74px;border-radius:50%;border:5px solid rgba(255,255,255,.55);background:transparent;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}
.cam-shutter span{display:block;width:58px;height:58px;border-radius:50%;background:#fff;transition:transform .1s}
.cam-shutter:active span{transform:scale(.88)}
.cam-flash-anim::after{content:'';position:absolute;inset:0;background:#fff;opacity:.7;z-index:5;animation:camFlash .18s ease}
@keyframes camFlash{from{opacity:.7}to{opacity:0}}
.cam-err{position:absolute;z-index:6;left:20px;right:20px;bottom:150px;background:rgba(0,0,0,.78);color:#fff;font-size:14px;text-align:center;padding:10px 14px;border-radius:12px}

/* ===== Potvrda biljke (flow A) ===== */
body.dg-confirm-open{overflow:hidden}
.dg-confirm{position:fixed;inset:0;z-index:78;background:var(--bg,#181A20);display:flex;flex-direction:column;align-items:center;padding:calc(16px + env(safe-area-inset-top)) 22px calc(22px + env(safe-area-inset-bottom));overflow-y:auto}
.dg-confirm[hidden]{display:none}
.dg-confirm-x{align-self:flex-start;width:42px;height:42px;border:0;background:none;color:var(--green);display:flex;align-items:center;justify-content:center;cursor:pointer;margin-bottom:4px}
.dg-confirm-x svg{width:24px;height:24px}
.dg-confirm-h{font-family:'Urbanist',sans-serif;font-size:20px;font-weight:700;color:var(--g900);margin-bottom:18px}
.dg-confirm-card{width:100%;max-width:320px}
.dg-confirm-photo{position:relative;width:100%;aspect-ratio:1/1;border-radius:22px;overflow:hidden;border:2px solid var(--green);background:var(--bg2)}
.dg-confirm-photo>img{width:100%;height:100%;object-fit:cover;display:block}
.dg-confirm-badge{position:absolute;top:14px;left:14px;display:inline-flex;align-items:center;gap:6px;background:rgba(0,0,0,.6);color:#fff;font-size:13px;font-weight:600;padding:6px 12px;border-radius:1000px}
.dg-confirm-badge svg{width:16px;height:16px}
.dg-confirm-cap{position:absolute;left:16px;bottom:14px;right:16px;display:flex;flex-direction:column;text-shadow:0 1px 6px rgba(0,0,0,.7)}
.dg-confirm-cap b{color:#fff;font-family:'Urbanist',sans-serif;font-size:22px;font-weight:700;line-height:1.2}
.dg-confirm-cap small{color:rgba(255,255,255,.9);font-size:14px;margin-top:2px}
.dg-confirm-q{font-family:'Urbanist',sans-serif;font-size:22px;font-weight:700;color:var(--g900);text-align:center;margin:26px 0 22px}
.dg-confirm-yes{width:100%;max-width:380px;background:var(--green);color:#fff;border:0;border-radius:1000px;padding:16px;font-family:'Urbanist',sans-serif;font-size:17px;font-weight:700;cursor:pointer;margin-bottom:12px}
.dg-confirm-again{width:100%;max-width:380px;display:flex;align-items:center;justify-content:center;gap:8px;background:rgba(0,168,107,.12);color:var(--green);border:0;border-radius:1000px;padding:16px;font-family:'Urbanist',sans-serif;font-size:17px;font-weight:700;cursor:pointer}
.dg-confirm-again svg{width:20px;height:20px}

/* ===== Dijagnoza: galerija slika + pregled po delovima ===== */
.dr-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin:4px 0 18px}
.dr-gimg{aspect-ratio:1/1;border:0;padding:0;border-radius:12px;overflow:hidden;background:var(--bg2);cursor:zoom-in}
.dr-gimg img{width:100%;height:100%;object-fit:cover;display:block}
.dr-parts{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px;margin-bottom:16px}
.dr-part{display:flex;gap:12px;padding:10px 0;border-top:1px solid var(--line)}
.dr-part:first-of-type{padding-top:12px}
.dr-part-ic{flex:0 0 auto;width:34px;height:34px;border-radius:10px;background:var(--bg2);color:var(--green);display:flex;align-items:center;justify-content:center}
.dr-part-ic svg{width:20px;height:20px}
.dr-part-h{font-size:14px;font-weight:700;color:var(--g900);margin-bottom:2px}
.dr-part-note{font-size:14px;line-height:1.5;color:var(--g700)}
.dr-treat .dr-block-h{display:flex;align-items:center;gap:8px;color:var(--error,#F75555)}
.dr-treat .dr-block-h svg{width:18px;height:18px}
.dr-steps{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px}
.dr-steps li{font-size:14px;line-height:1.5;color:var(--g800)}

/* ===== Dijagnoza: holistički rezultat ===== */
.dr-center{text-align:center}
.dr-id{display:flex;align-items:center;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:14px 16px;margin-bottom:14px}
.dr-id-emoji{font-size:28px;flex:0 0 auto}
.dr-id-name{font-family:'Urbanist',sans-serif;font-size:19px;font-weight:700;color:var(--g900)}
.dr-id-sub{font-size:13px;color:var(--g700);margin-top:1px}
.dr-id-warn{font-size:13px;color:var(--error,#F75555);margin-top:1px}
.dr-checks{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}
.dr-check{display:flex;gap:12px;align-items:flex-start;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:13px 14px}
.dr-check-ic{flex:0 0 auto;width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:var(--bg2);color:var(--g700)}
.dr-check-ic svg{width:19px;height:19px}
.dr-check-body{flex:1 1 auto;min-width:0}
.dr-check-top{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:15px;color:var(--g900)}
.dr-check-top b{font-size:14px;font-weight:700;padding:2px 9px;border-radius:1000px}
.dr-check-note{font-size:13px;line-height:1.45;color:var(--g700);margin-top:4px}
.dr-ok .dr-check-ic{background:rgba(0,168,107,.14);color:var(--green)}
.dr-ok .dr-check-top b{background:rgba(0,168,107,.14);color:var(--green)}
.dr-warn .dr-check-ic{background:rgba(247,176,85,.16);color:#e08a00}
.dr-warn .dr-check-top b{background:rgba(247,176,85,.18);color:#e08a00}
.dr-na .dr-check-top b{background:var(--bg2);color:var(--g600,#757575)}
.dr-block{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:14px 16px;margin-bottom:16px}
.dr-block-h{font-family:'Urbanist',sans-serif;font-size:16px;font-weight:700;color:var(--g900);margin-bottom:8px}
.dr-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px}
.dr-list li{font-size:14px;line-height:1.5;color:var(--g700)}
.dr-list-tips li{color:var(--g800)}
.dr-diseasecard{display:flex;gap:14px;align-items:stretch;background:var(--card);border:1px solid rgba(247,85,85,.4);border-radius:16px;padding:12px;margin-bottom:16px;text-decoration:none;color:inherit}
.dr-dc-img{flex:0 0 auto;width:84px;border-radius:12px;overflow:hidden;background:var(--bg2)}
.dr-dc-img img{width:100%;height:100%;object-fit:cover;display:block}
.dr-dc-body{display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:0}
.dr-dc-k{font-size:12px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;color:var(--error,#F75555)}
.dr-dc-name{font-family:'Urbanist',sans-serif;font-size:18px;font-weight:700;color:var(--g900)}
.dr-dc-note{font-size:13px;line-height:1.4;color:var(--g700)}
.dr-dc-cta{font-size:14px;font-weight:700;color:var(--green);margin-top:4px}
.dr-demo-note{font-size:12px;line-height:1.5;color:var(--g500);text-align:center;margin:0 0 12px}

/* ---- Aktivni problemi (otvorene dijagnoze) ---- */
.hm-probs{display:flex;flex-direction:column;gap:10px;margin:0 0 6px}
.hprob{display:flex;align-items:center;gap:12px;padding:12px;background:var(--card);border:1px solid var(--line);border-left:4px solid var(--warning);border-radius:var(--radius-sm);text-decoration:none;color:inherit}
.hprob-water{border-left-color:#1A96F0}.hprob-light{border-left-color:#FF981F}.hprob-disease{border-left-color:var(--error)}
.hprob-thumb{position:relative;flex:0 0 auto;width:48px;height:48px;border-radius:12px;overflow:hidden;background:var(--bg2);display:flex;align-items:center;justify-content:center}
.hprob-thumb img{width:100%;height:100%;object-fit:cover}
.hprob-emoji{font-size:24px}
.hprob-tag{position:absolute;right:-3px;bottom:-3px;width:20px;height:20px;border-radius:50%;background:var(--card);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:11px}
.hprob-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.hprob-k{font-size:12px;color:var(--g500);font-weight:600}
.hprob-title{font-size:15px;font-weight:700}
.hprob-note{font-size:12.5px;color:var(--g500);line-height:1.35;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.hprob-go{flex:0 0 auto;width:20px;height:20px;color:var(--g500)}

.dg-probs{display:flex;flex-direction:column;gap:10px;margin:0 0 18px}
.dgprob{display:flex;align-items:stretch;gap:0;background:var(--card);border:1px solid var(--line);border-left:4px solid var(--warning);border-radius:var(--radius-sm);overflow:hidden}
.dgprob-water{border-left-color:#1A96F0}.dgprob-light{border-left-color:#FF981F}.dgprob-disease{border-left-color:var(--error)}
.dgprob-main{flex:1;min-width:0;display:flex;align-items:center;gap:12px;padding:12px;text-decoration:none;color:inherit}
.dgprob-thumb{position:relative;flex:0 0 auto;width:48px;height:48px;border-radius:12px;overflow:hidden;background:var(--bg2);display:flex;align-items:center;justify-content:center}
.dgprob-thumb img{width:100%;height:100%;object-fit:cover}
.dgprob-emoji{font-size:24px}
.dgprob-tag{position:absolute;right:-3px;bottom:-3px;width:20px;height:20px;border-radius:50%;background:var(--card);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:11px}
.dgprob-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.dgprob-top{display:flex;flex-direction:column;gap:1px}
.dgprob-name{font-size:12px;color:var(--g500);font-weight:600}
.dgprob-title{font-size:15px;font-weight:700}
.dgprob-note{font-size:12.5px;color:var(--g500);line-height:1.35;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.dgprob-go{flex:0 0 auto;width:20px;height:20px;color:var(--g500)}
.dgprob-resolve{display:flex;border-left:1px solid var(--line)}
.dgprob-btn{display:flex;align-items:center;gap:5px;padding:0 14px;background:none;border:none;color:var(--green);font-family:'Urbanist',sans-serif;font-weight:700;font-size:13px;cursor:pointer}
.dgprob-btn svg{width:16px;height:16px}

.dr-resolveform{margin:0 0 10px}
.dr-resolvebtn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:13px;background:var(--green);color:#fff;border:none;border-radius:var(--radius-sm);font-family:'Urbanist',sans-serif;font-weight:700;font-size:15px;cursor:pointer}
.dr-resolvebtn svg{width:18px;height:18px}
.dr-resolved{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;margin:0 0 10px;color:var(--green);font-weight:700;font-size:14px;background:rgba(0,168,107,.1);border-radius:var(--radius-sm)}
.dr-resolved svg{width:18px;height:18px}

/* ====================== AUTH / ONBOARDING (Figma login flow) ====================== */
body:has(.auth-screen) .footer{display:none}
.auth-screen{min-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom));display:flex;flex-direction:column;color:var(--text);font-family:'Urbanist',sans-serif;padding-bottom:20px}
.auth-title{font-size:30px;font-weight:800;line-height:1.15;margin:0 0 8px;letter-spacing:-.5px}
.auth-sub{font-size:15px;color:var(--muted);line-height:1.5;margin:0 0 22px}
.auth-bar{margin:-4px 0 14px}
.auth-body{display:flex;flex-direction:column;flex:1}

/* splash */
.splash-screen{align-items:center;justify-content:center;gap:60px;background:var(--green)}
.splash-logo{display:flex;flex-direction:column;align-items:center;gap:16px}
.splash-logo svg{width:78px;height:78px}
.splash-name{font-size:34px;font-weight:800;color:#fff;letter-spacing:.5px}
.splash-spin{width:34px;height:34px;border:3px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* onboarding carousel */
.ob-screen{padding:0}
.ob-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.ob-track::-webkit-scrollbar{display:none}
.ob-slide{flex:0 0 100%;scroll-snap-align:start;display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 6px}
.ob-img{width:100%;aspect-ratio:1/1;max-width:330px;border-radius:24px;overflow:hidden;margin:8px auto 24px;background:var(--card)}
.ob-img img{width:100%;height:100%;object-fit:cover}
.ob-kicker{color:var(--green);font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:1px;margin:0 0 8px}
.ob-title{font-size:26px;font-weight:800;line-height:1.2;margin:0 0 10px}
.ob-text{font-size:15px;color:var(--muted);line-height:1.55;margin:0;max-width:330px}
.ob-dots{display:flex;justify-content:center;gap:8px;margin:22px 0}
.ob-dot{width:8px;height:8px;border-radius:50%;background:var(--line);transition:.25s}
.ob-dot.active{width:26px;border-radius:5px;background:var(--green)}
.ob-actions{display:flex;align-items:center;gap:12px;padding:0 2px}
.ob-actions .btn-auth{flex:1;margin:0}

/* buttons */
.btn-auth{display:flex;align-items:center;justify-content:center;width:100%;padding:16px;background:var(--green);color:#fff;border:none;border-radius:var(--pill);font-family:'Urbanist',sans-serif;font-weight:700;font-size:16px;cursor:pointer;margin:6px 0;text-decoration:none;box-shadow:0 8px 18px rgba(0,168,107,.28)}
.btn-auth:active{transform:translateY(1px)}
.btn-auth-soft{display:flex;align-items:center;justify-content:center;width:100%;padding:16px;background:var(--green-soft);color:var(--green);border:none;border-radius:var(--pill);font-weight:700;font-size:16px;cursor:pointer;margin:6px 0;text-decoration:none}
.btn-auth-ghost{display:flex;align-items:center;justify-content:center;padding:14px 18px;color:var(--muted);font-weight:700;font-size:16px;text-decoration:none;border-radius:var(--pill)}

/* welcome */
.welcome-screen{text-align:center;padding-top:24px}
.welcome-top{display:flex;flex-direction:column;align-items:center;padding:18px 0 8px}
.welcome-logo{display:flex;justify-content:center;margin:6px 0 22px}
.welcome-logo svg{width:62px;height:62px}
.welcome-screen .auth-sub{margin-bottom:28px}
.welcome-cta{display:flex;flex-direction:column;gap:14px;margin-top:24px}
.btn-auth-dark{display:flex;align-items:center;justify-content:center;width:100%;padding:16px;background:var(--line);color:var(--text);border:none;border-radius:var(--pill);font-family:'Urbanist',sans-serif;font-weight:700;font-size:16px;cursor:pointer;margin:0;text-decoration:none}
.btn-auth-dark:active{transform:translateY(1px)}

/* forms */
.auth-form{display:flex;flex-direction:column;gap:16px;margin-bottom:6px}
.auth-field{display:flex;flex-direction:column;gap:8px}
.auth-lbl{font-size:14px;font-weight:600;color:var(--text)}
.auth-in{width:100%;padding:15px 16px;background:var(--card);border:1px solid var(--line);border-radius:14px;color:var(--text);font-family:'Urbanist',sans-serif;font-size:16px;outline:none}
.auth-in:focus{border-color:var(--green)}
.auth-in::placeholder{color:var(--muted)}
.auth-inwrap{position:relative;display:flex;align-items:center}
.auth-inwrap .auth-in{padding-right:48px}
.auth-eye{position:absolute;right:8px;width:38px;height:38px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--muted);cursor:pointer}
.auth-eye.is-on{color:var(--green)}
.auth-row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.auth-check{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--muted);cursor:pointer}
.auth-check input{width:18px;height:18px;accent-color:var(--green)}
.auth-link{color:var(--green);font-weight:700;font-size:14px;text-decoration:none}
.auth-foot{text-align:center;color:var(--muted);font-size:14px;margin:18px 0 4px}
.auth-foot a{color:var(--green);font-weight:700;text-decoration:none}
.auth-legal{text-align:center;color:var(--muted);font-size:12.5px;line-height:1.5;margin:14px 4px 0}
.auth-legal a{color:var(--green);text-decoration:none}

/* divider */
.auth-or{display:flex;align-items:center;gap:12px;margin:18px 0;color:var(--muted);font-size:13px}
.auth-or::before,.auth-or::after{content:"";flex:1;height:1px;background:var(--line)}

/* social */
.auth-social{display:flex;flex-direction:column;gap:12px}
.soc-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:14px;background:var(--card);border:1px solid var(--line);border-radius:14px;color:var(--text);font-family:'Urbanist',sans-serif;font-weight:700;font-size:15px;cursor:pointer}
.soc-btn:active{transform:translateY(1px)}
.soc-ic{display:flex;align-items:center;justify-content:center}
.soc-lbl{line-height:1}

/* forgot illustration */
.auth-illu{width:84px;height:84px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--green-soft);color:var(--green);margin:6px 0 18px}

/* OTP */
.otp-row{display:flex;gap:14px;justify-content:center;margin:8px 0 4px}
.otp-box{width:62px;height:66px;text-align:center;font-size:26px;font-weight:800;background:var(--card);border:1px solid var(--line);border-radius:16px;color:var(--text);outline:none}
.otp-box:focus{border-color:var(--green)}
.otp-resend{text-align:center;color:var(--muted);font-size:14px;margin:18px 0 8px}
.otp-resend a{color:var(--green);font-weight:700;text-decoration:none}
.auth-linkbtn{background:none;border:0;padding:0;color:var(--green);font-weight:700;font-size:14px;cursor:pointer;font-family:inherit}
.otp-timer{color:var(--green)}

/* reset done */
.done-screen{justify-content:space-between;text-align:center}
.done-body{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}
.done-check{width:104px;height:104px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--green);box-shadow:0 12px 30px rgba(0,168,107,.4)}
.done-actions{display:flex;flex-direction:column}

/* "Uskoro" toast */
.soon-toast{position:fixed;left:50%;bottom:34px;transform:translateX(-50%) translateY(20px);background:#1f222a;color:#fff;padding:11px 20px;border-radius:var(--pill);font-family:'Urbanist',sans-serif;font-weight:600;font-size:14px;opacity:0;pointer-events:none;transition:.25s;z-index:9999;box-shadow:0 8px 24px rgba(0,0,0,.4)}
.soon-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* greška/upozorenje = isti overlay kao uspeh, crveni krug sa uzvičnikom */
.ok-check.ok-x{background:var(--error);box-shadow:0 8px 22px rgba(247,85,85,.36)}
