@charset "UTF-8";
:root{--ink:#162c36;--muted:#6c7b88;--green:#0d766e;--green-dark:#073b3c;--line:#e4eaf0;--paper:#f5f7fa;--radius:14px;--shadow:0 4px 22px #172e3e05;font-family:Inter,"Segoe UI",Arial,"Noto Sans Bengali",sans-serif;color:var(--ink);font-size:14px;line-height:1.55}*{box-sizing:border-box}body{margin:0;background:var(--paper)}a{color:var(--green);text-decoration:none}a:hover{color:#064e48}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1{font-size:30px;line-height:1.22;letter-spacing:-1px;margin-bottom:10px;font-weight:700}h2{font-size:17px;letter-spacing:-.3px;margin-bottom:16px}small,.small{font-size:12px}.muted{color:var(--muted)}.block{display:block}.positive{color:var(--green);font-weight:700}.mono{font-family:"Consolas","SFMono-Regular",monospace}.eyebrow{display:block;color:var(--green);font-size:10px;font-weight:800;letter-spacing:1.8px;margin-bottom:12px}.eyebrow.light{color:#84d9c7}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:244px;background:#0c2b31;color:#bed0d4;display:flex;flex-direction:column;padding:29px 17px 0;z-index:30}.brand{display:flex;gap:12px;align-items:center;color:#fff;font-size:22px;font-weight:700;letter-spacing:-.7px;padding:0 9px 35px}.brand:hover{color:#fff}.brand-mark{width:41px;height:41px;border-radius:12px;background:#b3e9d9;color:#104743;display:grid;place-content:center;font-size:23px;font-weight:800;letter-spacing:-3px;padding-right:3px}.brand small{display:block;font-size:8px;color:#9bb3b7;letter-spacing:2px;font-weight:500;margin-top:3px}.nav-label{font-size:9px;font-weight:700;letter-spacing:1.6px;color:#78969d;margin:21px 14px 10px}.nav-item{display:flex;align-items:center;gap:12px;color:#aec4c9;padding:11px 14px;border-radius:8px;margin-bottom:5px;font-size:12px;font-weight:500}.nav-item:hover{background:#173c43;color:#fff}.nav-item.active{background:#1a4e50;color:#c7f3e6;box-shadow:inset 3px 0 #93d6c5}.nav-icon{font-size:18px;width:20px;text-align:center}.sidebar-bottom{margin-top:auto}.source-note{font-size:10px;margin:25px 13px;color:#b2c7cb}.source-note small{display:block;font-size:9px;color:#71969e;margin:5px 0 0 17px}.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#20a981;box-shadow:0 0 0 4px #1ba17813;margin-right:10px}.live-dot.paused{background:#d9a03b}.profile{display:flex;gap:10px;align-items:center;border-top:1px solid #24444b;color:#ecf3f5;padding:21px 5px;font-size:11px}.profile small{display:block;font-size:9px;color:#8aabb2}.avatar{background:#2e535c;width:33px;height:33px;border-radius:10px;display:grid;place-content:center}.main-wrap{margin-left:244px;min-height:100vh;display:flex;flex-direction:column}.topbar{height:74px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px;font-size:11px}.breadcrumb{color:#94a3af}.divider{color:#c8d1db;margin:0 13px}.top-actions{display:flex;gap:22px;align-items:center}.date-label{color:#7c8a96;font-size:10px}.text-button{padding:0;border:0;background:none;color:var(--green);font-size:11px}.text-button.danger{color:#b54754}.menu-toggle{display:none!important}.main-content{padding:35px 38px 50px;max-width:1900px;width:100%;margin:0 auto;flex:1}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:26px}.page-heading p{font-size:12px;margin-bottom:0}.heading-actions{display:flex;gap:10px;align-items:center;flex-shrink:0}.button{border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:8px;padding:11px 16px;font-weight:600;font-size:11px;white-space:nowrap;line-height:1.5;transition:background .15s}.button.primary{background:var(--green);color:#fff;border-color:var(--green)}.button.primary:hover{background:#095f59}.button.secondary{background:white;border-color:#d8e1e8;color:#334c59}.button.secondary:hover{background:#f2f6f8}.button.ghost{background:transparent;color:var(--muted)}.button:disabled{opacity:.6;cursor:wait}.button.full-width{width:100%}.small-button{font-size:10px;padding:7px 11px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:21px}.stat-card{display:flex;flex-direction:column;background:white;border:1px solid var(--line);border-radius:12px;padding:22px 23px;color:var(--ink)}.stat-card>span{color:#697d87;font-size:11px;font-weight:600}.stat-card>strong{font-size:35px;line-height:1.4;font-weight:650;letter-spacing:-1px;margin:5px 0}.stat-card>small{font-size:10px;color:#92a0aa}.stat-card.accent{background:#eaf7f1;border-color:#cce8dc}.stat-card.accent>strong{color:#0a7263}.collector-strip{display:flex;align-items:center;justify-content:space-between;border:1px solid #dbe6e6;border-radius:9px;padding:13px 18px;background:#f0f7f6;font-size:10px;gap:12px}.collector-status{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.collector-status .live-dot{margin-right:0}.collector-status>span:last-child{color:#8a9b9e;border-left:1px solid #d2dfdd;padding-left:12px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin:29px 0 13px}.section-heading h2{margin:0}.section-heading a,.card-heading a{font-size:10px;font-weight:600}.category-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:28px}.category-tile{display:flex;align-items:center;gap:13px;padding:17px 19px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}.category-tile:hover{border-color:var(--category-color)}.category-icon{display:grid;place-content:center;width:35px;height:35px;border-radius:9px;background:color-mix(in srgb,var(--category-color) 8%,white);color:var(--category-color);font-size:22px}.category-tile strong{font-size:11px;display:block}.category-tile small{font-size:9px;color:#91a0ac}.category-count{margin-left:auto;font-size:21px;font-weight:650;letter-spacing:-.5px}.dashboard-columns{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:22px}.card-heading{padding:20px 22px 16px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.card-heading h2{margin:0;font-size:14px}.tender-preview{padding:18px 22px;border-bottom:1px solid #edf1f4}.tender-preview:last-child{border-bottom:0}.tender-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:10px;margin-bottom:9px}.tender-meta .mono{color:#7d8e99}.preview-title{display:block;color:#223e48;font-size:12px;font-weight:650;line-height:1.65}.tender-preview p{font-size:10px;margin:6px 0 10px}.badge-row{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.category-badge{font-size:9px;padding:3px 7px;border-radius:4px;background:color-mix(in srgb,var(--category-color) 8%,white);color:var(--category-color);font-weight:600;display:inline-block}.status-badge{display:inline-block;border-radius:20px;padding:3px 8px;font-size:9px;font-weight:650;line-height:1.5;white-space:nowrap}.status-badge.open{background:#e8f6ef;color:#128459}.status-badge.closed{background:#f1f3f6;color:#718192}.status-badge.cancelled{background:#ffedf0;color:#c04059}.amended{font-size:9px;color:#a5761c;display:inline-block;margin-top:5px}.deadline-row{padding:16px 20px;display:flex;gap:14px;border-bottom:1px solid #eef2f5;color:var(--ink)}.deadline-row:last-child{border-bottom:0}.deadline-date{display:flex;flex-direction:column;align-items:center;width:40px;min-width:40px;background:#f3f6f8;border-radius:8px;padding:6px 0}.deadline-date>strong{font-size:19px;line-height:1.15;font-weight:650}.deadline-date>small{font-size:9px;color:#82919d}.deadline-row>span:last-child>strong{font-size:10px;line-height:1.5;display:block;font-weight:600}.deadline-row>span:last-child>small{font-size:9px;display:block;margin-top:5px}.scan-card{padding:22px;margin-top:20px}.scan-card h2{font-size:14px}.scan-card p{font-size:10px}.compact-dl{margin:12px 0 18px;font-size:10px}.compact-dl>div{display:flex;justify-content:space-between;gap:16px;margin-bottom:10px}.compact-dl dt{color:#7f8e99}.compact-dl dd{margin:0;text-align:right;font-weight:550}.form-hint{font-size:10px;color:#8b98a3;line-height:1.7;margin:13px 0 0}.empty-state{text-align:center;padding:44px 22px}.empty-state h2{margin:15px 0 9px}.empty-state p{color:var(--muted);font-size:12px;max-width:520px;margin:0 auto 22px}.empty-state.card{margin-top:22px}.empty-icon{font-size:30px;color:#80b8a7;width:60px;height:60px;display:grid;place-content:center;background:#edf8f2;border-radius:50%;margin:auto}.empty-mini{text-align:center;color:#99a5af;padding:35px 20px;font-size:11px}.footer{padding:18px 38px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:9px;color:#97a2ac}.alert{border:1px solid;border-radius:9px;padding:14px 18px;font-size:12px;margin-bottom:22px;overflow-wrap:anywhere}.alert.success{background:#ebf9ef;color:#1a7150;border-color:#c7e7d0}.alert.error{background:#fff1f3;color:#9c3449;border-color:#f5cdd5}.alert.info{background:#edf6ff;color:#256397;border-color:#c7e0f6}.alert ul{margin:8px 0 0;padding-left:18px}label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:600;margin-bottom:18px}label>small{color:#899aa4;font-size:10px;font-weight:400;line-height:1.6}input,select,textarea{width:100%;border:1px solid #dce3e9;border-radius:7px;background:#fff;color:#233e4a;padding:10px 12px;font-size:12px;line-height:1.5;min-height:40px}input::placeholder,textarea::placeholder{color:#9ba9b5;opacity:1}input:focus,select:focus,textarea:focus{border-color:#5caf9b;outline:2px solid #c9e9dd;outline-offset:1px}input[type=checkbox]{width:15px;height:15px;min-height:0;margin:0;accent-color:var(--green);flex-shrink:0}textarea{resize:vertical}.checkbox-label{flex-direction:row;align-items:center;gap:10px;font-weight:500}.filter-panel{padding:22px;margin-bottom:22px}.search-row{display:flex;gap:10px;align-items:start}.search-field{flex:1;margin:0}.search-field input{padding:12px 15px;background:#fbfcfd}.search-row .button{min-height:44px}.filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 16px;margin-top:20px}.filter-grid label{margin-bottom:15px;font-size:10px}.filter-grid select,.filter-grid input{font-size:11px}.advanced-filters summary{cursor:pointer;font-weight:600;font-size:11px;color:var(--green);padding:5px 0 11px}.advanced-filters summary>span{font-size:10px;color:#9ba7b1;font-weight:400;margin-left:10px}.filter-bottom{border-top:1px solid var(--line);padding-top:17px;display:flex;justify-content:space-between;align-items:center;gap:14px}.filter-bottom>span{font-size:10px}.filter-bottom>div{display:flex;align-items:center;gap:12px}.inline-label{display:flex;flex-direction:row;gap:8px;align-items:center;margin:0;color:#7f8e99;font-size:10px;white-space:nowrap}.inline-label select{width:auto;padding:6px 8px;min-height:34px;font-size:10px}.table-card{overflow:hidden}.table-scroll{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;text-align:left}.data-table th{background:#fafbfc;border-bottom:1px solid var(--line);color:#7d8b96;font-size:9px;font-weight:600;letter-spacing:.2px;padding:15px 18px;white-space:nowrap}.data-table td{padding:20px 18px;border-bottom:1px solid #edf1f5;vertical-align:top;font-size:11px;line-height:1.65}.data-table tbody>tr:last-child td{border-bottom:0}.data-table tbody>tr:hover{background:#fbfdfc}.tender-table{min-width:1010px}.tender-table th:first-child{width:15%}.tender-table th:nth-child(2){width:34%}.tender-table th:nth-child(3){width:20%}.table-title{font-weight:600;color:#24414d;font-size:11px}.tender-id{color:var(--green);font-size:11px;font-weight:700}.reference-text{color:#8b99a4;font-size:9px;overflow-wrap:anywhere;max-width:140px;margin-top:8px}.entity-name{font-size:10px;margin-bottom:4px}.tender-table td>small{font-size:9px}.date-cell span,.date-cell strong,.date-cell small{display:block;white-space:nowrap}.date-cell small{font-size:8px;line-height:1.6}.date-cell span{font-size:10px;margin-bottom:8px}.date-cell strong{font-size:10px;font-weight:600}.pagination{display:flex;gap:20px;justify-content:space-between;align-items:center;padding:18px;border-top:1px solid var(--line);background:#fff}.pagination>span{font-size:10px}.pagination>div{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.page-link{display:inline-block;border:1px solid #e1e7ed;border-radius:5px;padding:5px 8px;font-size:10px;color:#68808d}.page-link.current{background:#0e766f;color:white;border-color:#0e766f}.page-link.disabled{color:#c3cbd1}.back-link{display:inline-block;font-size:11px;margin-bottom:24px;color:#79919c}.detail-title{max-width:860px;font-size:25px;line-height:1.5;letter-spacing:-.4px}.detail-columns{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:24px;align-items:start}.detail-card{padding:25px;margin-bottom:22px}.detail-dl{margin:0}.detail-dl>div{display:grid;grid-template-columns:155px 1fr;gap:20px;padding:15px 0;border-bottom:1px solid #eef1f5;font-size:12px}.detail-dl>div:last-child{border:0}.detail-dl dt{font-size:11px;color:#81939e}.detail-dl dd{margin:0;overflow-wrap:anywhere}.date-block{display:flex;flex-direction:column;gap:5px;font-size:11px;margin:18px 0}.date-block strong{font-size:17px;font-weight:600}.closing-date{padding:18px;background:#eef8f3;border-radius:8px;color:#0a7561}.closing-date small{font-size:9px;color:#84a79a}.match-explanation{padding:10px 0;border-bottom:1px solid #edf1f5}.match-explanation p{font-size:11px;margin:10px 0;color:#7c909b}.form-card{padding:28px;margin-bottom:23px}.form-card>h2{margin-bottom:22px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.color-input{padding:4px;width:90px}.checkbox-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 15px}fieldset{border:1px solid var(--line);border-radius:8px;padding:18px;margin:0 0 22px}legend{padding:0 7px;font-size:11px;font-weight:600}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px;padding-top:22px;border-top:1px solid var(--line)}.keyword{font-size:9px;background:#f1f5f8;color:#59707e;padding:3px 7px;border-radius:4px;display:inline-block;margin:0 3px 5px 0}.keyword-cell{max-width:350px}.category-label{border-left:3px solid var(--category-color);padding-left:8px;display:block;font-size:11px}.count-link{font-size:16px}.row-actions{display:flex;align-items:center;gap:15px}.callout{background:#edf4f6;border:1px solid #dce7eb;border-radius:10px;padding:22px;font-size:11px;color:#607e8c;margin:24px 0}.callout strong{color:#395866;font-size:12px}.callout p{font-size:11px;margin:10px 0 0;line-height:1.8}.callout.compact{padding:16px;margin:0 0 20px}.log-message{max-width:470px;overflow-wrap:anywhere}.narrow-form{max-width:550px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.login-body{background:#fff}.login-shell{display:grid;grid-template-columns:48% 52%;min-height:100vh}.login-story{background:radial-gradient(ellipse at 0 0,#1b6d64 0,transparent 58%),#0b3035;color:white;padding:42px 55px;display:flex;flex-direction:column}.login-story .brand{padding:0;font-size:24px}.login-story-main{margin:auto 0;padding:80px 0}.login-story-main h1{font-size:45px;line-height:1.25;letter-spacing:-1.5px;margin:24px 0}.login-story-main p{color:#a7c8c9;max-width:370px;font-size:13px;line-height:1.9}.login-features{margin-top:38px;display:flex;flex-direction:column;gap:17px;color:#8ab8b4;font-size:11px}.muted-light{color:#5f8d94;font-size:9px}.login-form-panel{display:grid;place-content:center;padding:45px}.login-card{width:360px;max-width:100%}.login-card h2{font-size:24px;letter-spacing:-.8px;line-height:1.4;margin:10px 0}.login-card>p{font-size:12px;margin-bottom:30px}.login-card form{margin-top:30px}.login-card label{font-size:11px;margin-bottom:22px}.login-card input{padding:12px 14px;background:#fcfdfe}.login-card .button{font-size:12px;justify-content:space-between}.login-card .form-hint{font-size:10px;margin-top:28px;line-height:1.8}
@media(min-width:1650px){.main-content{padding:42px 55px}.stat-card{padding:27px}.dashboard-columns{grid-template-columns:1.7fr 1fr}.category-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:1250px){.sidebar{width:215px}.main-wrap{margin-left:215px}.main-content{padding:28px 25px}.topbar{padding:0 25px}.stat-card{padding:18px}.stat-card>strong{font-size:29px}.dashboard-columns{grid-template-columns:1.3fr 1fr}.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-bottom{align-items:start;flex-direction:column}.detail-columns{grid-template-columns:minmax(0,1.4fr) minmax(260px,1fr)}.checkbox-grid{grid-template-columns:repeat(2,1fr)}.login-story{padding:38px}.login-story-main h1{font-size:38px}}
@media(max-width:1000px){.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-columns,.detail-columns{grid-template-columns:1fr}.category-grid{grid-template-columns:1fr}.collector-strip{align-items:start;flex-direction:column}.page-heading{align-items:start}.heading-actions{flex-wrap:wrap;justify-content:flex-end}.footer{padding:18px 25px;gap:15px}.footer>span{max-width:220px}.login-shell{grid-template-columns:43% 57%}.login-story-main h1{font-size:30px}.login-form-panel{padding:35px}.login-card{width:320px}}
@media(max-width:760px){.sidebar{transform:translateX(-100%);transition:transform .2s;width:240px}.menu-open .sidebar{transform:translateX(0);box-shadow:10px 0 50px #0b303544}.main-wrap{margin-left:0}.topbar{height:64px;padding:0 18px;gap:12px}.menu-toggle{display:inline-flex!important;padding:4px 8px}.topbar>div:nth-child(2){margin-right:auto}.top-actions{gap:12px}.date-label{display:none}.main-content{padding:26px 17px}.page-heading{flex-direction:column;gap:16px}h1{font-size:25px}.heading-actions{justify-content:flex-start}.stats-grid{gap:11px}.stat-card{padding:17px}.stat-card>strong{font-size:28px}.stat-card>span{font-size:10px}.stat-card>small{font-size:9px}.category-grid{gap:10px}.filter-panel{padding:16px}.filter-grid{gap:0 12px}.filter-bottom>div{flex-wrap:wrap}.advanced-filters summary>span{display:none}.form-grid{grid-template-columns:1fr;gap:0}.form-card{padding:22px}.data-table td,.data-table th{padding:14px}.detail-dl>div{grid-template-columns:1fr;gap:5px}.login-shell{display:block}.login-story{min-height:150px;padding:25px}.login-story .brand{padding:0}.login-story-main,.login-story>.muted-light{display:none}.login-form-panel{padding:45px 24px}.login-card{width:380px}.pagination{align-items:start;flex-direction:column;gap:14px}.pagination>div{justify-content:start}.footer{font-size:8px;padding:17px}.detail-title{font-size:22px}}
