:root{--primary-color:#0e0d0b;--link-color:#3a3833;--ink:#0e0d0b;--muted:#6f6b62;--line:#dddbd3;--canvas:#f5f4ef;--paper:#fff;--soft:#e8eee7;--amber:#8b641f;--amber-bg:#faf2df;--danger:#a13939;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:15px;color:var(--ink);background:var(--canvas)}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}a{color:inherit;text-decoration:none}button{border:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #8a867c;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-size:34px;letter-spacing:-1.3px;line-height:1.18;margin-bottom:12px}h2{font-size:23px;letter-spacing:-.5px}h3{font-size:17px;font-weight:600}p{line-height:1.6}small,.small{font-size:12px;line-height:1.5}
.muted{color:var(--muted)}
.hidden,[hidden]{display:none!important}
.workspace-pending #auth{display:none}
.workspace-pending #workspace.hidden{display:grid!important}
.workspace-loading{padding:32px;color:var(--muted)}
.brand{display:flex;align-items:center;gap:12px;font-size:35px;font-weight:500;letter-spacing:-1px}
.brand span{font-size:20px;line-height:1.13;letter-spacing:-.6px}
.eyebrow,.nav-label{font-size:10px;font-weight:600;letter-spacing:1.7px}
.primary,.secondary,.quiet,.danger,.text-button{padding:11px 17px;border-radius:6px;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.35}
.primary{background:var(--primary-color);color:white}
.primary:hover{background:#231f1a}
.secondary,.quiet{background:white;border:1px solid var(--line);color:var(--ink)}
.quiet{padding:8px 12px}
.secondary:hover,.quiet:hover{background:var(--canvas)}
.danger{color:var(--danger);background:#fbefec}
.text-button{background:transparent;color:var(--link-color);padding:8px 0}
.wide{width:100%}
.icon-button{background:transparent;color:var(--muted);font-size:25px;width:36px;height:36px}
.error{color:var(--danger);white-space:pre-wrap;font-size:13px}
.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.between{justify-content:space-between}
.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:25px 0 14px}
.section-heading h3{margin:0}label{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:500;margin-bottom:18px}input,select,textarea{width:100%;border:1px solid #dddbd3;background:white;color:var(--ink);border-radius:7px;padding:12px;font-weight:400;min-width:0}textarea{resize:vertical;min-height:100px;line-height:1.55}hr{border:0;border-top:1px solid var(--line);margin:25px 0}
.auth-shell{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}
.auth-story{background:var(--primary-color);padding:45px 10%;color:#f4f6fa;display:flex;flex-direction:column;align-items:flex-start}
.auth-story .brand{margin-bottom:65px}
.auth-story .eyebrow{color:#b9c7d8}
.auth-story h1{font-size:49px;line-height:1.15;margin-top:18px;letter-spacing:-2px;font-weight:500}
.auth-story>p{max-width:370px;color:#c1ccda}
.auth-story>small{margin-top:35px;color:#a7b6c8}
.auth-panel{display:flex;justify-content:center;align-items:center;padding:35px}
.auth-card{width:100%;max-width:360px}
.auth-card h2{font-size:30px;margin-top:18px;margin-bottom:10px}
.auth-card>p{color:var(--muted);font-size:14px}
.auth-card form{margin-top:32px}
.auth-card #signup{display:flex;margin:auto}
.app-shell{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100vh}
.sidebar{background:var(--primary-color);color:#dce3ec;padding:32px 22px;display:flex;flex-direction:column;min-width:0}
.sidebar .brand{color:#f6f8fb;margin:0 8px 53px}
.nav-label{color:#a4b1c1;margin:0 10px 16px;font-size:9px}
.sidebar nav{display:grid;gap:7px}
.sidebar nav a{display:flex;align-items:center;gap:12px;padding:13px 12px;border-radius:6px;font-size:18px}
.sidebar nav a span{font-size:14px}
.sidebar nav a.active{background:#344962;color:#ffffff}
.nav-count{margin-left:auto;background:#49617d;padding:2px 7px;border-radius:4px;font-size:11px!important}
.sidebar-bottom{margin-top:auto;padding-top:60px;font-size:11px;color:#afbdcf;overflow-wrap:anywhere}
.sidebar-bottom>div{display:flex;justify-content:space-between;gap:6px;margin-top:10px}
.side-button{background:transparent;color:#bdc8d6;padding:5px 0;font-size:10px;text-align:left}
.main-shell{min-width:0;display:flex;flex-direction:column}
.topbar{min-height:73px;background:#fff;border-bottom:1px solid var(--line);padding:0 40px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px;color:var(--muted)}
.top-note{font-size:11px}
.top-note:before{content:'●';color:#2c5a37;margin-right:8px;font-size:8px}#content{padding:38px 40px;max-width:1350px;width:100%;margin:auto;flex:1}
.page-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:30px}
.page-heading p{color:var(--muted);margin:0;font-size:14px}
.page-heading .eyebrow{display:block;margin-bottom:14px;color:#6f6b62}
.app-footer{padding:22px 40px;border-top:1px solid var(--line);font-size:11px;color:var(--muted);display:flex;justify-content:space-between;gap:20px}
.toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:20px}
.toolbar input{max-width:300px;background:transparent;font-size:13px;padding:10px 12px}
.filters{display:flex;gap:4px;flex-wrap:wrap}
.filter{padding:9px 12px;background:transparent;color:var(--muted);border-radius:6px;font-size:12px}
.filter.active{background:#eeede6;color:var(--primary-color)}
.tender-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}
.tender-card{background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:24px;display:block;transition:border-color .15s}
.tender-card:hover{border-color:#8a867c}
.folder-symbol{width:39px;height:30px;background:#e4e2d8;border-radius:3px 6px 6px 6px;position:relative;display:block;color:#8a867c}
.folder-symbol:before{content:'';position:absolute;top:-5px;left:0;width:17px;height:8px;background:inherit;border-radius:4px 4px 0 0}
.tender-card h3{font-size:17px;line-height:1.45;margin-bottom:7px}
.tender-card .company-name{font-size:12px;color:var(--muted);margin-bottom:23px}
.card-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:15px;font-size:11px;color:var(--muted)}
.badge{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:5px;background:var(--soft);color:#2c5a37;font-size:10px;font-weight:500;line-height:1.5;white-space:normal}
.badge.amber{color:var(--amber);background:var(--amber-bg)}
.badge.red{color:var(--danger);background:#f9ece8}
.badge.gray{background:#eeede6;color:#6f6b62}
.meta{display:flex;gap:10px 20px;flex-wrap:wrap;color:var(--muted);font-size:12px}
.run-spinner{width:26px;height:26px;border:3px solid #dbe4dc;border-top-color:#2c5a37;border-radius:50%;flex:none;animation:run-spin .8s linear infinite}
@keyframes run-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.run-spinner{animation:none}}
.file-box{background:white;border:1px solid var(--line);border-radius:6px;overflow:hidden}
.file-head,.file-row{display:grid;grid-template-columns:minmax(0,1fr) 145px auto;align-items:center;gap:18px;padding:15px 20px}
.file-head{font-size:10px;letter-spacing:.6px;color:var(--muted);background:#faf9f6;border-bottom:1px solid var(--line)}
.file-row{border-bottom:1px solid #eeede6;min-height:73px}
.file-row:last-child{border-bottom:0}
.file-main{display:flex;align-items:center;gap:12px;min-width:0}
.file-main input[type=checkbox]{width:16px;min-width:16px;accent-color:var(--link-color)}
.file-type{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:33px;height:40px;border:1px solid #dce4ed;border-radius:5px;color:#50739c;background:#f5f8fc;font-size:8px;font-weight:600}
.file-type.pdf{color:#a87060;border-color:#ecd9d1;background:#fcf7f4}
.file-type.xls,.file-type.xlsx{color:#5d8668;border-color:#d6e3d5;background:#f4f8f0}
.file-label{min-width:0}
.file-label button{background:transparent;color:var(--ink);padding:0;text-align:left;overflow-wrap:anywhere;line-height:1.4;font-size:13px}
.file-label small{display:block;color:var(--muted);font-size:10px;margin-top:4px;overflow-wrap:anywhere}
.file-actions{display:flex;gap:6px;flex-wrap:wrap}
.file-actions .quiet{font-size:11px;padding:6px 9px}
.drop-area{border:1px dashed #c4c0b6;border-radius:6px;padding:24px;text-align:center;margin-top:16px;color:var(--muted);font-size:12px;background:#f5f4ef}
.drop-area.dragging{background:#eeede6;border-color:#8a867c}
.drop-area button{color:var(--link-color);background:transparent;padding:0;font-size:inherit;text-decoration:underline;text-underline-offset:3px}
.empty-state{text-align:center;padding:60px 22px;background:white;border:1px solid var(--line);border-radius:6px}
.empty-state .folder-symbol{margin:10px auto 28px;width:52px;height:42px}
.empty-state p{color:var(--muted);max-width:420px;margin:0 auto 23px;font-size:14px}
.empty-state h2{font-size:22px}
.welcome-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.panel{background:white;border:1px solid var(--line);border-radius:6px;padding:25px;margin-bottom:18px}
.panel p{font-size:13px;color:var(--muted)}
.question{border-bottom:1px solid var(--line);padding:18px 0}
.question:first-child{padding-top:0}
.question:last-child{border-bottom:0}
.question label{margin-bottom:5px}
.question .source{font-size:11px;color:var(--muted);margin:8px 0}
.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.version{padding:20px;background:white;border:1px solid var(--line);border-radius:6px;margin-bottom:12px}
.version h3{margin-bottom:7px}
.version p{font-size:12px;color:var(--muted);margin-bottom:12px}
.list-item{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:14px 0;border-bottom:1px solid var(--line);font-size:13px}
.list-item:last-child{border:0}
.list-item small{display:block;margin-top:5px;color:var(--muted)}dialog{border:1px solid var(--line);border-radius:6px;padding:26px;width:min(620px,calc(100% - 32px));color:var(--ink);max-height:90vh;overflow:auto;box-shadow:0 24px 80px #0e0d0b30}dialog::backdrop{background:#0e0d0b60;backdrop-filter:blur(3px)}
.modal-top{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:20px}
.modal-top h2{margin:4px 0 0;font-size:23px}
.new-tender-drop{margin-top:20px}
.new-tender-files{margin-top:18px}
.new-tender-files p{margin:0 0 8px}
.new-tender-files ul{list-style:none;margin:0;padding:0;max-height:210px;overflow:auto;border:1px solid var(--line);border-radius:6px}
.new-tender-files li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;border-bottom:1px solid var(--line);font-size:13px}
.new-tender-files li:last-child{border-bottom:0}
.new-tender-files li span{min-width:0;overflow-wrap:anywhere}
.new-tender-files li small{color:var(--muted);white-space:nowrap;margin-left:7px}
.folder-review-list{max-height:50vh;overflow:auto;border:1px solid var(--line);border-radius:6px}
.folder-review-row{display:grid;grid-template-columns:minmax(0,1fr) 190px;align-items:center;gap:12px;padding:9px 12px;border-bottom:1px solid var(--line);font-size:12px}
.folder-review-row:last-child{border-bottom:0}
.folder-review-row span{overflow-wrap:anywhere}
.folder-review-row select{width:100%;margin:0}
@media(max-width:560px){.folder-review-row{grid-template-columns:1fr}}
.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:22px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--primary-color);color:white;border-radius:6px;padding:16px 22px;max-width:min(600px,90vw);z-index:100;box-shadow:0 8px 30px #0e0d0b30;font-size:13px;white-space:pre-wrap}
.dialog-backdrop{position:fixed;inset:0;background:#0e0d0b60;display:grid;place-items:center;z-index:20;padding:20px}
.dialog{background:white;border-radius:6px;padding:30px;width:min(500px,100%);position:relative}
.dialog-close{position:absolute;right:15px;top:15px}
.dialog p{font-size:13px;color:var(--muted)}
.dialog form button,#codex-login-start{background:var(--primary-color);color:white;padding:10px 14px;border-radius:6px;margin-top:12px}#codex-user-code{display:block;margin-top:15px;font-size:25px}#codex-verification-url{overflow-wrap:anywhere;color:var(--link-color)}
.preview-text{white-space:pre-wrap;font:13px/1.6 ui-monospace,monospace;max-height:450px;overflow:auto}
.preview-frame{width:100%;height:440px;border:1px solid var(--line)}
.preview-sheet{margin:20px 0}
.preview-sheet h4{margin:0 0 8px}
.preview-table-wrap{max-height:420px;overflow:auto;border:1px solid var(--line)}
.preview-table{border-collapse:collapse;font-size:12px;min-width:100%}
.preview-table td{border:1px solid var(--line);padding:6px 8px;min-width:90px;max-width:320px;vertical-align:top;overflow-wrap:anywhere}
.company-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.company-card{background:white;border:1px solid var(--line);border-radius:6px;padding:24px}
.company-card p{color:var(--muted);font-size:13px}
.account-section{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}
.account-section h2{font-size:17px;margin:0 0 4px}
.account-section p{margin:0;overflow-wrap:anywhere}
.account-button{display:inline-flex;align-items:center;gap:9px;padding:9px 12px;border:1px solid var(--line);border-radius:7px;background:#f5f4ef;color:var(--ink);font-size:12px;font-weight:500;white-space:nowrap}
.account-button:hover,.account-button.active{background:#e8eee7;border-color:#b8cbb9}
@media(max-width:560px){.account-button span{display:none}.account-button{padding:9px}}
.required-mark{color:#b42318;font-weight:700}
.company-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.company-lookup-row{display:flex;align-items:center;gap:12px;margin:-6px 0 18px}
.company-lookup-row button{flex:none}
.company-lookup-row span{line-height:1.4}
.company-form-grid label{margin:0}
.company-form-section{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}
.company-form-section summary{cursor:pointer;font-weight:600}
.company-form-section[open] summary{margin-bottom:14px}
.company-facts{margin:16px 0}
.company-facts h3{margin:0 0 14px}
.company-facts dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;margin:0}
.company-facts dt{font-size:11px;color:var(--muted)}
.company-facts dd{margin:3px 0 0;font-size:13px;overflow-wrap:anywhere}
@media(max-width:560px){.company-form-grid,.company-facts dl{grid-template-columns:1fr}.company-lookup-row{align-items:flex-start;flex-direction:column}}
.inline-help{padding:13px 16px;background:#eeede6;border-radius:7px;font-size:12px;line-height:1.6;color:#6f6b62;margin-bottom:18px}
.busy-dot{width:7px;height:7px;border-radius:50%;background:#2c5a37;display:inline-block;margin-right:7px}
@media(min-width:1500px){#content{padding-top:48px}}
@media(max-width:1100px){.app-shell{grid-template-columns:195px minmax(0,1fr)}
.sidebar{padding:28px 15px}#content{padding:28px}
.topbar,.app-footer{padding-left:28px;padding-right:28px}
.file-head,.file-row{grid-template-columns:minmax(0,1fr) auto}
.file-head>span:nth-child(2),.file-row>.badge{display:none}
.auth-story h1{font-size:39px}}
@media(max-width:760px){.app-shell{grid-template-columns:1fr;grid-template-rows:max-content minmax(0,1fr)}
.sidebar{padding:16px 20px;display:block}
.sidebar .brand{margin:0 0 18px}
.sidebar .brand span{font-size:17px}
.sidebar nav{display:flex;gap:5px}
.sidebar nav a{padding:10px;font-size:15px}
.sidebar nav a span{font-size:12px}
.nav-label,.sidebar-note,.sidebar-bottom,.top-note{display:none}
.topbar{min-height:48px;padding:0 20px}
.app-footer{padding:20px;display:block}
.app-footer span{display:block;margin-top:7px}#content{padding:25px 20px}
.page-heading{align-items:flex-start;margin-bottom:24px}h1{font-size:28px}
.page-heading p{font-size:12px}
.page-heading .primary{font-size:12px;padding:10px 12px;flex-shrink:0}
.two-columns{grid-template-columns:1fr}
.file-row{padding:14px 12px;gap:8px}
.file-actions .quiet{font-size:10px;padding:7px}
.file-main{gap:8px}
.file-type{width:27px;height:34px;font-size:7px}
.file-label button{font-size:12px}
.file-head{padding:12px}
.toolbar{align-items:flex-start;flex-direction:column}
.toolbar input{max-width:none}
.auth-shell{grid-template-columns:1fr}
.auth-story{padding:25px}
.auth-story .brand{margin-bottom:35px}
.auth-story h1{font-size:38px}
.paper-stack,.auth-story>small{display:none}
.auth-story>p{margin-bottom:8px}
.auth-panel{padding:35px 25px}
.section-heading{align-items:flex-start}
.section-heading .row{justify-content:flex-end}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
@media(pointer:coarse){button,.quiet{min-height:44px}input,textarea,select{font-size:16px}}
@media(max-width:480px){.page-heading{flex-direction:column;gap:14px}
.page-heading>button{align-self:flex-start}
.file-row{grid-template-columns:minmax(0,1fr)}
.file-actions{padding-left:35px}
.section-heading{flex-wrap:wrap}
.section-heading .row{justify-content:flex-start}
.sidebar nav a{gap:7px}
.app-footer{line-height:1.6}}
.chat-messages{max-height:520px;overflow:auto;margin-bottom:20px}
.chat-message{padding:16px;background:#f5f4ef;border-radius:6px;margin-bottom:10px}
.chat-message.user{background:#eeede6}
.chat-message strong{font-size:11px}
.chat-message p{font-size:13px;white-space:pre-wrap;margin:8px 0 0}
.workspace-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:22px}
.workspace-heading h1{margin-bottom:8px}
.workspace-heading .meta{align-items:baseline}
.tender-workspace{display:grid;grid-template-columns:minmax(310px,44%) minmax(340px,56%);gap:16px;align-items:start}
.workspace-files,.workspace-chat{background:#fff;border:1px solid var(--line);border-radius:7px;min-width:0;overflow:hidden}
.workspace-files>header,.workspace-chat>header{padding:17px 19px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:10px}
.workspace-files h2,.workspace-chat h2{font-size:17px;margin:0}
.workspace-files>header span,.workspace-chat>header span{font-size:11px;color:var(--muted)}
.workspace-file-list{max-height:310px;overflow:auto}
.workspace-file-group{border-bottom:1px solid var(--line)}
.workspace-file-title{padding:11px 17px;background:#f8f7f3;color:var(--muted);font-size:11px;font-weight:600;display:flex;justify-content:space-between}
.workspace-file{display:flex;align-items:center;border-top:1px solid #f0eee8}
.workspace-file.selected{background:#f2f4ee}
.workspace-file-open{display:flex;align-items:center;gap:10px;min-width:0;flex:1;text-align:left;background:transparent;padding:10px 14px}
.workspace-file-open>span:last-child{min-width:0}
.workspace-file-open strong,.workspace-file-open small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.workspace-file-open strong{font-size:12px;font-weight:500}
.workspace-file-open small{font-size:10px;color:var(--muted);margin-top:3px}
.workspace-file-open .file-type{width:31px;height:35px}
.workspace-download{background:transparent;padding:10px 14px;color:var(--muted);font-size:20px}
.workspace-empty{padding:12px 18px;color:var(--muted);font-size:11px;margin:0}
.workspace-download-bar{padding:13px 17px;border-bottom:1px solid var(--line)}
.workspace-download-bar .secondary{padding:8px;font-size:11px}
.workspace-preview-title{padding:11px 17px;background:#f8f7f3;color:var(--muted);font-size:11px;font-weight:600}
.workspace-preview-content{padding:17px;min-height:230px;max-height:520px;overflow:auto;font-size:12px;color:var(--ink)}
.workspace-preview-content img{max-width:100%}
.workspace-preview-content .preview-frame{height:450px}
.workspace-preview-content .preview-text{max-height:none;margin:0;font-size:11px}
.preview-notice{font-size:11px;color:var(--muted)}
.workspace-chat{display:flex;flex-direction:column;height:min(760px,calc(100vh - 130px));min-height:520px;position:sticky;top:18px}
.workspace-messages{padding:18px;overflow:auto;flex:1;min-height:0;background:#fbfaf7}
.workspace-message{max-width:92%;padding:12px 14px;margin-bottom:13px;border:1px solid var(--line);border-radius:9px;background:#fff;font-size:12px;line-height:1.5}
.workspace-message.user{margin-left:auto;background:#e9eee7;border-color:#d7e3d5}
.workspace-message p{margin:5px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}
.workspace-message small{display:block;margin-top:9px;color:var(--muted)}
.workspace-message-role{color:var(--muted);font-size:10px;font-weight:700}
.workspace-message.waiting{display:flex;align-items:center;gap:8px;color:var(--muted)}
.workspace-message-files{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}
.workspace-message-files button{background:#f3f2ed;padding:5px 7px;border-radius:4px;font-size:10px;text-align:left;overflow-wrap:anywhere}
.workspace-composer{padding:13px 16px;border-top:1px solid var(--line)}
.workspace-composer textarea{min-height:65px;max-height:150px;margin:0;font-size:12px}
.composer-actions{display:flex;justify-content:space-between;gap:10px;margin-top:8px}
.composer-attach{display:flex;gap:6px}
.composer-actions button{font-size:11px;padding:8px 12px}
.workspace-composer #workspace-chat-state{margin:5px 0 0}
.chat-shortcuts{display:flex;gap:12px;margin-top:8px;flex-wrap:wrap}
.chat-shortcuts button{background:transparent;color:var(--muted);font-size:10px;text-decoration:underline;text-underline-offset:3px;padding:3px 0}
.chat-attachments{max-height:100px;overflow:auto;margin-bottom:8px}
.chat-attachment{display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:5px;padding:5px 7px;margin-bottom:5px;font-size:10px}
.chat-attachment span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-attachment select{width:auto;max-width:145px;padding:4px;font-size:10px}
.chat-attachment button{background:transparent;font-size:17px;color:var(--muted)}
@media(max-width:1050px){.tender-workspace{grid-template-columns:minmax(0,1fr)}.workspace-chat{position:static;order:1;height:630px}.workspace-files{order:2}}
@media(max-width:760px){.workspace-heading h1{font-size:25px}.workspace-chat{min-height:480px;height:65vh}.workspace-messages{padding:12px}.workspace-file-list{max-height:260px}}
.sidebar-bottom button:hover{color:white}
@media(max-width:760px){.sidebar-bottom{display:flex;padding-top:12px;margin-top:0;justify-content:space-between;gap:12px}
.sidebar-bottom>span{display:none}
.sidebar-bottom>div{width:100%;margin-top:0}
.side-button{font-size:11px}}
@media(min-width:761px) and (max-width:1100px){
.page-heading{flex-wrap:wrap}}

/* Tenderman: restrained typography, compact navigation and document surfaces. */
h1 { font-size: 30px; font-weight: 600; letter-spacing: -.7px; }
.brand { gap: 10px; letter-spacing: 0; }
.brand span { font-size: 21px; font-weight: 600; letter-spacing: -.4px; }

.sidebar .brand { margin: 0 0 42px; }
.sidebar nav a { border-radius: 4px; padding: 11px 12px; }
.sidebar nav a.active { box-shadow: inset 2px 0 #aec2db; }
.nav-label, .eyebrow { letter-spacing: 1px; }
.tender-card { padding: 20px 22px; }
.tender-card h3 { font-size: 16px; }
.tender-card .company-name { margin-bottom: 16px; }
.tender-card .card-bottom { display:flex; flex-wrap:wrap; justify-content:flex-start; gap:6px 14px; padding-top:12px; font-size:12px; line-height:1.4; }
.card-expired { color:var(--danger); }
.badge { border-radius: 3px; }
.file-row { min-height: 66px; }
.auth-story h1 { font-size: 43px; line-height: 1.2; font-weight: 500; letter-spacing: -1.2px; }
.auth-story .brand { margin-bottom: 64px; }
.auth-steps { padding: 0; margin: 24px 0 0; list-style: none; width: 100%; max-width: 420px; }
.auth-steps li { display: flex; gap: 18px; padding: 20px 0; border-top: 1px solid #45556a; }
.auth-steps li > span { font-size: 12px; color: #a7b7cb; padding-top: 3px; font-variant-numeric: tabular-nums; }
.auth-steps strong { font-size: 14px; font-weight: 500; }
.auth-steps p { margin: 6px 0 0; font-size: 12px; color: #b9c6d7; }
.auth-card h2 { font-size: 27px; }
@media (max-width: 760px) {
  .sidebar .brand { margin-bottom: 17px; }
  .brand span { font-size: 20px; }
  .auth-story .brand { margin-bottom: 32px; }
  .auth-story h1 { font-size: 33px; }
  .auth-steps { display: none; }
  h1 { font-size: 27px; }
}

/* Brand foundation from tenderman/static/brand.css. */
body { -webkit-font-smoothing: antialiased; }
.brand span { font-family: Georgia, "Times New Roman", serif; font-size: 26px; font-weight: 400; letter-spacing: -.5px; }
.sidebar { background: #eeede6; color: #3a3833; border-right: 1px solid var(--line); }
.sidebar .brand { color: var(--ink); }
.sidebar .nav-label, .sidebar-bottom, .side-button { color: #6f6b62; }
.sidebar nav a.active { background: #e2e0d6; color: var(--ink); box-shadow: inset 2px 0 var(--ink); }
.sidebar nav a:hover { background: #e7e5dc; }
.nav-count { background: #d5d2c7; color: #3a3833; }
.sidebar-bottom button:hover { color: var(--ink); }
.auth-story { background: #eeede6; color: var(--ink); border-right: 1px solid var(--line); }
.auth-story .eyebrow, .auth-story > p, .auth-story > small { color: #6f6b62; }
.auth-story h1 { font-family: Georgia, "Times New Roman", serif; font-weight: 400; letter-spacing: -1px; }
.auth-steps li { border-color: var(--line); }
.auth-steps li > span, .auth-steps p { color: #6f6b62; }
@media (max-width: 760px) {
  .sidebar { border-right: 0; border-bottom: 1px solid var(--line); }
  .sidebar .brand span { font-size: 25px; }
  .auth-story { border-right: 0; border-bottom: 1px solid var(--line); }
}

/* Public landing: editorial composition from the original Tenderman site. */
.landing { background: #f5f4ef; }
.landing-wrap { width: min(1280px, 100%); margin: 0 auto; padding-left: clamp(22px, 6vw, 80px); padding-right: clamp(22px, 6vw, 80px); }
.landing h1, .landing h2, .landing h3 { font-family: Georgia, "Times New Roman", serif; font-weight: 400; }
.landing-logo { font: 30px/1 Georgia, "Times New Roman", serif; letter-spacing: -.8px; }
.landing-hero { position: relative; isolation: isolate; overflow: hidden; background: url('/hero.jpg') center 42% / cover; color: #f5f4ef; }
.landing-hero-video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; z-index: 0; }
.landing-hero::before { content: ''; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(90deg, #080706c9, #08070659); }
.landing-hero > :not(.landing-hero-video) { position: relative; z-index: 2; }
@media (prefers-reduced-motion: reduce) { .landing-hero-video { display: none; } }
.landing-nav { display: flex; align-items: center; justify-content: space-between; gap: 28px; min-height: 88px; border-bottom: 1px solid #ffffff26; }
.landing-nav nav { display: flex; gap: 28px; font-size: 13px; }
.landing-login { padding: 10px 0; border-bottom: 1px solid #ffffff70; font-size: 13px; }
.landing-hero-copy { padding-top: 65px; padding-bottom: 65px; }
.landing-kicker { display: block; font-size: 10px; letter-spacing: 1.8px; line-height: 1.7; margin-bottom: 27px; }
.landing-hero .landing-kicker { color: #e1ded5; }
.landing-hero h1 { font-size: clamp(56px, 7.8vw, 106px); line-height: .99; letter-spacing: -3.5px; margin: 0; max-width: 850px; }
.landing-hero h1 i { font-weight: 400; color: #d4c7ac; }
.landing-hero-copy > p { font-size: 17px; line-height: 1.65; max-width: 480px; margin: 30px 0; color: #e0ded7; }
.landing-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.landing-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 30px; padding: 17px 23px; border: 1px solid #ffffff66; border-radius: 5px; font-size: 14px; }
.landing-button.light { background: #f5f4ef; color: #0e0d0b; border-color: #f5f4ef; }
.landing-button.ghost { background: transparent; color: #f5f4ef; }
.landing-button:hover { background: #fff; color: #0e0d0b; }
.landing-hero-copy > small { display: block; font-size: 11px; max-width: 460px; color: #c5c3bd; margin-top: 21px; }
.landing-hero-bottom { display: flex; justify-content: space-between; gap: 20px; padding-top: 21px; padding-bottom: 21px; border-top: 1px solid #ffffff26; color: #c5c3bd; font-size: 11px; }
.landing-strip { display: flex; align-items: center; justify-content: center; gap: 65px; padding: 29px 22px; border-bottom: 1px solid var(--line); }
.landing-strip > span { font-size: 9px; letter-spacing: 1.2px; color: var(--muted); }
.landing-strip p { margin: 0; font: 21px/1.6 Georgia, serif; }
.landing-strip b { font: 14px sans-serif; color: #8a867c; margin: 0 15px; }
.landing-section { padding-top: 90px; padding-bottom: 90px; scroll-margin-top: 20px; }
.landing-section > .landing-kicker, .landing-faq .landing-kicker { color: #6f6b62; }
.landing h2 { font-size: clamp(38px, 4.8vw, 62px); line-height: 1.07; letter-spacing: -1.8px; }
.landing-intro { display: grid; grid-template-columns: 1.1fr 1fr; align-items: end; gap: 90px; }
.landing-intro h2 { margin-bottom: 0; }
.landing-intro h2 span { color: #8a867c; }
.landing-intro > p { color: #6f6b62; font-size: 16px; margin-bottom: 4px; max-width: 400px; }
.landing-product { margin: 55px 0 0; padding: 10px; background: #eeede6; border: 1px solid #dcd9ce; border-radius: 10px; box-shadow: 0 22px 50px -35px #0e0d0b66; }
.landing-product-image { display: block; overflow: hidden; border-radius: 5px; }
.landing-product-image img { display: block; width: 100%; height: auto; }
.landing-product figcaption { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 15px 12px 5px; font-size: 11px; color: #6f6b62; }
.landing-product figcaption a { color: var(--ink); white-space: nowrap; }
.landing-how { background: #151612; color: #f5f4ef; }
.landing-how .landing-kicker { color: #aaa99e; }
.landing-steps { display: grid; grid-template-columns: repeat(3,1fr); gap: 45px; margin-top: 50px; }
.landing-steps article { border-top: 1px solid #ffffff30; padding-top: 24px; }
.landing-steps article > span { font: 14px Georgia, serif; color: #bab29f; }
.landing-steps h3 { font-size: 25px; margin: 35px 0 15px; }
.landing-steps p { font-size: 14px; color: #bdbeb4; margin: 0; }
.landing-faq { display: grid; grid-template-columns: 1fr 1.3fr; gap: 80px; }
.landing-faq details { border-top: 1px solid var(--line); }
.landing-faq summary { list-style: none; display: flex; justify-content: space-between; gap: 25px; padding: 22px 0; cursor: pointer; font: 21px/1.35 Georgia, serif; }
.landing-faq summary::-webkit-details-marker { display: none; }
.landing-faq summary span { color: #8a867c; }
.landing-faq details[open] summary span { transform: rotate(45deg); }
.landing-faq details p { font-size: 14px; color: #6f6b62; padding-bottom: 15px; }
.landing-access { background: #eeede6; padding: 85px 0; scroll-margin-top: 20px; }
.landing-access-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 90px; align-items: center; }
.landing-access h2 { font-size: clamp(40px, 5vw, 66px); }
.landing-access-grid > div > p { color: #6f6b62; }
.landing-access-grid > div > a { display: inline-block; margin-top: 28px; font-size: 12px; }
.landing-access-cta { background: #fff; border: 1px solid var(--line); padding: 38px; width: 100%; max-width: 440px; justify-self: end; border-radius: 8px; }
.landing-access-cta h3 { font: 30px/1.2 Georgia, serif; letter-spacing: -.5px; margin: 20px 0 14px; }
.landing-access-cta p { color: #6f6b62; font-size: 14px; margin-bottom: 24px; }
.landing-access-cta .primary { margin-top: 0; font-size: 14px; }
.landing-access-cta .landing-access-signin { display: block; text-align: center; font-size: 13px; margin-top: 20px; }
.landing-footer { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; align-items: start; padding-top: 32px; padding-bottom: 32px; font-size: 13px; border-top: 1px solid var(--line); color: var(--muted); }
.landing-footer-operator strong { color: var(--ink); font-weight: 600; }
.landing-footer-operator p { margin: 12px 0 8px; font-size: 12px; line-height: 1.7; }
.landing-footer nav.legal-links { display: flex; flex-wrap: wrap; gap: 12px 24px; margin: 0; padding: 0; border: 0; color: var(--muted); font-size: 12px; }
.landing-footer nav a:hover { color: var(--ink); text-decoration: underline; }
.auth-page { min-height: 100vh; display: flex; flex-direction: column; background: #f5f4ef; }
.auth-header { width: 100%; display: flex; justify-content: space-between; align-items: center; padding-top: 28px; padding-bottom: 28px; }
.auth-back { color: #5b584f; font-size: 13px; }
.auth-layout { width: 100%; display: flex; justify-content: center; align-items: center; flex: 1; padding-top: 40px; padding-bottom: 80px; }
.auth-panel-card { width: 100%; max-width: 460px; background: #fff; border: 1px solid var(--line); border-radius: 9px; padding: 42px; box-shadow: 0 18px 55px #1e1d1710; }
.auth-panel-card h2 { font: 34px/1.16 Georgia,serif; letter-spacing: -.8px; margin: 20px 0 10px; }
.auth-panel-card > p:not(.error) { color: #6f6b62; font-size: 14px; margin-bottom: 28px; }
.auth-panel-card form { margin-top: 28px; }
.auth-panel-card form label { font-size: 12px; }
.auth-panel-card form input { padding: 14px; }
.auth-panel-card form .primary { padding: 14px; margin-top: 6px; }
.auth-panel-card .error { min-height: 18px; margin: 14px 0 0; }
.auth-panel-card #resend-code { font-size: 12px; }
.auth-switch { border-top: 1px solid var(--line); text-align: center; margin-top: 21px; padding-top: 24px; color: #6f6b62; font-size: 13px; }
.auth-switch a { color: var(--ink); text-decoration: underline; text-underline-offset: 3px; }
@media(max-width:900px) {
  .landing-nav nav { display: flex; gap: 0; }
  .landing-nav nav a { display: none; }
  .landing-nav nav a[href="#pricing"] { display: inline; }
  .landing-intro, .landing-faq, .landing-access-grid { gap: 35px; }
  .landing-folders { gap: 10px; }
  .landing-folders > div { padding: 23px 15px; }
  .landing-strip { gap: 25px; }
  .landing-steps { gap: 25px; }
  .auth-layout { padding-top: 25px; }
}
@media(max-width:600px) {
  .landing-nav { min-height: 75px; gap: 14px; }
  .landing-logo { font-size: 26px; }
  .landing-login { font-size: 11px; }
  .landing-hero-copy { padding-top: 48px; padding-bottom: 42px; }
  .landing-hero h1 { font-size: clamp(51px, 12.5vw, 72px); letter-spacing: -2px; }
  .landing-hero-copy > p { font-size: 15px; margin: 25px 0; }
  .landing-kicker { font-size: 8px; letter-spacing: 1.1px; }
  .landing-actions { display: grid; }
  .landing-button { font-size: 13px; padding: 15px 18px; }
  .landing-hero-bottom { font-size: 10px; }
  .landing-hero-bottom > span { display: none; }
  .landing-strip { display: block; text-align: center; padding: 22px; }
  .landing-strip p { font-size: 17px; margin-top: 10px; }
  .landing-strip b { margin: 0 4px; }
  .landing-section { padding-top: 55px; padding-bottom: 55px; }
  .landing-intro, .landing-faq, .landing-access-grid, .landing-steps { grid-template-columns: 1fr; }
  .landing-intro { gap: 25px; }
  .landing-product { margin-top: 32px; padding: 5px; }
  .landing-product figcaption { align-items: flex-start; flex-direction: column; gap: 6px; padding: 11px 8px 7px; }
  .landing-steps { margin-top: 30px; gap: 30px; }
  .landing-steps h3 { margin-top: 20px; }
  .landing-faq { gap: 18px; }
  .landing-faq summary { font-size: 20px; }
  .landing-access { padding: 55px 0; }
  .landing-access-cta { padding: 28px 24px; max-width: none; }
  .landing-footer { grid-template-columns: 1fr; gap: 24px; }
  .auth-header { padding-top: 22px; padding-bottom: 22px; }
  .auth-layout { align-items: flex-start; padding-top: 28px; padding-bottom: 45px; }
  .auth-panel-card { padding: 30px 24px; }
}

/* Tender workspace: a collapsible navigation rail and a full-height file explorer. */
.sidebar{position:relative}
.sidebar-toggle{position:absolute;top:28px;right:14px;width:30px;height:30px;border:1px solid var(--line);border-radius:5px;background:transparent;color:var(--ink);font-size:16px;line-height:1}
.sidebar-toggle:hover{background:#e2e0d6}
.app-shell.sidebar-collapsed{grid-template-columns:64px minmax(0,1fr)}
.sidebar-collapsed .sidebar{padding:76px 8px 16px;align-items:center}
.sidebar-collapsed .sidebar-toggle{top:20px;right:15px}
.sidebar-collapsed .sidebar .brand,.sidebar-collapsed .nav-label,.sidebar-collapsed .sidebar nav a span,.sidebar-collapsed .sidebar-bottom{display:none}
.sidebar-collapsed .sidebar nav{width:100%}
.sidebar-collapsed .sidebar nav a{justify-content:center;padding:11px 0;font-size:22px}
.tender-page{height:100dvh;min-height:580px;overflow:hidden}
.tender-page .main-shell{height:100%;min-height:0;overflow:hidden}
.tender-page .topbar{min-height:50px;padding:0 24px}
.tender-page #content{max-width:none;margin:0;padding:18px 24px 20px;display:flex;flex-direction:column;min-height:0;overflow:hidden}
.tender-page .app-footer{display:none}
.tender-page .workspace-heading{margin-bottom:14px}
.tender-page .workspace-heading h1{font-size:27px}
.tender-page .tender-workspace{flex:1;min-height:0;grid-template-columns:minmax(340px,46%) minmax(360px,54%);align-items:stretch}
.tender-page .workspace-files,.tender-page .workspace-chat{height:100%;min-height:0;position:static}
.tender-page .workspace-files{display:flex;flex-direction:column}
.tender-page .workspace-file-list{max-height:63%;min-height:185px;overflow:auto;flex-shrink:0}
.tender-page .workspace-files.has-preview .workspace-file-list{max-height:36%}
.tender-page .workspace-preview{display:flex;flex-direction:column;flex:1;min-height:0}
.tender-page .workspace-preview-content{flex:1;min-height:0;max-height:none}
.explorer-folder{border-bottom:1px solid var(--line)}
.explorer-folder-button{width:100%;display:flex;align-items:center;gap:9px;padding:9px 15px;text-align:left;background:#fff;color:var(--ink);font-size:12px}
.explorer-folder-button:hover,.explorer-folder.open>.explorer-folder-button{background:#f5f4ef}
.explorer-folder-button strong{font-weight:600;flex:1}
.explorer-chevron{width:11px;font-size:17px;color:var(--muted)}
.explorer-folder-icon{font-size:19px;color:#bdb8aa;line-height:1}
.explorer-count{font-size:11px;color:var(--muted)}
.explorer-contents{border-top:1px solid #e8e6df;background:#fbfaf7}
.explorer-contents .workspace-file{padding-left:25px}
.explorer-contents .workspace-file-open{padding:7px 12px}
.explorer-contents .workspace-empty{padding-left:50px}
@media(max-width:1050px){
  .tender-page{height:auto;min-height:100vh;overflow:visible}
  .tender-page .main-shell,.tender-page #content{height:auto;overflow:visible}
  .tender-page .tender-workspace{display:flex;flex-direction:column}
  .tender-page .workspace-chat{order:1;height:600px;min-height:500px}
  .tender-page .workspace-files{order:2;height:650px;min-height:500px}
  .tender-page .workspace-file-list{max-height:300px}
}
@media(max-width:760px){
  .sidebar-toggle{display:none}
  .app-shell.sidebar-collapsed{grid-template-columns:1fr}
  .sidebar-collapsed .sidebar{padding:16px 20px;display:block}
  .sidebar-collapsed .sidebar .brand{display:flex}
  .sidebar-collapsed .sidebar nav a span{display:inline}
  .sidebar-collapsed .sidebar nav{display:flex}
  .tender-page #content{padding:18px 15px}
  .tender-page .workspace-chat{height:65vh;min-height:470px}
  .tender-page .workspace-files{height:65vh;min-height:480px}
}

/* File explorer and navigation refinements. */
.sidebar-toggle,.sidebar-collapsed .sidebar-toggle{left:16px;right:auto;top:27px;width:32px;height:32px;min-width:32px;padding:0}
.sidebar .brand{margin-left:38px}
.sidebar .brand span{font-size:23px}
.sidebar-tenders{display:grid;gap:3px;max-height:42vh;overflow:auto;margin:2px 0 7px}
.sidebar-tenders-label{padding:12px 12px 5px;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:1.2px}
.sidebar nav .sidebar-tender{display:flex;align-items:center;gap:9px;padding:8px 12px;border-radius:4px;font-size:12px;min-width:0;color:var(--muted)}
.sidebar nav .sidebar-tender.active{background:#e2e0d6;color:var(--ink);box-shadow:inset 2px 0 var(--ink)}
.sidebar-tender-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.sidebar-tender-icon{width:13px;height:10px;background:#c9c5b8;border-radius:2px;flex:none;position:relative}
.sidebar-tender-icon:before{content:'';position:absolute;top:-3px;left:0;width:6px;height:4px;background:#c9c5b8;border-radius:2px 2px 0 0}
.sidebar-collapsed .sidebar-tenders{display:none}
.tender-page .workspace-file-list{max-height:none;min-height:0;flex:1}
.explorer-folder-icon{display:inline-block;position:relative;width:18px;height:13px;background:#c7c2b5;border-radius:2px;flex:none;font-size:0}
.explorer-folder-icon:before{content:'';position:absolute;left:0;top:-3px;width:8px;height:4px;background:#c7c2b5;border-radius:2px 2px 0 0}
#modal.document-preview{width:calc(100vw - 32px);height:calc(100dvh - 32px);max-height:none;padding:18px;overflow:hidden}
#modal.document-preview[open]{display:flex;flex-direction:column}
#modal.document-preview .modal-top{flex:none;margin-bottom:10px}
#modal.document-preview #modal-body{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}
#modal.document-preview #preview-content{flex:1;min-height:0;overflow:auto}
#modal.document-preview .preview-text{max-height:none}
#modal.document-preview .preview-frame{height:100%;min-height:420px}
#modal.document-preview .modal-actions{flex:none;margin-top:10px}
.document-preview .modal-top h2{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.document-preview #preview-content{background:#f3f3ef;border:1px solid #e5e4dc;border-radius:10px;padding:24px}
.document-preview #preview-content>.inline-help{max-width:920px;margin:0 auto 18px;background:#fff;border:1px solid #e5e4dc;border-radius:8px;padding:10px 14px}
.preview-paper{box-sizing:border-box;width:min(100%,920px);min-height:100%;margin:auto;padding:clamp(24px,5vw,70px);background:white;box-shadow:0 5px 30px #33333312;border:1px solid #e9e7e1;border-radius:3px;color:#242722;font:15px/1.7 Georgia,'Times New Roman',serif;overflow-wrap:anywhere}
.preview-paper p{margin:0 0 1em;white-space:pre-wrap}
.preview-paper h1,.preview-paper h2,.preview-paper h3,.preview-paper h4,.preview-paper h5,.preview-paper h6{font-family:inherit;line-height:1.3;margin:1.35em 0 .55em;color:#1f2d26}
.preview-paper h1{font-size:27px;margin-top:0}.preview-paper h2{font-size:23px}.preview-paper h3{font-size:19px}.preview-paper h4,.preview-paper h5,.preview-paper h6{font-size:16px}
.preview-paper .preview-list-item{padding-left:20px;position:relative}.preview-paper .preview-list-item:before{content:'•';position:absolute;left:4px}
.preview-paper .preview-table-wrap{margin:22px 0;max-height:none}.preview-paper .preview-table{font-family:Arial,sans-serif;font-size:13px}
.preview-paper .preview-table td{min-width:50px;padding:8px 10px}
.preview-markdown ul,.preview-markdown ol{padding-left:25px}.preview-markdown li{margin:5px 0}.preview-markdown blockquote{border-left:3px solid #b3c7b2;margin:18px 0;padding:3px 18px;color:#66746b;background:#f7f9f5}.preview-markdown pre{padding:17px;background:#f5f5f2;border-radius:6px;overflow:auto;font:13px/1.55 ui-monospace,monospace}.preview-markdown :not(pre)>code{background:#f2f4ee;padding:2px 4px;border-radius:3px;font-size:.9em}.preview-markdown a{color:#387253}.preview-markdown table{border-collapse:collapse;display:block;overflow:auto}.preview-markdown th,.preview-markdown td{border:1px solid #dfe4dc;padding:6px 10px}
.preview-workbook{max-width:100%;height:100%;display:flex;flex-direction:column;background:#fff;border:1px solid #dde5dc;border-radius:9px;overflow:hidden}
.preview-sheet-tabs{display:flex;gap:4px;overflow:auto;flex:none;padding:10px 12px 0;background:#eef3ec;border-bottom:1px solid #d5e1d3}
.preview-sheet-tab{white-space:nowrap;padding:9px 15px;border:1px solid transparent;border-radius:7px 7px 0 0;color:#526354;background:transparent;font-size:12px}
.preview-sheet-tab.active{background:white;border-color:#d5e1d3;border-bottom-color:white;color:#26573c;font-weight:700}
.preview-sheet-panel{min-height:0;flex:1;display:flex;flex-direction:column}.preview-sheet-panel[hidden]{display:none}
.preview-sheet-meta{padding:10px 14px;color:#68756a;font-size:12px}
.preview-sheet-panel .preview-table-wrap{max-height:none;flex:1;border:0;border-top:1px solid #e5ebe4}
.preview-spreadsheet{font:12px/1.45 ui-sans-serif,Arial,sans-serif;min-width:max-content}
.preview-spreadsheet th{position:sticky;top:0;background:#f1f5f0;color:#5e7060;font-weight:600;min-width:90px;border:1px solid #dfe7de;padding:6px 8px;text-align:center}
.preview-spreadsheet tbody th{left:0;z-index:1;min-width:40px;width:40px}.preview-spreadsheet .preview-corner{left:0;z-index:2;min-width:40px;width:40px}
.preview-spreadsheet td{min-width:90px;padding:7px 9px;border-color:#e6ebe5}.preview-spreadsheet tr:nth-child(even) td{background:#fafcf9}
@media(max-width:600px){.document-preview #preview-content{padding:10px}.preview-paper{padding:22px}.preview-sheet-tab{padding:8px 10px}}
.tender-page .workspace-files>header{background:linear-gradient(120deg,#fbfcf8,#f2f6ef)}
.explorer-folder-button{min-height:43px;transition:background .15s ease}
.explorer-folder-button:hover{background:#edf3ea}
.explorer-folder-button strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.explorer-count{min-width:24px;padding:3px 7px;text-align:center;border-radius:20px;background:#eef1e9;color:#5d6b5b;font-variant-numeric:tabular-nums}
.explorer-contents .workspace-file{margin:3px 6px;border-top:0;border-radius:7px;transition:background .15s ease}
.explorer-contents .workspace-file:hover{background:#edf4ed}
.explorer-contents .workspace-file-open{padding-top:9px;padding-bottom:9px}
.explorer-contents .workspace-file-open strong{font-size:12px;color:#28352c}
.explorer-contents .workspace-download{opacity:.5;border-radius:6px;transition:opacity .15s ease,background .15s ease}
.explorer-contents .workspace-file:hover .workspace-download,.explorer-contents .workspace-download:focus-visible{opacity:1;background:#dce9db}
.explorer-contents .file-type{border-radius:5px 5px 5px 2px;font-weight:750;letter-spacing:.02em;box-shadow:0 2px 4px #19261b12}
.explorer-contents .file-type.doc,.explorer-contents .file-type.docx{background:#e8effa;color:#2d5a95;border-color:#cddcf2}
.explorer-contents .file-type.md,.explorer-contents .file-type.txt{background:#f2efe7;color:#766842;border-color:#e5ddc8}
.explorer-contents .file-type.pdf{background:#fbebe7;color:#a9473f;border-color:#f0d5d0}
.explorer-contents .file-type.xls,.explorer-contents .file-type.xlsx,.explorer-contents .file-type.csv{background:#e7f3e9;color:#34724a;border-color:#cde6d1}
@media(max-width:1100px){.sidebar .brand span{font-size:20px}}
@media(max-width:760px){.sidebar .brand{margin-left:0}.sidebar .brand span{font-size:25px}.sidebar-tenders{display:none}}

/* Consistent navigation and compact chat composer. */
.sidebar-toggle,.sidebar-collapsed .sidebar-toggle{left:auto;right:14px;top:27px;width:32px;height:32px}
.sidebar .brand{margin-left:0}
.sidebar .brand span{font-size:23px}
.topbar,.tender-page .topbar{height:56px;min-height:56px;padding:0 24px;flex:none}
.sidebar-bottom{display:none}
.page-heading h1{margin-bottom:0}
.chat-input-row{display:flex;align-items:flex-end;gap:8px}
.chat-input-row textarea{flex:1;min-width:0}
.chat-attach-wrap{position:relative;flex:none}
.chat-attach-toggle{width:42px;height:42px;border:1px solid var(--line);border-radius:7px;background:white;color:var(--ink);font-size:20px;display:grid;place-items:center}
.chat-attach-toggle:hover{background:var(--canvas)}
.chat-attach-menu{position:absolute;bottom:calc(100% + 8px);left:0;z-index:4;min-width:145px;padding:5px;border:1px solid var(--line);border-radius:7px;background:white;box-shadow:0 12px 26px #0e0d0b22}
.chat-attach-menu button{display:block;width:100%;padding:9px 12px;text-align:left;border-radius:4px;background:white;font-size:12px}
.chat-attach-menu button:hover{background:var(--canvas)}
.workspace-composer .composer-actions{justify-content:flex-end}
@media(max-width:760px){.topbar,.tender-page .topbar{height:56px;min-height:56px;padding:0 20px}.sidebar .brand span{font-size:25px}}

/* Keep navigation rows in place when the rail is collapsed. */
.sidebar-collapsed .sidebar{padding:28px 8px;align-items:stretch}
.sidebar-collapsed .sidebar .brand{display:flex;visibility:hidden;margin-bottom:42px}
.sidebar-collapsed .sidebar .nav-label{display:block;visibility:hidden}
.sidebar-collapsed .sidebar nav a{min-height:44px}
.sidebar-collapsed .sidebar-toggle{top:27px;right:14px}

/* A quiet conversation surface with a single integrated composer. */
.workspace-chat{background:#fff}
.workspace-chat>header{padding:17px 22px;background:#fff}
.workspace-chat>header h2{font-size:15px;font-weight:650}
.workspace-chat>header span{font-size:11px}
.workspace-messages{background:#fff;padding:24px 24px 32px;scrollbar-gutter:stable}
.workspace-message{position:relative;max-width:100%;margin:0 0 25px;padding:0;border:0;border-radius:0;background:transparent;font-size:14px;line-height:1.62}
.workspace-message.assistant{padding-left:40px}
.workspace-message.assistant:before{content:'Т';position:absolute;left:0;top:1px;display:grid;place-items:center;width:27px;height:27px;border:1px solid #dcd9cf;border-radius:50%;background:#f2f0e9;color:#282721;font-family:Georgia,serif;font-size:15px}
.workspace-message.user{width:max-content;max-width:84%;margin-left:auto;padding:11px 15px;border:0;border-radius:18px;background:#f0efe9}
.workspace-message.user .workspace-message-role{display:none}
.workspace-message-role{display:block;color:#69665e;font-size:11px;font-weight:650}
.workspace-message p{margin:3px 0 0;line-height:1.62}
.workspace-message.user p{margin:0}
.workspace-message.waiting{padding-top:3px}
.workspace-message-files button{border:1px solid #dfddd5;border-radius:8px;background:#fff;padding:6px 9px;font-size:11px}
.chat-file-cards{display:flex;flex-direction:column;gap:8px;max-width:370px;margin-top:12px}
.chat-file-card{--card-accent:#69717b;--card-paper:#edf0f2;display:flex;align-items:center;width:100%;min-width:0;padding:10px;border:1px solid #deddd8;border-radius:17px;background:#fff;color:var(--ink);text-align:left;box-shadow:0 2px 6px #1917140a}
.chat-file-card:hover{border-color:#b5bdb6;background:#fafbf9}
.chat-file-card-open{display:flex;align-items:center;gap:14px;flex:1;min-width:0;padding:0;border:0;background:transparent;color:inherit;text-align:left}
.chat-file-card-download{display:grid;place-items:center;flex:none;width:38px;height:38px;margin-left:6px;padding:0;border:0;border-radius:10px;background:transparent;color:#74766f}
.chat-file-card-download:hover,.chat-file-card-download:focus-visible{background:#ecefea;color:#2b4f39}
.chat-file-card-download svg{width:20px;height:20px}
.chat-file-card-icon{display:grid;place-items:center;flex:none;width:56px;height:56px;border-radius:12px;background:#f2f2ef}
.chat-file-card-icon svg{width:36px;height:43px}
.chat-file-icon-page{fill:var(--card-paper);stroke:var(--card-accent);stroke-width:1.5}
.chat-file-icon-fold{fill:none;stroke:var(--card-accent);stroke-width:1.5}
.chat-file-icon-badge{fill:var(--card-accent)}
.chat-file-card-icon text{fill:#fff;font-size:12px;font-weight:750;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.chat-file-card-meta{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
.chat-file-card-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;line-height:1.3}
.chat-file-card-format{color:#77746d;font-size:12px;line-height:1.2}
.chat-file-card--word{--card-accent:#285eb9;--card-paper:#e7efff}
.chat-file-card--pdf{--card-accent:#c3433f;--card-paper:#fff0ef}
.chat-file-card--sheet{--card-accent:#268252;--card-paper:#e8f7ed}
.chat-file-card--slides{--card-accent:#d27330;--card-paper:#fff1e4}
.chat-file-card--image{--card-accent:#8a62b7;--card-paper:#f4ebff}
.chat-file-card--archive{--card-accent:#9a752a;--card-paper:#fcf3dc}
.chat-file-card--text{--card-accent:#566f87;--card-paper:#ecf2f8}
.workspace-composer{padding:12px 18px 16px;border-top:0;background:#fff}
.chat-input-row{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;align-items:center;gap:4px;padding:12px;border:1px solid #dcdad3;border-radius:18px;background:#fff;box-shadow:0 2px 10px #221e1609;transition:border-color .15s,box-shadow .15s}
.chat-input-row:focus-within{border-color:#aaa69d;box-shadow:0 0 0 3px #e9e7de}
.chat-input-row textarea,.workspace-composer textarea{grid-column:1/-1;grid-row:1;width:100%;min-height:44px;max-height:150px;padding:3px 4px;border:0;background:transparent;resize:none;font-size:14px;line-height:1.5;box-shadow:none;outline:none}
.chat-input-row textarea::placeholder{color:#96938c}
.chat-input-row textarea:focus{border:0;box-shadow:none;outline:none}
.chat-attach-wrap{grid-column:1;grid-row:2;justify-self:start}
.chat-attach-toggle{width:34px;height:34px;border:0;border-radius:9px;background:transparent;color:#77736b;display:grid;place-items:center;padding:0}
.chat-attach-toggle svg,.chat-send svg{display:block;width:19px;height:19px}
.chat-attach-toggle:hover{background:#f3f2ed;color:var(--ink)}
.chat-send.primary{grid-column:2;grid-row:2;display:grid;place-items:center;justify-self:end;width:34px;height:34px;min-width:34px;padding:0;border-radius:10px}
.workspace-composer #workspace-chat-state{margin:7px 4px 0;font-size:11px}
@media(max-width:760px){.workspace-messages{padding:18px 14px}.workspace-composer{padding:10px 12px 14px}.sidebar-collapsed .sidebar{padding:16px 20px}}

/* The collapsed rail keeps the same row positions as the expanded rail. */
@media(min-width:761px){
  .app-shell{transition:grid-template-columns .22s ease}
  .sidebar .brand{height:30px;min-height:30px;white-space:nowrap;overflow:hidden;transition:opacity .15s ease}
  .sidebar .nav-label{height:11px;min-height:11px;white-space:nowrap;overflow:hidden;transition:opacity .15s ease}
  .sidebar-collapsed .sidebar{padding:32px 8px;align-items:stretch}
  .sidebar-collapsed .sidebar .brand{display:flex;visibility:visible;opacity:0;pointer-events:none;height:30px;min-height:30px;margin-bottom:42px}
  .sidebar-collapsed .sidebar .nav-label{display:block;visibility:visible;opacity:0;height:11px;min-height:11px}
  .sidebar-collapsed .sidebar nav>a{height:44px;min-height:44px;padding:0;line-height:1}
  .sidebar-collapsed .sidebar-tenders{display:grid;gap:3px;margin:2px 0 7px}
  .sidebar-collapsed .sidebar-tenders-label,.sidebar-collapsed .sidebar-tender-name{display:none}
  .sidebar-collapsed .sidebar nav .sidebar-tender{justify-content:center;min-height:34px;padding:8px 0}
  .sidebar-collapsed .sidebar .sidebar-tender-icon{display:block}
}
.analysis-message>p{margin-top:5px}
.analysis-message>p strong{display:block;margin-bottom:7px;font-weight:650}
.analysis-questions{margin:18px 0 12px;padding:15px 17px;border:1px solid #e3e0d7;border-radius:12px;background:#f8f7f3}
.analysis-questions>strong{font-size:12px}
.analysis-questions ol{margin:10px 0 0;padding-left:20px}
.analysis-questions li{margin:0 0 11px;padding-left:2px;line-height:1.5}
.analysis-questions li:last-child{margin-bottom:0}
.analysis-questions li small{display:block;margin-top:3px;font-size:10px;color:var(--muted)}
.explorer-folder-button{padding-left:calc(15px + var(--depth,0)*24px)}
.explorer-contents .workspace-file{padding-left:calc(25px + var(--depth,0)*24px)}
.chat-file-link{padding:0;border:0;background:none;color:#235a7b;text-decoration:underline;text-underline-offset:2px;font:inherit;cursor:pointer}

/* Mobile navigation remains available when the sidebar is hidden. */
.tender-page .topbar{display:flex;background:#fff}
@media(min-width:761px){.tender-page .topbar{display:none}}
.tender-page #breadcrumb{display:flex;align-items:center;gap:16px;min-width:0}
.tender-topbar-brand{display:none}
.tender-topbar-back{white-space:nowrap}
.tender-header{display:flex;align-items:center;gap:24px;margin-bottom:14px}
.tender-title{display:flex;align-items:center;gap:8px;min-width:0;flex:1 1 auto}
.tender-title h1{min-width:0;margin:0;overflow-wrap:anywhere}
.tender-settings{display:inline-grid;place-items:center;width:32px;height:32px;min-width:32px;padding:0;border:1px solid var(--line);border-radius:8px;background:#fff;color:#5e5a52;flex:none}
.tender-settings:hover{background:#eeece5;color:var(--ink)}
.tender-facts{display:flex;align-items:flex-start;justify-content:flex-end;gap:10px 24px;flex:0 0 auto}
.tender-status-button,.tender-status-label{display:inline-flex;align-items:center;width:max-content;border:1px solid #d7dfd2;border-radius:999px;background:#edf4e9;color:#2f603d;font-size:11px;font-weight:600;line-height:1.3;padding:6px 10px;white-space:nowrap}
.tender-status-button{cursor:pointer;font-family:inherit}
.tender-status-button:hover{background:#e2eddb}
.tender-status-button.finished,.tender-status-label.finished{border-color:#ddd9d0;background:#f1efea;color:#625d53}
.tender-status-button.finished:hover{background:#e8e4dc}
.tender-status-button:disabled{opacity:.6;cursor:wait}
.tender-status-label{padding:3px 8px;font-size:10px}
.tender-fact{display:flex;flex-direction:column;gap:2px;min-width:0}
.tender-fact-label{color:var(--muted);font-size:10px;line-height:1.2}
.tender-fact-value{min-width:0;font-size:12px;line-height:1.35;overflow-wrap:anywhere}
@media(max-width:1100px){
  .tender-header{display:block}
  .tender-facts{justify-content:flex-start;flex-wrap:wrap;margin-top:9px}
}
@media(max-width:760px){
  .tender-page .sidebar{display:none}
  .tender-page #content{padding-top:17px}
  .tender-topbar-brand{display:inline;color:var(--ink);font-family:Georgia,serif;font-size:19px;letter-spacing:-.5px}
  .tender-topbar-back{font-size:11px}
  .tender-facts{gap:10px 18px}
}
.message-markdown{overflow-wrap:anywhere}
.workspace-message .message-markdown p,.chat-message .message-markdown p{margin:7px 0;white-space:normal;line-height:1.6}
.message-markdown>:first-child{margin-top:4px}

/* Draggable desktop widths for the navigation rail and tender panes. */
.sidebar-resizer,.workspace-resizer{display:none}
.layout-resizing{user-select:none;cursor:col-resize}
.app-shell.layout-dragging{transition:none!important}
@media(min-width:761px){
  .app-shell:not(.sidebar-collapsed){grid-template-columns:var(--sidebar-width,232px) minmax(0,1fr)}
  .sidebar-resizer{display:block;position:absolute;top:0;bottom:0;right:-6px;width:12px;z-index:5;cursor:col-resize;touch-action:none}
  .sidebar-resizer::before{content:'';position:absolute;top:0;bottom:0;left:5px;width:2px;background:transparent}
  .sidebar-resizer:hover::before,.sidebar-resizer:focus-visible::before,.layout-resizing .sidebar-resizer::before{background:#77736b}
  .sidebar-collapsed .sidebar-resizer{display:none}
}
@media(min-width:1051px){
  .tender-page .tender-workspace{grid-template-columns:minmax(0,var(--files-width,46%)) 12px minmax(0,1fr);gap:0}
  .workspace-resizer{display:block;position:relative;align-self:stretch;cursor:col-resize;touch-action:none}
  .workspace-resizer::before{content:'';position:absolute;top:0;bottom:0;left:5px;width:2px;background:#dddbd3}
  .workspace-resizer:hover::before,.workspace-resizer:focus-visible::before,.layout-resizing .workspace-resizer::before{background:#77736b}
}
.message-markdown>:last-child{margin-bottom:0}
.message-markdown h1,.message-markdown h2,.message-markdown h3{margin:17px 0 7px;line-height:1.3;font-weight:700}
.message-markdown h1{font-size:1.28em}.message-markdown h2{font-size:1.16em}.message-markdown h3{font-size:1.07em}
.message-markdown ul,.message-markdown ol{margin:8px 0;padding-left:22px}
.message-markdown li{margin:3px 0}.message-markdown li p{margin:2px 0}
.message-markdown blockquote{margin:10px 0;padding:2px 0 2px 13px;border-left:3px solid #d7d4ca;color:#615e56}
.message-markdown pre{max-width:100%;margin:10px 0;padding:12px;border-radius:8px;background:#f1f0eb;overflow:auto;white-space:pre}
.message-markdown code{padding:2px 4px;border-radius:4px;background:#f1f0eb;font-size:.9em}
.message-markdown pre code{padding:0;background:none}
.message-markdown table{display:block;max-width:100%;margin:10px 0;border-collapse:collapse;overflow:auto}
.message-markdown th,.message-markdown td{padding:6px 9px;border:1px solid #ddd9d0;text-align:left}
.message-markdown a{color:#235a7b;text-decoration:underline;text-underline-offset:2px}
.sidebar-account{margin-top:auto;padding-top:20px}
.sidebar-account .account-button{display:flex;width:100%;min-height:44px;padding:10px 12px;background:transparent;border-color:transparent;color:inherit;font-size:13px;justify-content:flex-start}
.sidebar-account .account-button:hover,.sidebar-account .account-button.active{background:#e2e0d6;border-color:transparent;color:var(--ink)}
.sidebar-collapsed .sidebar-account{width:100%}
.sidebar-collapsed .sidebar-account .account-button{justify-content:center;padding:10px 0}
.sidebar-collapsed .sidebar-account .account-button span{display:none}
.account-button-mobile{display:none}
.company-documents-description{margin:0 0 18px;max-width:680px}
@media(min-width:761px){.sidebar{position:sticky;top:0;height:100vh}}
@media(max-width:760px){.sidebar-account{display:none}.account-button-mobile{display:inline-flex}}
.mobile-brand{display:none}
@media(max-width:760px){
  .app-shell{display:block;min-height:100dvh}
  .app-shell .sidebar{display:none}
  .main-shell{min-height:100dvh}
  .topbar,.tender-page .topbar{height:56px;min-height:56px;padding:0 16px;gap:12px}
  .mobile-brand{display:block;color:var(--ink);font:21px Georgia,"Times New Roman",serif;white-space:nowrap}
  .app-shell:not(.tender-page) #breadcrumb{display:none}
  .tender-page #breadcrumb{flex:1;justify-content:flex-end}
  .tender-page .tender-topbar-brand{display:none}
  .account-button-mobile{display:grid;place-items:center;flex:none;width:40px;height:40px;padding:0}
  .account-button-mobile span{display:none}
  #content{margin:0 auto;padding:22px 16px}
  .app-footer{display:none}
  .page-heading{flex-direction:row;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:22px}
  .page-heading>button{align-self:auto}
  .tender-grid{grid-template-columns:minmax(0,1fr)}
}
.tender-workflow{padding:12px 16px;border-bottom:1px solid var(--line);overflow:auto;max-height:42%;flex-shrink:0;font-size:12px}
.workflow-next{margin:0 0 10px;line-height:1.5;font-weight:600}
.workflow-actions{display:flex;flex-wrap:wrap;gap:6px}
.workflow-actions button{font-size:11px;padding:7px 9px}
.workflow-details details{margin-top:10px}
.workflow-details summary{cursor:pointer;font-weight:600}
.workflow-details dl{margin:10px 0}
.workflow-details dl>div{padding:6px 0;border-bottom:1px solid var(--line)}
.workflow-details dt{font-weight:600}.workflow-details dd{margin:4px 0;white-space:pre-wrap}
.workflow-details small,.offer-table small{display:block;color:var(--muted);font-size:11px;margin-top:4px;white-space:pre-wrap}
.workflow-details li{margin:8px 0}.workflow-details textarea{width:100%}
.tender-page .workspace-files .workspace-file-list{flex:1;min-height:90px;max-height:none}
dialog.offer-editor{width:min(1400px,96vw);max-width:96vw}
.offer-settings{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px}
.offer-table-wrap{overflow:auto;max-height:45vh;margin:16px 0;border:1px solid var(--line)}
.offer-table{border-collapse:collapse;font-size:12px;width:100%;min-width:1900px}
.offer-table th,.offer-table td{padding:8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;min-width:110px}
.offer-table th{position:sticky;top:0;background:#f6f5f1;z-index:1}.offer-table td:first-child{min-width:40px;max-width:100px;overflow-wrap:anywhere}
.offer-table td:nth-child(5){min-width:220px;max-width:300px;white-space:pre-wrap}.offer-table input{width:100%;min-width:95px;font-size:12px}
.offer-delivery{margin:18px 0}.offer-pool{display:flex;gap:12px;align-items:end;margin:8px 0}.offer-pool label{flex:1}
#offer-summary{padding:12px;background:#f6f5f1;border-radius:6px;margin-top:16px}
@media(max-width:760px){.offer-settings{grid-template-columns:1fr 1fr}.tender-workflow{max-height:280px}.offer-pool{flex-wrap:wrap}}

/* Structure adapted from tendERR; use the current typography and palette. */
.workspace-main{display:flex;flex-direction:column}
.tender-page .tender-workspace{grid-template-columns:minmax(0,1fr);gap:0}
.workspace-chat[hidden]{display:none!important}
.tender-page .workspace-main{order:initial;height:100%;min-height:0}
.chat-panel-body{display:flex;flex-direction:column;padding:0;overflow:hidden}
.tender-page .chat-panel-body .workspace-chat{flex:1;border:0;border-radius:0;min-height:0;height:100%;order:initial}
.chat-panel-body .workspace-chat>header{display:none}
.chat-panel-body .workspace-messages,.chat-panel-body .workspace-composer{width:100%;max-width:1000px;margin-left:auto;margin-right:auto}
.tender-view-tabs{display:flex;gap:0;flex-shrink:0;border-bottom:1px solid var(--line);overflow-x:auto;background:var(--paper)}
.tender-view-tabs button{flex:1;white-space:nowrap;padding:15px 10px;background:transparent;border-bottom:2px solid transparent;color:var(--muted);font-size:12px;font-weight:500}
.tender-view-tabs button[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--ink)}
.tender-panel-body{flex:1;min-height:0;overflow:auto;padding:20px;scrollbar-gutter:stable}
.panel-intro .eyebrow{display:block;margin-bottom:10px;color:var(--muted);font-size:9px}
.panel-intro h2{font-size:23px;margin:0 0 8px;letter-spacing:-.6px}
.panel-intro p{font-size:13px;color:var(--muted);margin-bottom:18px}
.tender-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0}
.tender-summary-tile{padding:13px;border:1px solid var(--line);border-radius:6px;min-width:0;background:var(--canvas)}
.tender-summary-tile span,.offer-totals span{display:block;font-size:11px;color:var(--muted);margin-bottom:7px}
.tender-summary-tile strong{display:block;font-size:15px;font-weight:600;line-height:1.45;overflow-wrap:anywhere}
.workspace-section{margin:18px 0;padding:17px;border:1px solid var(--line);border-radius:6px;background:var(--paper)}
.workspace-section h3{font-size:15px;margin:0 0 14px}.workspace-section p{font-size:13px;margin-bottom:12px}
.workspace-section-attention{border-left:3px solid var(--amber)}
.panel-facts{margin:0}.panel-facts>div{padding:10px 0;border-bottom:1px solid var(--line)}.panel-facts>div:last-child{border:0;padding-bottom:0}
.panel-facts dt{font-size:11px;color:var(--muted);margin-bottom:4px}.panel-facts dd{font-size:13px;margin:0;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}
.panel-source{display:block;color:var(--muted);font-size:11px;line-height:1.5;margin-top:6px;white-space:normal}
.source-file{background:transparent;text-decoration:underline;text-underline-offset:3px;color:var(--link-color);padding:3px 0;font-size:11px}
.panel-actions,.panel-next{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.panel-actions button,.panel-next button,.panel-document>.secondary{font-size:12px;padding:9px 12px}
.panel-table-wrap{overflow:auto}.panel-table{border-collapse:collapse;width:100%;font-size:12px;min-width:400px}
.panel-table th{color:var(--muted);font-size:11px;font-weight:500;text-align:left;background:var(--canvas)}
.panel-table th,.panel-table td{padding:10px 8px;vertical-align:top;border-bottom:1px solid var(--line);line-height:1.5;white-space:pre-wrap}
.panel-document{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}
.panel-document>button:first-child{flex:1;min-width:0;text-align:left;background:transparent;color:var(--ink);font-size:13px;overflow-wrap:anywhere;line-height:1.5}
.panel-document small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.panel-review{padding-left:18px;font-size:13px;line-height:1.6}.panel-review li{margin-bottom:12px}
.offer-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.offer-totals strong{font-size:15px;font-weight:600;overflow-wrap:anywhere}
.panel-processing{display:flex;gap:8px;align-items:center;flex-shrink:0;padding:11px 16px;border-bottom:1px solid var(--line);font-size:12px;color:var(--muted)}
.workspace-main .explorer-root{margin-left:-20px;margin-right:-20px}
@media(max-width:760px){.tender-panel-body{padding:16px}.tender-page .workspace-main{height:70vh;min-height:430px}.tender-page .chat-panel-body .workspace-chat{height:100%;min-height:0}.tender-view-tabs button{padding:13px 10px}.offer-totals{grid-template-columns:1fr}.workspace-main .explorer-root{margin-left:-16px;margin-right:-16px}}
.tender-history-wrap{overflow:auto;background:var(--paper);border:1px solid var(--line);border-radius:6px}
.tender-history{width:100%;border-collapse:collapse;min-width:740px;font-size:13px}
.tender-history th{padding:14px 16px;text-align:left;font-size:11px;font-weight:500;color:var(--muted);background:var(--canvas);white-space:nowrap}
.tender-history td{padding:18px 16px;border-top:1px solid var(--line);vertical-align:top;line-height:1.5}
.tender-history a{font-weight:600}.tender-history a:hover{text-decoration:underline}.tender-history small{display:block;font-size:11px;color:var(--muted);margin-top:5px}.tender-history td:first-child{min-width:220px}.tender-history td:nth-child(5){max-width:230px}
.new-tender-upload-options{margin-top:14px;display:flex;justify-content:center}.new-tender-upload-options button{font-size:12px}

.calendar-toolbar{display:flex;align-items:center;gap:20px;margin:24px 0}.calendar-toolbar h2{margin:0}.tender-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line);background:var(--paper)}.calendar-weekday,.calendar-day{padding:12px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.calendar-weekday{color:var(--muted)}.calendar-day{min-height:130px}.calendar-today{background:var(--soft)}.calendar-event{display:block;margin-top:8px;padding:8px;border-radius:6px;background:var(--canvas);font-size:12px;overflow-wrap:anywhere;text-decoration:none}.calendar-event span{display:block;color:var(--link-color);margin-bottom:4px}.feature-dates{display:grid;gap:12px}.feature-dates>div{display:grid;grid-template-columns:1fr 2fr;gap:16px}.feature-dates dd{margin:0}.feature-dates small,.feature-checks small{display:block;color:var(--muted);margin-top:4px}.feature-checks{list-style:none;padding:0}.feature-checks li{display:flex;align-items:flex-start;gap:12px;margin:16px 0}.date-edit-row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;border-bottom:1px solid var(--line);padding:16px 0}.date-edit-row label{min-width:0}details.panel-section>summary{cursor:pointer;font-size:18px;font-weight:600}details.panel-section[open]>summary{margin-bottom:16px}a.secondary{display:inline-flex;align-items:center;text-decoration:none}.panel-actions{flex-wrap:wrap}
@media(max-width:760px){.tender-calendar{min-width:700px}#content:has(.tender-calendar){overflow-x:auto}.date-edit-row{grid-template-columns:1fr}.feature-dates>div{grid-template-columns:1fr}.calendar-toolbar{gap:12px}.calendar-toolbar h2{font-size:18px}}

.process-progress{display:block;padding:18px 24px;background:#f8f9f5;color:var(--ink)}
.process-progress-heading{display:flex;align-items:center;gap:10px}
.process-progress-heading strong{font-size:13px;font-weight:600}
.process-activity{width:8px;height:8px;background:#3e6a48;border-radius:50%;box-shadow:0 0 0 4px #e5ede2;flex:none;animation:process-pulse 1.6s ease-in-out infinite}
.process-duration{margin-left:auto;color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap}
.process-progress .process-message{margin:10px 0 0 18px;max-width:900px;font-size:13px;line-height:1.6;color:#625f56;white-space:pre-wrap;overflow-wrap:anywhere}
@keyframes process-pulse{50%{opacity:.45}}
@media(prefers-reduced-motion:reduce){.process-activity{animation:none}}
@media(max-width:760px){.process-progress{padding:15px 16px}}
.tender-status-button.cancelled{background:#f3e8e5;color:var(--danger)}

/* Personal account: company, documents, then preferences. */
.profile-page{max-width:1040px;margin:0 auto}.profile-heading{margin:8px 0 28px}.profile-heading .eyebrow{color:var(--muted)}.profile-heading h1{margin:10px 0 8px}.profile-heading p{color:var(--muted);margin:0}.profile-section{background:var(--paper);border:1px solid var(--line);border-radius:10px;margin-bottom:20px;padding:24px 28px}.profile-section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.profile-section-heading h2{font-size:19px;letter-spacing:-.3px;margin:0 0 6px}.profile-section-heading p{font-size:13px;color:var(--muted);margin:0;line-height:1.5}.profile-section-heading button{flex-shrink:0}.profile-company .profile-section-heading h2{font-size:23px}.profile-requisites{margin-top:20px;border-top:1px solid var(--line)}.profile-requisites>summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:16px 0 0;list-style:none;font-size:13px;color:var(--muted)}.profile-requisites>summary::-webkit-details-marker{display:none}.profile-requisites[open]>summary span{transform:rotate(45deg)}.profile-facts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px}.profile-page .company-facts{margin:0;padding:0;border:0;background:none}.profile-page .company-facts h3{font-size:13px;margin:0 0 14px}.profile-page .company-facts dl{grid-template-columns:1fr;gap:12px}.profile-page .company-facts dl>div{display:grid;grid-template-columns:minmax(110px,.8fr) minmax(0,1.2fr);gap:12px}.profile-page .company-facts dt{font-size:12px;line-height:1.5}.profile-page .company-facts dd{margin:0;font-size:12px;line-height:1.5}.profile-details-text{white-space:pre-wrap;font-size:13px}.profile-export{border-top:1px solid var(--line);margin-top:22px;padding-top:12px;text-align:right}.profile-count{display:inline-flex;align-items:center;justify-content:center;margin-left:7px;min-width:23px;height:23px;padding:0 6px;background:var(--canvas);border-radius:5px;font-size:12px;font-weight:500;color:var(--muted)}.profile-file-list{margin-top:22px;border-top:1px solid var(--line)}.profile-file-row{display:flex;align-items:center;gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}.profile-file-row:last-child{border-bottom:0;padding-bottom:0}.profile-file-row .file-label{flex:1;min-width:0}.profile-file-row .file-label button{font-size:14px;text-align:left;overflow-wrap:anywhere;background:none;padding:0;line-height:1.4}.profile-file-row .file-label small{display:block;color:var(--muted);margin-top:4px}.profile-file-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:44px;border:1px solid var(--line);border-radius:5px;background:var(--canvas);font-size:9px;color:var(--muted);font-weight:600}.profile-file-delete{font-size:12px;color:var(--muted);background:none;padding:8px}.profile-file-delete:hover{color:var(--danger)}.profile-documents-empty{display:flex;align-items:center;gap:18px;background:var(--canvas);border-radius:7px;margin-top:22px;padding:22px}.profile-empty-icon{font-size:28px;color:var(--muted)}.profile-documents-empty strong{font-size:14px;font-weight:500}.profile-documents-empty p{font-size:12px;color:var(--muted);margin:4px 0 0}.profile-memory textarea{display:block;width:100%;min-height:108px;margin-top:18px;padding:14px 16px;line-height:1.6;font-size:13px;background:var(--paper);border:1px solid var(--line);border-radius:6px;resize:vertical}.profile-memory-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px}.profile-memory-actions .primary{font-size:13px;padding:10px 16px}.profile-account-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:2px 4px 22px;color:var(--muted);font-size:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:760px){.profile-section{padding:20px}.profile-facts-grid{grid-template-columns:1fr}.profile-section-heading{align-items:flex-start;flex-wrap:wrap}.profile-file-row{flex-wrap:wrap}.profile-file-row .badge{margin-left:54px}.profile-memory-actions{align-items:flex-start;flex-wrap:wrap}.profile-account-footer{flex-wrap:wrap}.profile-page .company-facts dl>div{grid-template-columns:1fr;gap:3px}.profile-company .profile-section-heading h2{font-size:20px}}

/* Only the four main folders span the panel; nested rows retain their indent. */
.workspace-main .explorer-nested{margin:0;border-bottom:0}
.explorer-nested>.explorer-folder-button{min-height:38px;font-size:12px;background:#fff}
.explorer-nested>.explorer-folder-button strong{font-weight:500}
.explorer-nested>.explorer-folder-button:hover{background:#f5f4ef}
.explorer-nested>.explorer-contents{border-top:0;background:#fff}
.explorer-nested>.explorer-folder-button .explorer-count{background:none;font-size:11px;color:var(--muted)}
.offer-subtabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin:20px 0 12px}.offer-subtabs button{border:0;background:none;color:var(--muted);padding:10px 14px;border-radius:0}.offer-subtabs button.active{color:var(--ink);box-shadow:inset 0 -2px currentColor}.offer-notice{padding:12px 14px;background:#f5f3ea;border-radius:8px;font-size:13px;line-height:1.5}.offer-rules,.offer-bulk{padding:12px 0;border-bottom:1px solid var(--line)}.offer-rules summary,.offer-bulk summary{cursor:pointer;font-size:13px}.offer-bulk-fields{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end;margin:12px 0}.offer-pool{display:flex;gap:8px;margin:8px 0}.offer-pool input{flex:1;min-width:0}.offer-table-focused{min-width:1050px}.offer-table-focused td:first-child,.offer-table-focused th:first-child{min-width:32px;width:32px}.offer-table-focused input[type=checkbox]{width:16px;min-width:16px}.offer-table-focused td:nth-child(2){min-width:230px}.offer-table-focused td:nth-child(5){min-width:150px}.offer-table-focused td{max-width:280px}.offer-table-focused small{max-height:90px;overflow:auto}.offer-table-focused span{white-space:normal}.offer-settings select{width:100%}@media(max-width:760px){.offer-bulk-fields{grid-template-columns:1fr}.offer-subtabs button{padding:8px;font-size:12px}}
.tender-page .tender-workspace.initial-analysis-workspace{flex:0 1 auto;align-items:start;width:100%;max-width:960px}
.tender-page .initial-analysis-workspace .workspace-main{height:auto;min-height:0;align-self:start}
.initial-analysis-body{flex:none;padding:0;scrollbar-gutter:auto}
.initial-analysis-body .process-progress{border:0;margin:0;padding:24px 28px;background:var(--paper)}
.initial-analysis-body .process-progress-heading strong{font-size:15px}
.initial-analysis-body .process-progress .process-message{margin-top:16px;max-width:72ch;font-size:14px;line-height:1.7}
@media(max-width:760px){.initial-analysis-body .process-progress{padding:20px}.initial-analysis-body .process-progress .process-message{font-size:13px}}

/* Application requirements: one document, its state, and direct actions. */
.document-group{margin:24px 0}.document-group:first-child{margin-top:0}.document-group>header{padding-bottom:12px;border-bottom:1px solid var(--line)}.document-group>header h3{margin:0;font-size:15px}.document-group>header p{margin:5px 0 0;color:var(--muted);font-size:12px}
.requirement-document{display:flex;align-items:flex-start;gap:24px;padding:20px 0;border-bottom:1px solid var(--line)}.requirement-document-main{flex:1;min-width:0}.requirement-document h4{margin:0 0 9px;font-size:14px;line-height:1.5;font-weight:600}.document-state{display:inline-block;color:var(--muted);font-size:12px}.document-state-checked{color:#356744}.requirement-document .document-note{margin:8px 0;color:var(--muted);font-size:12px;line-height:1.6}.requirement-document-actions{display:flex;flex-direction:column;align-items:stretch;gap:7px;width:190px;flex-shrink:0}.requirement-document-actions button{padding:9px 12px;font-size:12px}.requirement-file{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:12px}.requirement-file button:first-child{max-width:100%;text-align:left;overflow-wrap:anywhere;justify-content:flex-start;font-size:12px}.requirement-file small{color:var(--muted);font-size:11px}.requirement-source{margin-top:12px;color:var(--muted);font-size:11px}.requirement-source summary{cursor:pointer}.requirement-source .panel-source{margin-top:8px}.document-library{display:flex;flex-direction:column;gap:9px}.document-library button{justify-content:space-between;gap:20px;text-align:left;overflow-wrap:anywhere}.document-library small{flex-shrink:0;color:var(--muted)}.review-passed{font-size:13px;color:var(--muted)}.review-passed summary{cursor:pointer;padding:10px 0}
@media(max-width:760px){.requirement-document{flex-direction:column;gap:14px}.requirement-document-actions{flex-direction:row;flex-wrap:wrap;width:100%}.requirement-document-actions button{flex:1;min-width:140px}.document-library button{flex-wrap:wrap}}
.application-participant{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:18px 0;font-size:12px;color:var(--muted)}.application-participant strong{color:var(--ink);font-weight:500}.application-participant a{white-space:nowrap;text-decoration:underline;text-underline-offset:3px}.requirement-document-main .document-note{max-width:90ch}
@media(max-width:760px){.application-participant{align-items:flex-start;flex-direction:column;gap:7px}}
.requirement-document[data-responsibility="platform"] .requirement-document-actions{display:none}

.offer-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 16px;font-size:13px;color:var(--muted)}.offer-editor-heading p{margin:0;color:var(--ink)}
.offer-excel{border:1px solid var(--line);border-radius:10px;margin:0 0 22px;padding:14px 16px;background:var(--paper,#f6f5f1)}.offer-excel summary{cursor:pointer;font-weight:500}.offer-excel p{font-size:13px;line-height:1.6;max-width:850px;color:var(--muted)}
#inline-offer-editor .offer-settings{grid-template-columns:repeat(auto-fit,minmax(170px,240px))}#inline-offer-editor .offer-table-wrap{max-height:55vh;border-radius:8px}#inline-offer-editor .offer-table-focused{font-size:13px}#inline-offer-editor .offer-table-focused input{font-size:13px;padding:10px}#inline-offer-editor .offer-table-focused td,#inline-offer-editor .offer-table-focused th{padding:12px 10px}
.offer-editor-actions{display:flex;justify-content:flex-end;gap:12px;padding:20px 0 0}.offer-import-ready{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:8px;margin-bottom:14px}
dialog.offer-import-dialog{width:min(1000px,94vw);max-width:94vw}.offer-import-table{overflow:auto;max-height:55vh}.offer-import-table table{width:100%;border-collapse:collapse;font-size:13px}.offer-import-table th,.offer-import-table td{padding:12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.offer-import-table th{position:sticky;top:0;background:#f6f5f1}.offer-import-table td:first-child{width:40%}
@media(max-width:760px){.offer-editor-heading{align-items:flex-start;flex-direction:column;gap:6px}.offer-editor-actions{flex-direction:column}.offer-import-ready{flex-direction:column;align-items:flex-start}#inline-offer-editor .offer-settings{grid-template-columns:1fr 1fr}}

/* Give expanded offer sections room between the heading and their fields. */
.offer-excel[open]>summary,.offer-rules[open]>summary,.offer-bulk[open]>summary{margin-bottom:18px}
.offer-excel[open]>p{margin:0 0 18px}
.offer-rules{margin-top:20px}
.offer-rules[open]>.offer-settings,.offer-bulk[open]>.offer-bulk-fields{margin-top:0}
.offer-rules[open]>small{display:block;margin-top:14px;line-height:1.5}
.offer-bulk[open]>label{display:block;margin-top:18px}
.offer-bulk[open]>button{margin-top:12px}

.offer-shipping{padding:16px 0;border-bottom:1px solid var(--line)}.offer-shipping summary{cursor:pointer;font-size:13px}.offer-shipping[open]>summary{margin-bottom:18px}
.offer-table-unified{min-width:950px;table-layout:fixed}.offer-table-unified th,.offer-table-unified td{min-width:0!important;max-width:none!important;padding:14px 12px!important}.offer-table-unified th:first-child{width:40px}.offer-table-unified th:nth-child(2){width:25%}.offer-table-unified th:nth-child(3){width:14%}.offer-table-unified th:nth-child(4){width:20%}.offer-table-unified th:last-child{width:100px}.offer-table-unified strong{display:block;line-height:1.5;font-size:13px;white-space:normal}.offer-table-unified small{display:block;line-height:1.5;margin:5px 0;white-space:normal}.offer-table-unified .offer-position-identity{font-size:12px;color:var(--ink);margin:0 0 6px}.offer-table-unified input[type=checkbox]{min-width:16px;width:16px}.offer-table-unified label{font-size:12px}.offer-table-unified .offer-row-toggle{font-size:12px;padding:9px 10px;min-width:0}
.offer-position-details[hidden]{display:none}.offer-position-details>td{background:#f8f7f3;padding:0!important}.offer-position-detail-body{padding:22px 26px}.offer-row-requirement{margin-bottom:22px;max-width:1000px}.offer-row-requirement p{white-space:pre-wrap;line-height:1.6;font-size:13px;margin:8px 0}.offer-row-field-groups{display:grid;grid-template-columns:1fr 1fr;gap:32px}.offer-row-field-groups h3{margin:0 0 14px;font-size:14px}.offer-row-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.offer-row-fields label{display:flex;flex-direction:column;gap:8px}.offer-row-source-fields{margin:20px 0}.offer-row-source-fields summary{cursor:pointer}.offer-row-source-fields[open] summary{margin-bottom:18px}.offer-table-unified .offer-position-row>td:nth-child(3)>label,.offer-table-unified .offer-position-row>td:nth-child(4)>label,.offer-table-unified .offer-position-row>td:nth-child(5)>label{font-size:0}.offer-table-unified .offer-position-row>td input{font-size:13px}
@media(max-width:760px){.offer-row-field-groups{grid-template-columns:1fr;gap:24px}.offer-position-detail-body{padding:18px}.offer-row-fields{gap:12px}}
#inline-offer-editor .offer-table-wrap:has(.offer-table-unified){max-height:none;overflow-x:auto}
.offer-interface,.adaptive-section{padding:18px 0;border-bottom:1px solid var(--line);margin-bottom:18px}.offer-interface summary{cursor:pointer;font-weight:500}.offer-interface[open]>summary{margin-bottom:18px}.offer-interface .panel-actions{margin-top:18px}.adaptive-section h3{font-size:15px;margin:0 0 18px}.adaptive-fields{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:16px;margin:16px 0}.adaptive-fields label{display:flex;flex-direction:column;gap:8px}.offer-lot{padding:18px;background:var(--canvas);border-radius:8px;margin:12px 0}.offer-lot>label{display:flex;align-items:center;gap:10px;margin-bottom:16px}.offer-lot input[type=checkbox]{width:16px}.offer-find{display:flex;gap:12px;margin:22px 0}.offer-find input{flex:1}.offer-find select{width:200px}.offer-position-row[hidden]{display:none}.offer-row-fields select{width:100%}@media(max-width:760px){.adaptive-fields{grid-template-columns:1fr}.offer-find{flex-direction:column}.offer-find select{width:100%}}
.offer-interface>label,.offer-position-detail-body>label{display:flex;align-items:center;gap:10px;margin:18px 0;font-size:13px}.offer-interface>label input[type=checkbox],.offer-position-detail-body>label input[type=checkbox]{width:16px;min-width:16px;margin:0;flex:0 0 16px}
#offer-form .offer-interface>label,#offer-form .offer-lot>label,#offer-form .offer-position-detail-body>label{flex-direction:row;justify-content:flex-start}
.unsaved-changes{list-style:none;padding:0;margin:16px 0 24px;max-height:340px;overflow:auto}
.unsaved-changes li{padding:12px 0;border-bottom:1px solid var(--line);display:grid;gap:5px}
.unsaved-changes li span{color:var(--muted);overflow-wrap:anywhere;white-space:pre-wrap}
.application-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.application-toolbar .panel-actions{margin:0}
.application-missing{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--surface);padding:16px;border-radius:8px;margin-bottom:16px}
.application-missing details{flex-basis:100%}
.document-group>header p{margin:0}
.application-checks>summary{cursor:pointer;font-weight:600;margin-bottom:16px}
@media(max-width:760px){.application-toolbar{align-items:flex-start;flex-direction:column}}
.document-group-folded>summary{font-weight:600;cursor:pointer;padding:16px 0}
.document-group-folded{border-top:1px solid var(--line)}
/* Keep native selection behavior with a consistently inset disclosure arrow. */
select:not([multiple]){
  appearance:none;-webkit-appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='m4 6 4 4 4-4' stroke='%236f6b62' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center;background-size:16px 16px;
  padding:10px 42px 10px 14px;min-height:42px;line-height:20px;
  transition:border-color .15s,background-color .15s;
}
select:not([multiple]):hover:not(:disabled){border-color:#aaa69b}
select:not([multiple]):disabled{background-color:var(--canvas);color:var(--muted)}
@media(forced-colors:active){select:not([multiple]){appearance:auto;background-image:none;padding-right:14px}}
.application-intro{margin-bottom:20px}
.application-command-bar{padding:18px 20px;background:var(--canvas);border:1px solid var(--line);border-radius:8px;margin-bottom:24px}
.application-command-bar .panel-actions{margin:0;justify-content:flex-start}
.application-command-bar p{font-size:13px;color:var(--muted);margin:12px 0 0}
.application-gaps{margin-top:12px;font-size:13px}.application-gaps summary{cursor:pointer}
.application-part{margin-bottom:24px;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.application-part>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;background:var(--canvas)}
.application-part>header h3{margin:0;font-size:16px}.application-part>header>span{font-size:12px;color:var(--muted);white-space:nowrap}
.application-document-head,.application-document-row.requirement-document{display:grid;grid-template-columns:minmax(240px,1.5fr) 110px minmax(170px,1fr) 150px;gap:20px;align-items:start;padding:16px 20px}
.application-document-head{font-size:12px;color:var(--muted);border-bottom:1px solid var(--line)}
.application-document-row.requirement-document{margin:0;border-bottom:1px solid var(--line)}
.application-document-row:last-child{border-bottom:0}.application-document-name h4{font-size:14px;margin:0 0 8px;line-height:1.5}
.application-document-owner{font-size:13px;color:var(--muted);padding-top:2px}
.application-document-file{display:grid;gap:8px;min-width:0}.application-document-file button{text-align:left;overflow-wrap:anywhere;padding:8px;font-size:12px}
.application-document-action button{width:100%;white-space:nowrap;font-size:13px}
.application-document-row .requirement-source{font-size:12px;margin:0}.application-document-row .document-state{font-size:12px}
@media(max-width:1100px){.application-document-head,.application-document-row.requirement-document{grid-template-columns:minmax(180px,1.5fr) 90px minmax(130px,1fr) 125px;gap:12px}}
@media(max-width:760px){.application-document-head{display:none}.application-document-row.requirement-document{grid-template-columns:1fr auto;gap:10px;padding:16px}.application-document-name{grid-column:1/-1}.application-document-owner{grid-column:1}.application-document-file{grid-column:1}.application-document-action{grid-column:2;grid-row:2/4;align-self:center}.application-part>header{padding:16px}}

.submission-current { display:flex; justify-content:space-between; gap:16px; margin-bottom:16px; }
.submission-current strong { font-size:20px; }
.submission-current span { color:var(--muted); }
.submission-next { margin-top:24px; padding:20px; border:1px solid var(--line); border-radius:8px; }
.submission-next > div { display:inline-block; margin-right:24px; }
.submission-next p { color:var(--muted); margin:8px 0 16px; }
.submission-next > details { margin-top:20px; }
.submission-preview { padding:16px 0; border-bottom:1px solid var(--line); }
.submission-stage-preview { margin-top:16px; border:1px solid var(--line); border-radius:8px; padding:18px 20px; background:var(--canvas); }
.submission-stage-preview summary { font-size:17px; font-weight:600; cursor:pointer; }
.submission-stage-preview summary span { font-size:13px; font-weight:400; color:var(--muted); margin-left:12px; }
.submission-stage-preview ul { margin-bottom:0; line-height:1.8; }
.submission-next { display:flex; align-items:center; justify-content:space-between; gap:16px; }
@media(max-width:760px) { .submission-next { align-items:flex-start; flex-direction:column; } .submission-stage-preview summary span { display:block; margin:8px 0 0; } }
.offer-price-rule { display:flex; flex-direction:column; gap:10px; padding:4px 0; }
.offer-cost-tool { margin:24px 0; padding:18px 20px; border:1px solid var(--line); border-radius:8px; }
.offer-cost-tool > summary { cursor:pointer; font-weight:600; }
.offer-cost-tool > p { margin:16px 0; }
.offer-cost-tool > label { display:flex; flex-direction:column; gap:8px; max-width:320px; }
/* Main offer work: price, positions, then optional tools. */
.offer-workbench { display:flex; flex-direction:column; gap:24px; }
.offer-workbench .offer-editor-heading { margin:0; }
.offer-price-card,.offer-positions-card { border:1px solid var(--line); border-radius:10px; padding:22px; }
.offer-price-card { background:var(--canvas); }
.offer-price-card > h3,.offer-section-heading h3 { font-size:19px; margin:0 0 16px; }
.offer-workbench .offer-settings label { display:flex; flex-direction:column; gap:8px; font-size:13px; }
.offer-price-card .offer-notice { background:none; padding:0; color:var(--muted); margin:12px 0 0; }
.offer-price-card #offer-summary { background:none; border-top:1px solid var(--line); border-radius:0; padding:14px 0 0; margin-top:16px; font-size:13px; }
.offer-price-card #offer-summary p { margin-bottom:6px; }
.offer-section-heading p { color:var(--muted); font-size:13px; margin:0 0 16px; }
.offer-workbench .offer-find { margin:0 0 16px; }
.offer-workbench .offer-bulk { margin:0 0 16px; padding:0 0 16px; }
.offer-workbench .offer-table-wrap { margin:0 0 16px; }
.offer-workbench .offer-table-unified { min-width:820px; }
.offer-workbench .offer-table-unified th:nth-child(2) { width:27%; }
.offer-workbench .offer-table-unified th:nth-child(3) { width:12%; }
.offer-workbench .offer-table-unified th:last-child { width:105px; }
.offer-workbench .offer-requirement-preview { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; font-size:12px; color:var(--muted); }
.offer-extra-tools,.offer-advanced { border:1px solid var(--line); border-radius:8px; padding:16px 20px; }
.offer-extra-tools > summary,.offer-advanced > summary { cursor:pointer; font-weight:500; }
.offer-tools-body { margin-top:20px; }
.offer-tools-body > details { margin:0 0 16px; }
.offer-workbench .adaptive-section { margin:0; }
.offer-price-card .adaptive-section { border:0; padding:0; }
.offer-workbench .offer-editor-actions { position:sticky; bottom:-24px; z-index:4; margin:0 -24px -24px; padding:16px 24px; border-top:1px solid var(--line); background:var(--paper); flex-wrap:wrap; }
@media(max-width:760px) {
 .offer-workbench { gap:18px; }
 .offer-price-card,.offer-positions-card { padding:16px; }
 .offer-workbench .offer-editor-actions { bottom:-16px; margin:0 -16px -16px; padding:12px 16px; flex-direction:row; gap:8px; }
 .offer-workbench .offer-editor-actions button { flex:1; font-size:12px; padding:10px; }
}
.offer-workbench .offer-price-card { padding:18px 20px; }
.offer-workbench .offer-price-card > h3 { margin-bottom:12px; font-size:17px; }
@media(min-width:900px) {
 .offer-price-card:not(:has(.adaptive-section)) { display:grid; grid-template-columns:minmax(320px,1.2fr) minmax(200px,1fr); gap:8px 24px; }
 .offer-price-card:not(:has(.adaptive-section)) > h3 { grid-column:1/-1; }
 .offer-price-card:not(:has(.adaptive-section)) > .offer-settings { grid-column:1; }
 .offer-price-card:not(:has(.adaptive-section)) > .offer-notice { grid-column:1; margin:4px 0 0; }
 .offer-price-card:not(:has(.adaptive-section)) > #offer-summary { grid-column:2; grid-row:2/span 2; border-top:0; border-left:1px solid var(--line); padding:4px 0 0 20px; margin:0; }
}
#inline-offer-editor .offer-price-card > .offer-settings { grid-template-columns:repeat(2,minmax(0,1fr)); }
.offer-workbench .offer-price-card > .offer-notice { font-size:12px; line-height:1.5; }
.offer-excel-actions { display:flex; gap:10px; flex-wrap:wrap; }
.offer-workbench .bulk-selection-help { font-size:13px; color:var(--muted); margin:16px 0; max-width:700px; }
.bulk-common-fields { display:grid; grid-template-columns:minmax(150px,1fr) minmax(150px,1fr) auto; gap:12px; align-items:end; }
.bulk-common-fields label { display:flex; flex-direction:column; gap:8px; font-size:13px; margin:0; min-width:0; }
#offer-form .bulk-common-fields input,#offer-form .bulk-common-fields select,#offer-form .bulk-common-fields button { height:42px; margin:0; padding-top:10px; padding-bottom:10px; }
.bulk-preview { max-height:240px; overflow:auto; margin-top:16px; font-size:12px; color:var(--muted); }
.bulk-preview table { width:100%; border-collapse:collapse; color:var(--ink); }
.bulk-preview th,.bulk-preview td { text-align:left; padding:10px; border-bottom:1px solid var(--line); vertical-align:top; }
.bulk-preview th { position:sticky; top:0; background:var(--canvas); }
.bulk-preview td:first-child span { display:block; margin-top:4px; color:var(--muted); }
@media(max-width:760px) { .bulk-common-fields { grid-template-columns:1fr; } .bulk-common-fields button { justify-self:start; } .offer-excel-actions button { flex:1; } }
:root{--wb-input:#f0f7ff;--wb-source:#f6f5f1;--wb-formula:#f1f4f1}
.workbook-editor .wb-tools select{width:125px}.workbook-editor .wb-tools label{display:flex;flex-direction:row;align-items:center}.workbook-editor .wb-tools input[type=checkbox]{width:14px;margin:0}
.workbook-editor{min-width:0;width:100%;font:inherit}.wb-actions,.wb-tools,.wb-sheets,.wb-paging{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px 0}.wb-save-state{font-size:13px;min-width:125px}.wb-tools{border-top:1px solid var(--border,#ddd);font-size:12px}.wb-tools button,.wb-tools select,.wb-tools input{font:inherit}.wb-tools label{display:flex;align-items:center;gap:5px}.wb-tools input[type=checkbox]{width:auto}.wb-tools input[data-filter]{max-width:180px}.wb-formula-bar{display:flex;border:1px solid #d9ddd9;border-radius:5px;overflow:hidden}.wb-formula-bar span{padding:8px 12px;background:#f4f4ef;min-width:60px;font:13px monospace}.wb-formula-bar textarea{border:0;border-left:1px solid #ddd;border-radius:0;width:100%;resize:vertical;min-height:36px;margin:0;padding:8px}.wb-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:11px;padding:8px 0}.wb-legend span:nth-child(1){color:#397bbb}.wb-legend span:nth-child(2){color:#8c7753}.wb-legend span:nth-child(3){color:#557c55}.wb-body{display:flex;gap:16px;align-items:stretch;min-width:0}.wb-main{min-width:0;flex:1}.wb-grid-scroll{overflow:auto;max-height:65vh;min-height:340px;border:1px solid #d7dbd6;outline:none}.wb-grid{table-layout:fixed;border-collapse:separate;border-spacing:0;width:max-content;font-size:12px}.wb-grid th,.wb-grid td{border-right:1px solid #dde1da;border-bottom:1px solid #dde1da;padding:4px 7px;height:28px;min-width:42px;max-width:700px;overflow:hidden;position:relative;vertical-align:middle}.wb-grid thead th{position:sticky;top:0;z-index:4;background:#edeee7;text-align:center;font-weight:400}.wb-grid tr>th:first-child{position:sticky;left:0;z-index:3;background:#edeee7;font-weight:400;text-align:center}.wb-grid .wb-input{background:var(--wb-input)}.wb-grid .wb-source{background:var(--wb-source)}.wb-grid .wb-formula{background:var(--wb-formula)}.wb-grid .wb-selected{box-shadow:inset 0 0 0 2px #719551}.wb-fill-handle{display:none;position:absolute;right:0;bottom:0;width:7px;height:7px;background:#719551;cursor:crosshair}.wb-selected .wb-fill-handle{display:block}.wb-col-resize{position:absolute;right:0;top:0;height:100%;width:7px;cursor:col-resize}.wb-row-resize{position:absolute;bottom:0;left:0;width:100%;height:6px;cursor:row-resize}.wb-sheets{border-top:1px solid #ddd}.wb-sheets [aria-pressed=true]{background:#e5ecd9;border-color:#8fa876}.wb-sheets input{max-width:160px;font-size:12px}.wb-side{width:330px;max-width:40%;padding:12px;border-left:1px solid #ddd;overflow:auto;max-height:80vh}.wb-side header{display:flex;justify-content:space-between;align-items:center}.wb-side h3{font-size:16px}.wb-side article{padding:12px 0;border-bottom:1px solid #ddd}.wb-side button{margin:4px 0}.wb-side pre{white-space:pre-wrap;overflow-wrap:anywhere;font:12px inherit}.wb-issue{display:flex;flex-direction:column;gap:7px;text-align:left;width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;background:#fafaf5}.wb-issue small{color:#6a7068}.wb-empty{padding:60px 20px;text-align:center;color:#6a7068;display:flex;flex-direction:column;align-items:center;gap:20px}.wb-progress{font-size:13px;padding:10px;background:#f1f4e9}.wb-preview-dialog{width:min(1200px,95vw);max-width:95vw;max-height:90vh;padding:24px}.wb-preview-scroll{max-height:55vh;overflow:auto;margin:15px 0}.wb-preview-scroll td{border:1px solid #ddd;white-space:pre-wrap;min-width:100px;padding:8px;font-size:12px}.wb-preview-scroll table{border-collapse:collapse}.workbook-editor .secondary{font-size:12px;padding:8px 10px}@media(max-width:800px){.wb-body{display:block}.wb-side{width:100%;max-width:100%;border-left:0;border-top:1px solid #ddd}.wb-grid-scroll{max-height:60vh}.wb-actions{gap:6px}}
/* Lifecycle plan and contextual document review. */
.application-screen{color:var(--ink);min-width:0}
.ap-current{display:flex;gap:24px;justify-content:space-between;padding:22px;background:#f1f5f1;border:1px solid #d9e3da;border-radius:14px;margin-bottom:16px}
.ap-current h3{margin:8px 0;font-size:23px}.ap-current p{margin:8px 0;line-height:1.5}
.ap-command-actions,.ap-item-actions,.ap-file-tabs{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.ap-command-actions{align-content:start;max-width:330px}
.ap-current-choice{display:block;margin:12px 0}.ap-current-choice select{display:block;max-width:100%;margin-top:6px}
.ap-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start}.ap-layout:has(.ap-side){grid-template-columns:minmax(260px,1fr) minmax(320px,1fr)}
.ap-stages{min-width:0}.ap-stage{border:1px solid #ddd;border-radius:12px;margin-bottom:16px;background:white;overflow:hidden}.ap-stage>summary{display:flex;gap:14px;justify-content:space-between;cursor:pointer;padding:18px;list-style:none;background:#f8f8f6}.ap-stage>summary::-webkit-details-marker{display:none}.ap-stage h3{margin:0 0 8px;font-size:19px}.ap-stage summary p{font-size:13px;color:#60685f;line-height:1.5;margin:8px 0 0}.ap-stage>p,.ap-stage>.ap-item-actions,.ap-stage>.ap-issues{margin:14px 18px}.ap-stage-current{border-color:#527559}.ap-stage-passed>summary{background:#edf4ed}.ap-stage-not_applicable{opacity:.72}.ap-stage-mark{font-size:22px}.ap-stage:not([open]) .ap-stage-mark{transform:rotate(-90deg)}
.ap-requirement{padding:18px;border-top:1px solid #e7e7e2}.ap-requirement-title{display:flex;gap:10px;flex-wrap:wrap;align-items:start;justify-content:space-between}.ap-requirement h4{margin:0;font-size:16px}.ap-requirement .text-button{font:inherit;text-align:left;padding:0;text-decoration:underline;white-space:normal;color:#36563d}.ap-state{font-size:12px;background:#f0f1ec;padding:5px 8px;border-radius:6px}.ap-complete .ap-state{background:#e5f0e5;color:#315539}.ap-responsibilities p{font-size:14px;line-height:1.5;margin:9px 0}.ap-note,.ap-later-note,.ap-early{font-size:14px;line-height:1.5}.ap-later-note{color:#687066}.ap-source{margin-top:14px;font-size:13px;color:#687066}.ap-source summary{cursor:pointer}.ap-source p{white-space:pre-wrap}.ap-issues{background:#faf6ec;border-radius:8px;padding:12px;font-size:14px}.ap-issues ul{padding-left:20px;margin:8px 0}.ap-issues li{margin:8px 0;line-height:1.5}.ap-issues small{display:block}.ap-progress{margin:12px 0;padding:12px;border:1px solid #e2e4dd;border-radius:8px}
.ap-side{position:sticky;top:16px;min-width:0;max-height:calc(100vh - 40px);overflow:auto;padding:18px;border:1px solid #d8dcd3;border-radius:12px;background:#fafbf8}.ap-side>header{display:flex;justify-content:space-between;gap:12px;align-items:start}.ap-side h3{margin:0 0 14px;font-size:19px}.ap-side p{line-height:1.5;font-size:14px}.ap-side details{margin:12px 0}.ap-side label{display:block;font-size:14px;margin:12px 0}.ap-side input,.ap-side select,.ap-side textarea{display:block;width:100%;margin-top:6px;box-sizing:border-box}.ap-side textarea{min-height:72px}.ap-side pre{overflow:auto;font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}.ap-side button{white-space:normal}.ap-preview{margin:12px 0;min-height:160px;max-height:500px;overflow:auto;border:1px solid #ddd;background:white;padding:10px}.ap-preview iframe{width:100%;height:430px;border:0}.ap-preview img{max-width:100%}.ap-preview .preview-word-document{width:auto;min-width:0;padding:14px}.ap-file-tabs{margin:12px 0}
@media(max-width:1100px){.ap-layout:has(.ap-side){grid-template-columns:minmax(0,1fr)}.ap-side{position:relative;top:0;max-height:none;grid-row:1}.ap-current{flex-direction:column}.ap-command-actions{max-width:none}}

.ap-current>div:first-child{flex:1;min-width:0}.ap-command-actions{flex-shrink:0;max-width:none;align-self:flex-start}.ap-requirement-title{align-items:center}.ap-requirement .ap-source{margin-top:8px}.ap-stage>summary p{color:#687066;font-size:13px}

/* Shared disclosure controls in the workspace. */
#content details:not(.profile-requisites)>summary {
  position:relative;
  list-style:none;
  cursor:pointer;
  padding:12px 40px 12px 14px;
  min-height:44px;
  box-sizing:border-box;
  border-radius:8px;
  line-height:1.5;
  transition:background-color .15s;
}
#content details:not(.profile-requisites)>summary::-webkit-details-marker { display:none; }
#content details:not(.profile-requisites)>summary::marker { content:""; }
#content details:not(.profile-requisites)>summary::after {
  content:"";
  position:absolute;
  right:17px;
  top:50%;
  width:7px;
  height:7px;
  border-right:1.5px solid var(--muted);
  border-bottom:1.5px solid var(--muted);
  transform:translateY(-70%) rotate(45deg);
  transition:transform .15s;
  pointer-events:none;
}
#content details:not(.profile-requisites)[open]>summary::after { transform:translateY(-20%) rotate(225deg); }
#content details:not(.profile-requisites)>summary:hover { background-color:var(--canvas); }
#content details:not(.profile-requisites)>summary:focus-visible { outline:2px solid #527559;outline-offset:3px; }
.application-screen .ap-stage-mark { display:none; }
.application-screen .ap-questions {
  margin:16px 0;
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--paper);
}
.application-screen .ap-stage>.ap-questions,
.application-screen .ap-stage>.ap-source { margin:16px 18px; }
.application-screen .ap-source {
  border:1px solid var(--line);
  border-radius:8px;
  margin-top:12px;
}
.application-screen .ap-source>summary { font-size:13px; }
.application-screen .ap-source[open]>summary,
.application-screen .ap-questions[open]>summary { border-bottom:1px solid var(--line);border-radius:8px 8px 0 0; }
.application-screen .ap-source>p,
.application-screen .ap-source>.ap-item-actions { margin:12px 14px; }
.application-screen .ap-questions>.ap-issues { margin:12px; }
.application-screen .ap-source>.ap-later-note,
.application-screen .ap-source>.small { margin:12px 14px; }
.application-screen .ap-stage>summary { padding:18px 44px 18px 18px; }
@media(prefers-reduced-motion:reduce) {
  #content details:not(.profile-requisites)>summary,
  #content details:not(.profile-requisites)>summary::after { transition:none; }
}
