/* ZiCabin v0.7.0 — minimal, warm, brand-led management UI. Scope: presentation only. */
:root {
  --bg:#f7f5f1;--white:#fff;--ink:#232322;--muted:#777871;--edge:#e6e4df;
  --teal:#b94e24;--dark:#252525;--dark2:#141414;--green:#217552;--red:#b04242;--orange:#ce5b24;
  --zc-accent:#cd591f;--zc-accent-dark:#a74415;--zc-soft:#fff3ec;
  --zc-shadow:0 5px 22px rgba(34,34,34,.04);
}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:Vazirmatn,Tahoma,Arial,sans-serif;font-size:13.5px;line-height:1.85;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font-family:inherit}
button{transition:background .16s,border-color .16s,box-shadow .16s}
button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid rgba(205,89,31,.4);outline-offset:2px}
.sandbox-ribbon{font-size:11px;line-height:1.7;background:#433b34;color:#fff;padding:6px 12px;text-align:center}
.sandbox-ribbon strong{color:#fff}
.shell{min-height:calc(100vh - 34px)}
.side{width:229px;flex:0 0 229px;background:#fff;border-left:1px solid var(--edge);color:#292925;padding:16px 13px 19px;min-height:calc(100vh - 34px);position:sticky;top:0;max-height:100vh;overflow:auto;box-shadow:-3px 0 20px #16161604;gap:0}
.brand{display:flex;align-items:center;gap:12px;flex-wrap:nowrap;padding:5px 4px 20px;margin:0 0 14px;border-bottom:1px solid var(--edge)}
.brand-logo{display:block;flex:0 0 93px;width:93px;height:93px}
.brand-logo img{width:100%;height:100%;object-fit:contain;display:block;box-shadow:0 0 0 1px #d3d3d3;border-radius:2px}
.brand-desc{min-width:0}.brand-desc b{font-size:14px;color:#171717;font-weight:800;line-height:1.5}.brand-desc small{color:#797979;font-size:11px}
.side-group{font-weight:600;color:#a09e98;font-size:10.5px;padding:9px 11px 10px}
.zc-main-nav{display:grid;gap:5px}
.side .nav{width:100%;display:flex;align-items:center;gap:12px;border-radius:12px;padding:11px 13px;color:#504f4b;background:transparent;border:1px solid transparent;text-align:right;font-weight:650;font-size:13.5px;min-height:45px}
.side .nav .nav-ico{font-size:19px;width:22px;text-align:center;line-height:1.2;color:#797c7a;flex:0 0 22px;font-family:Tahoma,sans-serif}
.side .nav.active{color:#a94417;background:#fff0e6;border-color:#f2d9c8;box-shadow:none}
.side .nav.active .nav-ico{color:#c65a20}
.side .nav:hover:not(.active){background:#f6f4ef;color:#292923}
.nav-count{background:#e8f2ed;color:#246947;border-radius:999px;padding:1px 7px;margin-right:auto;font-size:10px}
.side-bottom{margin-top:24px;padding:15px 10px 2px;color:#777b77;display:flex;align-items:center;gap:7px;font-size:10px;border-top:1px solid var(--edge);flex-wrap:wrap}
.side-bottom small{flex-basis:100%;padding-right:15px;color:#a09e98}
.test-dot{background:#47a078;width:7px;height:7px;border-radius:99px}
.stage{min-width:0}
.top{background:rgba(255,255,255,.92);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid var(--edge);min-height:81px;padding:18px clamp(16px,3vw,38px);position:sticky;top:0;z-index:8}
.top h1{font-size:20px;color:#23231f;margin:1px 0;font-weight:800}
.eyebrow{color:var(--zc-accent);font:700 10px/1.4 Arial,sans-serif;letter-spacing:1.4px}
.top-right{gap:11px}
.ghost{background:#fff;color:#595853;border-color:#e6e1db}
.user{color:#5f5c58}
.content{max-width:1450px;padding:26px clamp(16px,2.8vw,36px) 46px}
footer{color:#a09c93;padding:15px}
.pill{background:#f2f0eb;color:#5c5b55}
.pill.success{background:#e3f3ea;color:#276947}
.pill.warn{background:#fff1dd;color:#8b601c}
.pill.danger{background:#ffe9e7;color:#a5423d}
.card,.stat{background:#fff;border:1px solid var(--edge);border-radius:15px;box-shadow:var(--zc-shadow)}
.card{margin-top:15px;padding:18px 21px}.card h3{color:#262521;font-size:15px}
.stat{border-right:0}.stat:before{background:var(--zc-accent);width:3px}.stat b{font-family:Vazirmatn,Tahoma,sans-serif;color:#252525}
.btn{background:white;color:#3c3d38;border:1px solid #e4dfd9;border-radius:11px;padding:8px 14px;font-size:12px;font-weight:700;min-height:37px;box-shadow:0 1px 2px #17171708}
.btn:hover:not(:disabled){border-color:#ce8057;background:#fff6f0}
.btn.primary{background:var(--zc-accent);border-color:var(--zc-accent);color:white;box-shadow:0 4px 12px #b94e241c}
.btn.primary:hover:not(:disabled){background:var(--zc-accent-dark);border-color:var(--zc-accent-dark)}
input,textarea,select{border-radius:10px;border:1px solid #e0ded7;color:#292724;background:#fff}
input:focus,textarea:focus,select:focus{border-color:#bd7148;box-shadow:0 0 0 3px #c4542118}
.hint,.text-muted{color:#807e77}.tablewrap{border-color:var(--edge)}
table th{background:#f7f6f3;color:#706d66;font-weight:700}
table td{border-color:#eceae6}tbody tr:hover{background:#fcfaf6}
.notice{background:#f9f7f2;color:#605f57;border-color:#e8e2d9}
.notice.warn{background:#fff8e9;color:#7c612b;border-color:#f1dfbc}
.modal{border-radius:18px;box-shadow:0 24px 100px rgba(23,24,23,.25)}
.overlay{background:#241f1cb0}
.toast{background:#242424;color:#fff}
.zc-subnav{display:flex;gap:8px;align-items:center;padding:5px;margin-bottom:14px;width:max-content;max-width:100%;background:#eeece7;border-radius:12px}
.zc-subnav-link{background:transparent;color:#6c6963;padding:8px 17px;border:0;border-radius:9px;font-weight:700}
.zc-subnav-link.selected{background:#fff;color:#b74b1a;box-shadow:0 1px 4px #0000000f}
/* dashboard */
.zc-dashboard{display:grid;gap:17px}
.dash-intro{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;padding:4px 2px 5px}
.dash-kicker{display:inline-block;color:#b95729;font-weight:700;font-size:11px;margin-bottom:3px}
.dash-intro h2{font-size:clamp(20px,2.2vw,27px);font-weight:850;letter-spacing:-.5px;margin:0 0 3px;color:#282522}
.dash-intro p{font-size:12px;margin:0;color:#858079}
.dash-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.dash-stat{background:#fff;box-shadow:var(--zc-shadow);border-radius:17px;border:1px solid var(--edge);padding:19px 18px 16px;min-width:0;position:relative;overflow:hidden}
.dash-stat-icon{display:grid;place-items:center;background:#fff4ea;color:#b74d20;width:38px;height:38px;border-radius:11px;font:700 22px Tahoma;margin-bottom:16px}
.dash-stat-value{font-weight:800;font-size:clamp(17px,2vw,25px);line-height:1.6;min-height:38px;color:#272522;overflow-wrap:anywhere}
.dash-stat-label{font-size:12px;font-weight:700;color:#494640}
.dash-stat-sub{color:#9b968d;font-size:10.5px;margin-top:5px;min-height:16px}
.dash-main-grid{display:grid;grid-template-columns:1.17fr 1fr;gap:15px;align-items:stretch}
.dash-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.dash-panel{background:#fff;min-width:0;border:1px solid var(--edge);border-radius:17px;box-shadow:var(--zc-shadow);padding:21px}
.dash-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:14px;border-bottom:1px solid #f0ede8}
.dash-panel-head h3{margin:0;font-size:15px;color:#2a2925;font-weight:750}
.dash-panel-head p{color:#9b968c;margin:1px 0 0;font-size:10.5px}
.dash-panel-head .btn{font-size:11px;padding:6px 10px;min-height:32px}
.dash-task-list{display:grid}.dash-task{display:flex;align-items:center;gap:11px;border-bottom:1px solid #f1efeb;padding:11px 1px;min-width:0}.dash-task:last-child{border-bottom:0}
.dash-task-mark{width:8px;height:8px;background:#d4a04c;flex:0 0 8px;border-radius:100%}.dash-task-mark.is-late{background:#c05249}
.dash-task-main{display:grid;min-width:0;flex:1}.dash-task-main b{font-size:12px;font-weight:700;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dash-task-main small{font-size:10.5px;color:#8c8880;max-width:360px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}
.dash-task-date{color:#838079;font-size:11px;white-space:nowrap;direction:ltr}
.dash-task .btn{font-size:10px;padding:4px 9px;min-height:27px}
.dash-empty{padding:28px 12px;text-align:center;color:#989189;font-size:12px}
.dash-panel-foot{display:flex;justify-content:flex-end;margin-top:13px}
.dash-ad-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-top:18px}
.dash-ad-metrics>div{background:#faf8f4;border:1px solid #eeeae2;border-radius:12px;padding:13px;min-width:0}
.dash-ad-metrics small{color:#868178;display:block;margin-bottom:3px;font-size:11px}.dash-ad-metrics b{color:#272522;font-size:20px;font-weight:800}
.dash-ad-spend{display:flex;gap:12px;justify-content:space-between;align-items:center;background:#fff6f0;padding:13px 15px;border-radius:12px;margin-top:13px;font-size:12px;color:#6b5a50;flex-wrap:wrap}
.dash-ad-spend b{font-size:14px;color:#b74d1e}
.dash-footnote{font-size:10.5px;color:#948e84;margin:12px 0 0;line-height:1.8}
.dash-facts{display:grid;gap:0;padding-top:8px}.dash-facts>div{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid #f2efeb;align-items:center}.dash-facts>div:last-child{border-bottom:0}
.dash-facts span{font-size:11.5px;color:#75716c}.dash-facts b{font-size:12.5px;color:#282723}
.dash-priority{background:#fff8f1;border:1px solid #ecd5c3;border-radius:14px;padding:12px 16px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.dash-priority strong{font-size:12px;color:#9e4e26}
.dash-test-tools{border:1px dashed #ddd8cf;background:#f7f5f1;border-radius:13px;padding:11px 15px;color:#8e8981;font-size:11px}
.dash-test-tools summary{cursor:pointer}.dash-test-tools .buttons{padding-top:14px}
/* Advertising: orange highlight across both selected row and expanded panel, as requested */
.ad-ledger-row.is-selected{background:#fff4eb!important;box-shadow:inset 0 3px 0 #e17431,inset 0 -3px 0 #e17431,inset -3px 0 0 #e17431,inset 3px 0 0 #e17431;border-inline-start:0}
.ad-ledger-row:hover{background:#fff5ec!important}
.ad-ledger-row:focus{outline:3px solid #e17431;outline-offset:-3px}
.ad-ledger-detail>td{background:#fff9f4!important;padding:11px;border-bottom:3px solid #e17431}
.ad-details-panel{border:3px solid #e17431;background:#fff;border-radius:13px;box-shadow:0 7px 21px #b8581c10}
.ad-publication-table th{background:#f2f0ec;color:#514d46}
.ad-finance-summary{background:#fff9f4;border-color:#efdfd4}
.ad-published-filters{background:#faf8f5;border-color:#e8e2dc}
.ad-created-details>summary,.ad-events-history>summary{background:#f8f4f0;color:#7d5745}
.ad-details-panel details>summary,.ad-report-history summary{background:#faf5ef;color:#6b5346}
.ad-chart-card{border-color:#e8e2dc}
.ad-chart-mode .btn.primary,.ad-tabs .btn.primary{background:#b94e24}
.ad-city-compare{border-color:#e7d4c6;background:#fffdfb}
.ad-city-compare small{font-size:10px;color:#a19a91}
.jc-grid button.jc-selected{background:#b94e24}.jc-grid button.jc-today{border-color:#c76b38}
@media(max-width:1150px){.dash-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-main-grid{grid-template-columns:1fr}}
@media(max-width:850px){.side{width:188px;flex-basis:188px}.brand{display:block;text-align:center}.brand-logo{margin:0 auto 8px}.zc-main-nav{gap:3px}.dash-bottom-grid{grid-template-columns:1fr}}
@media(max-width:750px){.side{position:relative;max-height:none;width:100%;min-height:0;display:block;padding:10px 13px}.brand{display:flex;margin:0;padding:3px 3px 9px;border-bottom:0}.brand-logo{width:58px;height:58px;flex-basis:58px;margin:0}.brand-desc{display:block}.side .nav{width:auto;display:inline-flex;padding:8px 9px;font-size:11px;min-height:35px}.side .nav .nav-ico{font-size:15px;width:16px;flex-basis:16px}.side-group,.side-bottom{display:none!important}.zc-main-nav,.side nav.vendor-only{display:flex;flex-wrap:wrap;gap:5px;padding-top:8px;border-top:1px solid var(--edge)}.top{position:relative;padding:12px 15px;min-height:0}.content{padding:17px 13px 30px}.dash-main-grid{grid-template-columns:1fr}.dash-intro{align-items:flex-start}.dash-intro h2{font-size:19px}.dash-stat{padding:14px}.dash-stat-icon{width:30px;height:30px;font-size:17px;margin-bottom:8px}.dash-stat-value{font-size:19px}.dash-panel{padding:15px}.dash-panel-head{flex-wrap:wrap}.dash-task-date{display:none}.dash-ad-metrics b{font-size:17px}}
@media(max-width:440px){.dash-stat-grid{gap:8px}.dash-stat-label{font-size:11px}.dash-ad-metrics{gap:5px}.dash-ad-metrics>div{padding:8px}.dash-ad-metrics small{font-size:10px}.dash-ad-metrics b{font-size:14px}}
/* Older module banners inherit the same quiet brand language. */
.hero,.hero.ads-hero,.hero.vendor-hero{background:linear-gradient(115deg,#3a312a,#76513d);color:#fff}
.hero h2{color:#fff}.hero p{color:#eee0d8}
.ad-created-details>summary{background:#fbf6f2;color:#8c522f}
