*{box-sizing:border-box} :root{font-family:"Segoe UI",Arial,sans-serif;color:#253c42;background:#f3f5f4;font-size:15px;--green:#176b62;--muted:#6d8184;--line:#dce5e2}
body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline}
button{border:1px solid var(--line);border-radius:9px;padding:10px 15px;background:white;color:#264248;line-height:1.3}button:hover{background:#eff5f3}button.primary{background:var(--green);color:white;border-color:var(--green)}button.primary:hover{background:#10584f}button.danger{color:#aa3b38;border-color:#edceca}button.ghost{background:transparent;border-color:transparent}button.small{padding:6px 10px;font-size:13px}
input,select,textarea{width:100%;padding:11px 12px;border:1px solid #cddbd7;border-radius:8px;background:white;color:#243f45;min-width:0}textarea{min-height:85px;resize:vertical}input[type=checkbox]{width:auto;accent-color:var(--green)}label{display:block;font-size:13px;font-weight:600;margin:0 0 16px}label input,label select,label textarea{display:block;margin-top:7px;font-weight:400}label.check{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:400}label.check input{margin:0}h1,h2,h3,p{margin:0}h1{font-size:29px;letter-spacing:-.8px;line-height:1.2}h2{font-size:21px;letter-spacing:-.35px}h3{font-size:17px}p{line-height:1.65}.muted{color:var(--muted);font-size:13px}.eyebrow{text-transform:uppercase;letter-spacing:1.8px;font-size:11px;font-weight:700;color:#65817f;margin-bottom:10px}.shell{display:grid;grid-template-columns:244px minmax(0,1fr);min-height:100vh}
.sidebar{background:#153c40;color:#d6e6e4;padding:32px 20px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:12px;font-size:20px;font-weight:700;color:white;letter-spacing:-.6px}.logo{width:34px;height:34px;display:grid;place-items:center;background:#e4bc69;color:#173d3e;border-radius:10px;font-size:22px}.sidebar .sub{font-size:11px;margin:8px 0 38px 46px;color:#9eb9b6}.sidebar nav{display:grid;gap:7px}.sidebar nav button{border:0;background:transparent;color:#b9cfcc;text-align:left;display:flex;align-items:center;gap:11px;padding:12px 15px}.sidebar nav button.active{background:#2d5557;color:white}.navicon{font-size:18px;width:22px}.sidebar footer{margin-top:auto;padding:25px 12px 0;border-top:1px solid #315558;font-size:12px;color:#abc3bf;line-height:1.7}.sidebar footer strong{color:#e3efeb;display:block;font-size:13px}.sidebar footer button{margin-top:15px;color:#c5dad6}
main{padding:34px 42px;min-width:0}.topbar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:29px}.topbar .location{font-size:13px;color:var(--muted)}.local-pill{display:inline-flex;gap:7px;align-items:center;font-size:12px;background:#e6eeea;padding:7px 11px;border-radius:25px;color:#47665f}.dot{width:6px;height:6px;border-radius:50%;background:#429473}.heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin:0 0 25px}.heading p{color:var(--muted);margin-top:9px;font-size:14px}.actions{display:flex;flex-wrap:wrap;gap:9px;align-items:center}.requestbox{background:white;border:1px solid var(--line);border-radius:13px;padding:20px 23px;margin-bottom:22px;display:flex;gap:25px;align-items:center;justify-content:space-between}.requestbox select{border:0;background:#f0f5f2;font-size:16px;font-weight:600;padding:10px;max-width:380px}.requestbox .criteria{white-space:pre-line;font-size:13px;line-height:1.65;margin-top:10px;color:#6b7e7f}.requestbox>div:first-child{flex:1}
.notice{padding:13px 17px;border-radius:9px;background:#fbf5e8;color:#86682f;font-size:13px;line-height:1.55;margin-bottom:22px;border:1px solid #ede2c9}.notice.error{background:#fff0ee;color:#a8403d;border-color:#edceca}.notice.info{background:#eaf3f1;color:#376e65;border-color:#d6e7e1}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:0 0 25px}.stat{border-left:2px solid #ccdcd6;padding:2px 0 4px 15px}.stat strong{font-size:26px;font-weight:650;display:block}.stat span{color:var(--muted);font-size:12px}
.toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;border-bottom:1px solid var(--line);padding-bottom:15px}.tabs{display:flex;gap:5px}.tabs button{background:transparent;border:0;border-radius:6px;font-size:14px;color:#6a8082}.tabs button.active{background:#dfebe5;color:#235b50;font-weight:600}.count{display:inline-block;border-radius:5px;background:#ffffff90;padding:0 5px;margin-left:5px;font-size:12px}.filters{display:grid;grid-template-columns:minmax(180px,1fr) 185px 180px;gap:10px;margin:0 0 20px}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:21px}.card{background:white;border:1px solid var(--line);border-radius:13px;overflow:hidden;box-shadow:0 2px 4px #203c3a03}.card-photo{height:166px;position:relative;background:#e7efec}.card-photo img{width:100%;height:100%;object-fit:cover}.placeholder-label{position:absolute;bottom:9px;left:12px;font-size:10px;color:#567574;background:#f6faf6df;border-radius:5px;padding:4px 7px}.card-photo .badge{position:absolute;top:12px;left:12px}.card-body{padding:19px 20px}.title-button{border:0;padding:0;text-align:left;font-size:19px;font-weight:650;letter-spacing:-.35px;background:transparent}.title-button:hover{background:transparent;color:var(--green)}.price{font-size:22px;letter-spacing:-.6px;font-weight:650;margin:8px 0 12px}.specs{display:flex;flex-wrap:wrap;gap:5px 11px;font-size:13px;color:#758487;line-height:1.6}.card-meta{border-top:1px solid #edf0ee;margin-top:16px;padding-top:13px;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#7d8e8f;gap:8px}.card-actions{display:flex;gap:8px;margin-top:15px}.card-actions button{flex:1;padding:8px;font-size:12px}.badge{display:inline-block;border-radius:6px;padding:5px 8px;font-size:11px;font-weight:600;background:#e9efec;color:#657974}.badge.working{background:#fbefcf;color:#886a27}.badge.offered{background:#e1eee5;color:#287053}.badge.selected{background:#dcebe9;color:#11675b}.badge.rejected{background:#f6e4e1;color:#a4544a}.seen{font-size:11px;color:#2b7869;margin-top:12px}.reject-info{font-size:12px;background:#fdf4f2;color:#a0554c;padding:9px 10px;border-radius:6px;margin-top:12px;line-height:1.5}
.empty{padding:60px 24px;border:1px dashed #cbdad4;border-radius:13px;text-align:center;background:#ffffff88;color:#758b87}.empty h2{color:#355a51;margin-bottom:9px}.empty button{margin-top:20px}.panel{background:white;border:1px solid var(--line);border-radius:13px;padding:25px;margin-bottom:20px}.panel h2,.panel h3{margin-bottom:12px}.panel p{margin-bottom:12px}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:15px 12px;border-bottom:1px solid #edf0ee;font-size:14px}th{font-size:11px;text-transform:uppercase;letter-spacing:.7px;color:#7b908b}.row-link{padding:0;border:0;font-weight:600;color:var(--green)}
.auth{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.auth-story{background:#153c40;color:#f0f5ef;padding:60px 11%;display:flex;flex-direction:column;justify-content:center}.auth-story .brand{margin-bottom:70px}.auth-story h1{font-size:44px;line-height:1.17;letter-spacing:-1.5px;max-width:500px}.auth-story h1 span{color:#e4bc69}.auth-story p{color:#b9d0c8;max-width:390px;margin-top:26px}.auth-story .local-pill{align-self:flex-start;margin-top:40px;background:#315757;color:#d7e7df}.auth-form{display:flex;align-items:center;justify-content:center;padding:45px}.auth-card{width:100%;max-width:380px}.auth-card>p{margin:12px 0 27px;color:#7a8b87;font-size:14px}.auth-card button.primary{width:100%;margin:5px 0 17px}.auth-card h2{font-size:27px}.form-error{color:#a9403b;font-size:13px;line-height:1.5;margin:12px 0}.form-error:empty{display:none}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 17px}.form-grid .full{grid-column:1/-1}
dialog{border:1px solid #cfddd7;border-radius:15px;padding:0;width:min(550px,calc(100vw - 28px));max-height:90vh;box-shadow:0 20px 90px #163e4440;color:#294349}dialog.wide{width:min(900px,calc(100vw - 28px))}dialog::backdrop{background:#173d4580;backdrop-filter:blur(3px)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:22px 25px;border-bottom:1px solid #e4eae6;position:sticky;top:0;background:white;z-index:1;gap:15px}.modal-header h2{font-size:19px}.modal-close{font-size:22px;padding:3px 9px}.modal-body{padding:25px}.modal-footer{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.detail-top{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:25px}.detail-top img{width:100%;border-radius:9px;max-height:240px;object-fit:cover}.detail-top .price{font-size:28px}.detail-specs{display:grid;grid-template-columns:1fr 1fr;gap:10px;font-size:13px;margin:15px 0}.detail-specs b{display:block;font-size:10px;color:#7c908a;text-transform:uppercase;margin-bottom:5px;font-weight:500;letter-spacing:.5px}.sectionline{border-top:1px solid var(--line);padding-top:22px;margin-top:22px}.sectionline h3{margin-bottom:13px}.note,.file{padding:12px 14px;border-radius:8px;background:#f2f6f3;margin-bottom:9px;font-size:13px;line-height:1.6}.note p{white-space:pre-wrap}.note .meta,.file .meta{display:flex;align-items:center;gap:10px;justify-content:space-between;color:#748a83;font-size:11px;margin-top:7px}.file a{overflow-wrap:anywhere}.history{font-size:12px;color:#687d77;padding:8px 0;border-bottom:1px solid #eef1ed;line-height:1.6}.detail-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.detail-actions select{width:auto}.inlineform{margin-top:17px}.inlineform textarea{margin-bottom:10px}.inlineform .actions{justify-content:space-between}.client-shell{max-width:1100px;margin:auto;padding:35px 28px}.client-shell .brand{color:#214c43;margin-bottom:40px}.client-shell .heading{margin-top:15px}.client-shell .requestbox{display:block}
#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#1c4e43;color:white;border-radius:9px;padding:13px 22px;z-index:5;box-shadow:0 8px 30px #173d4328;max-width:calc(100vw - 30px);font-size:14px}#toast:empty{display:none}.loading{padding:80px;text-align:center;color:#6a827b}.help{font-size:12px;line-height:1.7;color:#7c8e87;margin:12px 0}.sharebox{font-family:inherit;font-size:12px;word-break:break-all} .feedback-line{margin-top:10px;color:#28705e;font-size:12px}
@media(min-width:1600px){main{padding:40px 55px}.cards{grid-template-columns:repeat(3,1fr)}.card-photo{height:210px}}
@media(max-width:1100px){.shell{grid-template-columns:205px minmax(0,1fr)}.sidebar{padding:25px 14px}main{padding:27px 25px}.heading{flex-wrap:wrap}.filters{grid-template-columns:1fr 150px 150px}.cards{gap:16px}.requestbox{gap:12px;align-items:flex-start}.requestbox .actions{max-width:165px}}
@media(max-width:760px){.shell{display:block}.sidebar{height:auto;position:static;padding:17px 18px}.sidebar .brand{font-size:18px}.sidebar .sub,.sidebar footer{display:none}.sidebar nav{display:flex;overflow-x:auto;margin-top:17px;gap:5px}.sidebar nav button{white-space:nowrap;padding:8px 11px;font-size:12px}.navicon{font-size:14px;width:auto}main{padding:22px 17px}.topbar{margin-bottom:23px}.topbar .location{font-size:11px}.topbar .local-pill{font-size:10px}h1{font-size:25px}.heading{margin-bottom:20px}.heading .actions{width:100%}.requestbox{display:block;padding:17px}.requestbox .actions{max-width:none;margin-top:15px}.requestbox select{width:100%;max-width:100%;padding-left:0;background:white}.stats{gap:6px}.stat{padding-left:9px}.stat strong{font-size:23px}.stat span{font-size:10px}.filters{grid-template-columns:1fr 1fr}.filters input{grid-column:1/-1}.toolbar{display:block}.cards{grid-template-columns:repeat(auto-fill,minmax(270px,1fr))}.card-photo{height:190px}.auth{display:block}.auth-story{padding:28px}.auth-story .brand{margin-bottom:25px}.auth-story h1{font-size:31px}.auth-story p,.auth-story .local-pill{display:none}.auth-form{padding:30px 24px}.auth-card{max-width:480px}.form-grid{grid-template-columns:1fr}.detail-top{grid-template-columns:1fr}.modal-body{padding:20px}.modal-header{padding:17px 20px}.client-shell{padding:25px 17px}.client-shell .brand{margin-bottom:28px}.notice{font-size:12px}.panel{padding:20px}.detail-actions button{font-size:12px}.topbar .location:empty{display:none}}

@media(max-width:760px){.sidebar nav{display:grid;grid-template-columns:1fr 1fr;overflow:visible}.sidebar nav button{white-space:normal}.topbar{gap:8px}}
.search-panel{margin-bottom:22px}.search-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.search-counts{display:flex;flex-wrap:wrap;gap:9px 22px;margin-top:15px;font-size:13px;color:#5e7770}.search-counts b{color:#214c43}.search-panel .notice{margin:13px 0 0}.search-panel summary{cursor:pointer;font-weight:600;font-size:14px}.search-panel .eyebrow{margin-bottom:7px}
.source-results{display:flex;gap:10px;flex-wrap:wrap;font-size:12px;color:#617b73;margin:13px 0}.source-results span{border:1px solid #dbe6e0;border-radius:8px;padding:7px 10px}
.source-closed{font-size:12px;color:#a8403a;background:#fff0ee;border-radius:6px;padding:7px 10px;margin-bottom:8px}.source-links{display:flex;gap:8px 18px;flex-wrap:wrap;font-size:13px;margin-top:14px}
@media(max-width:760px){.search-heading{display:block}.search-heading .actions{margin-top:16px}.modal-footer{flex-wrap:wrap}.modal-footer button{flex:1}.search-counts{gap:8px 15px}}
.badge.outside_spec{background:#fff2bb;color:#755300}.badge.waiting_price{background:#e2efff;color:#195898}.badge.offered{background:#e0f3e5;color:#20613b}
.status-filter{position:relative;width:300px;max-width:100%;min-width:0;margin:0}.status-filter>summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;border:1px solid #cddbd7;border-radius:5px;padding:9px 10px;background:white;color:#29455e;font-size:13px;line-height:1.3;min-height:36px}.status-filter>summary::-webkit-details-marker{display:none}.status-filter>summary:focus-visible{outline:2px solid #3d8cbd;outline-offset:3px}.status-filter-caption{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.status-filter-count{font-size:11px;padding:1px 6px;background:#e8f0f7;border-radius:10px;color:#3e607c}.status-filter-arrow{color:#6f8aa0}.status-filter[open] .status-filter-arrow{transform:rotate(180deg)}.status-filter-menu{position:absolute;z-index:30;top:calc(100% + 6px);left:0;width:330px;max-width:calc(100vw - 32px);max-height:min(420px,70vh);overflow:auto;border:1px solid #d7e0e8;border-radius:7px;background:white;box-shadow:0 8px 24px #23374c20;margin:0;padding:12px}.status-filter-menu legend{font-size:11px;color:#6a7b8c;padding:0 4px;background:white}.status-filter-option{display:flex;align-items:center;gap:9px;padding:9px 7px;margin:0;border-radius:4px;font-size:13px;font-weight:400;cursor:pointer;color:#30475a}.status-filter-option:hover{background:#f2f6fa}.status-filter-option input{width:16px;height:16px;margin:0;flex:0 0 16px;accent-color:#329a55}.status-filter-dot{width:8px;height:8px;border-radius:50%;background:#b5c2cb;flex:0 0 8px}.status-filter-dot.outside_spec{background:#d5aa28}.status-filter-dot.waiting_price{background:#4386cb}.status-filter-dot.offered,.status-filter-dot.selected{background:#329a55}.status-filter-dot.rejected{background:#bd655b}.status-filter-menu p{font-size:11px;color:#778794;line-height:1.4;margin:8px 7px}.status-filter-clear{width:100%;margin-top:4px;font-size:12px;padding:8px}.filters>.status-filter{flex:0 1 300px}

.history-comment{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;background:#f3f7f9;padding:14px;border-radius:6px}.modal-body table{table-layout:auto}.modal-body td code{overflow-wrap:anywhere;white-space:normal;font-size:11px}.modal-body td{vertical-align:top}
