:root { --partner-green:#2a3b24; --partner-pistachio:#9bc582; --partner-cream:#f5f1e7; --partner-border:#dce5d5; --partner-muted:#677260; }
* { box-sizing:border-box; } body { margin:0; font-family:Vazirmatn,sans-serif; color:var(--partner-green); background:var(--partner-cream); }
.partner-login-page { min-height:100vh; background:linear-gradient(145deg,#20301c 0%,#38512e 52%,#9bc582 160%); display:grid; place-items:center; padding:24px; }.partner-login-shell { width:min(100%,440px); }.partner-back-home { display:block; color:#fff; text-align:center; margin-bottom:18px; font-weight:700; }.partner-login-card { background:#fffdf8; border:1px solid rgba(255,255,255,.4); box-shadow:0 24px 70px rgba(0,0,0,.25); padding:34px; border-radius:16px; }.partner-eyebrow { display:block; color:#60864d; font-size:.82rem; font-weight:800; }.partner-login-card h1 { margin:8px 0; font-size:1.8rem; }.partner-login-card p { color:var(--partner-muted); line-height:2; margin:0 0 22px; }.partner-login-form { display:grid; gap:14px; }.partner-login-form label,.partner-order-note label { display:grid; gap:6px; font-size:.86rem; font-weight:700; }.partner-login-form input,.partner-order-note textarea { border:1px solid var(--partner-border); border-radius:9px; padding:11px; font:inherit; background:#fff; }.partner-login-form button,.partner-invoice button { border:0; background:var(--partner-green); color:#fff; border-radius:9px; padding:13px; font:inherit; font-weight:800; cursor:pointer; }.partner-check { display:flex!important; align-items:center; gap:7px; font-weight:500!important; }.partner-alert,.partner-flash { max-width:1180px; margin:16px auto; padding:12px 18px; border-radius:9px; background:#ffe7e3; color:#9d352b; font-weight:700; }.partner-flash { background:#e6f2df; color:#356c2e; }
.partner-page { padding-bottom:250px; }.partner-header { max-width:1180px; margin:auto; min-height:150px; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:28px 20px; }.partner-header h1 { margin:5px 0; font-size:1.8rem; }.partner-header p { margin:0; color:var(--partner-muted); }.partner-logout { border:1px solid var(--partner-border); border-radius:8px; background:#fffdf8; padding:10px 16px; color:var(--partner-green); font:inherit; font-weight:700; cursor:pointer; }.partner-catalog { max-width:1180px; margin:auto; padding:0 20px; }.partner-tabs { display:flex; gap:8px; overflow:auto; padding:6px 0 18px; }.partner-tab { flex:0 0 auto; border:1px solid var(--partner-border); background:#fffdf8; color:var(--partner-muted); padding:10px 18px; border-radius:8px; font:inherit; font-weight:800; cursor:pointer; }.partner-tab.active { background:var(--partner-pistachio); border-color:var(--partner-pistachio); color:#1e3218; }.partner-pane { display:none; }.partner-pane.active { display:block; }.partner-product-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }.partner-product-card { background:#fffdf8; border:1px solid var(--partner-border); border-radius:10px; overflow:hidden; }.partner-product-head { display:flex; align-items:center; gap:14px; padding:16px; border-bottom:1px solid var(--partner-border); }.partner-product-head img,.partner-image-placeholder { width:68px; height:68px; border-radius:8px; object-fit:cover; background:#e7f0df; display:grid; place-items:center; font-weight:800; color:#638a50; }.partner-product-head h2 { margin:0 0 6px; font-size:1rem; }.partner-product-head p { color:var(--partner-muted); margin:0; font-size:.78rem; line-height:1.8; }.partner-units { padding:8px 16px; }.partner-unit { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:10px 0; border-bottom:1px dashed var(--partner-border); }.partner-unit:last-child { border:0; }.partner-unit strong,.partner-unit span { display:block; }.partner-unit span { margin-top:3px; color:#6b8757; font-size:.8rem; font-weight:700; }.partner-stepper { display:flex; direction:ltr; align-items:center; border:1px solid var(--partner-border); border-radius:8px; overflow:hidden; background:#fff; }.partner-stepper button { width:32px; height:32px; background:#eff5eb; color:#315326; border:0; font-size:1.2rem; cursor:pointer; }.partner-stepper input { width:48px; height:32px; border:0; border-inline:1px solid var(--partner-border); text-align:center; font:inherit; }.partner-order-note { margin-top:18px; background:#fffdf8; padding:16px; border:1px solid var(--partner-border); border-radius:10px; }.partner-order-note textarea { resize:vertical; min-height:70px; }.partner-invoice { position:fixed; z-index:10; bottom:0; right:0; left:0; background:#20301c; color:#fff; box-shadow:0 -10px 30px rgba(0,0,0,.18); padding:14px max(20px,calc((100vw - 1140px)/2)); display:grid; grid-template-columns:220px 1fr 200px; align-items:center; gap:18px; }.partner-invoice>div span,.partner-invoice>div strong { display:block; }.partner-invoice>div span { color:#c7dbc0; font-size:.8rem; }.partner-invoice>div strong { font-size:1.2rem; margin-top:4px; }.partner-invoice ul { list-style:none; margin:0; padding:0; display:flex; gap:12px; max-height:60px; overflow:auto; }.partner-invoice li { font-size:.76rem; color:#e7f0e3; min-width:180px; border-right:1px solid rgba(255,255,255,.2); padding-right:10px; }.partner-invoice li span,.partner-invoice li b { display:block; }.partner-invoice button { background:var(--partner-pistachio); color:#20301c; }.partner-invoice button:disabled { opacity:.45; cursor:not-allowed; }
.partner-header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.partner-support,.partner-history-link{border:1px solid var(--partner-border);border-radius:8px;padding:10px 14px;background:#fffdf8;font-size:.82rem;font-weight:800;color:var(--partner-green)}.partner-support{background:#e7f2e0}.partner-delivery-card{margin-top:18px;padding:18px;background:#fffdf8;border:1px solid var(--partner-border);border-radius:10px}.partner-delivery-card h2{margin:4px 0 14px;font-size:1.05rem}.partner-delivery-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.partner-delivery-option{border:1px solid var(--partner-border);border-radius:9px;padding:11px;display:flex;gap:9px;cursor:pointer}.partner-delivery-option:has(input:checked){border-color:#699a52;background:#f1f8ed}.partner-delivery-option b,.partner-delivery-option small,.partner-delivery-option em{display:block}.partner-delivery-option small{color:var(--partner-muted);font-size:.76rem;margin:3px 0}.partner-delivery-option em{font-style:normal;font-weight:800;color:#467b35;font-size:.8rem}.partner-date-field{display:grid;gap:7px;max-width:260px;margin-top:14px;font-weight:700;font-size:.85rem}.partner-date-field input{padding:10px;border:1px solid var(--partner-border);border-radius:8px;font:inherit}.partner-modal-open{overflow:hidden}.partner-modal[hidden]{display:none}.partner-modal{position:fixed;inset:0;z-index:40;background:rgba(21,34,18,.62);padding:20px;display:grid;place-items:center}.partner-modal-card{position:relative;width:min(100%,620px);max-height:90vh;overflow:auto;background:#fffdf8;border-radius:14px;padding:26px;box-shadow:0 25px 70px rgba(0,0,0,.3)}.partner-modal-card h2{margin:5px 0 18px}.partner-modal-close{position:absolute;left:14px;top:12px;width:32px;height:32px;border:0;border-radius:50%;background:#eef4e9;font-size:1.4rem;cursor:pointer}.partner-preview-lines article{display:flex;justify-content:space-between;gap:14px;border-bottom:1px dashed var(--partner-border);padding:10px 0;font-size:.84rem}.partner-preview-delivery,.partner-preview-total{display:flex;justify-content:space-between;padding:14px 0}.partner-preview-total{font-size:1.1rem;border-top:1px solid var(--partner-border)}.partner-terms{display:flex;align-items:flex-start;gap:8px;font-size:.82rem;line-height:1.9;margin:10px 0 16px}.partner-modal-card>button[type=submit]{width:100%;border:0;border-radius:9px;padding:12px;background:var(--partner-green);color:#fff;font:inherit;font-weight:800;cursor:pointer}.partner-modal-card>button:disabled{opacity:.45}.partner-orders-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.partner-order-card,.partner-empty-card{background:#fffdf8;border:1px solid var(--partner-border);border-radius:10px;padding:16px}.partner-order-card-head{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--partner-border);padding-bottom:12px}.partner-order-card-head span{font-size:.76rem;color:var(--partner-muted)}.partner-order-card-head h2{font-size:1rem;margin:5px 0 0}.partner-order-card-head strong{font-size:.86rem;color:#4d803b}.partner-order-card dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.partner-order-card dt{font-size:.72rem;color:var(--partner-muted)}.partner-order-card dd{margin:3px 0 0;font-size:.84rem;font-weight:700}.partner-order-items-mini{display:grid;gap:7px;border-top:1px dashed var(--partner-border);padding-top:10px}.partner-order-items-mini div{display:flex;align-items:center;gap:8px;font-size:.76rem}.partner-order-items-mini img{width:28px;height:28px;object-fit:cover;border-radius:5px}.partner-invoice-link{display:block;margin-top:14px;padding:9px;text-align:center;border-radius:8px;background:#e7f2e0;color:#315326;font-weight:800;font-size:.8rem}.partner-admin-note{font-size:.78rem;background:#f2f7ee;border-right:3px solid var(--partner-pistachio);padding:8px}.partner-pagination{margin:18px 0}.partner-invoice-page{background:#edf1e9;padding:30px}.partner-print-invoice{max-width:860px;margin:auto;background:#fff;padding:34px;color:#24321f}.partner-print-actions{display:flex;gap:10px;justify-content:flex-end;margin-bottom:22px}.partner-print-actions button,.partner-print-actions a{padding:9px 14px;border:1px solid var(--partner-border);background:#f1f7ed;border-radius:7px;color:var(--partner-green);font:inherit;font-weight:800;cursor:pointer}.partner-print-invoice header{border-bottom:2px solid var(--partner-pistachio);padding-bottom:16px}.partner-print-invoice header h1{margin:7px 0}.partner-print-invoice header p{margin:0;color:var(--partner-muted);font-size:.8rem}.partner-invoice-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}.partner-invoice-meta div{padding:10px;background:#f4f7f1;border-radius:7px}.partner-invoice-meta b,.partner-invoice-meta span{display:block}.partner-invoice-meta b{font-size:.7rem;color:var(--partner-muted)}.partner-invoice-meta span{margin-top:3px;font-size:.82rem;font-weight:700}.partner-print-invoice table{border-collapse:collapse;width:100%;font-size:.83rem}.partner-print-invoice th,.partner-print-invoice td{border-bottom:1px solid #dfe6da;padding:9px;text-align:right}.partner-print-invoice th{color:var(--partner-muted);font-size:.75rem}.partner-print-invoice td img{width:42px;height:42px;object-fit:cover;border-radius:5px}.partner-print-total{display:flex;justify-content:space-between;padding:16px 0;font-size:.9rem}.partner-print-note{padding:10px;background:#f4f7f1;font-size:.82rem}.partner-empty{color:var(--partner-muted);font-size:.84rem}.partner-empty-card a{color:#426e34;font-weight:800}
@media print{@page{margin:12mm}*{-webkit-print-color-adjust:exact;print-color-adjust:exact;color-adjust:exact}.partner-print-actions{display:none}html,body{height:auto!important;overflow:visible!important}.partner-invoice-page{background:#fff!important;padding:0}.partner-print-invoice{box-shadow:none;max-width:none;padding:0}}
.partner-admin-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }.partner-admin-create { border:1px solid var(--p-border); border-radius:10px; padding:14px; }.partner-admin-create h3 { margin:0; }.partner-admin-category { border-top:1px solid var(--p-border); padding:13px 0; }.partner-admin-category summary { cursor:pointer; font-weight:800; }.partner-admin-product { display:grid; grid-template-columns:1fr 1fr; gap:14px; padding:14px 0; border-top:1px dashed var(--p-border); }.partner-admin-product small { color:var(--p-muted); }.partner-admin-units { display:flex; gap:6px; flex-wrap:wrap; align-content:start; }.partner-admin-units span { border:1px solid var(--p-border); border-radius:6px; padding:4px 7px; font-size:.75rem; }
@media (max-width:720px) { .partner-product-grid,.partner-admin-grid,.partner-admin-product { grid-template-columns:1fr; }.partner-header { min-height:auto;align-items:flex-start;flex-direction:column }.partner-invoice { grid-template-columns:1fr; gap:9px; padding:12px 18px; }.partner-invoice ul { max-height:48px; }.partner-page { padding-bottom:300px; }.partner-invoice-meta{grid-template-columns:1fr 1fr}.partner-invoice-page{padding:10px}.partner-print-invoice{padding:18px;overflow:auto}.partner-print-invoice table{min-width:650px} }

/* Partner portal refinement: compact operational header and card-based scheduling. */
.partner-page { background: linear-gradient(180deg, #eef3e9 0, var(--partner-cream) 310px); }
.partner-header { min-height: auto; margin: 0 auto 20px; padding: 22px max(20px, calc((100vw - 1140px) / 2)); background: var(--partner-green); color: #fff; box-shadow: 0 8px 22px rgba(29, 50, 24, .16); }
.partner-brand-block { min-width: 0; }.partner-header .partner-eyebrow { color: #b9d9a9; letter-spacing: 0; }.partner-header h1 { font-size: 1.38rem; }.partner-header p { color: #e5efdf; font-size: .82rem; }
.partner-header-actions { justify-content: flex-end; }.partner-support, .partner-history-link, .partner-logout { display: inline-flex; align-items: center; gap: 7px; min-height: 40px; border-color: rgba(255,255,255,.18); background: rgba(255,255,255,.1); color: #fff; }
.partner-header-actions a, .partner-header-actions a:hover, .partner-header-actions a:focus { text-decoration: none; }
.partner-support { background: var(--partner-pistachio); color: #1f3619; border-color: var(--partner-pistachio); }.partner-header-actions i { font-size: .9rem; }.partner-logout { cursor: pointer; }
.partner-unit-info { display: flex; align-items: center; gap: 9px; min-width: 0; }.partner-unit-image { width: 42px; height: 42px; flex: 0 0 auto; object-fit: contain; filter: drop-shadow(0 5px 7px rgba(0,0,0,.2)); }
.partner-product-head img { width: 108px; height: 108px; flex: 0 0 auto; border-radius: 0; object-fit: contain; background: transparent; filter: drop-shadow(0 9px 11px rgba(0,0,0,.22)); }
.partner-image-placeholder { width: 108px; height: 108px; flex: 0 0 auto; }
.partner-stepper output { width: 48px; height: 32px; display: grid; place-items: center; border-inline: 1px solid var(--partner-border); font: inherit; font-weight: 700; background: #fff; }
@media (max-width:720px) { .partner-product-head img, .partner-image-placeholder { width: 86px; height: 86px; } }
.partner-tabs { padding: 0; gap: 9px; margin-bottom: 20px; scrollbar-width: thin; }.partner-tab { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; border-radius: 8px; border-color: #d4dfcc; box-shadow: 0 3px 9px rgba(34,56,29,.05); }.partner-tab.active { background: var(--partner-green); border-color: var(--partner-green); color: #fff; }.partner-tab-count { display: grid; place-items: center; min-width: 22px; height: 22px; padding: 0 5px; border-radius: 50%; background: #e5f0df; color: #3e6d30; font-size: .7rem; }.partner-tab.active .partner-tab-count { background: var(--partner-pistachio); color: #21391a; }
.partner-delivery-card { border: 0; box-shadow: 0 8px 22px rgba(34,56,29,.07); }.partner-delivery-option { position: relative; padding: 14px; transition: border-color .15s, background .15s; }.partner-delivery-option input { accent-color: #4f853c; margin-top: 4px; }.partner-date-field { max-width: none; margin-top: 20px; }.partner-date-cards { display: flex; flex-wrap: wrap; gap: 9px; }.partner-date-card { width: 112px; min-height: 66px; padding: 9px; border: 1px solid var(--partner-border); border-radius: 8px; background: #fff; color: var(--partner-green); font: inherit; text-align: right; cursor: pointer; }.partner-date-card b, .partner-date-card span { display: block; }.partner-date-card b { font-size: .82rem; }.partner-date-card span { margin-top: 4px; color: var(--partner-muted); font-size: .7rem; }.partner-date-card.active { background: #e8f4e1; border-color: #5f9449; box-shadow: inset 0 0 0 1px #5f9449; }.partner-date-card.active b { color: #315d25; }
.partner-delivery-option > img { width: 46px; height: 46px; flex: 0 0 auto; object-fit: contain; border-radius: 6px; filter: drop-shadow(0 4px 6px rgba(0,0,0,.16)); }
.partner-order-details { margin-top: 12px; padding-top: 10px; border-top: 1px dashed var(--partner-border); color: var(--partner-muted); font-size: .84rem; }.partner-order-details summary { color: var(--partner-green); font-weight: 800; cursor: pointer; }.partner-order-details p { margin: 7px 0; }.partner-order-details a { color: #356c2e; font-weight: 800; }
.partner-preview-lines article { align-items: center; }.partner-preview-lines img, .partner-preview-placeholder { flex: 0 0 auto; width: 42px; height: 42px; border-radius: 7px; object-fit: cover; background: #e8f2e1; display: grid; place-items: center; color: #63904e; font-weight: 800; }.partner-preview-lines article span { margin-inline-end: auto; }
@media (max-width:720px) { .partner-header { margin-bottom: 16px; padding: 18px 16px; }.partner-header-actions { justify-content: flex-start; }.partner-header-actions span { font-size: .75rem; }.partner-support, .partner-history-link, .partner-logout { padding: 8px 10px; min-height: 36px; }.partner-tabs { margin-inline: -4px; padding-inline: 4px; }.partner-date-card { flex: 1 1 92px; width: auto; }.partner-date-cards { gap: 7px; } }