@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+Bengali:wght@400;500;600;700;800&display=swap');
:root{--green:#08753f;--green-dark:#052d1e;--green-deep:#031f15;--green-soft:#eaf7ef;--bg:#f3f6f4;--border:#e2e8e4;--text:#15231c;--muted:#718078;--danger:#c92a35}*{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%;font-family:'Noto Sans Bengali',Arial,sans-serif;color:var(--text);background:var(--bg)}.admin-layout{min-height:100vh}.admin-sidebar{position:fixed;left:0;top:0;bottom:0;width:264px;background:linear-gradient(180deg,var(--green-deep),var(--green-dark));color:#fff;z-index:1050;overflow-y:auto;box-shadow:8px 0 28px rgba(0,0,0,.08)}.sidebar-brand{height:82px;display:flex;flex-direction:column;justify-content:center;padding:0 24px;border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-brand a{color:#fff;text-decoration:none;font-size:24px;font-weight:800;letter-spacing:-.6px;line-height:1}.sidebar-brand b{color:#4be28a}.sidebar-brand small{margin-top:7px;color:rgba(255,255,255,.5);font-size:11px}.sidebar-nav{padding:14px 13px}.nav-label{padding:17px 12px 7px;color:rgba(255,255,255,.38);font-size:10px;font-weight:800;letter-spacing:1px}.sidebar-nav .nav-link,.sidebar-bottom .nav-link{display:flex;align-items:center;gap:12px;color:rgba(255,255,255,.76);text-decoration:none;padding:11px 13px;border-radius:9px;margin-bottom:4px;font-size:13px;transition:.2s}.nav-link i{width:20px;text-align:center;color:rgba(255,255,255,.52)}.nav-link:hover{color:#fff;background:rgba(255,255,255,.07)}.nav-link:hover i,.nav-link.active i{color:#fff}.nav-link.active{color:#fff!important;background:linear-gradient(90deg,#08753f,#0a8b4c);box-shadow:0 6px 16px rgba(0,0,0,.12)}.sidebar-bottom{position:sticky;bottom:0;margin-top:14px;padding:13px;background:rgba(3,31,21,.55);border-top:1px solid rgba(255,255,255,.08)}.logout-link:hover{background:rgba(201,42,53,.18)!important;color:#ffb8bd!important}.admin-main{margin-left:264px;min-height:100vh}.admin-topbar{height:78px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 30px;position:sticky;top:0;z-index:1000;box-shadow:0 2px 10px rgba(0,0,0,.02)}.topbar-title{font-size:18px;font-weight:800}.topbar-subtitle{font-size:11px;color:var(--muted);margin-top:1px}.topbar-actions{display:flex;align-items:center;gap:10px}.admin-user{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700}.avatar{width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--green-soft);color:var(--green);font-weight:800}.sidebar-toggle{display:none;border:0;background:transparent;font-size:20px;color:var(--green)}.admin-page{padding:30px}.admin-footer{padding:18px 30px;border-top:1px solid var(--border);background:#fff;color:var(--muted);font-size:11px;display:flex;gap:7px}.stat-card,.table-card,.form-card,.quick-card{background:#fff;border:1px solid var(--border);border-radius:15px;box-shadow:0 4px 18px rgba(15,30,20,.035)}.stat-card{padding:20px;height:100%}.stat-label{font-size:12px;color:var(--muted);font-weight:600}.stat-value{font-size:29px;font-weight:800;margin-top:4px}.stat-icon{width:44px;height:44px;border-radius:12px;background:var(--green-soft);color:var(--green);display:flex;align-items:center;justify-content:center}.table-card{padding:20px}.table-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.table-card-header h5{margin:0;font-size:16px;font-weight:800}.table>thead>tr>th{font-size:11px;color:#78847d;text-transform:uppercase;border-bottom-color:var(--border)}.table>tbody>tr>td{font-size:13px;vertical-align:middle}.empty-state{padding:32px;text-align:center;color:var(--muted);font-size:13px}.quick-card{padding:22px;background:linear-gradient(135deg,#08753f,#052d1e);color:#fff;border:0}.quick-card .btn{background:#fff;color:var(--green);border:0}.form-card{padding:24px}.page-thumb{background:#fff;border:1px solid var(--border);border-radius:10px;overflow:hidden}.page-thumb img{width:100%;height:210px;object-fit:cover;background:#f2f4f3}.login-page{min-height:100vh;background:linear-gradient(135deg,#052d1e,#08753f);display:flex;align-items:center;justify-content:center}.login-wrap{width:min(450px,92vw)}.login-brand{text-align:center;margin-bottom:20px}.login-brand a{font-size:28px;font-weight:800;color:#fff;text-decoration:none}.login-brand b{color:#4be28a}.login-card{background:#fff;border-radius:18px;padding:32px;box-shadow:0 25px 70px rgba(0,0,0,.2)}.login-card h1{font-size:24px;font-weight:800}.login-demo{margin-top:18px;padding:13px;border-radius:9px;background:var(--green-soft);font-size:12px;color:#476052}.sidebar-overlay{display:none}@media(max-width:991px){.admin-sidebar{transform:translateX(-100%);transition:transform .25s}.admin-sidebar.show{transform:translateX(0)}.admin-main{margin-left:0}.sidebar-toggle{display:inline-flex}.sidebar-overlay.show{display:block;position:fixed;inset:0;background:rgba(0,0,0,.38);z-index:1040}.admin-topbar{padding:0 18px}.admin-page{padding:20px 16px}}@media(max-width:575px){.topbar-actions .btn-outline-success{display:none}.admin-footer{padding:16px}.stat-value{font-size:24px}}
/* V6 visual polish */
.admin-sidebar{width:252px}.admin-main{margin-left:252px}.sidebar-brand{height:76px;padding:0 22px}.sidebar-brand a{font-size:23px}.sidebar-nav{padding:12px}.nav-label{padding-top:15px}.sidebar-bottom{padding:11px}.admin-topbar{height:72px;padding:0 26px}.admin-page{padding:26px}.tutorial-card{display:flex;gap:15px;align-items:flex-start;background:linear-gradient(135deg,#effaf3,#fff);border:1px solid #d8e9de;border-radius:15px;padding:18px}.tutorial-icon{width:42px;height:42px;flex:0 0 42px;border-radius:12px;background:#dff4e7;color:var(--green);display:grid;place-items:center;font-size:18px}.tutorial-card h5{font-weight:800}.tutorial-steps{display:flex;flex-wrap:wrap;gap:8px}.tutorial-steps span{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid #e1ebe5;border-radius:999px;padding:7px 10px;font-size:11px;color:#4d5c54}.tutorial-steps b{color:var(--green)}.hotspot-designer{position:relative;background:#e3e7e5;border:1px solid var(--border);border-radius:12px;overflow:hidden;line-height:0;cursor:crosshair;touch-action:none}.hotspot-designer>img{display:block;width:100%;height:auto;user-select:none;-webkit-user-drag:none}.hotspot-selection{position:absolute;display:none;border:2px solid #08753f;background:rgba(8,117,63,.14);box-shadow:0 0 0 9999px rgba(0,0,0,.06);pointer-events:none}.existing-hotspot{position:absolute;border:2px dashed rgba(8,117,63,.65);background:rgba(8,117,63,.08);padding:0;cursor:pointer;line-height:normal}.existing-hotspot span{position:absolute;left:4px;top:4px;background:#08753f;color:#fff;font-size:9px;padding:3px 5px;border-radius:3px;max-width:90%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.page-thumb{background:#fff;border:1px solid var(--border);border-radius:10px;overflow:hidden}.page-thumb img{width:100%;height:260px;object-fit:contain;background:#f5f7f6;display:block}.page-thumb .btn{border-radius:0}.dashboard-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.dashboard-heading h1{font-size:26px;font-weight:800;margin:0}.dashboard-heading p{color:var(--muted);font-size:12px;margin:4px 0 0}.stat-card{padding:19px}.quick-card{min-height:150px}@media(max-width:900px){.admin-sidebar{transform:translateX(-100%);transition:transform .2s ease;width:270px}.admin-sidebar.show{transform:translateX(0)}.admin-main{margin-left:0}.admin-topbar{padding:0 16px}.sidebar-toggle{display:inline-flex}.admin-page{padding:18px}.tutorial-card{padding:14px}.tutorial-steps{display:block}.tutorial-steps span{margin:3px 0;display:flex;border-radius:8px}}

/* V7 hotspot crop designer */
.designer-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;padding-bottom:14px;border-bottom:1px solid var(--border);margin-bottom:10px}.designer-zoom-value{display:inline-flex;min-width:52px;justify-content:center;font-size:11px;font-weight:800;color:var(--green)}.designer-help-bar{background:#f7faf8;border:1px solid #e1ebe5;border-radius:9px;padding:9px 11px;font-size:11px;color:#64726b;margin-bottom:10px}.hotspot-viewport{height:min(720px,68vh);min-height:430px;overflow:auto;background:#202a25;border-radius:11px;border:1px solid #cfd9d3;padding:14px;touch-action:none}.hotspot-canvas{position:relative;width:100%;max-width:none;line-height:0;margin:0 auto}.hotspot-canvas>img{display:block;width:100%;height:auto;user-select:none;-webkit-user-drag:none}.existing-hotspot{position:absolute;z-index:4;border:2px dashed rgba(53,218,128,.95);background:rgba(8,117,63,.10);padding:0;cursor:pointer;appearance:none;line-height:normal}.existing-hotspot:hover,.existing-hotspot.selected{background:rgba(8,117,63,.18);border-style:solid;box-shadow:0 0 0 2px rgba(255,255,255,.55)}.existing-hotspot span{position:absolute;left:4px;top:4px;max-width:calc(100% - 8px);background:#08753f;color:#fff;font:600 10px/1.3 'Noto Sans Bengali',Arial,sans-serif;padding:4px 6px;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.existing-hotspot>i{position:absolute;right:5px;bottom:5px;color:#fff;background:#08753f;border-radius:50%;width:22px;height:22px;display:grid;place-items:center;font-size:9px}.hotspot-selection{position:absolute;z-index:10;display:none;border:2px solid #fff;background:rgba(8,117,63,.12);box-shadow:0 0 0 2px #08753f,0 0 0 9999px rgba(0,0,0,.12);cursor:move;touch-action:none}.selection-label{position:absolute;left:5px;top:5px;background:#08753f;color:#fff;font:700 9px/1.2 'Noto Sans Bengali',Arial,sans-serif;padding:4px 6px;border-radius:3px;white-space:nowrap}.resize-handle{position:absolute;width:12px;height:12px;border:2px solid #08753f;background:#fff;border-radius:50%;z-index:3}.resize-handle.nw{left:-7px;top:-7px;cursor:nwse-resize}.resize-handle.n{left:50%;top:-7px;transform:translateX(-50%);cursor:ns-resize}.resize-handle.ne{right:-7px;top:-7px;cursor:nesw-resize}.resize-handle.e{right:-7px;top:50%;transform:translateY(-50%);cursor:ew-resize}.resize-handle.se{right:-7px;bottom:-7px;cursor:nwse-resize}.resize-handle.s{left:50%;bottom:-7px;transform:translateX(-50%);cursor:ns-resize}.resize-handle.sw{left:-7px;bottom:-7px;cursor:nesw-resize}.resize-handle.w{left:-7px;top:50%;transform:translateY(-50%);cursor:ew-resize}.designer-status{margin-top:10px;padding:9px 11px;border-radius:8px;background:#f8faf9;color:#5d6a64;font-size:11px;border:1px solid var(--border)}.coordinate-box{background:#f7faf8;border:1px solid #e0e9e4;border-radius:10px;padding:12px}.coordinate-title{font-size:12px;font-weight:800;margin-bottom:9px}.coordinate-title span{float:right;font-weight:600;color:var(--green);font-size:10px}.coordinate-box label{font-size:10px;color:#718078;display:block;margin-bottom:3px}.hotspot-form-sticky{position:sticky;top:92px}.table-card .table-responsive{overflow-x:auto}@media(max-width:1199px){.hotspot-form-sticky{position:static}}@media(max-width:767px){.designer-toolbar{display:block}.designer-toolbar>div:last-child{margin-top:10px}.hotspot-viewport{height:62vh;min-height:380px;padding:8px}.resize-handle{width:14px;height:14px}.tutorial-steps span{font-size:10px}}

/* V8 visual crop designer: no manual coordinate work required */
.hotspot-selection{pointer-events:auto !important;touch-action:none !important;}
.hotspot-canvas{min-width:300px;}
.crop-summary{margin-top:10px;padding:10px 12px;border:1px dashed #b9d8c5;border-radius:9px;background:#f3faf5;color:#527062;font-size:11px;}
.crop-summary strong{color:var(--green);}
.existing-hotspot{user-select:none;-webkit-user-select:none;touch-action:none;}
.existing-hotspot.selected{z-index:20;}
