/* Copied from the bot panel (admin/style.css) so both panels share one look; admin additions live in admin.css. */
:root{--bg:#f5f4ef;--ink:#233b34;--muted:#737e77;--line:#dfe5de;--white:#fff;--green:#285948;--mint:#e4eee7;--danger:#a34339;--gold:#a77836;font-family:Tahoma,Arial,sans-serif;color:var(--ink);background:var(--bg);font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,.button{cursor:pointer;border:1px solid transparent;border-radius:9px;padding:11px 17px;background:var(--green);color:white;text-decoration:none;display:inline-flex;justify-content:center;align-items:center;gap:6px;font-weight:600}button:hover,.button:hover{filter:brightness(.94)}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid #baa579;outline-offset:3px}.secondary{background:white;border-color:var(--line);color:var(--ink)}.ghost{background:transparent;color:var(--muted);padding:8px}
.who{display:inline-block;unicode-bidi:isolate}.who .ghost{color:var(--green);text-decoration:underline;padding:2px 4px}.danger{background:#fff0ed;color:var(--danger);border-color:#efd7d1}.small{font-size:12px;padding:7px 10px}.hidden{display:none!important}#shell{display:flex;min-height:100vh}aside{width:244px;flex-shrink:0;background:#fff;border-left:1px solid var(--line);padding:30px 18px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);padding:0 8px 30px}.brand>span,.mark{font-size:30px;border-radius:15px;background:var(--mint);padding:10px}.brand strong{display:block;font-size:19px}.brand small{display:block;color:var(--muted);padding-top:7px;font-size:11px}nav{display:grid;gap:7px}nav button{text-align:right;justify-content:flex-start;background:transparent;color:var(--muted);padding:13px 15px;font-weight:400}nav button.active{background:var(--mint);color:var(--green);font-weight:700}.aside-foot{margin-top:auto;border-top:1px solid var(--line);padding:20px 8px 0;font-size:11px;color:var(--muted)}.aside-foot button{display:block;margin-top:12px}.dot{display:inline-block;width:7px;height:7px;border-radius:100%;background:#5e9479;margin-left:5px}main{min-width:0;flex:1;padding:36px 42px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;gap:15px}h1{font-size:27px;margin:9px 0;font-weight:600}h2{font-size:18px;margin:0 0 18px}h3{font-size:16px;margin:0 0 10px}.eyebrow{color:var(--muted);font-size:11px;margin:0;letter-spacing:.4px}.header-actions{display:flex;gap:8px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.card{background:white;border:1px solid var(--line);border-radius:14px;padding:24px}.stat-label{color:var(--muted);font-size:12px}.stat-number{font-size:34px;line-height:1.7;font-weight:600;font-family:Arial,sans-serif}.stat-note{font-size:11px;color:var(--muted)}.two-col{display:grid;grid-template-columns:1.25fr 1fr;gap:20px;margin-top:22px}.hero{background:var(--green);color:#fff;border:0;min-height:185px;display:flex;flex-direction:column;justify-content:center}.hero h2{font-size:23px;line-height:1.6;margin-bottom:10px}.hero p{font-size:13px;line-height:1.9;color:#d1e5d8;margin:0}.hero .button{align-self:flex-start;margin-top:18px;background:#e5eee5;color:var(--green)}.status-row{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #edf0ea}.status-row:last-child{border:0}.badge{padding:4px 9px;border-radius:20px;font-size:11px;display:inline-block;background:var(--mint);color:var(--green);white-space:nowrap}.badge.warn{background:#fff3df;color:#90672c}.badge.neutral{background:#eef0ee;color:var(--muted)}.badge.bad{background:#faeae6;color:var(--danger)}.muted{color:var(--muted)}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px;flex-wrap:wrap}.toolbar input{max-width:360px}.table-wrap{overflow:auto;background:white;border:1px solid var(--line);border-radius:13px}table{width:100%;border-collapse:collapse;text-align:right;white-space:nowrap;font-size:12px}th{background:#fafbf8;color:var(--muted);font-weight:400;padding:15px 18px;border-bottom:1px solid var(--line)}td{padding:16px 18px;border-bottom:1px solid #edf0ea}tr:last-child td{border:0}td .sub{display:block;font-size:10px;color:var(--muted);margin-top:5px}.actions{display:flex;gap:6px;flex-wrap:wrap}.empty{text-align:center;background:white;border:1px dashed var(--line);border-radius:14px;padding:55px 22px;line-height:2;color:var(--muted)}.empty strong{display:block;color:var(--ink);font-size:19px}.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.plan-price{font-size:30px;padding:16px 0}.plan-price small{font-size:12px;color:var(--muted)}.plan-card p{color:var(--muted);line-height:1.8}.plan-card .actions{margin-top:24px}label{display:block;font-size:12px;color:var(--ink);margin-bottom:18px}input,select,textarea{display:block;width:100%;border:1px solid #cfd9d0;background:white;color:var(--ink);padding:11px 12px;border-radius:8px;margin-top:7px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #28594815}textarea{min-height:110px;resize:vertical;line-height:1.8}.check{display:flex;align-items:center;gap:10px}.check input{width:19px;height:19px;margin:0;accent-color:var(--green)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.full{grid-column:1/-1}.hint{font-size:12px;color:var(--muted);line-height:1.9;margin:10px 0 20px}.banner{padding:14px 18px;border-radius:10px;margin-bottom:20px;background:#fff4de;color:#805f2a;line-height:1.8;font-size:12px}.success{background:var(--mint);color:var(--green)}.error{background:#faeae6;color:var(--danger)}footer{padding:32px 0 8px;color:#8a948c;font-size:10px;text-align:center}.login{display:flex;align-items:center;justify-content:center;min-height:100vh;background:radial-gradient(ellipse at top,#e3ecdf,transparent 70%)}.login-card{width:420px;max-width:92vw;background:white;border:1px solid var(--line);border-radius:22px;padding:40px}.login-card .mark{display:inline-block;margin-bottom:28px}.login-card p{line-height:1.9;color:var(--muted)}.login-card form{margin-top:28px}.login-card button{width:100%}.login-card small{font-size:10px;color:var(--muted)}#login-error{color:var(--danger);font-size:12px}dialog{width:650px;max-width:94vw;border:1px solid var(--line);border-radius:17px;padding:25px;color:var(--ink);max-height:90vh}dialog::backdrop{background:#17382e66;backdrop-filter:blur(3px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.dialog-head h2{margin:0}.dialog-actions{display:flex;gap:8px;margin-top:20px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}.detail-grid div{padding:14px;background:var(--bg);border-radius:9px}.detail-grid small{display:block;color:var(--muted);margin-bottom:8px}.ticket-body{white-space:pre-wrap;line-height:1.8}.mono{font-family:monospace;direction:ltr;unicode-bidi:embed;font-size:11px}#notice:empty{display:none}.pagination{display:flex;gap:8px;margin-top:18px}@media(max-width:1050px){main{padding:25px}.grid{grid-template-columns:repeat(2,1fr)}.plan-grid{grid-template-columns:repeat(2,1fr)}aside{width:205px}.two-col{grid-template-columns:1fr}}@media(max-width:700px){#shell{display:block}aside{width:100%;height:auto;position:static;padding:15px}.brand{padding:0 0 15px}.brand small,.aside-foot{display:none}nav{display:flex;overflow-x:auto;gap:6px;padding-bottom:3px}nav button{white-space:nowrap;font-size:12px;padding:10px}.grid{gap:10px}.card{padding:18px}main{padding:22px 15px}header{align-items:flex-start}h1{font-size:22px}.header-actions{flex-direction:column}header button,.header-actions .button{font-size:11px;padding:9px}.form-grid,.plan-grid{grid-template-columns:1fr}.stat-number{font-size:30px}table th,table td{padding:12px}.login-card{padding:28px}}

.section-heading{margin-top:24px}.mobile-only{display:none}@media(max-width:700px){.mobile-only{display:inline-flex}td:first-child button{font-size:13px;padding:3px 0;color:var(--green)}}

@media(max-width:700px){nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}nav button{white-space:normal;min-height:44px;text-align:right}input,select,textarea{font-size:16px}#integrations-form button{margin:4px 0}#content>.card{margin-bottom:18px}}

[hidden]{display:none!important}nav{min-height:0;overflow-y:auto;align-content:start;flex:1}.brand,.aside-foot{flex-shrink:0}.bot-preview-message{font:inherit;white-space:pre-wrap;line-height:1.8;overflow-wrap:anywhere;text-align:start}.card fieldset{border:1px solid var(--line);border-radius:10px;margin:14px 0;padding:16px}button:disabled{cursor:not-allowed}#content>form.card{margin:20px 0}@media(max-width:700px){nav{display:none;flex:none}nav.open{display:grid;max-height:none;overflow:visible}#nav-toggle{width:100%;margin-bottom:8px}}

#content pre{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%;direction:ltr;text-align:left}.wide-table::before{content:'↔ اسحب الجدول لعرض بقية الأعمدة';display:block;position:sticky;right:0;width:100%;padding:10px 12px;font-size:12px;color:var(--green);background:var(--mint);white-space:normal}.header-actions{flex-shrink:0}
.metric-card{color:var(--ink,#243d35);background:#fff;text-align:right;display:flex;flex-direction:column;gap:10px;width:100%;border:1px solid #dde4df}.metric-card:hover{border-color:#456b59;background:#f4f8f5}.summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 24px}.section-links{display:flex;flex-wrap:wrap;gap:10px}.inactive-setting{opacity:.6}.inactive-setting input{background:#eee}label small{display:block;line-height:1.8;margin-top:6px;color:#596760}details summary{cursor:pointer;padding:12px 0;font-weight:600}pre{white-space:pre-wrap;overflow-wrap:anywhere;direction:ltr;text-align:left}#overview-filter label{min-width:140px;flex:1}
@media(max-width:600px){.summary-grid{grid-template-columns:1fr}.recipe-cards-table table,.recipe-cards-table tbody{display:block;min-width:0!important}.recipe-cards-table thead{display:none}.recipe-cards-table tr{display:block;border-bottom:1px solid #ddd;padding:12px}.recipe-cards-table td{display:flex;white-space:normal!important;justify-content:space-between;gap:10px;padding:7px 0!important;border:0}.recipe-cards-table td::before{content:attr(data-label);font-weight:600;flex-shrink:0}.recipe-cards-table .table-wrap{overflow:visible}.recipe-cards-table .table-wrap::before{display:none}.section-links button{width:100%}#catalog-filters .grid{grid-template-columns:1fr 1fr}.metric-card{min-height:130px}}

/* Compact administrative sections, with native keyboard-accessible disclosure. */
.admin-section{margin:12px 0;border:1px solid var(--border,#dce4df);border-radius:14px;padding:14px;background:var(--surface,#fff)}
.admin-section>summary{cursor:pointer;font-weight:700;min-height:32px}
.admin-section>summary h2,.admin-section>summary h3{display:inline;font-size:1.1rem;margin:0}
.admin-section>summary::after{content:'فتح';float:left;font-size:.85rem;font-weight:400}
.admin-section[open]>summary::after{content:'إغلاق'}
.admin-section[open]>summary{margin-bottom:16px}
.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:16px 0}
.metric-grid .card strong{display:block;font-size:2rem;margin-top:8px}
.section-controls{margin-bottom:14px}
.user-journey{padding-inline-start:30px;border-inline-start:2px solid #ccdcd3;margin-inline-start:8px}
.user-journey>li{margin:12px 0;padding:18px;overflow-wrap:anywhere}
.user-journey time{font-size:.95rem;color:#52675d;display:inline-block}
.user-journey h3{margin:10px 0;font-size:1.15rem}
.page-guide{padding:12px 16px;border-inline-start:3px solid #496b58;background:#eef4ef;border-radius:8px;line-height:1.8;margin:0 0 16px}
.date-note{display:block;color:#66766c;margin-top:20px;line-height:1.7}
.funnel-row{display:grid;grid-template-columns:minmax(7rem,12rem) 1fr auto;gap:.6rem;align-items:center;margin:.35rem 0}.funnel-bar{width:100%;height:.7rem;appearance:none;border:0;border-radius:6px;background:var(--line);overflow:hidden}.funnel-bar::-webkit-progress-bar{background:var(--line);border-radius:6px}.funnel-bar::-webkit-progress-value{background:var(--green);border-radius:6px}.funnel-bar::-moz-progress-bar{background:var(--green);border-radius:6px}.overview-more>summary{cursor:pointer;font-weight:700}@media(max-width:600px){.funnel-row{grid-template-columns:1fr auto}.funnel-bar{grid-column:1/-1}}
/* Owner design 23/9: page tabs, compact user rows and the last-visit summary. */
.tabs{display:flex;flex-wrap:wrap;gap:4px;margin:-14px 0 22px;border-bottom:1px solid var(--line)}.tabs button{background:transparent;color:var(--muted);border:1px solid transparent;border-bottom:0;border-radius:9px 9px 0 0;padding:9px 14px;font-weight:400;margin-bottom:-1px}.tabs button[aria-selected=true]{background:white;border-color:var(--line);color:var(--green);font-weight:700}
.user-list{display:grid;gap:8px}.user-list-head,.user-row>summary{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1.6fr) minmax(0,1fr);gap:12px;align-items:center}.user-list-head{padding:0 44px 0 16px;font-size:11px;color:var(--muted)}
.user-row{background:white;border:1px solid var(--line);border-radius:12px}.user-row[open]{border-color:#9fb8aa}.user-row>summary{list-style:none;position:relative;padding:12px 44px 12px 16px;font-weight:400;min-height:48px}.user-row>summary::-webkit-details-marker,.user-more>summary::-webkit-details-marker{display:none}.user-row>summary::before{content:'◂';position:absolute;right:16px;top:50%;margin-top:-10px;color:var(--muted);transition:transform .15s}.user-row[open]>summary::before{transform:rotate(-90deg)}.user-row>summary>span{min-width:0;overflow-wrap:anywhere}.user-row .sub{display:block;font-size:11px;color:var(--muted);margin-top:4px}
.user-body{border-top:1px solid #edf0ea;padding:14px 16px}.visit+.visit{border-top:1px dashed var(--line);margin-top:10px;padding-top:10px}.visit-head{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;margin:0 0 8px}.visit-head time{font-family:monospace}.visit-steps{list-style:none;margin:0;padding:0}.visit-steps li{display:flex;gap:10px;padding:3px 0;line-height:1.7;overflow-wrap:anywhere}.visit-steps time{color:var(--muted);font-family:monospace;font-size:12px;flex-shrink:0;min-width:7ch;padding-top:1px}.visit-steps .error{color:var(--danger);font-weight:600}.visit-steps .recipe{color:var(--green);font-weight:600}.visit-steps .neutral{color:var(--muted)}.visit-steps .screen{color:var(--muted);font-size:13px}
.user-more{margin-top:10px}.user-more>summary{list-style:none;padding:6px 0;font-size:13px;color:var(--green)}.user-more>summary::after{content:' ▸'}.user-more[open]>summary::after{content:' ▾'}.user-more .user-journey{margin-inline-start:0;padding-inline-start:14px}.user-more .user-journey>li{padding:12px}.user-actions{align-items:center;margin-top:12px}.role-tools{justify-content:flex-start}
@media(max-width:700px){.user-list-head{display:none}.user-row>summary{grid-template-columns:minmax(0,1fr) auto;padding:12px 38px 12px 12px;gap:6px 10px}.user-row>summary>span:nth-child(2){grid-row:2;grid-column:2;font-size:12px;color:var(--muted)}.user-row>summary>span:nth-child(3){grid-row:2;grid-column:1}.user-row>summary>span:nth-child(4){grid-row:1;grid-column:2;font-size:12px;color:var(--muted)}.user-row>summary::before{right:12px}.user-body{padding:12px}.tabs{margin-top:-8px}.tabs button{font-size:12px;padding:8px 10px}.user-actions button{width:100%}}
/* Owner design 23/9: button analytics rows, their in-place drill-down and the users-page plan note. */
.user-row .sub.note{font-size:10px;opacity:.85}.btn-summary{line-height:1.9}.btn-list{display:grid;gap:8px}.btn-row{background:white;border:1px solid var(--line);border-radius:12px}.btn-row[open]{border-color:#9fb8aa}
.btn-row>summary,.btn-row .btn-head{display:grid;grid-template-columns:minmax(0,2fr) minmax(70px,1.3fr) minmax(0,1.3fr);gap:12px;align-items:center;list-style:none;position:relative;padding:12px 44px 12px 16px;font-weight:400;min-height:48px}.btn-row>summary::-webkit-details-marker{display:none}.btn-row>summary::before{content:'◂';position:absolute;right:16px;top:50%;margin-top:-10px;color:var(--muted);transition:transform .15s}.btn-row[open]>summary::before{transform:rotate(-90deg)}
.btn-row .sub{display:block;font-size:11px;color:var(--muted);margin-top:4px;overflow-wrap:anywhere}.btn-name,.btn-nums{min-width:0;overflow-wrap:anywhere}.btn-nums .badge{margin-inline-start:4px}.btn-body{border-top:1px solid #edf0ea;padding:14px 16px;overflow-wrap:anywhere}.btn-body h4{margin:18px 0 8px}
.btn-chart{margin:0}.btn-chart svg{display:block;width:100%;height:90px;background:#f8faf7;border-radius:8px}.btn-chart rect{fill:var(--green)}.btn-chart .axis{stroke:var(--line);stroke-width:1;vector-effect:non-scaling-stroke}.btn-chart figcaption{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:11px;color:var(--muted);margin-top:4px}
.btn-next .funnel-row{grid-template-columns:minmax(12rem,22rem) 1fr auto}.btn-next .funnel-row.left span{color:var(--danger);font-weight:600}.btn-next .funnel-row.left .funnel-bar::-webkit-progress-value{background:var(--danger)}.btn-next .funnel-row.left .funnel-bar::-moz-progress-bar{background:var(--danger)}
.btn-people{list-style:none;margin:0;padding:0}.btn-people li{display:flex;flex-wrap:wrap;align-items:center;gap:2px 12px;padding:6px 0;border-bottom:1px dashed var(--line)}.btn-people .sub{display:inline;margin:0}
@media(max-width:700px){.btn-row>summary,.btn-row .btn-head{grid-template-columns:minmax(0,1fr) auto;padding:12px 38px 12px 12px;gap:6px 10px}.btn-row>summary::before{right:12px}.btn-row .btn-name{grid-column:1/-1}.btn-row .funnel-bar{grid-row:2;grid-column:1}.btn-row .btn-nums{grid-row:2;grid-column:2;font-size:12px}.btn-body{padding:12px}.btn-next .funnel-row{grid-template-columns:minmax(0,1fr) auto}.btn-next .funnel-row .funnel-bar{grid-column:1/-1;grid-row:2}}
.btn-people-more>summary{cursor:pointer;font-weight:700;margin:.4rem 0}
.allowance{display:block}.allowance .sub{display:block;font-size:11px;color:var(--muted);margin-top:4px;overflow-wrap:anywhere}.allowance .sub:first-child{color:var(--ink)}.allowance .sub.note{font-size:11px;opacity:1}.allowance-box .allowance .sub{font-size:13px;margin-top:6px}.user-item{display:grid;grid-template-columns:28px minmax(0,1fr);gap:6px;align-items:start}.user-pick{margin:0;padding-top:15px;display:flex;justify-content:center}.user-pick input{width:18px;height:18px;margin:0;accent-color:var(--green)}.user-list-head.pickable{margin-inline-start:34px}.pick-bar{background:white;border:1px solid var(--line);border-radius:12px;padding:10px 14px;justify-content:flex-start}.pick-bar .check{margin:0}.pick-bar #reset-ai{margin-inline-start:auto}.reset-points{padding-inline-start:20px}.reset-points li{margin:4px 0}
@media(max-width:700px){.user-item{grid-template-columns:24px minmax(0,1fr);gap:4px}.user-pick{padding-top:13px}.user-list-head.pickable{margin-inline-start:0}.pick-bar{padding:10px}.pick-bar #reset-ai{margin-inline-start:0;width:100%}}
.metrics-funnels{display:grid;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:1rem}.metrics-funnel h3{margin:.2rem 0 .5rem;font-size:1rem}
.bag-thumb{display:block;width:64px;height:64px;object-fit:cover;border-radius:6px;border:1px solid var(--line)}.visit-thumb{width:40px;height:40px;object-fit:cover;border-radius:5px;vertical-align:middle;margin-inline-start:6px;border:1px solid var(--line)}
/* Owner 24/9 (deep-analytics): source colours for the stacked charts and legend; classes because the CSP forbids inline styles. */
.da-chart svg{height:110px}
.da-chart rect.s0,.da-swatch .s0{fill:var(--green)}.da-chart rect.s1,.da-swatch .s1{fill:var(--gold)}.da-chart rect.s2,.da-swatch .s2{fill:#3f6f99}.da-chart rect.s3,.da-swatch .s3{fill:#7d5a94}.da-chart rect.s4,.da-swatch .s4{fill:var(--danger)}.da-chart rect.s5,.da-swatch .s5{fill:var(--muted)}
.da-legend{display:flex;flex-wrap:wrap;gap:.4rem 1rem;font-size:12px}
.da-legend span{display:inline-flex;align-items:center;gap:.3rem}
.da-swatch{width:10px;height:10px;flex:none}
.da-block{margin:.5rem 0}
.da-block summary{cursor:pointer}
.da-two{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}
