*{box-sizing:border-box}body{font-family:Tahoma,Arial,sans-serif;background:#f5f7f8;color:#172027;margin:0;line-height:1.75}a{color:#0c7180;text-decoration:none}button,input,select{font:inherit}.muted{color:#68767d}.topbar{height:64px;background:#fff;border-bottom:1px solid #e1e7ea;display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:20}.brand{font-weight:800;font-size:20px;color:#172027}.brand small{font-weight:400;color:#0c7180}.topbar nav{display:flex;gap:18px;align-items:center;font-size:14px}.inline-form{display:inline}.link-button{border:0;background:none;color:#b23b3b;cursor:pointer}.page{max-width:1120px;margin:34px auto;padding:0 24px}.wide-page{max-width:1380px}.page-head,.section-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.page-head h1,.section-head h2{margin-bottom:0}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin:24px 0}.cards div,.panel{background:white;border:1px solid #e1e7ea;border-radius:16px;padding:24px;box-shadow:0 4px 18px #0000000a}.cards b{display:block;font-size:32px}.cards span{color:#68767d}.panel{margin-bottom:20px}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:10px;padding:10px 16px;cursor:pointer}.btn.primary{background:#0c7180;color:#fff}.btn.dark{background:#17213b;color:#fff}.btn.wide{width:100%}.badge{background:#eaf6f7;color:#0c7180;border:1px solid #cfe9ec;border-radius:999px;padding:5px 11px;font-size:13px}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:min(440px,100%);background:#fff;border:1px solid #e1e7ea;border-radius:22px;padding:34px;box-shadow:0 20px 60px #00000012}.auth-logo{font-size:28px;font-weight:900}.auth-logo span{font-size:14px;color:#0c7180}.auth-card h1{margin:18px 0 0}.auth-card label{display:block;margin:16px 0 6px;font-size:14px}.auth-card input,.form-grid input,.form-grid select,.password-reset input,.create-user input,.create-user select,.perm-row select{width:100%;border:1px solid #ccd7db;border-radius:10px;background:#fff;padding:10px 12px;outline:none}.auth-card input:focus,.form-grid input:focus,.form-grid select:focus{border-color:#0c7180;box-shadow:0 0 0 3px #0c718014}.form-error,.field-error{background:#fff0f0;color:#9b2727;border:1px solid #f0cccc;border-radius:10px;padding:10px 12px;margin:12px 0}.flash-wrap{max-width:1120px;margin:18px auto 0;padding:0 24px}.flash{padding:11px 14px;border-radius:10px;background:#eef7f3;border:1px solid #cce8da}.flash.error{background:#fff0f0;border-color:#f0cccc}.access-layout{display:grid;grid-template-columns:300px 1fr;gap:18px;align-items:start}.user-list{padding:14px}.user-list h2{padding:0 10px}.user-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 10px;border-radius:11px;color:#172027}.user-row:hover,.user-row.active{background:#eff7f8}.user-row span{display:flex;flex-direction:column}.user-row small{color:#7c8a91}.status{font-style:normal;font-size:11px;color:#8f979b}.status.on{color:#0c7180}.create-user{margin-top:12px;border-top:1px solid #e7ecee;padding:14px 8px}.create-user summary{cursor:pointer;font-weight:700}.create-user p{margin:10px 0}.form-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:14px}.form-grid label,.password-reset label{font-size:13px}.hint{background:#f8fafb;border:1px solid #e6ecef;border-radius:10px;padding:10px 12px;color:#627178;font-size:13px}.perm-table{border:1px solid #e1e7ea;border-radius:12px;overflow:hidden;margin:16px 0}.perm-head,.perm-row{display:grid;grid-template-columns:minmax(260px,1fr) 140px 180px;gap:10px;align-items:center;padding:10px 14px}.perm-head{background:#f2f6f7;font-weight:700;font-size:13px}.perm-row{border-top:1px solid #edf1f2}.perm-row small{display:block;color:#809097;font-family:monospace;direction:ltr;text-align:right}.password-reset{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end}.profile-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.profile-grid div{display:flex;flex-direction:column}.k{color:#738188;font-size:13px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chips span{background:#f1f6f7;border-radius:999px;padding:5px 10px;font-size:12px}hr{border:0;border-top:1px solid #e5eaec;margin:24px 0}@media(max-width:900px){.topbar{height:auto;padding:14px 18px;align-items:flex-start}.topbar nav{flex-wrap:wrap;justify-content:flex-end}.access-layout{grid-template-columns:1fr}.form-grid,.perm-head,.perm-row{grid-template-columns:1fr}.perm-head{display:none}.profile-grid{grid-template-columns:1fr}.password-reset{grid-template-columns:1fr}}
/* Stage 3 — catalog */
.catalog-page h1{margin-bottom:0}.catalog-filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.catalog-filters input,.catalog-filters select,.inline-add input,.bulkbar select,.bulkbar input,.pricing-grid input,.pricing-grid select,.product-form input,.product-form select{border:1px solid #ccd7db;border-radius:10px;background:#fff;padding:9px 11px;min-height:40px}.catalog-filters>input{min-width:260px;flex:1}.checkline{display:inline-flex!important;align-items:center;gap:7px}.checkline input{width:auto!important;min-height:auto!important}.bulkbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.table-scroll{overflow:auto}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:11px 10px;border-bottom:1px solid #edf1f2;text-align:right;vertical-align:middle;font-size:13px}.data-table th{background:#f5f8f9;white-space:nowrap}.empty-cell{text-align:center!important;padding:42px!important;color:#68767d}.product-cell{display:flex;align-items:center;gap:10px;min-width:230px}.product-cell span:not(.product-thumb){display:flex;flex-direction:column}.product-cell small{color:#7b8a91}.product-thumb{width:45px;height:58px;object-fit:cover;border-radius:8px;border:1px solid #e0e6e8;flex:0 0 auto}.product-thumb.fallback{display:block}.status-pill{display:inline-flex;border-radius:999px;padding:4px 9px;font-size:11px}.status-pill.on{background:#e8f6ef;color:#21724d}.status-pill.off{background:#f1f1f1;color:#6c7377}.row-actions{display:flex;gap:5px;flex-wrap:wrap}.row-actions form{margin:0}.btn.mini{padding:6px 9px;font-size:11px}.btn.danger{background:#b33c48;color:#fff}.danger-text{color:#b33c48}.product-form .form-section{padding:12px 0 22px;border-bottom:1px solid #e8edef}.product-form .form-section:last-of-type{border:0}.product-form h2{font-size:17px}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.product-grid label{display:flex;flex-direction:column;gap:5px}.product-form ul{list-style:none;padding:0;display:flex;gap:8px 16px;flex-wrap:wrap}.product-form ul label{display:flex;align-items:center;gap:6px}.form-cover{width:120px;max-height:165px;object-fit:cover;border-radius:12px;border:1px solid #dde5e8;display:block;margin-bottom:12px}.form-actions{display:flex;gap:10px;margin-top:20px}.category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.category-box{border:1px solid #e2e8ea;border-radius:12px;padding:12px;margin:10px 0;background:#fbfcfc}.inline-add{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.inline-add.grow,.inline-add .grow{flex:1}.inline-add input{flex:1;min-width:140px}.category-values{margin-top:10px;padding-right:14px}.category-values>div,.branch-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px dashed #e3e8ea}.branch-row>span{flex:1}.pricing-card{padding:18px}.pricing-head{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;border-bottom:1px solid #edf1f2;padding-bottom:10px;margin-bottom:12px}.pricing-grid{display:grid;grid-template-columns:repeat(6,minmax(110px,1fr));gap:10px;align-items:end}.pricing-grid label{display:flex;flex-direction:column;font-size:12px;gap:4px}.pricing-summary{display:flex;gap:15px;flex-wrap:wrap;margin-top:12px;background:#f6f9fa;border-radius:10px;padding:10px;font-size:12px}@media(max-width:1000px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pricing-grid{grid-template-columns:repeat(3,minmax(110px,1fr))}}@media(max-width:760px){.category-grid,.product-grid,.pricing-grid{grid-template-columns:1fr}.catalog-filters>*{width:100%}.topbar nav{gap:10px}.data-table{min-width:900px}}
/* Stage 4 — orders + payments */
.subtext{display:block;color:#7b8a91;font-size:11px;margin-top:2px}.orders-page .cards b{font-size:24px}.order-filters select{min-width:150px}.filter-details{width:100%;border-top:1px solid #edf1f2;padding-top:8px}.filter-details summary{cursor:pointer;font-weight:700}.filter-chips{display:flex;gap:8px 14px;flex-wrap:wrap;padding:10px 0}.filter-chips b{width:100%}.filter-chips label{font-size:12px}.order-table td{vertical-align:top}.order-status{display:inline-flex;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:700;background:#eef2f4;color:#46545b;white-space:nowrap}.s-pending_payment,.s-credit_pending{background:#fff4d9;color:#8a6513}.s-paid,.s-ready_to_print{background:#e5f5ef;color:#20704c}.s-exported,.s-printing{background:#e9efff;color:#3656a5}.s-printed,.s-binding,.s-packing{background:#f0eaff;color:#6d4ca2}.s-ready_for_delivery{background:#e5f6f6;color:#0b7376}.s-delivered{background:#e7f7ec;color:#28704a}.s-cancelled{background:#fdebed;color:#a93e4c}.pagination{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:18px}.two-col{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:18px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.detail-grid div{display:flex;flex-direction:column;padding:11px;border-radius:10px;background:#f7f9fa}.detail-grid span{color:#738188;font-size:12px}.order-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.order-actions form{display:flex;gap:7px;align-items:center}.order-actions select{border:1px solid #ccd7db;border-radius:10px;background:#fff;padding:9px 11px}.timeline-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px dashed #e1e7ea}.timeline-row>div{display:flex;flex-direction:column}.timeline-row small{color:#7b8a91}.ltr{direction:ltr;unicode-bidi:embed}@media(max-width:900px){.two-col{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr}.order-actions form{width:100%}.order-actions form select,.order-actions form button{flex:1}}

/* ===== KetabSaz v6.2 navigation + visual parity layer ===== */
:root{
  --ks-ink:#17213b;--ks-ink2:#273454;--ks-paper:#f5f7fb;--ks-card:#fff;--ks-card2:#fbfcff;
  --ks-turq:#0f8b8d;--ks-turq2:#087273;--ks-cyan:#24b5b7;--ks-deep:#e7ecf4;--ks-line:#e7ebf2;
  --ks-red:#c94b5b;--ks-green:#2e8b68;--ks-amber:#c88925;--ks-muted:#7b8499;
  --ks-shadow:0 10px 30px rgba(28,37,65,.075);--ks-shadow-lg:0 18px 48px rgba(28,37,65,.12);--ks-sidebar:270px;
}
*{box-sizing:border-box}
html,body,button,input,select,textarea,table,th,td,label,a,p,span,div,section,article,nav,aside,main,header,footer{font-family:'Vazirmatn',Tahoma,Arial,sans-serif}
html,body{background:var(--ks-paper);color:var(--ks-ink)}
h1,.page-title h2,.ks-wordmark strong,.auth-logo{font-family:'Lalezar','Vazirmatn',Tahoma,sans-serif!important;font-weight:400!important;letter-spacing:.1px!important}
.ks-app-shell{min-height:100vh}
.ks-sidebar{width:var(--ks-sidebar);position:fixed;right:0;top:0;bottom:0;background:linear-gradient(180deg,#17213b 0%,#11192f 100%);color:#fff;padding:16px 12px;overflow-y:auto;overflow-x:hidden;z-index:300;box-shadow:-12px 0 34px rgba(18,26,48,.09);transition:transform .24s ease}
.ks-sidebar::-webkit-scrollbar{width:5px}.ks-sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.14);border-radius:99px}
.ks-brand-block{padding:10px 11px 18px;margin-bottom:10px;border-bottom:1px solid rgba(255,255,255,.09)}
.ks-wordmark{display:block;color:#fff;text-decoration:none}
.ks-wordmark strong{display:flex;align-items:center;gap:9px;font-size:20px;color:#fff}
.ks-wordmark strong:before{content:'ک';display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:linear-gradient(135deg,var(--ks-cyan),var(--ks-turq));font-size:17px;box-shadow:0 7px 18px rgba(15,139,141,.28);font-family:'Vazirmatn',Tahoma,sans-serif}
.ks-brand-block>span{display:block;font-size:10.5px;opacity:.55;margin:7px 43px 0 0;color:#fff}
.ks-home-link{display:flex;align-items:center;gap:9px;color:#fff;text-decoration:none;padding:11px 12px;border-radius:11px;margin:3px 0 10px;font-size:13px;font-weight:800}
.ks-home-link:before{content:'◈';opacity:.72}.ks-home-link:hover,.ks-home-link.active{background:linear-gradient(135deg,var(--ks-turq),#11787d);box-shadow:0 7px 20px rgba(15,139,141,.22);color:#fff}
.ks-nav details{margin:4px 0;border:0;padding:0}.ks-nav summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:11px;font-size:12px;font-weight:800;color:rgba(255,255,255,.92);user-select:none}.ks-nav summary::-webkit-details-marker{display:none}.ks-nav summary:hover,.ks-nav details[open]>summary{background:rgba(255,255,255,.06)}.ks-nav summary:after{content:'‹';font-size:18px;opacity:.5;transition:.2s}.ks-nav details[open]>summary:after{transform:rotate(-90deg)}
.ks-subnav{padding:3px 9px 7px 0;margin-right:10px;border-right:1px solid rgba(255,255,255,.09);display:grid;gap:1px}.ks-subnav a,.ks-coming{display:flex;align-items:center;justify-content:space-between;color:rgba(255,255,255,.74);text-decoration:none;padding:8px 10px;border-radius:9px;margin:2px 0;font-size:11.5px}.ks-subnav a:hover,.ks-subnav a.active{background:rgba(15,139,141,.94);color:#fff;transform:translateX(-2px)}.ks-coming{color:rgba(255,255,255,.34);cursor:not-allowed}.ks-coming small{font-size:8px;opacity:.7;white-space:nowrap}
.ks-side-foot{border-top:1px solid rgba(255,255,255,.09);margin-top:14px;padding-top:10px}.ks-side-foot>a{display:block;color:rgba(255,255,255,.7);padding:9px 12px;text-decoration:none;font-size:11.5px;border-radius:9px}.ks-side-foot>a:hover{background:rgba(255,255,255,.06);color:#fff}.ks-side-foot form{margin:0}.ks-side-foot button{width:100%;text-align:right;border:0;background:transparent;color:rgba(255,255,255,.7);padding:9px 12px;border-radius:9px;font-size:11.5px;cursor:pointer}.ks-side-foot button:hover{background:rgba(201,75,91,.2);color:#fff}
.ks-main-area{margin-right:var(--ks-sidebar);width:calc(100% - var(--ks-sidebar));min-height:100vh;background:var(--ks-paper);transition:.24s ease;min-width:0}
.ks-topbar{min-height:72px;background:rgba(255,255,255,.94);padding:14px 28px;border-bottom:1px solid var(--ks-line);display:flex;justify-content:space-between;align-items:center;gap:14px;box-shadow:0 1px 0 rgba(28,37,65,.02);position:sticky;top:0;z-index:90;backdrop-filter:blur(14px)}
.ks-welcome strong{display:block;font-size:14px}.ks-welcome span{display:block;font-size:10px;color:var(--ks-muted);margin-top:3px}.ks-version{background:#f1f5f9;padding:8px 12px;border-radius:999px;font-size:10px;color:#647087;white-space:nowrap}.ks-mobile-menu{display:none;border:0!important;background:#eef3f8!important;color:var(--ks-ink)!important;width:40px;height:40px;padding:0!important;border-radius:11px!important;cursor:pointer!important;font-size:20px!important;line-height:1!important;box-shadow:none!important}.ks-mobile-menu:hover{background:#e4ebf3!important}.ks-overlay{display:none}
.ks-main-area main.page{max-width:1320px!important;margin:auto!important;padding:26px 28px 70px!important;width:100%!important}.ks-main-area .card,.ks-main-area .box,.ks-main-area .stat,.ks-main-area .panel,.ks-main-area .cards>div{background:var(--ks-card)!important;border:1px solid var(--ks-line)!important;border-radius:17px!important;box-shadow:var(--ks-shadow)!important}.ks-main-area .btn,.ks-main-area button[type=submit]{border-radius:10px!important;font-weight:800!important;transition:.18s ease!important}.ks-main-area .btn.primary,.ks-main-area button[type=submit].btn{background:var(--ks-turq)!important;color:#fff!important}.ks-main-area .btn.primary:hover,.ks-main-area button[type=submit].btn:hover{background:var(--ks-turq2)!important;transform:translateY(-1px)}.flash-wrap{max-width:1320px;margin-right:calc(var(--ks-sidebar) + auto)}

.ks-hero{position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:center;gap:18px;background:linear-gradient(135deg,#17213b 0%,#29426b 72%,#1a6b73 145%);color:#fff;border-radius:22px;padding:28px 29px;margin-bottom:18px;box-shadow:0 18px 44px rgba(23,33,59,.16)}.ks-hero:after{content:'';position:absolute;width:230px;height:230px;border-radius:50%;left:-80px;top:-115px;background:#22b3b522}.ks-hero h1{position:relative;color:#fff!important;margin:0 0 7px;font-size:26px}.ks-hero p{position:relative;margin:0;opacity:.68;font-size:11px}.ks-hero-actions{position:relative;z-index:2;display:flex;gap:8px;flex-wrap:wrap}.ks-hero-actions a{background:#fff;color:#17213b;text-decoration:none;padding:10px 14px;border-radius:11px;font-size:11px;font-weight:900;box-shadow:0 6px 16px #00000012}.ks-hero-actions a.primary{background:#1aa5a7;color:#fff}.ks-hero-actions a:hover{transform:translateY(-2px)}
.ks-section-hubs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.ks-section-hub{background:#fff;border:1px solid #e7ebf2;border-radius:18px;padding:17px;text-decoration:none;color:#17213b;box-shadow:0 8px 26px rgba(28,37,65,.055);transition:.18s}.ks-section-hub:hover{transform:translateY(-2px);border-color:#a8d9da}.ks-section-hub.is-disabled{opacity:.72;cursor:default}.ks-section-hub.is-disabled:hover{transform:none;border-color:#e7ebf2}.ks-section-hub .hub-title{font-size:13px;font-weight:900;margin-bottom:5px}.ks-section-hub .hub-desc{font-size:9.5px;color:#7b8499;line-height:1.9}.ks-section-hub .hub-go{font-size:10px;color:#0f8b8d;font-weight:900;margin-top:9px}
.ks-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:18px}.ks-stat-card{background:#fff;border:1px solid #e7ebf2;border-radius:18px;padding:17px 18px;box-shadow:0 8px 26px rgba(28,37,65,.06);position:relative;overflow:hidden}.ks-stat-card .icon{position:absolute;left:14px;top:14px;width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#edf8f8;color:#0f8b8d;font-size:13px;font-weight:900}.ks-stat-card .stat-label{color:#7b8499;font-size:10px;margin-bottom:8px}.ks-stat-card .stat-value{font-size:20px;font-weight:900;line-height:1.5;padding-left:38px}.ks-stat-card .stat-sub{font-size:9.5px;color:#9299a8;margin-top:3px}.ks-quick-panel{padding:18px!important}.ks-quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.ks-quick-grid a{text-decoration:none;color:#27324a;background:#f8fafc;border:1px solid #edf0f4;border-radius:12px;padding:14px 10px;text-align:center;font-size:10.5px;font-weight:800}.ks-quick-grid a:hover{background:#effafa;border-color:#b8dedf;transform:translateY(-2px)}
@media(max-width:1120px){.ks-stat-grid{grid-template-columns:repeat(2,1fr)}.ks-section-hubs{grid-template-columns:1fr 1fr}}
@media(max-width:860px){.ks-sidebar{width:280px;transform:translateX(105%);box-shadow:-18px 0 45px rgba(10,17,33,.2)}body.ks-menu-open .ks-sidebar{transform:translateX(0)}.ks-main-area{margin-right:0;width:100%}.ks-mobile-menu{display:grid!important;place-items:center!important}.ks-overlay{position:fixed;inset:0;background:rgba(14,20,37,.46);backdrop-filter:blur(2px);z-index:250;border:0}.ks-menu-open .ks-overlay{display:block}.ks-menu-open{overflow:hidden}.ks-topbar{padding:11px 14px}.ks-main-area main.page{padding:22px 18px 60px!important}}
@media(max-width:590px){.ks-stat-grid,.ks-section-hubs{grid-template-columns:1fr}.ks-hero{align-items:flex-start;flex-direction:column;padding:23px 20px}.ks-hero h1{font-size:22px}.ks-hero-actions{width:100%}.ks-hero-actions a{flex:1;text-align:center}.ks-quick-grid{grid-template-columns:1fr 1fr}.ks-version{display:none}}
.ks-store-link{display:flex;align-items:center;gap:9px;color:rgba(255,255,255,.78);text-decoration:none;padding:9px 12px;border-radius:10px;margin:-5px 0 10px;font-size:11px;font-weight:700;border:1px solid rgba(255,255,255,.08)}.ks-store-link:before{content:'↗';opacity:.65}.ks-store-link:hover{background:rgba(255,255,255,.07);color:#fff}
