:root{
  --saiban-green:#2D6A4F;--saiban-green-light:#52B788;--saiban-green-pale:#D8F3DC;
  --saiban-cream:#F8F5F0;--saiban-gold:#C9A84C;--saiban-text:#1B2C24;
  --saiban-text-muted:#6B7B73;--saiban-border:#D4E6DC;--saiban-danger:#E05C5C;
  --saiban-radius:12px;--saiban-shadow:0 2px 16px rgba(45,106,79,.10);
}
*{box-sizing:border-box;}
/* Fix mobile overflow */
html,body{overflow-x:hidden;}
.saiban-dashboard-layout,
.saiban-first-login-wrap,
.saiban-card,
.saiban-modal-box{max-width:100%;overflow-x:hidden;}

.saiban-dashboard-layout{
  display:grid;grid-template-columns:1fr 300px;gap:10px;
  direction:rtl;font-family:Tahoma,'Vazirmatn',sans-serif;
  max-width:1100px;margin:0 auto;padding:12px;
}
@media(max-width:860px){.saiban-dashboard-layout{grid-template-columns:1fr;padding:8px;}}
.saiban-col-main,.saiban-col-side{display:flex;flex-direction:column;min-width:0;}

/* First Login */
.saiban-first-login-wrap{direction:rtl;font-family:Tahoma,sans-serif;max-width:560px;margin:30px auto;padding:12px;}
.saiban-first-login-card{text-align:center;}

/* Cards */
.saiban-card{background:#fff;border-radius:var(--saiban-radius);box-shadow:var(--saiban-shadow);padding:12px;border:1px solid var(--saiban-border);margin-bottom:10px;min-width:0;}
.saiban-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;}
.saiban-card-title{font-size:14px;font-weight:bold;color:var(--saiban-green);margin:0 0 10px;}

/* Profile Header */
.saiban-profile-header{background:linear-gradient(135deg,var(--saiban-green),#1B4332);color:#fff;border:none;display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;}
.saiban-header-actions{display:flex;align-items:center;gap:6px;flex-shrink:0;flex-wrap:wrap;}
.saiban-overdue-alert{display:flex;align-items:center;gap:4px;background:rgba(220,53,69,.9);color:#fff;border-radius:20px;padding:4px 10px;font-size:12px;font-weight:bold;cursor:pointer;white-space:nowrap;}
#overdue-count-badge{min-width:16px;height:16px;background:#fff;color:#dc3545;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:900;}
.saiban-profile-form-btn{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border-radius:20px;border:2px solid rgba(255,255,255,.6);background:rgba(255,255,255,.15);color:#fff;font-size:12px;cursor:pointer;font-family:inherit;white-space:nowrap;}
.saiban-profile-form-btn strong{font-weight:800;}

/* Buttons */
.saiban-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:9px 14px;border-radius:8px;border:none;cursor:pointer;font-size:13px;font-family:inherit;transition:opacity .2s;}
.saiban-btn:hover{opacity:.88;}
.saiban-btn-primary{background:var(--saiban-green);color:#fff;}
.saiban-btn-secondary{background:var(--saiban-green-pale);color:var(--saiban-green);}
.saiban-btn-full{width:100%;}
.saiban-btn-sm{padding:5px 10px;font-size:12px;}

/* Quick Actions */
.saiban-actions-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;}
@media(max-width:600px){.saiban-actions-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:360px){.saiban-actions-grid{grid-template-columns:repeat(2,1fr);}}
.saiban-action-btn{display:flex;flex-direction:column;align-items:center;gap:5px;background:var(--saiban-cream);border:1.5px solid var(--saiban-border);border-radius:10px;padding:10px 4px;cursor:pointer;font-family:inherit;font-size:11px;color:var(--saiban-text);transition:all .2s;min-width:0;word-break:keep-all;}
.saiban-action-btn:hover{background:var(--saiban-green-pale);border-color:var(--saiban-green-light);color:var(--saiban-green);}
.saiban-action-primary{background:var(--saiban-green)!important;color:#fff!important;border-color:var(--saiban-green)!important;}
.saiban-action-icon{font-size:20px;}

/* Plants Grid */
.saiban-plants-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;}
@media(max-width:600px){.saiban-plants-grid{grid-template-columns:repeat(2,1fr);}}
.saiban-plant-card{background:var(--saiban-cream);border-radius:10px;border:1px solid var(--saiban-border);padding:8px;text-align:center;cursor:pointer;transition:transform .2s,box-shadow .2s;min-width:0;}
.saiban-plant-card:hover{transform:scale(1.04);box-shadow:0 6px 20px rgba(45,106,79,.18);}
.plant-card-img{width:56px;height:56px;max-width:56px;max-height:56px;object-fit:cover;border-radius:50%;margin:0 auto 5px;display:block;border:2px solid var(--saiban-green-pale);}
.plant-card-img-placeholder{width:56px;height:56px;background:var(--saiban-green-pale);border-radius:50%;margin:0 auto 5px;display:flex;align-items:center;justify-content:center;font-size:22px;}
.saiban-plant-info-hero{max-width:300px;max-height:300px;width:100%;height:auto;object-fit:cover;border-radius:10px;margin:0 auto 10px;display:block;}
.plant-name{font-size:11px;font-weight:bold;color:var(--saiban-text);margin-bottom:2px;word-break:break-word;}
.plant-meta{font-size:10px;color:var(--saiban-text-muted);}

/* Plant Info Footer */
.saiban-plant-action-footer{padding:8px 12px;border-top:1px solid var(--saiban-border);display:flex;gap:5px;flex-wrap:wrap;}
.saiban-act-btn{padding:6px 10px;border:none;border-radius:8px;cursor:pointer;font-size:11px;font-family:inherit;font-weight:bold;}
.saiban-act-water{background:#EBF5FB;color:#2980B9;}
.saiban-act-fert{background:#FEF9E7;color:#7D6608;}
.saiban-act-spray{background:#EBF5FF;color:#0099CC;}
.saiban-act-repot{background:#EAFAF1;color:#1E8449;}
.saiban-act-del{background:#FDEDEC;color:#C0392B;}

/* Modal */
.saiban-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.52);z-index:99999;align-items:flex-start;justify-content:center;padding:12px;overflow-y:auto;}
.saiban-modal.open{display:flex;}
.saiban-modal-box{background:#fff;border-radius:16px;width:100%;max-width:480px;direction:rtl;box-shadow:0 10px 40px rgba(0,0,0,.22);margin:auto;}
.saiban-modal-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--saiban-border);position:sticky;top:0;background:#fff;z-index:1;border-radius:16px 16px 0 0;}
.saiban-modal-header h3{margin:0;color:var(--saiban-green);font-size:15px;}
.saiban-modal-close{background:none;border:none;font-size:22px;cursor:pointer;color:var(--saiban-text-muted);line-height:1;padding:0;flex-shrink:0;}
.saiban-modal-body{padding:14px;max-height:70vh;overflow-y:auto;}
.saiban-modal-plant-info{max-width:560px;}

/* Shop Modal */
.saiban-shop-box{max-width:580px;}
.saiban-shop-tabs{display:flex;gap:5px;margin-bottom:12px;flex-wrap:wrap;}
.saiban-shop-tab{background:none;border:1.5px solid var(--saiban-border);border-radius:8px;padding:6px 12px;cursor:pointer;font-size:12px;font-family:inherit;color:var(--saiban-text-muted);white-space:nowrap;}
.saiban-shop-tab.active{background:var(--saiban-green);color:#fff;border-color:var(--saiban-green);}

/* Plant Info */
.saiban-plant-info-hero{max-width:300px;max-height:300px;width:100%;height:auto;object-fit:cover;border-radius:10px;margin:0 auto 10px;display:block;}
.saiban-plant-info-hero-placeholder{width:100%;height:80px;background:var(--saiban-green-pale);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:40px;margin-bottom:10px;}
.saiban-plant-info-section{margin-bottom:12px;}
.saiban-plant-info-section h4{font-size:12px;color:var(--saiban-green);font-weight:bold;border-bottom:1px solid var(--saiban-border);padding-bottom:4px;margin:0 0 7px;}
.saiban-plant-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px;}
.saiban-plant-info-row{display:flex;flex-direction:column;gap:2px;background:var(--saiban-cream);border-radius:7px;padding:5px 7px;min-width:0;}
.saiban-plant-info-row.full-width{grid-column:1/-1;}
.info-label{font-size:10px;color:var(--saiban-text-muted);}
.info-value{font-size:11px;color:var(--saiban-text);font-weight:bold;word-break:break-word;}
.saiban-fert-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:3px;}
.saiban-fert-tag{display:inline-flex;align-items:center;background:var(--saiban-green-pale);color:var(--saiban-green);border-radius:20px;padding:2px 8px;font-size:10px;}

/* Form */
.saiban-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px;}
@media(max-width:480px){.saiban-form-grid{grid-template-columns:1fr;}}
.saiban-field{display:flex;flex-direction:column;gap:4px;min-width:0;}
.saiban-field-full{grid-column:1/-1;}
.saiban-field label{font-size:12px;font-weight:bold;color:var(--saiban-text);}
.saiban-field input,.saiban-field select,.saiban-field textarea{padding:8px 10px;border:1.5px solid var(--saiban-border);border-radius:8px;font-size:13px;font-family:inherit;direction:rtl;width:100%;min-width:0;}
.saiban-field input:focus,.saiban-field select:focus{outline:none;border-color:var(--saiban-green-light);}
.saiban-message{padding:8px 10px;border-radius:8px;font-size:12px;margin-bottom:8px;display:none;}
.saiban-message.success{background:var(--saiban-green-pale);color:var(--saiban-green);display:block;}
.saiban-message.error{background:#FEE2E2;color:#B91C1C;display:block;}
.saiban-notice{padding:10px;background:var(--saiban-cream);border-radius:8px;text-align:center;color:var(--saiban-text-muted);font-size:12px;}

/* Stats */
.saiban-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;}
@media(max-width:400px){.saiban-stats-grid{grid-template-columns:repeat(2,1fr);}}
.saiban-stat-item{background:var(--saiban-cream);border-radius:8px;padding:8px;text-align:center;}
.saiban-stat-item .stat-icon{font-size:18px;margin-bottom:3px;}
.saiban-stat-item .stat-num{font-size:16px;font-weight:bold;color:var(--saiban-green);}
.saiban-stat-item .stat-lbl{font-size:10px;color:var(--saiban-text-muted);margin-top:2px;}

/* Recent Events */
.saiban-hscroll{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch;}
.saiban-hscroll-item{flex:0 0 auto;width:100px;background:var(--saiban-cream);border-radius:8px;padding:7px;font-size:10px;text-align:center;border:1px solid var(--saiban-border);}
.saiban-hscroll-item .ev-plant{font-weight:bold;color:var(--saiban-text);font-size:10px;}
.saiban-hscroll-item .ev-type{color:var(--saiban-text-muted);font-size:9px;}
.saiban-hscroll-item .saiban-event-date{font-size:9px;color:var(--saiban-text-muted);margin-top:2px;}
.saiban-hscroll-item .saiban-event-icon{font-size:18px;}

/* Wallet */
.saiban-wallet-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;}
.saiban-wallet-label{font-size:11px;color:var(--saiban-text-muted);}
.saiban-wallet-balance{font-size:22px;font-weight:bold;color:var(--saiban-green);}
.saiban-wallet-icon{font-size:28px;}
.saiban-packages-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:10px;}
@media(max-width:400px){.saiban-packages-grid{grid-template-columns:1fr;}}
.saiban-package-card{border:2px solid var(--saiban-border);border-radius:10px;padding:10px;text-align:center;background:#fff;min-width:0;}
.saiban-package-card .pkg-name{font-weight:bold;font-size:12px;margin-bottom:3px;}
.saiban-package-card .pkg-pts{font-size:18px;color:var(--saiban-green);font-weight:bold;margin:3px 0;}
.saiban-package-card .pkg-price{font-size:11px;color:var(--saiban-text-muted);}
.saiban-hscroll-vertical{overflow-y:auto;max-height:180px;}
.saiban-tx-row{display:flex;justify-content:space-between;align-items:center;padding:6px 2px;border-bottom:1px solid var(--saiban-border);font-size:11px;min-width:0;}
.saiban-tx-row:last-child{border-bottom:none;}
.tx-row-main{flex:1;min-width:0;}
.tx-row-desc{color:var(--saiban-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.tx-row-date{font-size:9px;color:var(--saiban-text-muted);}
.saiban-tx-plus{color:var(--saiban-green);font-weight:bold;flex-shrink:0;}
.saiban-tx-minus{color:var(--saiban-danger);font-weight:bold;flex-shrink:0;}

/* Reminders */
.saiban-reminder-item{display:flex;align-items:flex-start;gap:7px;padding:7px 9px;background:var(--saiban-cream);border-radius:8px;margin-bottom:5px;border-right:3px solid var(--saiban-green-light);}
.saiban-reminder-overdue{background:#FFF5F5;border-right-color:var(--saiban-danger);}
.reminder-icon{font-size:14px;flex-shrink:0;margin-top:1px;}
.reminder-body{flex:1;font-size:11px;min-width:0;}
.reminder-msg{color:var(--saiban-text);line-height:1.5;word-break:break-word;}
.reminder-msg strong{color:var(--saiban-green);}
.saiban-reminder-overdue .reminder-msg,.saiban-reminder-overdue .reminder-msg strong{color:#B91C1C;}
.reminder-sub{font-size:10px;color:var(--saiban-text-muted);margin-top:1px;}

/* Health */
.saiban-health-ring{position:relative;width:110px;height:110px;margin:0 auto 10px;}
.saiban-health-ring .score-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:20px;font-weight:bold;}

/* Referrals */
.saiban-referral-link-box{display:flex;gap:5px;margin:8px 0;}
.saiban-referral-link-box input{flex:1;padding:7px 8px;border:1.5px solid var(--saiban-border);border-radius:8px;font-size:10px;direction:ltr;background:var(--saiban-cream);min-width:0;}
.saiban-referral-stats{display:flex;gap:6px;margin:8px 0;}
.saiban-referral-stat{flex:1;background:var(--saiban-cream);border-radius:8px;padding:8px;text-align:center;min-width:0;}
.saiban-referral-stat .num{font-size:16px;font-weight:bold;color:var(--saiban-green);}
.saiban-referral-stat .lbl{font-size:10px;color:var(--saiban-text-muted);}
.saiban-referral-list-item{display:flex;justify-content:space-between;align-items:center;padding:5px 0;border-bottom:1px solid var(--saiban-border);font-size:11px;min-width:0;}

/* Skeleton */
@keyframes shimmer{0%{background-position:-600px 0}100%{background-position:600px 0}}
.saiban-skeleton{height:16px;border-radius:6px;background:linear-gradient(90deg,#e8ede9 25%,#d4e6dc 50%,#e8ede9 75%);background-size:1200px 100%;animation:shimmer 1.4s infinite linear;margin-bottom:7px;}
.saiban-skeleton-card{height:120px;border-radius:10px;}
.saiban-skeleton-circle{width:110px;height:110px;border-radius:50%;margin:0 auto;}

/* Jalali datepicker fix for mobile */
.sjc{max-width:calc(100vw - 24px)!important;width:250px!important;}

@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}
