:root{--ink:#23243a;--muted:#7b7e92;--purple:#7352e8;--line:#e7e7ef}.login-page{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 20% 10%,#8a61ff,transparent 34%),linear-gradient(145deg,#1d1b42,#0b0c1d)}.login-card{width:min(430px,100%);padding:38px;border-radius:25px;background:#fff;box-shadow:0 35px 90px rgba(0,0,0,.35)}.login-brand,.side-brand{display:flex;align-items:center;gap:11px;text-decoration:none}.login-brand>span,.side-brand>span{width:43px;height:43px;display:grid;place-items:center;border-radius:14px;color:#fff;background:linear-gradient(135deg,#ff8d68,#9b5cff);font-family:Georgia,serif}.login-brand div,.side-brand div{display:flex;flex-direction:column}.login-brand b{color:#24243b}.login-brand small,.side-brand small{font-size:8px;text-transform:uppercase;letter-spacing:.13em;color:#999aaf}.eyebrow{margin:28px 0 4px;color:#7656df;text-transform:uppercase;font-size:9px;font-weight:900;letter-spacing:.13em}.login-card h1{font-size:32px}.login-card label,.admin-modal label{width:100%;font-size:11px;font-weight:800;color:#505267}.login-card .form-control,.admin-modal .form-control,.admin-modal .form-select{margin-top:7px;border-radius:10px}.back-link{display:block;margin-top:22px;color:#75788b;text-align:center;text-decoration:none;font-size:11px}.admin-primary,.admin-secondary{min-height:42px;padding:0 16px;border:0;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:11px;font-weight:800}.admin-primary{color:#fff;background:linear-gradient(135deg,#7b5af1,#5e40d2);box-shadow:0 9px 22px rgba(101,70,220,.22)}.admin-secondary{color:#4d4f63;background:#f0f0f6;border:1px solid #e2e2eb}.admin-app{min-height:100vh;color:var(--ink);background:#f5f6fb;font-family:Inter,system-ui,sans-serif}.sidebar{position:fixed;inset:0 auto 0 0;z-index:80;width:270px;padding:28px 20px 20px;display:flex;flex-direction:column;color:#fff;background:radial-gradient(circle at 15% 0,#7658ff,transparent 32%),linear-gradient(165deg,#24204b,#111129 53%,#090a1a);box-shadow:18px 0 60px rgba(18,17,46,.18)}.side-brand{color:#fff;padding:0 8px}.side-brand b{font-size:18px}.workspace{margin:30px 2px 25px;padding:13px;display:flex;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:rgba(255,255,255,.07)}.workspace div{display:flex;flex-direction:column}.workspace small{color:#9998b3;text-transform:uppercase;font-size:8px}.workspace b{font-size:11px}.sidebar nav{display:grid;gap:5px}.sidebar nav>p{margin:15px 12px 5px;color:#77768f;text-transform:uppercase;font-size:8px;font-weight:900;letter-spacing:.14em}.sidebar nav button{position:relative;width:100%;height:45px;padding:0 13px;border:0;border-radius:12px;display:flex;align-items:center;gap:11px;color:#ababbe;background:transparent;text-align:left}.sidebar nav button span{flex:1;font-size:12px;font-weight:700}.sidebar nav button em{min-width:22px;height:22px;padding:0 5px;display:grid;place-items:center;border-radius:99px;color:#fff;background:#f06c7a;font-style:normal;font-size:9px}.sidebar nav button:hover,.sidebar nav button.active{color:#fff;background:linear-gradient(100deg,rgba(124,92,255,.38),rgba(255,255,255,.06));transform:translateX(3px)}.side-footer{margin-top:auto;display:grid}.side-footer a{padding:11px 12px;display:flex;align-items:center;gap:9px;color:#aaaac0;text-decoration:none;font-size:11px}.side-footer a:hover{color:#fff}.side-close{display:none}.admin-main{min-height:100vh;margin-left:270px}.topbar{height:95px;padding:0 34px;display:flex;align-items:center;gap:15px;position:sticky;top:0;z-index:40;border-bottom:1px solid #e8e8ef;background:rgba(255,255,255,.9);backdrop-filter:blur(18px)}.topbar>div:nth-child(2){flex:1}.topbar p{margin:0;color:#9598aa;text-transform:uppercase;font-size:8px;font-weight:900;letter-spacing:.14em}.topbar h1{margin:3px 0 0;font-size:23px}.top-actions{display:flex;align-items:center;gap:10px}.menu-button{display:none;width:40px;height:40px;border:1px solid var(--line);border-radius:10px;background:#fff}.admin-search{width:220px;height:42px;padding:0 12px;display:flex;align-items:center;gap:7px;border:1px solid #e0e1e9;border-radius:11px;background:#f8f8fb;color:#999caf}.admin-search input{width:100%;border:0;outline:0;background:transparent;font-size:12px}.admin-content{position:relative;max-width:1600px;margin:auto;padding:30px 34px 50px}.view{display:none;animation:fade .35s ease}.view.active{display:block}.hero-panel{min-height:200px;padding:34px 38px;display:flex;align-items:center;justify-content:space-between;gap:30px;overflow:hidden;position:relative;border-radius:23px;color:#fff;background:radial-gradient(circle at 82% 18%,rgba(255,141,202,.35),transparent 28%),linear-gradient(115deg,#6046d9,#7956ed 52%,#a04bca);box-shadow:0 20px 45px rgba(94,66,205,.22)}.hero-panel:after{content:"";position:absolute;right:8%;bottom:-90px;width:245px;height:245px;border:1px solid rgba(255,255,255,.17);border-radius:50%;box-shadow:0 0 0 35px rgba(255,255,255,.05),0 0 0 70px rgba(255,255,255,.04)}.hero-panel>div,.hero-panel>button{position:relative;z-index:1}.hero-panel span{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.hero-panel h2{max-width:640px;margin:13px 0 8px;font-size:29px}.hero-panel p{margin:0;color:#e8e4ff;font-size:13px}.hero-panel button{padding:12px 16px;border:1px solid rgba(255,255,255,.3);border-radius:11px;color:#fff;background:rgba(255,255,255,.13);font-size:11px;font-weight:800}.metrics{margin:21px 0;display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.metrics article{min-height:130px;padding:21px;display:flex;gap:15px;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:0 6px 22px rgba(39,39,70,.04);transition:.25s}.metrics article:hover{transform:translateY(-4px);box-shadow:0 15px 30px rgba(52,48,92,.09)}.metrics article>span{width:44px;height:44px;display:grid;place-items:center;border-radius:13px;font-size:19px}.metrics .violet{color:#7554eb;background:#eee9ff}.metrics .blue{color:#377fdd;background:#e4f0ff}.metrics .pink{color:#d35c9e;background:#ffe8f4}.metrics .green{color:#27916c;background:#e1f7ef}.metrics article div{display:flex;flex-direction:column}.metrics small{color:var(--muted);font-size:10px}.metrics b{font-size:26px}.metrics p{margin:3px 0;color:#999bad;font-size:9px}.overview-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:17px}.panel{padding:23px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 6px 22px rgba(39,39,70,.04)}.panel-head{margin-bottom:18px;display:flex;align-items:center;justify-content:space-between}.panel-head small,.import-copy>small,.admin-modal small{color:#7353da;text-transform:uppercase;font-size:8px;font-weight:900;letter-spacing:.12em}.panel-head h3{margin:4px 0 0;font-size:16px}.panel-head button{border:0;color:#6d50d8;background:transparent;font-size:10px;font-weight:800}.bars{display:grid;gap:16px}.bars>div>span{display:flex;justify-content:space-between;margin-bottom:7px;color:#6e7187;font-size:10px}.bars>div>i{height:7px;display:block;overflow:hidden;border-radius:99px;background:#efeff5}.bars em{height:100%;display:block;border-radius:inherit;background:linear-gradient(90deg,#7657ef,#e06db6)}.activity{display:grid}.activity button{padding:11px 3px;border:0;border-bottom:1px solid #f0f0f4;display:flex;align-items:center;gap:10px;background:#fff;text-align:left}.activity button>span{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;color:#7454dc;background:#eee9ff;font-weight:900}.activity button>div{flex:1;display:flex;flex-direction:column}.activity b{font-size:11px}.activity small{color:#9699aa;font-size:9px}.status{padding:5px 8px;border-radius:99px;color:#6d4dd7;background:#eee9ff;font-style:normal;text-transform:capitalize;font-size:9px;font-weight:800}.table-panel{padding:0;overflow:hidden}.table-panel>.panel-head{padding:22px 23px;margin:0;border-bottom:1px solid #ededf3}.table-panel table{min-width:850px}.table-panel th{padding:12px 16px;border:0;background:#f8f8fb;color:#898c9f;text-transform:uppercase;font-size:8px;letter-spacing:.08em}.table-panel td{padding:14px 16px;border-color:#f0f0f4;color:#56596d;font-size:11px}.table-hover>tbody>tr:hover>*{--bs-table-bg-state:#f8f7ff}.table-panel td>b,.table-panel td>small{display:block}.table-panel td>small{margin-top:3px;color:#9699aa}.status-select{padding:6px 26px 6px 9px;border:1px solid #ddd9ed;border-radius:99px;color:#6447cc;background-color:#f2efff;text-transform:capitalize;font-size:9px;font-weight:800}.product-cell{display:flex;align-items:center;gap:10px;min-width:235px}.thumb{width:50px;height:50px;flex:0 0 50px;position:relative;overflow:hidden;border-radius:10px;display:grid;place-items:center;background:#eceaf5}.thumb img{width:100%;height:100%;object-fit:cover}.thumb span{position:absolute;inset:0;display:grid;place-items:center;color:#fff;background:rgba(15,14,34,.6);font-size:8px;font-weight:900;opacity:0}.thumb:hover span{opacity:1}.empty-thumb{color:#7353da;font-size:20px}.product-cell>div{display:flex;flex-direction:column}.product-cell small{color:#9396a7;font-size:9px}.stock{padding:5px 8px;border-radius:99px;color:#26775c;background:#e1f6ee;font-size:9px;font-weight:800}.stock.low{color:#9d641f;background:#fff0d7}.gallery-count{color:#674bd0;font-weight:800}.icon-button{width:34px;height:34px;border:0;border-radius:9px;display:grid;place-items:center;color:#684bd2;background:#efebff}.import-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:19px}.import-copy{padding:34px}.import-icon{width:55px;height:55px;margin-bottom:20px;display:grid;place-items:center;border-radius:16px;color:#fff;background:linear-gradient(135deg,#7451e8,#d45fa8);font-size:22px}.import-copy h2{margin:9px 0 12px;font-size:27px}.import-copy p{color:#76798d;font-size:12px;line-height:1.65}.import-copy ol{list-style:none;padding:0;margin:24px 0;display:grid;gap:12px}.import-copy li{display:flex;align-items:center;gap:9px;font-size:11px}.import-copy li b{width:23px;height:23px;display:grid;place-items:center;border-radius:50%;color:#714fdc;background:#eee9ff;font-size:9px}.drop-panel{padding:27px}.dropzone{min-height:250px;padding:28px;border:2px dashed #cbc5e7;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#faf9ff;text-align:center;cursor:pointer}.dropzone input{display:none}.dropzone>i{margin-bottom:14px;color:#7453df;font-size:38px}.dropzone b{font-size:13px}.dropzone span,.dropzone small{margin-top:5px;color:#9295a7;font-size:10px}.dropzone small{margin-top:17px}.preview-head{margin:18px 0 10px;display:flex;justify-content:space-between}.preview-head b{font-size:11px}.preview-head span{color:#258363;font-size:9px;font-weight:800}#importPreview table{font-size:9px}.admin-modal{padding:13px;border:0;border-radius:21px}.admin-modal h2{margin:5px 0;font-size:23px}.admin-modal p{margin:0;color:#85889b;font-size:10px}.admin-modal label small{display:block;margin-top:5px;color:#999bad;font-size:8px;font-weight:400}.admin-toast{position:fixed;right:24px;top:108px;z-index:100;min-width:280px;padding:12px 14px;border-radius:12px;display:flex;justify-content:space-between;color:#fff;background:#298866;box-shadow:0 14px 35px rgba(26,40,36,.22);font-size:11px;font-weight:800}.admin-toast.error{background:#b54c5a}.admin-toast button{border:0;color:#fff;background:transparent}.empty{padding:35px;color:#999bad;text-align:center;font-size:10px}.scrim{display:none}@keyframes fade{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.metrics{grid-template-columns:1fr 1fr}.admin-search{width:180px}}
@media(max-width:900px){.sidebar{transform:translateX(-105%);transition:.3s}.sidebar.open{transform:none}.side-close{display:grid;position:absolute;right:14px;top:14px;width:34px;height:34px;border:0;border-radius:9px;place-items:center;color:#fff;background:rgba(255,255,255,.1)}.scrim.show{display:block;position:fixed;inset:0;z-index:70;border:0;background:rgba(15,14,34,.5)}.admin-main{margin-left:0}.menu-button{display:grid;place-items:center}.topbar{padding:0 20px}.admin-content{padding:23px 20px 45px}.overview-grid,.import-grid{grid-template-columns:1fr}}
@media(max-width:600px){.topbar{height:78px;padding:0 13px}.topbar p{display:none}.topbar h1{font-size:17px}.top-actions{margin-left:auto}.top-actions .admin-primary span{display:none}.top-actions .admin-primary{width:42px;padding:0}.admin-search{position:absolute;left:13px;right:13px;top:89px;width:auto;background:#fff}.admin-content{padding:17px 13px 40px}.hero-panel{padding:27px 23px;align-items:flex-start;flex-direction:column}.hero-panel h2{font-size:23px}.metrics{grid-template-columns:1fr}.overview-grid{grid-template-columns:1fr}.table-panel{margin-top:50px}.sidebar{width:min(285px,88vw)}.admin-toast{left:13px;right:13px;top:90px;min-width:0}}

/* ---- CRM additions: pipeline, lead filters + details, photo manager ---- */
.pipeline em.st-new{background:linear-gradient(90deg,#7657ef,#a28bff)}.pipeline em.st-contacted{background:linear-gradient(90deg,#377fdd,#7fb2f0)}.pipeline em.st-qualified{background:linear-gradient(90deg,#d0882a,#f0b866)}.pipeline em.st-quoted{background:linear-gradient(90deg,#c25a9b,#e590c4)}.pipeline em.st-won{background:linear-gradient(90deg,#24916a,#5fc79f)}.pipeline em.st-lost{background:linear-gradient(90deg,#9a9cb0,#c7c8d4)}
.status-chips{padding:14px 23px;display:flex;flex-wrap:wrap;gap:7px;border-bottom:1px solid #ededf3}.status-chips button{padding:6px 11px;border:1px solid #e2e2eb;border-radius:99px;color:#5e6075;background:#fff;font-size:10px;font-weight:800}.status-chips button b{margin-left:3px;color:#9a9cb0}.status-chips button.active{color:#fff;background:#6447cc;border-color:#6447cc}.status-chips button.active b{color:#ddd5ff}
.lead-row{cursor:pointer}.table-panel td>small.lead-note{margin-top:5px;color:#7a7d90}.table-panel td>small.lead-note.internal{color:#6447cc}
.gallery-count{padding:5px 9px;border:0;border-radius:99px;background:#f2efff;font-size:10px}.live-link{color:#26775c;text-decoration:none;font-size:10px;font-weight:800}.live-link .bi-circle-fill{font-size:7px}.hidden-pill{padding:4px 9px;border-radius:99px;color:#77788a;background:#efeff4;font-size:9px;font-weight:800}
.import-columns{margin-top:18px;padding:13px;border-radius:12px;background:#f8f8fb;font-size:10px!important;line-height:1.7!important}
.admin-modal .modal-body label small{display:block;margin-top:5px;color:#999bad;font-size:8px;font-weight:400}
.image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.image-grid figure{margin:0;overflow:hidden;border:2px solid #ececf3;border-radius:14px;background:#fff}.image-grid figure.is-cover{border-color:#7b5af1}.image-grid img{width:100%;aspect-ratio:1;object-fit:cover;display:block}.image-grid figcaption{padding:7px;display:flex;align-items:center;justify-content:space-between;gap:6px}.image-grid figcaption button{padding:4px 8px;border:0;border-radius:8px;color:#5e40d2;background:#f0ecff;font-size:9px;font-weight:800}.image-grid figcaption button.danger{color:#b54c5a;background:#fdecee}.cover-badge{color:#5e40d2;font-size:9px;font-weight:900}.image-grid .empty{grid-column:1/-1}
.image-upload{margin-top:18px;padding-top:16px;display:flex;flex-wrap:wrap;align-items:end;gap:12px;border-top:1px solid #ededf3}.image-upload label{flex:1;min-width:220px}
.lead-actions{margin-bottom:18px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.lead-actions a{text-decoration:none}.lead-actions .wa{color:#178a45;background:#e6f7ed;border-color:#c9ecd6}.lead-actions .status-select{margin-left:auto;padding-top:9px;padding-bottom:9px}
.lead-details{margin:0 0 18px;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.lead-details>div{padding:11px 13px;border-radius:12px;background:#f8f8fb}.lead-details>div.wide{grid-column:1/-1}.lead-details dt{color:#9093a6;text-transform:uppercase;letter-spacing:.08em;font-size:8px}.lead-details dd{margin:4px 0 0;color:#2c2d43;font-size:12px;white-space:pre-line}
.lead-notes-label textarea{min-height:110px}

/* Scrollable modals whose body sits inside a <form> */
.modal-dialog-scrollable .modal-content>form{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}.modal-dialog-scrollable .modal-content>form>.modal-body{overflow-y:auto;overflow-x:hidden}
/* Price toggle + categories screen */
.field-label{display:block;margin-bottom:7px;color:#505267;font-size:11px;font-weight:800}.price-toggle{display:flex;gap:6px}.price-toggle label.btn{width:auto;flex:1;padding:9px 10px;border:1px solid #dcdce6;border-radius:10px;color:#5e6075;background:#fff;font-size:11px;font-weight:800}.price-toggle .btn-check:checked+label.btn{color:#fff;background:#6447cc;border-color:#6447cc}
.category-layout{display:grid;grid-template-columns:1.4fr .9fr;gap:19px;align-items:start}.panel-note{color:#76798d;font-size:11px;line-height:1.6}.category-name{color:#2c2d43;font-weight:800}.order-buttons{display:flex;gap:4px}.order-buttons .icon-button,.category-actions .icon-button{width:30px;height:30px}.category-actions{display:flex;gap:4px;justify-content:flex-end}.icon-button:disabled{opacity:.35;cursor:not-allowed}.icon-button.danger{color:#b54c5a;background:#fdecee}
@media(max-width:900px){.category-layout{grid-template-columns:1fr}}
