:root{--navy:#10213e;--navy2:#172d50;--blue:#2f6fed;--bg:#f3f6fb;--line:#dfe6f1;--text:#172033;--muted:#6d7789;--green:#16845b;--white:#fff;--shadow:0 18px 50px rgba(22,43,77,.12)}
*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}button,input,select,textarea{font:inherit;color:inherit}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;color:#fff;background:linear-gradient(145deg,#4384ff,#174fc2);font-weight:900;font-size:23px;box-shadow:0 10px 28px rgba(47,111,237,.35)}.eyebrow{margin:0 0 8px;color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.login-page{min-height:100vh;background:radial-gradient(circle at 20% 10%,#284d82 0,transparent 32%),linear-gradient(135deg,#0b172b,#132b4d 55%,#0d1d35)}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(320px,1fr) minmax(360px,480px);gap:7vw;align-items:center;max-width:1180px;margin:auto;padding:48px}.login-brand{color:#dce8fa;max-width:570px}.login-brand .brand-mark{margin-bottom:36px}.login-brand h1{font-size:68px;line-height:1;margin:0 0 25px;color:#fff;letter-spacing:-.05em}.login-brand h1 small,.sidebar-brand small{color:#70a2ff;font-size:.36em}.login-brand>p:last-child{font-size:21px;line-height:1.7;color:#b8c9e3}.login-card{background:#fff;border:1px solid rgba(255,255,255,.7);border-radius:24px;padding:38px;box-shadow:0 30px 80px rgba(0,0,0,.3)}.login-card h2{font-size:30px;margin:0 0 8px}.login-card header p,.security-note{color:var(--muted)}.login-card form{display:grid;gap:18px;margin-top:28px}.login-card label{display:grid;gap:8px;font-size:14px;font-weight:750}.login-card input{width:100%;border:1px solid #cfd8e6;border-radius:11px;padding:13px 14px;outline:none;background:#fbfcfe}.login-card input:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,111,237,.12)}.login-card button{border:0;border-radius:11px;padding:14px;background:var(--blue);color:#fff;font-weight:800;cursor:pointer}.security-note{font-size:12px;line-height:1.5;margin:20px 0 0}.alert{background:#fff0f0;color:#a22727;border:1px solid #f5c2c2;border-radius:10px;padding:12px 14px;margin-top:18px;font-size:14px}.app-page{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:var(--navy);padding:24px 18px;color:#fff}.sidebar-brand{display:flex;align-items:center;gap:12px;font-size:19px;padding:0 8px 25px;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-brand .brand-mark{width:38px;height:38px;border-radius:12px}.sidebar nav{display:grid;gap:5px;margin-top:22px}.sidebar a{display:flex;justify-content:space-between;align-items:center;text-decoration:none;color:#c6d3e7;padding:11px 13px;border-radius:9px;font-size:14px}.sidebar a.active{background:#2b5fb4;color:#fff;font-weight:750}.sidebar a[aria-disabled=true]{opacity:.62;cursor:default}.sidebar em{font-size:9px;font-style:normal;text-transform:uppercase;color:#8eaddd}.nav-title{margin:21px 13px 5px;color:#7287a7;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.13em}.content{min-width:0}.topbar{height:76px;padding:0 34px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.topbar>div{display:flex;gap:10px;align-items:center}.topbar .muted{font-size:12px;color:var(--muted)}.user-menu form{margin:0}.link-button{border:0;background:none;color:var(--blue);cursor:pointer}.page-heading{display:flex;justify-content:space-between;align-items:end;padding:38px 38px 24px}.page-heading h1{margin:0;font-size:34px;letter-spacing:-.03em}.status-pill{background:#e5f7ef;color:var(--green);border:1px solid #b9e8d2;padding:8px 12px;border-radius:999px;font-size:12px;font-weight:800}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:0 38px}.stats-grid article,.roadmap-card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 6px 20px rgba(23,45,80,.05)}.stats-grid article{padding:21px;display:grid;gap:9px}.stats-grid span,.stats-grid small{color:var(--muted)}.stats-grid span{font-size:12px;font-weight:750;text-transform:uppercase}.stats-grid strong{font-size:21px;color:var(--green)}.stats-grid small{line-height:1.45}.roadmap-card{margin:24px 38px;padding:26px}.roadmap-card header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:19px}.roadmap-card h2{margin:0}.roadmap-card header>span{color:#9a6700;background:#fff5cc;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:800}.roadmap-card ol{display:grid;gap:12px;margin:22px 0 0;padding-left:23px}.roadmap-card li{color:var(--muted)}.roadmap-card li.done{color:var(--text);font-weight:650}.roadmap-card li.done::marker{color:var(--green)}
@media(max-width:980px){.stats-grid{grid-template-columns:repeat(2,1fr)}.login-shell{grid-template-columns:1fr;max-width:600px}.login-brand{display:none}}
@media(max-width:720px){.app-page{grid-template-columns:1fr}.sidebar{position:static;height:auto}.sidebar nav{display:none}.content{width:100%}.topbar,.page-heading{padding-left:20px;padding-right:20px}.stats-grid{grid-template-columns:1fr;padding:0 20px}.roadmap-card{margin:20px}.page-heading{align-items:flex-start;gap:16px}.page-heading h1{font-size:28px}.login-shell{padding:22px}.login-card{padding:26px}}
.page-subtitle{color:var(--muted);margin:8px 0 0}.primary-button,.secondary-button{border:0;border-radius:10px;padding:11px 16px;font-weight:800;cursor:pointer}.primary-button{background:var(--blue);color:#fff}.secondary-button{background:#edf1f7;color:var(--text)}.flash{margin:0 38px 18px;padding:12px 15px;border-radius:10px;font-size:14px}.flash.success{background:#e8f8f1;color:#126b4b;border:1px solid #bce8d4}.flash.error{background:#fff0f0;color:#a22727;border:1px solid #f5c2c2}.flash.standalone{margin:18px 0}.table-card{margin:0 38px 38px;background:transparent;border:0;border-radius:0;box-shadow:none}.table-head{padding:0 0 16px;display:flex;align-items:center;justify-content:space-between}.table-head input{width:280px;border:1px solid #d3dce8;border-radius:9px;padding:10px 12px;background:#fff}.table-scroll{overflow:visible;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.05em;background:#fafbfd}th,td{padding:14px 16px;border-bottom:1px solid #edf0f5;vertical-align:middle}.identity{display:flex;gap:11px;align-items:center;min-width:220px}.identity>span{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#e8f0ff;color:#2d63c5;font-weight:900}.identity div{display:grid;gap:3px}.identity small{color:var(--muted)}.role-pill,.account-status{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:11px;font-weight:750}.role-pill{background:#eef2f8;color:#42516a}.account-status.active{background:#e5f7ef;color:#16845b}.account-status.blocked{background:#fff0f0;color:#a22727}.account-status.archived{background:#eef0f3;color:#697386}.pending-note{display:block;color:#9a6700;margin-top:5px}.actions{position:relative;text-align:right}.dots{border:0;background:#edf2f8;border-radius:8px;padding:6px 9px;cursor:pointer}.action-menu{display:none;position:fixed;z-index:1000;width:260px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);text-align:left}.action-menu.open{display:grid;gap:8px}.action-menu form{display:grid;gap:7px}.action-menu select,.action-menu button{width:100%;min-height:40px;border:1px solid #d7dfeb;background:#fff;border-radius:8px;padding:9px 10px;text-align:left;cursor:pointer;font-size:13px;line-height:1.35}.action-menu button.danger{color:#a22727}.modal-backdrop{position:fixed;z-index:100;inset:0;background:rgba(7,18,35,.62);display:grid;place-items:center;padding:20px}.modal-backdrop[hidden]{display:none}.modal{width:min(680px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:18px;box-shadow:0 30px 90px rgba(0,0,0,.35)}.modal.small{width:min(480px,100%)}.modal>header{display:flex;justify-content:space-between;padding:24px 26px;border-bottom:1px solid var(--line)}.modal h2{margin:0}.modal header p:last-child{color:var(--muted);margin:5px 0 0}.modal-close{border:0;background:#edf1f6;width:34px;height:34px;border-radius:10px;font-size:22px;cursor:pointer}.form-grid{padding:24px 26px;display:grid;grid-template-columns:1fr 1fr;gap:17px;align-items:start}.form-grid label{display:grid;gap:7px;font-size:13px;font-weight:750;align-self:start;align-content:start}.form-grid input,.form-grid select{width:100%;height:44px;min-height:44px;border:1px solid #ced8e5;border-radius:9px;padding:0 12px;background-color:#fff;font-size:14px;font-weight:400;line-height:1.3;outline:none}.form-grid select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:44px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m6 8 4 4 4-4' stroke='%23172033' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:20px 20px;cursor:pointer}.form-grid select:required:invalid{color:#6d7789}.form-grid select option{color:#172033;background:#fff}.form-grid input:focus,.form-grid select:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,111,237,.1)}.form-grid label small{color:var(--muted);font-weight:400}.form-grid footer{grid-column:1/-1;display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.small .form-grid{grid-template-columns:1fr}.account-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.account-card{width:min(480px,100%)}.account-card>.brand-mark{margin-bottom:24px}.back-link{display:inline-block;margin-top:20px;color:var(--blue);text-decoration:none;font-weight:700}
@media(max-width:720px){.table-card{margin:0 20px 25px}.flash{margin:0 20px 15px}.table-head{align-items:stretch;gap:10px;flex-direction:column}.table-head input{width:100%}.table-scroll{overflow-x:auto;overflow-y:visible}.form-grid{grid-template-columns:1fr}.page-heading{flex-direction:column}.primary-button{width:100%}}
.table-tools{display:flex;gap:10px;align-items:center}.table-tools select,.table-tools input{height:40px;border:1px solid #d3dce8;border-radius:9px;background-color:#fff;padding:0 12px;font-size:13px;outline:none}.table-tools select{-webkit-appearance:none;appearance:none;min-width:150px;padding-right:38px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m6 8 4 4 4-4' stroke='%23172033' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.table-tools input{width:300px}.cell-stack{display:grid;gap:4px}.cell-stack small{color:var(--muted)}.empty-state{text-align:center;color:var(--muted);padding:42px!important}.modal.wide{width:min(860px,100%)}.form-section-title{grid-column:1/-1;color:var(--blue);font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid var(--line);padding:5px 0 9px;margin-top:4px}.form-grid .span-2{grid-column:1/-1}.form-grid textarea{width:100%;min-height:90px;border:1px solid #ced8e5;border-radius:9px;padding:11px 12px;background:#fff;font-size:14px;font-weight:400;line-height:1.45;resize:vertical;outline:none}.form-grid textarea:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,111,237,.1)}.project-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:0 38px 22px}.project-summary article{display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 18px}.project-summary span{color:var(--muted);font-size:12px;font-weight:750}.project-summary strong{font-size:24px}.project-status{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800}.project-status.draft{background:#eef0f4;color:#596477}.project-status.planned{background:#e8f0ff;color:#285fbf}.project-status.active{background:#e5f7ef;color:#16845b}.project-status.on_hold{background:#fff5d8;color:#936500}.project-status.completed{background:#dcf7e7;color:#137447}.project-status.cancelled{background:#fff0f0;color:#a22727}.project-status.archived{background:#eef0f3;color:#697386}
@media(max-width:900px){.project-summary{grid-template-columns:repeat(2,1fr)}.table-tools{align-items:stretch;flex-direction:column}.table-tools input,.table-tools select{width:100%}}
@media(max-width:720px){.form-grid .span-2{grid-column:auto}.form-section-title{grid-column:1}.project-summary{grid-template-columns:1fr;margin:0 20px 18px}}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.language-form{margin:0}.language-form select,.login-language select{height:38px;border:1px solid #d3dce8;border-radius:9px;background:#fff;padding:0 34px 0 11px;font-size:13px;outline:none;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m6 8 4 4 4-4' stroke='%23172033' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center;cursor:pointer}.language-form select:focus,.login-language select:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,111,237,.1)}.login-card header{position:relative}.login-language{display:flex;justify-content:flex-end;margin:-10px -10px 14px}.login-language form{margin:0}.account-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.account-card-head .brand-mark{margin:0}
.heading-actions{display:flex;gap:10px;align-items:center}.catalog-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:0 38px 22px}.catalog-summary article{display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 18px}.catalog-summary span{color:var(--muted);font-size:12px;font-weight:750}.catalog-summary strong{font-size:24px}.numeric{text-align:right;white-space:nowrap}.price-strong{font-weight:800;color:var(--navy)}.code-pill{display:inline-flex;padding:5px 8px;border-radius:7px;background:#edf3ff;color:#285fbf;font-size:11px;font-weight:800;letter-spacing:.02em}.muted-inline{color:var(--muted)}.input-suffix{display:flex;width:100%;height:44px;border:1px solid #ced8e5;border-radius:9px;background:#fff;overflow:hidden}.form-grid .input-suffix input{height:42px;min-height:42px;border:0;border-radius:0;box-shadow:none!important}.input-suffix:focus-within{border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,111,237,.1)}.input-suffix span{display:grid;place-items:center;min-width:42px;padding:0 10px;color:var(--muted);background:#f5f7fa;border-left:1px solid var(--line);font-weight:700}.category-manager{padding:24px 26px}.category-add{display:grid;grid-template-columns:1fr auto;gap:10px;margin-bottom:20px}.category-add input,.category-row input{height:42px;border:1px solid #ced8e5;border-radius:9px;padding:0 12px;background:#fff;outline:none}.category-add input:focus,.category-row input:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,111,237,.1)}.category-list{display:grid;border-top:1px solid var(--line)}.category-row{display:grid;grid-template-columns:minmax(280px,1fr) auto auto;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.category-row>form:first-child{display:grid;grid-template-columns:1fr auto;gap:8px}.category-row>form:last-child{margin:0}.category-count{color:var(--muted);font-size:12px;white-space:nowrap}.danger-text{color:#a22727}.empty-inline{color:var(--muted);text-align:center;padding:20px}.catalog-summary+.table-card{margin-top:0}
@media(max-width:900px){.catalog-summary{grid-template-columns:repeat(2,1fr)}.heading-actions{width:100%}.heading-actions>*{flex:1}}
@media(max-width:720px){.catalog-summary{grid-template-columns:1fr 1fr;margin:0 20px 18px}.heading-actions{display:grid;grid-template-columns:1fr;width:100%}.category-add{grid-template-columns:1fr}.category-row{grid-template-columns:1fr}.category-row>form:first-child{grid-template-columns:1fr}.category-row .secondary-button{width:100%}.topbar{height:auto;min-height:76px;gap:10px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.user-menu{flex-wrap:wrap;justify-content:flex-end}}
.catalog-summary+.table-card .table-scroll{overflow-x:auto}.catalog-summary+.table-card table{min-width:1080px}.form-grid .input-suffix input{min-width:0;flex:1}
.button-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.flash.info{background:#eaf2ff;color:#285fbf;border:1px solid #c8dafb}.table-primary-link{color:var(--navy);font-weight:850;text-decoration:none}.table-primary-link:hover{color:var(--blue)}.action-menu .menu-link{display:flex;align-items:center;min-height:40px;border:1px solid #d7dfeb;background:#fff;border-radius:8px;padding:9px 10px;color:var(--text);text-decoration:none;font-size:13px}.action-menu .menu-link:hover{border-color:#9bb9ef;background:#f7faff}.action-menu form:has(.status-action){margin:0}.action-menu .status-action{font-weight:700}.quote-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:0 38px 22px}.quote-summary article{display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 18px}.quote-summary span{color:var(--muted);font-size:12px;font-weight:750}.quote-summary strong{font-size:24px}.quote-status{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800;white-space:nowrap}.quote-status.draft{background:#eef0f4;color:#596477}.quote-status.sent{background:#e8f0ff;color:#285fbf}.quote-status.accepted{background:#e5f7ef;color:#16845b}.quote-status.rejected{background:#fff0f0;color:#a22727}.quote-status.expired{background:#fff5d8;color:#936500}.quote-status.cancelled{background:#f3edf5;color:#77517e}.quote-status.archived{background:#eef0f3;color:#697386}.quote-list .table-scroll{overflow-x:auto}.quote-list table{min-width:1120px}
.quote-editor-heading{align-items:flex-end}.quote-editor-heading .eyebrow{margin-top:14px}.back-inline{color:var(--blue);font-size:13px;font-weight:750;text-decoration:none}.heading-title-row{display:flex;align-items:center;gap:13px}.heading-title-row h1{font-size:31px}.quote-heading-actions form{margin:0}.quote-document-card,.quote-lines-card{margin:0 38px 22px;background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:0 6px 20px rgba(23,45,80,.04)}.quote-card-title{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--line)}.quote-card-title h2{margin:0;font-size:20px}.quote-card-title>span,.quote-card-title p:last-child{color:var(--muted);font-size:12px;margin:6px 0 0}.quote-header-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;padding:22px}.quote-header-grid label,.item-details-grid label{display:grid;gap:7px;align-content:start;color:var(--text);font-size:12px;font-weight:750}.quote-header-grid .span-2,.item-details-grid .span-2{grid-column:span 2}.quote-header-grid input,.quote-header-grid select,.quote-header-grid textarea,.quote-section input,.quote-item input,.quote-item textarea{width:100%;border:1px solid #ced8e5;border-radius:9px;background:#fff;font-size:13px;font-weight:400;outline:none}.quote-header-grid input,.quote-header-grid select,.quote-section input,.quote-item input{height:42px;padding:0 11px}.quote-header-grid textarea,.quote-item textarea{padding:10px 11px;line-height:1.4;resize:vertical}.quote-header-grid select{appearance:none;padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m6 8 4 4 4-4' stroke='%23172033' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.quote-header-grid input:focus,.quote-header-grid select:focus,.quote-header-grid textarea:focus,.quote-section input:focus,.quote-item input:focus,.quote-item textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(47,111,237,.1)}.discount-control{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:8px}.quote-sections{display:grid;gap:16px;padding:20px}.quote-section{border:1px solid #dce4ef;border-radius:12px;background:#fbfcfe;overflow:hidden}.quote-section>header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 14px;background:#f4f7fb;border-bottom:1px solid var(--line)}.section-grip{color:#96a1b2;font-weight:900;letter-spacing:-3px}.section-fields{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(260px,1.3fr);gap:10px}.section-fields .section-name{font-weight:800}.section-actions,.item-actions{display:flex;gap:5px}.section-actions button,.item-actions button{display:grid;place-items:center;width:30px;height:30px;border:1px solid #d5deea;border-radius:8px;background:#fff;cursor:pointer}.quote-item-head,.item-main{display:grid;grid-template-columns:minmax(260px,1fr) 82px 70px 110px 94px 94px 125px 104px;gap:9px;align-items:center;min-width:1010px}.quote-item-head{padding:10px 14px;color:var(--muted);background:#fafbfd;border-bottom:1px solid var(--line);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.section-items{overflow-x:auto}.quote-item{min-width:1010px;background:#fff;border-bottom:1px solid #edf0f5}.quote-item:last-child{border-bottom:0}.item-main{padding:12px 14px}.item-identity{min-width:0;display:grid;gap:5px}.item-identity>div{display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px;align-items:center}.item-type-badge{display:inline-flex;padding:5px 7px;border-radius:7px;font-size:9px;font-weight:850;text-transform:uppercase}.item-type-badge.work{background:#e8f0ff;color:#285fbf}.item-type-badge.material{background:#fff3db;color:#936500}.item-type-badge.custom{background:#eef0f4;color:#596477}.item-code-preview{padding-left:2px;color:var(--muted);min-height:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.numeric-input{text-align:right;font-variant-numeric:tabular-nums}.input-mini-suffix{display:flex;height:42px;border:1px solid #ced8e5;border-radius:9px;background:#fff;overflow:hidden}.quote-item .input-mini-suffix input{height:40px;border:0;border-radius:0;min-width:0;padding-right:4px;box-shadow:none}.input-mini-suffix:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px rgba(47,111,237,.1)}.input-mini-suffix span{display:grid;place-items:center;width:28px;color:var(--muted);background:#f5f7fa;border-left:1px solid var(--line);font-size:11px}.item-total{text-align:right;white-space:nowrap;font-size:13px}.item-actions{justify-content:flex-end}.quote-item details{border-top:1px dashed #e3e8f0;background:#fcfdff}.quote-item summary{width:max-content;margin-left:14px;padding:8px 0;color:var(--blue);cursor:pointer;font-size:11px;font-weight:750}.item-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:2px 14px 14px;max-width:780px}.quote-section>footer{display:flex;gap:9px;padding:12px 14px;background:#f9fbfd;border-top:1px solid var(--line)}.quote-section>footer .secondary-button{padding:8px 11px;font-size:12px}.quote-bottom{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:20px;margin:0 38px 22px;align-items:start}.quote-help{padding:18px 20px;border:1px solid #c8dafb;border-radius:12px;background:#edf4ff;color:#285fbf}.quote-help p{max-width:760px;margin:6px 0 0;font-size:12px;line-height:1.55}.quote-totals{background:#fff;border:1px solid var(--line);border-radius:13px;padding:8px 18px}.quote-totals div{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-bottom:1px solid #edf0f5}.quote-totals div:last-child{border:0}.quote-totals span{color:var(--muted);font-size:12px}.quote-totals strong{font-size:13px}.quote-totals .grand{align-items:center}.quote-totals .grand span{color:var(--text);font-weight:850}.quote-totals .grand strong{color:var(--blue);font-size:22px}.quote-savebar{position:sticky;bottom:0;z-index:20;display:flex;justify-content:flex-end;gap:10px;padding:15px 38px;background:rgba(243,246,251,.94);border-top:1px solid var(--line);backdrop-filter:blur(9px)}#quote-form[data-editable="0"] input:disabled,#quote-form[data-editable="0"] select:disabled,#quote-form[data-editable="0"] textarea:disabled{opacity:1;color:var(--text);background:#f7f9fc;cursor:default}#quote-form[data-editable="0"] .edit-only{display:none!important}.catalog-picker{width:min(820px,100%)}.catalog-picker-tools{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 20px;border-bottom:1px solid var(--line)}.segmented{display:flex;padding:3px;background:#edf1f7;border-radius:9px}.segmented button{border:0;border-radius:7px;padding:8px 13px;background:transparent;color:var(--muted);font-size:12px;font-weight:800;cursor:pointer}.segmented button.active{background:#fff;color:var(--blue);box-shadow:0 2px 8px rgba(23,45,80,.11)}.catalog-picker-tools input{width:310px;height:40px;border:1px solid #ced8e5;border-radius:9px;padding:0 12px;outline:none}.catalog-picker-tools input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(47,111,237,.1)}.catalog-picker-list{max-height:52vh;overflow:auto;padding:0 20px 18px}.catalog-picker-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}.catalog-picker-row>div{min-width:0;display:grid;gap:6px}.catalog-picker-row>div>div{display:flex;align-items:center;gap:9px}.catalog-picker-row strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.catalog-picker-row small{color:var(--muted)}.catalog-picker-row .primary-button{padding:8px 12px;font-size:12px}
@media(max-width:1200px){.quote-header-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-bottom{grid-template-columns:1fr}.quote-heading-actions{flex-wrap:wrap;justify-content:flex-end}.section-fields{grid-template-columns:1fr}}
@media(max-width:900px){.quote-summary{grid-template-columns:repeat(2,1fr)}.quote-editor-heading{align-items:flex-start}.quote-header-grid{grid-template-columns:1fr}.quote-header-grid .span-2{grid-column:auto}.quote-document-card,.quote-lines-card,.quote-bottom{margin-left:20px;margin-right:20px}.quote-card-title{align-items:flex-start;gap:12px}.quote-section>header{grid-template-columns:auto 1fr}.section-actions{grid-column:2;justify-content:flex-end}.quote-bottom{grid-template-columns:1fr}.quote-savebar{padding-left:20px;padding-right:20px}.catalog-picker-tools{align-items:stretch;flex-direction:column}.catalog-picker-tools input{width:100%}}
@media(max-width:720px){.quote-summary{margin:0 20px 18px}.heading-title-row{align-items:flex-start;flex-direction:column}.quote-editor-heading .heading-actions{display:flex}.quote-card-title{flex-direction:column}.discount-control{grid-template-columns:1fr}.section-fields{grid-template-columns:1fr}.quote-savebar>*{flex:1}.catalog-picker-row>div>div{align-items:flex-start;flex-direction:column}}
.work-material-editor{display:grid;gap:10px}.work-material-link-row{display:grid;grid-template-columns:minmax(240px,1.7fr) minmax(145px,.8fr) minmax(120px,.6fr) 44px;gap:10px;align-items:end;padding:12px;border:1px solid var(--line);border-radius:10px;background:#f8fafd}.work-material-link-row label{display:grid;gap:7px;font-size:12px;font-weight:750}.work-material-link-row select,.work-material-link-row>label>input{width:100%;height:44px;border:1px solid #ced8e5;border-radius:9px;padding:0 12px;background:#fff;outline:none}.work-material-link-row select{appearance:none;padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m6 8 4 4 4-4' stroke='%23172033' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.work-material-link-row>button{height:44px;padding:0}
.project-hub-head{padding:34px 38px 22px}.project-hub-title{display:flex;align-items:center;gap:14px;margin-top:14px}.project-hub-title h1{margin:0;font-size:34px;letter-spacing:-.03em}.project-hub-tabs{display:flex;gap:6px;margin:0 38px 22px;padding:5px;overflow-x:auto;background:#e8edf5;border-radius:12px}.project-hub-tabs button{display:flex;align-items:center;gap:8px;white-space:nowrap;border:0;border-radius:9px;padding:10px 14px;background:transparent;color:var(--muted);font-size:13px;font-weight:800;cursor:pointer}.project-hub-tabs button.active{background:#fff;color:var(--navy);box-shadow:0 3px 12px rgba(23,45,80,.11)}.project-hub-tabs span{display:inline-grid;place-items:center;min-width:21px;height:21px;border-radius:999px;background:#e8edf5;font-size:10px}.project-hub-panel{display:none;margin:0 38px 38px}.project-hub-panel.active{display:block}.project-hub-panel>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.project-hub-panel>header h2{margin:0}.project-hub-panel>header p{margin:6px 0 0;color:var(--muted);font-size:13px}.hub-overview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.hub-overview-grid article,.hub-document-grid button,.hub-description{background:#fff;border:1px solid var(--line);border-radius:12px;padding:17px;text-align:left}.hub-overview-grid article{display:grid;gap:6px}.hub-overview-grid span,.hub-overview-grid small,.hub-document-grid small{color:var(--muted);font-size:11px}.hub-document-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:15px}.hub-document-grid button{display:grid;gap:8px;cursor:pointer}.hub-document-grid button:hover{border-color:#9bb9ef;box-shadow:0 6px 18px rgba(47,111,237,.08)}.hub-document-grid button span{color:var(--muted);font-size:12px;font-weight:750}.hub-document-grid button strong{font-size:25px}.hub-description{margin-top:15px}.hub-description p{margin:8px 0 0;color:var(--muted);line-height:1.55}.hub-table{overflow-x:auto;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.hub-table table{min-width:760px}.table-date-note{display:block;margin-top:4px;color:var(--muted)}.hub-empty{display:grid;place-items:center;min-height:240px;background:#fff;border:1px solid var(--line);border-radius:14px;text-align:center}.hub-empty h2{margin:0}.hub-empty p{margin:7px 0 0;color:var(--muted)}
.quote-workbench-page .quote-editor-heading{padding-bottom:18px}.quote-meta-card{margin:0 24px 16px;background:#fff;border:1px solid var(--line);border-radius:13px}.quote-meta-card>summary{display:flex;align-items:center;gap:12px;padding:14px 18px;cursor:pointer;list-style:none}.quote-meta-card>summary::-webkit-details-marker{display:none}.quote-meta-card>summary span{color:var(--blue);font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.quote-meta-card>summary strong{font-size:13px}.quote-meta-card[open]>summary{border-bottom:1px solid var(--line)}.quote-meta-card .quote-header-grid{padding:18px}.quote-header-grid .span-4{grid-column:1/-1}.quote-general-notes{padding:13px 15px;border:1px solid var(--line);border-radius:9px;background:#f8fafd}.quote-general-notes p{margin:7px 0 0;color:var(--muted);font-size:12px;line-height:1.55}.quote-workbench{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:14px;margin:0 24px 25px;align-items:start}.quote-workbench-main{min-width:0}.quote-floating-tools{position:sticky;top:8px;z-index:40;margin-bottom:10px;padding:10px;background:rgba(243,246,251,.96);border:1px solid #dce4ef;border-radius:13px;box-shadow:0 8px 25px rgba(23,45,80,.09);backdrop-filter:blur(10px)}.room-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.room-tabs{display:flex;gap:6px;min-width:0;overflow-x:auto}.room-tab{white-space:nowrap;border:1px solid #dbe3ef;border-radius:999px;padding:7px 12px;background:#fff;color:var(--navy);font-size:11px;font-weight:800;cursor:pointer}.room-tab.active{border-color:var(--navy);background:var(--navy);color:#fff}.room-actions{display:flex;gap:5px}.room-actions button{display:grid;place-items:center;width:32px;height:32px;border:1px solid #d7dfeb;border-radius:9px;background:#fff;font-weight:850;cursor:pointer}.item-toolbar{display:flex;align-items:center;gap:9px}.item-toolbar>input{min-width:180px;flex:1;height:40px;border:1px solid #ced8e5;border-radius:9px;padding:0 12px;background:#fff;outline:none}.item-toolbar>input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(47,111,237,.1)}.item-add-actions{display:flex;gap:7px}.item-add-actions button,.inspector-material-actions button{min-height:38px;border:1px solid #d7dfeb;border-radius:9px;padding:7px 11px;background:#fff;font-size:11px;font-weight:800;cursor:pointer}.item-add-actions button:hover,.inspector-material-actions button:hover{border-color:#9bb9ef;background:#f7faff}.quote-room{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:13px}.quote-line-head,.quote-line{display:grid;grid-template-columns:28px minmax(270px,1fr) 82px 72px 108px 125px 28px;gap:8px;align-items:center;min-width:820px}.quote-line-head{padding:10px 11px;background:#f8fafd;border-bottom:1px solid var(--line);color:var(--muted);font-size:9px;font-weight:850;text-transform:uppercase}.room-lines{overflow-x:auto}.quote-line{position:relative;padding:9px 11px;border-bottom:1px solid #edf0f5}.quote-line:hover{background:#fbfdff}.quote-line.selected{background:#f4f8ff;box-shadow:inset 3px 0 var(--blue)}.quote-line.dragging{opacity:.45}.quote-line.linked-material .line-name-cell{padding-left:17px}.quote-line.linked-material .line-name-cell:before{content:'↳';position:absolute;margin-left:-16px;color:#6f91c7}.line-drag,.line-remove{border:0;background:transparent;cursor:pointer}.line-drag{color:#a8b2c2;font-weight:900;letter-spacing:-3px}.line-remove{font-size:17px}.line-name-cell{min-width:0;position:relative}.line-name-cell>div{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px;align-items:center}.line-note-indicator{display:block;min-height:13px;margin:3px 0 0 56px;color:#936500;font-size:9px}.quote-line input,.quote-line select,.quote-inspector input,.quote-inspector select,.quote-inspector textarea{width:100%;border:1px solid #ced8e5;border-radius:8px;background:#fff;outline:none;font-size:12px;font-weight:400}.quote-line input,.quote-line select,.quote-inspector input,.quote-inspector select{height:36px;padding:0 9px}.quote-line select,.quote-inspector select{appearance:none;padding-right:30px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m6 8 4 4 4-4' stroke='%23172033' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 7px center}.quote-line input:focus,.quote-line select:focus,.quote-inspector input:focus,.quote-inspector select:focus,.quote-inspector textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(47,111,237,.1)}.line-total{text-align:right;white-space:nowrap;font-size:12px}.autocomplete-wrap{position:relative}.quote-suggestions{position:absolute;z-index:80;top:40px;left:0;width:min(560px,80vw);max-height:320px;overflow:auto;padding:6px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.quote-suggestions[hidden]{display:none}.quote-suggestions button{display:grid;gap:3px;width:100%;border:0;border-radius:7px;padding:9px 10px;background:#fff;text-align:left;cursor:pointer}.quote-suggestions button:hover{background:#edf4ff}.quote-suggestions span{font-size:12px;font-weight:750}.quote-suggestions small{color:var(--muted);font-size:10px}.room-summary{margin:10px;border:1px solid #dfe6f1;border-radius:10px;padding:7px 10px;background:#fbfcfe}.room-summary-row{display:flex;align-items:center;gap:12px;padding:4px 0;font-size:10px}.room-summary-row>strong:first-child{min-width:150px}.room-summary-row>span{color:var(--muted)}.room-summary-row b{color:var(--navy)}.room-summary-row>strong:last-child{margin-left:auto;white-space:nowrap}.room-summary-row.offer{border-top:1px solid var(--line)}.room-summary-row.offer>strong:first-child{text-transform:uppercase}.quote-inspector{position:sticky;top:8px;max-height:calc(100vh - 16px);overflow:auto;background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 8px 25px rgba(23,45,80,.07)}.quote-inspector>header{position:sticky;top:0;z-index:2;padding:14px 16px;background:var(--navy);color:#fff;font-size:12px}.inspector-empty{padding:35px 18px;color:var(--muted);text-align:center;font-size:12px}#inspector-content{display:grid;gap:12px;padding:15px}#inspector-content>label,.inspector-grid label{display:grid;gap:6px;color:var(--muted);font-size:10px;font-weight:700}#inspector-content>label textarea{min-height:72px;padding:9px;resize:vertical}.inspector-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.inspector-total{display:grid;align-content:center;gap:4px}.inspector-total span{color:var(--muted);font-size:9px}.inspector-total strong{font-size:16px}.inspector-material-actions{display:flex;flex-wrap:wrap;gap:7px;padding-top:3px}.history-insights{overflow:hidden;border:1px solid #cbdcf7;border-radius:10px;background:#f5f9ff}.history-insights>header{padding:9px 11px;background:#dceaff;color:#285fbf;font-size:11px;font-weight:850}.history-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:9px}.history-stat-grid>div{display:grid;gap:4px;padding:9px;background:#fff;border:1px solid #dfE8f5;border-radius:8px}.history-stat-grid small,.history-stat-grid p{color:var(--muted);font-size:9px}.history-stat-grid strong{font-size:12px}.history-stat-grid p{grid-column:1/-1;margin:4px}.quote-workbench-page .quote-savebar{padding-left:24px;padding-right:24px}
@media(max-width:1250px){.quote-workbench{grid-template-columns:1fr}.quote-inspector{position:static;max-height:none}.hub-document-grid{grid-template-columns:repeat(3,1fr)}.hub-overview-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.project-hub-head{padding:26px 20px 18px}.project-hub-tabs,.project-hub-panel{margin-left:20px;margin-right:20px}.hub-overview-grid{grid-template-columns:1fr}.quote-workbench,.quote-meta-card{margin-left:20px;margin-right:20px}.item-toolbar{align-items:stretch;flex-direction:column}.item-add-actions{display:grid;grid-template-columns:1fr 1fr}.room-summary-row{align-items:flex-start;flex-wrap:wrap}.room-summary-row>strong:first-child{width:100%}.room-summary-row>strong:last-child{margin-left:0}.work-material-link-row{grid-template-columns:1fr 1fr}.work-material-link-row label:first-child{grid-column:1/-1}}
@media(max-width:720px){.project-hub-title{align-items:flex-start;flex-direction:column}.hub-document-grid{grid-template-columns:repeat(2,1fr)}.quote-workbench,.quote-meta-card{margin-left:12px;margin-right:12px}.quote-floating-tools{top:3px}.item-add-actions{grid-template-columns:1fr}.work-material-link-row{grid-template-columns:1fr}.work-material-link-row label:first-child{grid-column:auto}}

/* Quote workbench hotfix: portaled suggestions, handle-only drag, VAT column and stable readonly grid. */
.quote-workbench{margin-bottom:18px}
.quote-line-head,.quote-line{grid-template-columns:28px minmax(270px,1fr) 82px 72px 108px 76px 125px 28px;min-width:900px}
.line-drag{cursor:grab;user-select:none;touch-action:none}.line-drag:active{cursor:grabbing}
.quote-suggestions{position:fixed;z-index:2147480000;top:auto;left:auto;width:min(560px,80vw);box-shadow:0 16px 42px rgba(23,45,80,.24)}
.quote-offer-summary{margin:0 24px 22px;padding:17px 18px;background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 6px 20px rgba(23,45,80,.04)}
.quote-offer-summary>header{margin-bottom:12px}.quote-offer-summary>header h2{margin:2px 0 0;font-size:17px}
.quote-offer-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(115px,1fr)) minmax(180px,1.25fr);gap:8px}
.quote-offer-summary-grid article{display:grid;gap:6px;padding:12px 13px;border:1px solid #e1e7f0;border-radius:10px;background:#f9fbfd}
.quote-offer-summary-grid span{color:var(--muted);font-size:10px;font-weight:750}.quote-offer-summary-grid strong{font-size:14px}
.quote-offer-summary-grid .grand{border-color:#c8dafb;background:#edf4ff}.quote-offer-summary-grid .grand span,.quote-offer-summary-grid .grand strong{color:#285fbf}.quote-offer-summary-grid .grand strong{font-size:20px}
#quote-form[data-editable="0"] .quote-line>.edit-only{display:block!important;visibility:hidden;pointer-events:none}
@media(max-width:900px){.quote-offer-summary{margin-left:20px;margin-right:20px}.quote-offer-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-offer-summary-grid .grand{grid-column:1/-1}}
@media(max-width:720px){.quote-offer-summary{margin-left:12px;margin-right:12px}.quote-offer-summary-grid{grid-template-columns:1fr}.quote-offer-summary-grid .grand{grid-column:auto}}

/* Quote hierarchy: unmistakable selection and material actions bound to a selected work. */
.quote-line.selected{z-index:1;background:#e7f0ff;box-shadow:inset 5px 0 var(--blue),inset 0 0 0 2px rgba(47,111,237,.42),0 5px 16px rgba(47,111,237,.13)}
.quote-line.selected .line-name,.quote-line.selected .line-quantity,.quote-line.selected .line-unit,.quote-line.selected .line-price,.quote-line.selected .line-vat{border-color:#78a3f5;background:#fff}
.quote-line.belongs-to-selected:not(.selected){background:#f5f8ff;box-shadow:inset 3px 0 #a9c4f7}
.quote-line.parent-of-selected:not(.selected){background:#f5f8ff;box-shadow:inset 4px 0 #7ea6ef}
.item-add-actions button:disabled,.segmented button:disabled{border-color:#e0e5ed;background:#f1f3f6;color:#98a2b2;cursor:not-allowed;box-shadow:none}

/* Projektové dopyty a položkové porovnanie dodávateľských ponúk. */
.quote-status.answered{background:#e0e7ff;color:#3730a3}.quote-status.comparing{background:#fff3db;color:#936500}.quote-status.awarded,.quote-status.selected{background:#e3f5ed;color:#14704e}.quote-status.closed{background:#e7ebf1;color:#374151}.quote-status.received,.quote-status.reviewed{background:#e8f0ff;color:#285fbf}
.inline-field-action{align-self:start;width:max-content;margin-top:6px;border:0;background:transparent;color:var(--blue);font-size:11px;font-weight:800;cursor:pointer}.rfq-line.quote-line,.rfq-room .quote-line-head{grid-template-columns:28px minmax(330px,1fr) 110px 90px 28px;min-width:700px}.rfq-room .room-summary-row>strong:first-child{min-width:180px}
.rfq-supplier-section,.rfq-responses-section,.rfq-response-meta,.rfq-response-prices{margin:0 24px 22px;padding:18px;background:#fff;border:1px solid var(--line);border-radius:13px}.rfq-supplier-section>header,.rfq-responses-section>header,.rfq-response-meta>header,.rfq-response-prices>header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:15px}.rfq-supplier-section h2,.rfq-responses-section h2,.rfq-response-meta h2,.rfq-response-prices h2{margin:2px 0 0;font-size:18px}.rfq-supplier-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.rfq-supplier-option{display:flex;align-items:flex-start;gap:10px;min-width:0;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fbfcfe;cursor:pointer}.rfq-supplier-option:has(input:checked){border-color:#9bb9ef;background:#edf4ff;box-shadow:inset 0 0 0 1px rgba(47,111,237,.1)}.rfq-supplier-option input{width:17px;height:17px;margin:2px 0 0;accent-color:var(--blue)}.rfq-supplier-option span{display:grid;gap:4px;min-width:0}.rfq-supplier-option strong{font-size:12px}.rfq-supplier-option small{overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.rfq-response-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.rfq-response-card{display:grid;align-content:start;gap:12px;padding:15px;border:1px solid var(--line);border-radius:11px;background:#fbfcfe}.rfq-response-card.selected{border-color:#7fcca9;background:#f1fbf6;box-shadow:inset 0 0 0 1px rgba(22,132,91,.14)}.rfq-response-card>div:first-child{display:grid;gap:4px}.rfq-response-card>div:first-child small{color:var(--muted);font-size:10px}.rfq-response-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.rfq-response-metrics span{display:grid;gap:4px;padding:9px;border:1px solid #e4e9f1;border-radius:8px;background:#fff;color:var(--muted);font-size:9px}.rfq-response-metrics b{color:var(--navy);font-size:12px}.rfq-response-actions{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.rfq-response-actions form{margin:0}.rfq-response-actions .secondary-button,.rfq-response-actions .primary-button{padding:8px 10px;font-size:10px}.winner-badge{display:inline-flex;padding:7px 10px;border-radius:999px;background:#dcfce7;color:#166534;font-size:10px;font-weight:850}
.rfq-recommendation{display:grid;grid-template-columns:auto 1fr;gap:5px 12px;margin:16px 0 10px;padding:13px 15px;border:1px solid #f0d797;border-radius:10px;background:#fff9e9}.rfq-recommendation.has-result{border-color:#a8d9c4;background:#f1fbf6}.rfq-recommendation strong{font-size:12px}.rfq-recommendation span{font-size:13px;font-weight:850;text-align:right}.rfq-recommendation small{grid-column:1/-1;color:var(--muted);font-size:10px}.rfq-comparison-table,.rfq-response-table{overflow:auto;border:1px solid var(--line);border-radius:11px}.rfq-comparison-table table,.rfq-response-table table{min-width:900px}.rfq-comparison-table th,.rfq-comparison-table td,.rfq-response-table th,.rfq-response-table td{padding:10px;border-bottom:1px solid #edf0f5;vertical-align:middle}.rfq-comparison-table thead th,.rfq-response-table thead th{background:#f8fafd;color:var(--muted);font-size:9px;text-transform:uppercase}.rfq-comparison-table thead th span,.rfq-comparison-table thead th small{display:block}.rfq-comparison-table thead th small{margin-top:3px;color:var(--blue)}.rfq-comparison-table tbody td:first-child{min-width:280px}.rfq-comparison-table tbody td:first-child strong{margin-left:7px;font-size:11px}.rfq-comparison-table tbody td:not(:first-child):not(:nth-child(2)){min-width:135px;text-align:right}.rfq-comparison-table tbody td strong,.rfq-comparison-table tbody td small{display:block}.rfq-comparison-table tbody td small{margin-top:3px;color:var(--muted);font-size:9px}.rfq-comparison-table td.best-price{background:#edf9f3}.rfq-comparison-table td.best-price strong{color:var(--green)}.comparison-section th,.response-section th{padding:8px 10px!important;background:#eaf1fb!important;color:var(--navy)!important;text-align:left!important;font-size:10px!important}.hub-empty.compact{min-height:150px}
.rfq-response-page #rfq-response-form{padding-bottom:74px}.rfq-response-meta .quote-header-grid{padding:0}.rfq-response-table table{min-width:1180px}.rfq-response-table td:nth-child(1){width:70px;text-align:center}.rfq-response-table td:nth-child(2){min-width:280px}.rfq-response-table td:nth-child(3){width:105px}.rfq-response-table td:nth-child(4){width:65px}.rfq-response-table td:nth-child(5),.rfq-response-table td:nth-child(6){width:110px}.rfq-response-table td:nth-child(7){width:125px;text-align:right}.rfq-response-table td:nth-child(8){min-width:210px}.rfq-response-table input:not([type=checkbox]){width:100%;height:38px;border:1px solid #ced8e5;border-radius:8px;padding:0 9px;background:#fff;outline:none}.rfq-response-table input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(47,111,237,.1)}.rfq-response-table tr.excluded{opacity:.54}.response-item-name{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px;align-items:center}.response-item-name small{grid-column:2;color:var(--muted);font-size:9px}.rfq-response-total{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr)) minmax(190px,1.25fr);gap:9px;margin:0 24px 22px}.rfq-response-total article{display:grid;gap:6px;padding:13px;border:1px solid var(--line);border-radius:10px;background:#fff}.rfq-response-total span{color:var(--muted);font-size:10px;font-weight:750}.rfq-response-total strong{font-size:15px}.rfq-response-total .grand{border-color:#c8dafb;background:#edf4ff}.rfq-response-total .grand strong{color:var(--blue);font-size:21px}.field-help{display:block;margin-top:5px;color:var(--muted);font-size:10px;font-weight:500}.field-help a{color:var(--blue)}.inline-check{display:inline-flex!important;align-items:center;gap:5px;margin-left:8px}.inline-check input{width:15px!important;height:15px!important}.rfq-response-page .quote-savebar{padding-left:24px;padding-right:24px}
@media(max-width:1100px){.rfq-supplier-grid,.rfq-response-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.rfq-supplier-section,.rfq-responses-section,.rfq-response-meta,.rfq-response-prices,.rfq-response-total{margin-left:12px;margin-right:12px}.rfq-supplier-grid,.rfq-response-cards,.rfq-response-total{grid-template-columns:1fr}.rfq-recommendation{grid-template-columns:1fr}.rfq-recommendation span{text-align:left}.rfq-supplier-section>header,.rfq-responses-section>header{align-items:flex-start;flex-direction:column}}

/* Jeden položkový editor pre ponuky aj dopyty; readonly režim drží rovnakú mriežku. */
.document-readonly .edit-only{display:none!important}
.document-readonly .quote-line>.line-drag,.document-readonly .quote-line>.line-remove{display:block!important;visibility:hidden;pointer-events:none}
.document-readonly .quote-line input:disabled,.document-readonly .quote-line select:disabled,.document-readonly .quote-inspector input:disabled,.document-readonly .quote-inspector select:disabled,.document-readonly .quote-inspector textarea:disabled{opacity:1;color:var(--text);background:#f8fafd;-webkit-text-fill-color:var(--text)}

/* Výber dodávateľov sa škáluje aj pri stovkách záznamov. */
.rfq-selected-suppliers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.rfq-selected-supplier{display:grid;gap:4px;min-width:0;padding:12px;border:1px solid #c8dafb;border-radius:10px;background:#edf4ff}
.rfq-selected-supplier strong{font-size:12px}.rfq-selected-supplier small{overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.supplier-picker{display:flex;flex-direction:column;overflow:hidden}.supplier-picker>header{flex:0 0 auto}
.supplier-picker-tools{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line);background:#f8fafd}
.supplier-picker-tools input{min-width:0;flex:1;height:42px;border:1px solid #ced8e5;border-radius:9px;padding:0 12px;background:#fff;outline:none}
.supplier-picker-tools input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(47,111,237,.1)}
.supplier-picker-tools strong{white-space:nowrap;color:var(--blue);font-size:12px}
.supplier-picker-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;max-height:min(52vh,560px);overflow:auto;padding:16px 20px}
.supplier-picker-list+.empty-inline{margin:0;padding:20px}.supplier-picker-footer{display:flex;justify-content:space-between;gap:10px;padding:15px 20px;border-top:1px solid var(--line);background:#fff}
@media(max-width:1100px){.rfq-selected-suppliers{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.rfq-selected-suppliers,.supplier-picker-list{grid-template-columns:1fr}.supplier-picker-tools{align-items:stretch;flex-direction:column}.supplier-picker-tools strong{align-self:flex-start}.supplier-picker-footer{flex-direction:column}.supplier-picker-footer .primary-button,.supplier-picker-footer .secondary-button{width:100%}}

/* Jednotné profesionálne interakcie: stavy, hlásenia a bezpečné opustenie rozpracovaného formulára. */
.flash.info{background:#edf4ff;color:#285fbf;border:1px solid #c8dafb}
.document-status-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.document-status-actions form{margin:0}.manual-status-form select{min-width:190px;height:42px;border:1px solid #ced8e5;border-radius:10px;padding:0 38px 0 12px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m6 8 4 4 4-4' stroke='%23172033' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 11px center;appearance:none;outline:none;font-size:12px;font-weight:750;cursor:pointer}.manual-status-form select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(47,111,237,.1)}.danger-button{background:#bd2c2c!important;color:#fff!important}
.stavix-toast-root{position:fixed;z-index:2147483000;top:20px;right:20px;display:grid;gap:10px;width:min(390px,calc(100vw - 32px));pointer-events:none}.stavix-toast{display:grid;grid-template-columns:38px minmax(0,1fr) 28px;gap:11px;align-items:start;padding:14px;border:1px solid #bce8d4;border-radius:13px;background:#fff;box-shadow:0 18px 50px rgba(22,43,77,.2);opacity:0;transform:translateY(-12px);transition:opacity .2s ease,transform .2s ease;pointer-events:auto}.stavix-toast.visible{opacity:1;transform:none}.stavix-toast.error{border-color:#f1b8b8}.stavix-toast-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#e5f7ef;color:#16845b;font-size:18px;font-weight:900}.stavix-toast.error .stavix-toast-icon{background:#fff0f0;color:#b42323}.stavix-toast>div{min-width:0;display:grid;gap:3px}.stavix-toast strong{font-size:13px}.stavix-toast p{margin:0;color:var(--muted);font-size:11px;line-height:1.45}.stavix-toast-close{border:0;background:transparent;color:#8893a4;font-size:19px;cursor:pointer}
.stavix-dialog-backdrop{position:fixed;z-index:2147483600;inset:0;display:grid;place-items:center;padding:20px;background:rgba(10,24,45,.58);opacity:0;transition:opacity .18s ease;backdrop-filter:blur(4px)}.stavix-dialog-backdrop.visible{opacity:1}.stavix-dialog{display:grid;grid-template-columns:48px minmax(0,1fr);gap:16px;width:min(520px,100%);padding:22px;border:1px solid rgba(255,255,255,.8);border-radius:17px;background:#fff;box-shadow:0 30px 90px rgba(4,16,35,.34);transform:translateY(8px) scale(.98);transition:transform .18s ease}.stavix-dialog-backdrop.visible .stavix-dialog{transform:none}.stavix-dialog-marker{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#e8f0ff;color:var(--blue);font-size:22px;font-weight:900}.stavix-dialog.danger .stavix-dialog-marker{background:#fff0f0;color:#b42323}.stavix-dialog h2{margin:1px 0 7px;font-size:20px}.stavix-dialog p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.stavix-dialog footer{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}
.has-unsaved-changes .quote-savebar:before{content:'';align-self:center;width:8px;height:8px;margin-right:auto;border-radius:50%;background:#e2a000;box-shadow:0 0 0 5px rgba(226,160,0,.12)}

/* Readonly dokument drží rovnakú mriežku, ostáva čitateľný a nepotrebuje inšpektor. */
.quote-workbench.without-inspector{grid-template-columns:minmax(0,1fr)}.autocomplete-wrap{min-width:0}.document-readonly .quote-line{cursor:default}.document-readonly .quote-line:hover{background:#fff}.document-readonly .quote-line.linked-material:hover{background:#fff}.document-readonly .quote-line input:disabled,.document-readonly .quote-line select:disabled{font-weight:600}.document-readonly .quote-line .line-name:disabled{text-overflow:ellipsis}.document-readonly .room-lines{overflow-x:auto}

/* Dodávateľ v dopyte je samostatná, dobre čitateľná kontaktná karta. */
.rfq-selected-supplier{grid-template-columns:40px minmax(0,1fr);align-items:start;gap:11px;padding:14px;background:#fff;border-color:#d8e2f0;box-shadow:0 4px 13px rgba(23,45,80,.04)}.supplier-avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#e8f0ff;color:#285fbf;font-size:15px;font-weight:900}.supplier-card-content{display:grid;gap:7px;min-width:0}.supplier-card-content>strong{font-size:13px}.supplier-contact-list{display:flex;flex-wrap:wrap;gap:6px}.supplier-contact-list span{display:inline-flex;max-width:100%;padding:5px 7px;border-radius:7px;background:#f1f4f8;color:#5f6b7e;font-size:10px;line-height:1.2;overflow-wrap:anywhere}.rfq-supplier-section>.empty-inline{margin:5px 0 0;padding:18px;border:1px dashed #cfd9e7;border-radius:10px;background:#fafbfd;text-align:center}

/* Dokument sa otvára zreteľným ovládacím prvkom, nie iba nenápadným názvom. */
.document-table-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;white-space:nowrap}.document-open-cell{text-align:right;white-space:nowrap}.document-open-link{display:inline-flex;align-items:center;gap:7px;border:1px solid #c9daf8;border-radius:9px;padding:8px 11px;background:#edf4ff;color:#285fbf;font-size:11px;font-weight:850;text-decoration:none;transition:border-color .16s ease,background .16s ease,transform .16s ease}.document-open-link:hover{border-color:#8eb0ec;background:#e2edff;transform:translateY(-1px)}.document-open-link span{font-size:14px}

/* Jednotný ovládateľ stavu dokumentu v zoznamoch. */
.document-status-control{display:inline-flex;position:relative}.document-status-toggle{gap:6px;border:0;font:inherit;cursor:pointer;transition:box-shadow .15s ease,transform .15s ease}.document-status-toggle:hover{box-shadow:0 0 0 3px rgba(47,111,237,.12);transform:translateY(-1px)}.document-status-toggle:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.status-chevron{font-size:13px;line-height:1}.document-status-menu{display:none;position:fixed;z-index:1100;width:250px;max-height:min(520px,calc(100vh - 24px));overflow:auto;padding:8px;background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 20px 55px rgba(15,34,65,.22);text-align:left}.document-status-menu.open{display:grid;gap:3px}.document-status-menu>strong{padding:8px 9px 7px;color:var(--muted);font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.document-status-menu form{margin:0}.document-status-menu button,.status-menu-current{display:grid;grid-template-columns:12px minmax(0,1fr) 18px;align-items:center;gap:9px;width:100%;min-height:38px;border:0;border-radius:8px;padding:8px 9px;background:#fff;color:var(--text);font-size:12px;font-weight:750;text-align:left}.document-status-menu button{cursor:pointer}.document-status-menu button:hover{background:#edf4ff;color:#285fbf}.status-menu-current{background:#f1f4f8}.status-menu-current b{color:#16845b;text-align:right}.status-dot{display:block;width:9px;height:9px;border-radius:50%;background:#8a95a6}.status-dot.draft{background:#7b8799}.status-dot.sent,.status-dot.received,.status-dot.reviewed{background:#3775dc}.status-dot.accepted,.status-dot.awarded,.status-dot.selected,.status-dot.completed,.status-dot.active{background:#1c9a68}.status-dot.rejected,.status-dot.cancelled{background:#c64040}.status-dot.expired,.status-dot.comparing,.status-dot.on_hold{background:#d79a16}.status-dot.answered,.status-dot.planned{background:#6657d9}.status-dot.closed,.status-dot.archived{background:#626d7d}
@media(max-width:900px){.quote-editor-heading{gap:18px}.document-status-actions{justify-content:flex-start}.rfq-selected-suppliers{grid-template-columns:1fr}.stavix-toast-root{top:12px;right:12px}.document-open-link{padding:8px}.document-open-link span{display:none}}
@media(max-width:560px){.document-status-actions{align-items:stretch;flex-direction:column}.document-status-actions form,.document-status-actions button,.manual-status-form select{width:100%}.stavix-dialog{grid-template-columns:1fr}.stavix-dialog-marker{width:42px;height:42px}.stavix-dialog footer{flex-direction:column-reverse}.stavix-dialog footer button{width:100%}}

/* Výber materiálov pre prácu kopíruje logiku V1, ale podporuje filtre a hromadné priradenie. */
.modal-level-2{z-index:120}.modal-level-3{z-index:140}.material-picker-modal{display:grid;grid-template-rows:auto auto auto minmax(180px,1fr) auto auto;width:min(1180px,100%);max-height:92vh;overflow:hidden}.material-picker-filters{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:18px 24px 14px;background:#f8fafd;border-bottom:1px solid var(--line)}.material-picker-filters label{display:grid;align-content:start;gap:6px;color:#4f5c70;font-size:11px;font-weight:800}.material-picker-filters input,.material-picker-filters select{width:100%;height:42px;border:1px solid #ced8e5;border-radius:9px;padding:0 11px;background:#fff;font-size:13px;outline:none}.material-picker-filters select{appearance:none;padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m6 8 4 4 4-4' stroke='%23172033' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center}.material-picker-filters input:focus,.material-picker-filters select:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,111,237,.1)}.material-picker-filters .filter-search{grid-column:span 2}.material-filter-reset{align-self:end;height:42px}.material-picker-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 24px;border-bottom:1px solid var(--line)}.inline-check{display:inline-flex!important;align-items:center;gap:9px;font-size:12px;font-weight:800;cursor:pointer}.inline-check input,.material-picker-row>input{width:18px;height:18px;accent-color:var(--blue);cursor:pointer}.material-picker-list{display:grid;align-content:start;gap:9px;overflow:auto;padding:14px 24px;background:#f8fafd}.material-picker-row{display:grid;grid-template-columns:22px minmax(220px,1.05fr) minmax(490px,2fr) auto;align-items:center;gap:14px;min-width:900px;padding:13px 14px;border:1px solid #d8e2ef;border-radius:12px;background:#fff;cursor:pointer;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.material-picker-row:hover{border-color:#a9bfe5;box-shadow:0 5px 16px rgba(23,45,80,.07)}.material-picker-row.is-selected{border-color:#6d9cf2;background:#f2f7ff;box-shadow:0 0 0 2px rgba(47,111,237,.1)}.material-picker-row.is-linked{background:#f3f5f8;cursor:default}.material-picker-row.is-linked>input{cursor:default}.material-picker-identity{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:5px 8px;min-width:0}.material-picker-identity .code-pill{grid-row:1}.material-picker-identity>strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.material-picker-identity>small{grid-column:1/-1;overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.material-picker-attributes{display:grid;grid-template-columns:repeat(6,minmax(72px,1fr));gap:7px}.material-picker-attributes>span{display:grid;gap:3px;padding:7px 8px;border-radius:8px;background:#f4f7fb}.material-picker-attributes small{color:var(--muted);font-size:9px;font-weight:700}.material-picker-attributes strong{font-size:11px;white-space:nowrap}.material-picker-state{color:#16845b;font-size:10px;font-weight:850;white-space:nowrap}.material-picker-empty{margin:0;padding:22px 24px;background:#f8fafd}.material-picker-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 24px;border-top:1px solid var(--line);background:#fff}.material-picker-footer>strong{font-size:12px}.material-picker-footer>div{display:flex;gap:9px}.material-picker-footer button:disabled{opacity:.45;cursor:not-allowed}.linked-material-summary{display:flex;align-items:center;gap:10px;min-width:0;height:44px;padding:6px 10px;border:1px solid #ced8e5;border-radius:9px;background:#fff}.linked-material-summary>div{display:grid;gap:2px;min-width:0}.linked-material-summary strong,.linked-material-summary small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.linked-material-summary strong{font-size:12px}.linked-material-summary small{color:var(--muted);font-size:10px}.work-material-editor>#add-work-material{justify-self:start}
@media(max-width:1050px){.material-picker-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.material-picker-filters .filter-search{grid-column:span 2}}
@media(max-width:720px){.material-picker-modal{max-height:96vh}.material-picker-filters{grid-template-columns:1fr;padding:14px}.material-picker-filters .filter-search{grid-column:auto}.material-picker-toolbar,.material-picker-list,.material-picker-footer{padding-left:14px;padding-right:14px}.material-picker-toolbar,.material-picker-footer{align-items:stretch;flex-direction:column}.material-picker-footer>div{display:grid;grid-template-columns:1fr 1fr}.material-picker-row{min-width:760px;grid-template-columns:22px minmax(190px,1fr) minmax(430px,2fr) auto}.material-picker-attributes{grid-template-columns:repeat(3,minmax(90px,1fr))}.linked-material-summary{min-width:0}.work-material-editor>#add-work-material{width:100%}}

/* Porovnanie súpisu so zdrojovou ponukou. */
.line-compare-badge{display:inline-flex;align-items:center;width:max-content;margin-top:4px;padding:3px 7px;border-radius:999px;font-size:10px;font-weight:850;line-height:1.2}.comparison-same .line-compare-badge{background:#edf2f8;color:#627187}.comparison-changed{background:#fff9e8}.comparison-changed .line-compare-badge{background:#ffedb8;color:#8b5c00}.comparison-new{background:#eefbf5}.comparison-new .line-compare-badge{background:#d9f5e8;color:#087653}.work-statement-comparison{margin:0 28px 20px;padding:18px 20px;background:#fff;border:1px solid var(--line);border-radius:16px}.work-statement-comparison header{display:flex;justify-content:space-between;align-items:center;gap:18px}.work-statement-comparison h2{margin:0;font-size:17px}.comparison-counts{display:flex;flex-wrap:wrap;gap:8px}.comparison-counts span{padding:7px 10px;border-radius:999px;background:#edf2f8;color:#536176;font-size:12px;font-weight:800}.comparison-counts .changed{background:#ffedb8;color:#8b5c00}.comparison-counts .new{background:#d9f5e8;color:#087653}.comparison-counts .missing{background:#fde5e5;color:#a42c2c}.missing-source-list{display:grid;gap:7px;margin:14px 0 0;padding:14px 0 0;border-top:1px solid var(--line);list-style:none}.missing-source-list li{display:flex;justify-content:space-between;gap:14px;color:var(--muted);font-size:13px}.work-statement-source{display:grid;gap:5px;padding:12px 14px;border:1px solid #d8e2ef;border-radius:11px;background:#f8fafd}.work-statement-source strong{font-size:13px}.work-statement-source small{color:var(--muted)}
.quote-status.ready{background:#e8f0ff;color:#285fbf}.quote-status.approved{background:#e5f7ef;color:#16845b}.quote-status.invoiced{background:#e8f5f3;color:#0f766e}.status-dot.ready{background:#6657d9}.status-dot.approved{background:#1c9a68}.status-dot.invoiced{background:#0f8b86}
.quote-status.issued{background:#e8f0ff;color:#285fbf}.quote-status.partially_paid{background:#fff2d9;color:#946200}.quote-status.paid{background:#e5f7ef;color:#16845b}.quote-status.overdue{background:#fde7e7;color:#b72f2f}.status-dot.issued{background:#6657d9}.status-dot.partially_paid{background:#d79a16}.status-dot.paid{background:#1c9a68}.invoice-overdue-value{color:#b72f2f;font-weight:850}.invoice-status-stack{display:flex;align-items:flex-start;gap:6px;flex-wrap:wrap}
.invoice-parties{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin:0 24px 16px}.invoice-parties article{display:grid;align-content:start;gap:5px;min-height:104px;padding:15px 16px;background:#fff;border:1px solid var(--line);border-radius:12px}.invoice-parties span,.invoice-parties small{color:var(--muted);font-size:10px}.invoice-parties span{font-weight:850;text-transform:uppercase;letter-spacing:.06em}.invoice-parties strong{font-size:13px}.invoice-payments{margin:4px 24px 36px;padding:18px;background:#fff;border:1px solid var(--line);border-radius:14px}.invoice-payments>header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.invoice-payments h2{margin:0;font-size:20px}.invoice-payments header p{margin:5px 0 0;color:var(--muted);font-size:11px}.invoice-balance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}.invoice-balance-grid article{display:grid;gap:7px;padding:14px 15px;background:#f8fafd;border:1px solid var(--line);border-radius:10px}.invoice-balance-grid span{color:var(--muted);font-size:10px}.invoice-balance-grid strong{font-size:19px}.invoice-balance-grid article.overdue{background:#fff7f7;border-color:#f2caca}.invoice-balance-grid article.overdue strong{color:#b72f2f}.invoice-payments .hub-table{border:1px solid var(--line);border-radius:10px}.invoice-payments form{margin:0}.table-icon-button{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer}
@media(max-width:900px){.invoice-parties{grid-template-columns:1fr;margin-left:20px;margin-right:20px}.invoice-payments{margin-left:20px;margin-right:20px}.invoice-balance-grid{grid-template-columns:1fr}.invoice-payments>header{align-items:flex-start;flex-direction:column}}

/* Firemné nastavenia: rovnaké polia, čisté sekcie a bez pomocného eyebrow nad názvom stránky. */
.settings-page form>.page-heading{padding-bottom:20px}.settings-tabs{display:flex;gap:7px;margin:0 38px 20px;padding:6px;border:1px solid #dce4ef;border-radius:13px;background:#e9eef6}.settings-tabs button{min-height:42px;border:0;border-radius:9px;padding:0 18px;background:transparent;color:#657187;font-size:12px;font-weight:850;cursor:pointer}.settings-tabs button.active{background:#fff;color:var(--navy);box-shadow:0 5px 16px rgba(23,45,80,.1)}
.settings-panel{display:grid;gap:16px;margin:0 38px}.settings-panel[hidden]{display:none}.settings-card{overflow:hidden;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:0 5px 18px rgba(23,45,80,.04)}.settings-card>header{padding:19px 22px;border-bottom:1px solid var(--line)}.settings-card>header h2{margin:0;font-size:18px}.settings-card>header p{margin:5px 0 0;color:var(--muted);font-size:11px;line-height:1.5}.settings-grid{display:grid;gap:16px;padding:21px 22px}.settings-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-grid label,.settings-text-toolbar label,.branding-card>label{display:grid;align-content:start;gap:7px;color:var(--text);font-size:12px;font-weight:800}.settings-grid .span-2{grid-column:span 2}.settings-grid input,.settings-grid select,.settings-grid textarea,.settings-text-toolbar select,.sequence-row input,.branding-card input[type=file]{width:100%;border:1px solid #ced8e5;border-radius:9px;background:#fff;outline:none;font-size:13px;font-weight:400}.settings-grid input,.settings-grid select,.settings-text-toolbar select,.sequence-row input,.branding-card input[type=file]{height:44px;padding:0 12px}.settings-grid select,.settings-text-toolbar select{appearance:none;padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m6 8 4 4 4-4' stroke='%23172033' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.settings-grid textarea{min-height:116px;padding:11px 12px;line-height:1.5;resize:vertical}.settings-grid input:focus,.settings-grid select:focus,.settings-grid textarea:focus,.settings-text-toolbar select:focus,.sequence-row input:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,111,237,.1)}.settings-grid label>small,.branding-card>small{color:var(--muted);font-size:10px;font-weight:500;line-height:1.45}.settings-grid .input-suffix{height:44px}.settings-grid .input-suffix input{height:42px;border:0;border-radius:0;box-shadow:none}.settings-grid .input-suffix span{min-width:52px;font-size:11px}
.sequence-list{display:grid}.sequence-row{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(300px,1.2fr);align-items:center;gap:22px;padding:14px 22px;border-bottom:1px solid #edf1f6}.sequence-row:last-child{border-bottom:0}.sequence-row>span{display:grid;gap:4px}.sequence-row strong{font-size:12px}.sequence-row small{color:var(--muted);font-size:10px}.sequence-row small b{color:#285fbf}.settings-hint{margin:0;padding:14px 22px;border-top:1px solid var(--line);background:#f8fafd;color:var(--muted);font-size:10px;line-height:1.5}
.settings-text-toolbar{display:grid;grid-template-columns:repeat(2,minmax(220px,320px));gap:14px;padding:18px 22px;border-bottom:1px solid var(--line);background:#f8fafd}.document-text-editor[hidden]{display:none}.text-editor-heading{padding:16px 22px 0;color:#285fbf;font-size:12px}.document-text-editor .settings-grid{padding-top:14px}
.branding-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:22px}.branding-card{display:grid;align-content:start;gap:12px;padding:16px;border:1px solid var(--line);border-radius:13px;background:#f8fafd}.branding-preview{display:grid;place-items:center;height:190px;overflow:hidden;border:1px dashed #bfcbdc;border-radius:11px;background:#fff}.branding-preview.signature{height:150px}.branding-preview img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;padding:18px;box-sizing:border-box;object-fit:contain;object-position:center}.branding-preview.signature img{padding:14px 20px}.branding-preview span{color:var(--muted);font-size:11px}.branding-card input[type=file]{padding:8px}.branding-card .inline-check{justify-self:start}.settings-savebar{display:flex;justify-content:flex-end;margin:18px 38px 38px;padding-top:2px}.settings-savebar .primary-button{min-width:190px}
@media(max-width:1000px){.settings-grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-grid.cols-3>div:empty{display:none}.branding-grid{grid-template-columns:1fr}}
@media(max-width:720px){.settings-tabs{overflow-x:auto;margin:0 20px 16px}.settings-tabs button{white-space:nowrap}.settings-panel{margin:0 20px}.settings-grid.cols-3,.settings-grid.cols-2,.settings-text-toolbar{grid-template-columns:1fr}.settings-grid .span-2{grid-column:auto}.sequence-row{grid-template-columns:1fr;gap:9px;padding:14px 18px}.branding-grid{padding:16px}.settings-savebar{margin:16px 20px 28px}.settings-savebar .primary-button{width:100%}}
.pdf-viewer-page{width:100%;height:100vh;overflow:hidden;grid-template-columns:260px minmax(0,1fr)}.pdf-viewer-page .content{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:76px auto minmax(0,1fr);width:100%;min-width:0;height:100vh}.pdf-viewer-page .topbar,.pdf-viewer-heading,.pdf-viewer-shell{width:auto;min-width:0}.pdf-viewer-heading{align-items:flex-end;padding-top:24px;padding-bottom:18px}.pdf-viewer-heading .heading-title-row h1{max-width:850px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdf-viewer-shell{height:100%;min-height:0;margin:0 38px 28px;border:1px solid #d6deea;border-radius:14px;overflow:hidden;background:#dfe4eb;box-shadow:0 12px 35px rgba(23,45,80,.12)}.pdf-viewer-shell iframe{display:block;width:100%;height:100%;min-width:0;border:0;background:#fff}
@media(max-width:900px){.pdf-viewer-page{height:auto;overflow:auto}.pdf-viewer-page .content{display:block;height:auto}.pdf-viewer-shell{height:76vh}.pdf-viewer-heading .heading-actions{display:grid;grid-template-columns:1fr 1fr}.pdf-viewer-heading .heading-actions .primary-button{grid-column:1/-1}}
@media(max-width:720px){.pdf-viewer-page{grid-template-columns:1fr}.pdf-viewer-shell{margin:0 20px 20px;height:72vh}.pdf-viewer-heading .heading-title-row h1{white-space:normal}.pdf-viewer-heading .heading-actions{grid-template-columns:1fr;width:100%}.pdf-viewer-heading .heading-actions .primary-button{grid-column:auto}}
.mobile-nav-toggle,.sidebar-close,.sidebar-backdrop{display:none}.topbar-company{min-width:0}.mobile-nav-toggle,.sidebar-close{place-items:center;border:0;cursor:pointer}.mobile-nav-toggle{flex:0 0 auto;width:42px;height:42px;border:1px solid #d5deea;border-radius:11px;background:#f4f7fb;color:var(--navy)}.mobile-nav-toggle svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.sidebar-close{margin-left:auto;width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,.1);color:#fff;font-size:25px;line-height:1}.sidebar-close:hover,.sidebar-close:focus-visible{background:rgba(255,255,255,.18)}
@media(max-width:720px){body.mobile-nav-open{overflow:hidden}.app-page{grid-template-columns:1fr}.mobile-nav-toggle,.sidebar-close{display:grid}.sidebar{position:fixed;z-index:1200;inset:0 auto 0 0;width:min(320px,88vw);height:100dvh;padding:20px 16px;overflow-y:auto;overscroll-behavior:contain;visibility:hidden;transform:translateX(-105%);transition:transform .22s ease,visibility 0s linear .22s;box-shadow:20px 0 60px rgba(5,15,30,.28)}.sidebar.mobile-open{visibility:visible;transform:translateX(0);transition-delay:0s}.sidebar nav{display:grid}.sidebar-backdrop{position:fixed;z-index:1100;inset:0;width:100%;height:100%;border:0;background:rgba(7,18,35,.58);cursor:pointer}.sidebar-backdrop:not([hidden]){display:block}.topbar{padding-left:14px;padding-right:14px}.topbar-company{max-width:100%;gap:9px}.topbar-company .muted{display:none}.topbar-company strong{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
@media(prefers-reduced-motion:reduce){.sidebar{transition:none}}

/* Pracovný plán: jedna dátová vrstva pre zoznam, Kanban aj Gantt. */
.workplan-page .page-heading{padding-bottom:20px}.workplan-workspace{margin:0 38px 38px}.project-hub-panel .workplan-workspace{margin:0}.workplan-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}.workplan-heading h2{margin:0;font-size:24px}.workplan-heading p{margin:6px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.workplan-toolbar{display:grid;grid-template-columns:auto minmax(180px,240px) minmax(145px,180px) minmax(145px,190px) minmax(190px,1fr) auto auto;gap:9px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:14px;background:#fff}.project-hub-panel .workplan-toolbar{grid-template-columns:auto minmax(145px,180px) minmax(145px,190px) minmax(190px,1fr) auto auto}.workplan-toolbar label{min-width:0}.workplan-toolbar select,.workplan-toolbar input{width:100%;height:42px;border:1px solid #ced8e5;border-radius:9px;padding:0 12px;background:#fff;outline:none;font-size:12px}.workplan-toolbar select:focus,.workplan-toolbar input:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,111,237,.1)}.workplan-toolbar>strong{color:var(--muted);font-size:11px;white-space:nowrap}.workplan-view-switch{display:flex;gap:2px;padding:3px;border-radius:10px;background:#edf1f7}.workplan-view-switch button{min-height:34px;border:0;border-radius:8px;padding:0 12px;background:transparent;color:#5e6b80;font-size:11px;font-weight:800;cursor:pointer}.workplan-view-switch button.active{background:#fff;color:var(--navy);box-shadow:0 2px 8px rgba(23,45,80,.12)}
.workplan-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin:12px 0}.workplan-summary article{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 13px;border:1px solid var(--line);border-radius:11px;background:#fff}.workplan-summary span{color:var(--muted);font-size:10px;font-weight:750}.workplan-summary strong{font-size:18px}.workplan-summary article.overdue{border-color:#efc1c1;background:#fff7f7}.workplan-summary article.overdue strong{color:#b52a2a}.workplan-content{min-height:200px}.workplan-empty{display:grid;place-items:center;min-height:210px;border:1px dashed #cbd5e1;border-radius:14px;background:#f8fafd;color:var(--muted);font-size:12px;text-align:center;padding:24px}
.workplan-table-shell{overflow:auto;border:1px solid var(--line);border-radius:14px;background:#fff}.workplan-table{min-width:1180px}.workplan-table th{position:sticky;top:0;z-index:2}.workplan-table tr.task-overdue{box-shadow:inset 4px 0 0 #d53b3b;background:#fffafa}.workplan-task-title{display:grid;gap:4px;min-width:240px}.workplan-task-title strong{font-size:12px}.workplan-task-title small,.workplan-people,.workplan-dates{color:var(--muted);font-size:10px;line-height:1.5}.workplan-project-link{color:#285fbf;text-decoration:none;font-weight:750}.workplan-project-link:hover{text-decoration:underline}.workplan-priority,.workplan-status-select{border-radius:999px;font-size:10px;font-weight:850}.workplan-priority{display:inline-flex;padding:5px 8px}.workplan-priority.low{background:#f0f3f7;color:#596477}.workplan-priority.normal{background:#ebeefe;color:#5146b5}.workplan-priority.high{background:#fff0dc;color:#a05b00}.workplan-priority.critical{background:#ffe7e7;color:#a22727}.workplan-status-select{min-width:126px;height:32px;border:0;padding:0 28px 0 10px;cursor:pointer}.workplan-status-select.planned{background:#edf0f4;color:#526075}.workplan-status-select.in_progress{background:#e4efff;color:#245db8}.workplan-status-select.review{background:#fff2cf;color:#936300}.workplan-status-select.completed{background:#e1f7ec;color:#14734f}.workplan-status-select.cancelled{background:#ffeaea;color:#a22727}.workplan-status-static{display:inline-flex;padding:6px 9px;border-radius:999px;font-size:10px;font-weight:850}.workplan-progress{display:grid;grid-template-columns:minmax(72px,1fr) auto;align-items:center;gap:7px}.workplan-progress-track{height:7px;overflow:hidden;border-radius:99px;background:#e5eaf1}.workplan-progress-track span{display:block;height:100%;border-radius:99px;background:var(--blue)}.workplan-progress b{font-size:10px}.workplan-row-actions{display:flex;justify-content:flex-end;gap:5px}.workplan-icon-button{display:grid;place-items:center;width:32px;height:32px;border:1px solid #dbe2ec;border-radius:8px;background:#fff;color:var(--navy);cursor:pointer}.workplan-icon-button:hover{border-color:#aac1e3;background:#f3f7fd}.workplan-icon-button.danger{color:#a22727}.workplan-drag{cursor:grab;color:#8b98ab;font-size:17px;user-select:none}.workplan-drag:active{cursor:grabbing}.workplan-table tr.dragging{opacity:.4}
.workplan-kanban{display:grid;grid-template-columns:repeat(4,minmax(245px,1fr));gap:10px;align-items:stretch;overflow-x:auto;padding-bottom:6px}.workplan-column{--column-bg:#f5f7fa;--column-line:#cbd5e1;--column-pill:#e4e9ef;min-height:310px;padding:8px;border:1px solid var(--column-line);border-radius:14px;background:var(--column-bg)}.workplan-column.in_progress{--column-bg:#eff6ff;--column-line:#9fc3f5;--column-pill:#d9eaff}.workplan-column.review{--column-bg:#fffaf0;--column-line:#f0cf79;--column-pill:#ffedbd}.workplan-column.completed{--column-bg:#f0fbf6;--column-line:#8ed5b5;--column-pill:#d9f3e7}.workplan-column.drop-active{outline:3px dashed var(--blue);outline-offset:-5px}.workplan-column-header{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;padding:3px 3px 9px;background:var(--column-bg);font-size:12px;font-weight:850}.workplan-column-header span:last-child{padding:3px 8px;border-radius:99px;background:var(--column-pill);font-size:10px}.workplan-card{margin-bottom:7px;padding:10px;border:1px solid #dfe6ef;border-radius:10px;background:#fff;box-shadow:0 2px 8px rgba(23,45,80,.05)}.workplan-card.overdue{border-left:4px solid #d53b3b}.workplan-card-head{display:flex;align-items:flex-start;gap:7px}.workplan-card-head strong{flex:1;font-size:12px;line-height:1.35}.workplan-card .workplan-drag{padding:0 2px}.workplan-card-meta{display:grid;gap:4px;margin:8px 0;color:var(--muted);font-size:10px}.workplan-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.workplan-card-footer .workplan-progress{flex:1}.workplan-card-actions{display:flex;gap:4px}.workplan-kanban-note{margin:10px 0 0;color:var(--muted);font-size:10px}
.workplan-gantt-legend{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:9px}.workplan-gantt-legend span{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:10px;font-weight:750}.workplan-gantt-legend i{width:12px;height:12px;border-radius:4px;background:#dfe4eb}.workplan-gantt-legend .in_progress{background:#9fc8ff}.workplan-gantt-legend .review{background:#ffd66e}.workplan-gantt-legend .completed{background:#80d3ad}.workplan-gantt-shell{overflow:auto;border:1px solid var(--line);border-radius:14px;background:#fff}.workplan-gantt{min-width:1050px}.workplan-gantt-head,.workplan-gantt-row{display:grid;grid-template-columns:310px minmax(720px,1fr)}.workplan-gantt-head{position:sticky;top:0;z-index:2;border-bottom:1px solid var(--line);background:#f8fafd}.workplan-gantt-label{padding:10px 12px;border-right:1px solid var(--line)}.workplan-gantt-label strong{display:block;font-size:11px}.workplan-gantt-label small{display:block;margin-top:4px;color:var(--muted);font-size:9px}.workplan-gantt-axis{position:relative;height:48px}.workplan-gantt-tick{position:absolute;inset:0 auto 0 0;border-left:1px solid #dfe6ef;padding:5px;color:var(--muted);font-size:9px}.workplan-gantt-row{min-height:58px;border-bottom:1px solid #eef2f6}.workplan-gantt-lane{position:relative;background:repeating-linear-gradient(to right,transparent 0,transparent calc(10% - 1px),#eef2f6 calc(10% - 1px),#eef2f6 10%)}.workplan-gantt-bar{--bar-bg:#dfe4eb;--bar-fill:#9ca6b5;position:absolute;top:14px;height:30px;overflow:hidden;border:1px solid rgba(16,33,62,.12);border-radius:8px;background:var(--bar-bg);cursor:pointer;min-width:20px}.workplan-gantt-bar.in_progress{--bar-bg:#dcecff;--bar-fill:#69a8f7}.workplan-gantt-bar.review{--bar-bg:#fff0c8;--bar-fill:#f4bd36}.workplan-gantt-bar.completed{--bar-bg:#dcf5e9;--bar-fill:#65c498}.workplan-gantt-bar.cancelled{--bar-bg:#ffe5e5;--bar-fill:#e98383}.workplan-gantt-bar.overdue{box-shadow:0 0 0 2px #d53b3b}.workplan-gantt-fill{position:absolute;inset:0 auto 0 0;background:var(--bar-fill);opacity:.75}.workplan-gantt-text{position:relative;z-index:1;display:block;overflow:hidden;padding:7px 8px;color:#182337;font-size:9px;font-weight:850;white-space:nowrap;text-overflow:ellipsis}
.workplan-task-modal{width:min(880px,100%)}.workplan-task-form{display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:min(640px,82vh)}.workplan-modal-tabs{display:flex;gap:5px;padding:14px 22px 9px;border-bottom:1px solid var(--line)}.workplan-modal-tabs button{min-height:36px;border:1px solid #d9e1ec;border-radius:8px;padding:0 12px;background:#f5f7fa;color:#596579;font-size:11px;font-weight:800;cursor:pointer}.workplan-modal-tabs button.active{border-color:var(--navy);background:var(--navy);color:#fff}.workplan-modal-panels{min-height:0;overflow:auto}.workplan-modal-panel{display:none;padding:20px 22px}.workplan-modal-panel.active{display:block}.workplan-form-grid,.workplan-import-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.workplan-form-grid label,.workplan-import-controls label{display:grid;align-content:start;gap:7px;font-size:12px;font-weight:800}.workplan-form-grid .span-2,.workplan-import-controls .span-2{grid-column:1/-1}.workplan-form-grid input,.workplan-form-grid select,.workplan-form-grid textarea,.workplan-import-controls input,.workplan-import-controls select{width:100%;border:1px solid #ced8e5;border-radius:9px;background:#fff;outline:none;font-size:13px;font-weight:400}.workplan-form-grid input,.workplan-form-grid select,.workplan-import-controls input,.workplan-import-controls select{height:44px;padding:0 12px}.workplan-form-grid textarea{min-height:88px;padding:11px 12px;line-height:1.45;resize:vertical}.workplan-form-grid select[multiple]{height:160px;padding:7px}.workplan-form-grid input:focus,.workplan-form-grid select:focus,.workplan-form-grid textarea:focus,.workplan-import-controls input:focus,.workplan-import-controls select:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,111,237,.1)}.workplan-form-grid label>small{color:var(--muted);font-size:10px;font-weight:500}.workplan-visible{align-self:end;min-height:44px}.workplan-task-form>footer,.workplan-import-modal form>footer{display:flex;justify-content:flex-end;gap:9px;padding:14px 22px;border-top:1px solid var(--line)}
.workplan-import-modal{width:min(960px,100%)}.workplan-import-modal form{display:grid;grid-template-rows:auto auto minmax(180px,1fr) auto auto;max-height:calc(90vh - 91px)}.workplan-import-controls{padding:18px 22px 12px}.workplan-import-toolbar,.workplan-import-options{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:9px 22px}.workplan-import-toolbar{border-top:1px solid #edf1f6;border-bottom:1px solid #edf1f6;background:#f8fafd}.workplan-import-toolbar strong{font-size:11px}.workplan-import-list{overflow:auto;min-height:210px}.workplan-import-row{display:grid;grid-template-columns:40px minmax(150px,.55fr) minmax(260px,1.45fr) 110px 70px;align-items:center;gap:10px;padding:10px 18px;border-bottom:1px solid #eef2f6;font-size:11px}.workplan-import-row:hover{background:#f7faff}.workplan-import-row strong{font-size:12px}.workplan-import-row small{display:block;margin-top:3px;color:var(--muted)}.workplan-import-options{justify-content:flex-start;border-top:1px solid var(--line)}
@media(max-width:1150px){.workplan-toolbar,.project-hub-panel .workplan-toolbar{display:flex;flex-wrap:wrap}.workplan-toolbar>*{flex:1 1 180px}.workplan-view-switch{flex:0 0 auto}.workplan-summary{grid-template-columns:repeat(3,1fr)}.workplan-kanban{grid-template-columns:repeat(4,275px)}}
@media(max-width:720px){.workplan-workspace{margin:0 20px 28px}.project-hub-panel .workplan-workspace{margin:0}.workplan-heading{flex-direction:column}.workplan-heading .heading-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.workplan-heading .heading-actions button{width:100%}.workplan-toolbar{align-items:stretch}.workplan-toolbar>*{flex-basis:100%}.workplan-view-switch{display:grid;grid-template-columns:repeat(3,1fr);width:100%}.workplan-summary{grid-template-columns:1fr 1fr}.workplan-form-grid,.workplan-import-controls{grid-template-columns:1fr}.workplan-form-grid .span-2,.workplan-import-controls .span-2{grid-column:auto}.workplan-modal-tabs{overflow-x:auto}.workplan-modal-tabs button{white-space:nowrap}.workplan-task-form{height:min(680px,86vh)}.workplan-import-row{grid-template-columns:34px minmax(220px,1fr) 90px 60px}.workplan-import-row .room{display:none}.workplan-import-options{align-items:flex-start;flex-direction:column}}

/* Doladenie pracovného plánu: jednotné selecty a všetkých päť stavov v Kanbane. */
.workplan-page .workplan-workspace{margin-top:34px}.workplan-heading h1,.workplan-heading h2{margin:0;letter-spacing:-.03em}.workplan-heading h1{font-size:34px}.workplan-toolbar select,.workplan-form-grid select:not([multiple]),.workplan-import-controls select{appearance:none;padding-right:38px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m6 8 4 4 4-4' stroke='%23172033' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;cursor:pointer}.workplan-kanban{grid-template-columns:repeat(5,minmax(245px,1fr))}.workplan-column.cancelled{--column-bg:#fff5f5;--column-line:#e6b0b0;--column-pill:#f8dddd}.workplan-gantt-legend .cancelled{background:#e98383}
@media(max-width:1150px){.workplan-kanban{grid-template-columns:repeat(5,275px)}}
@media(max-width:720px){.workplan-page .workplan-workspace{margin-top:24px}.workplan-heading h1{font-size:28px}}

/* Pracovnici, timy a dostupnost. */
.workforce-page .page-heading{align-items:center}.workforce-switch{display:flex;gap:6px;margin:0 38px 18px;padding:6px;border-radius:14px;background:#e9eef6}.workforce-switch button{min-height:44px;padding:0 18px;border:0;border-radius:10px;background:transparent;color:var(--muted);font-weight:800;cursor:pointer}.workforce-switch button.active{background:#fff;color:var(--text);box-shadow:0 5px 16px rgba(23,45,80,.1)}.workforce-switch span{display:inline-grid;place-items:center;min-width:24px;height:24px;margin-left:7px;padding:0 7px;border-radius:999px;background:#edf2f8;font-size:11px}.workforce-panel{display:none;margin:0 38px 38px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 8px 28px rgba(23,45,80,.06);overflow:hidden}.workforce-panel.active{display:block}.workforce-panel>header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px;border-bottom:1px solid var(--line)}.workforce-panel>header h2,.project-team-workspace>header h2{margin:0 0 4px;font-size:22px}.workforce-panel>header p,.project-team-workspace>header p{margin:0;color:var(--muted)}.workforce-panel>header input[type=search]{width:min(360px,100%)}.workforce-team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:20px}.workforce-team-card{position:relative;min-width:0;padding:18px;border:1px solid var(--line);border-radius:15px;background:#fbfcfe;overflow:hidden}.workforce-team-accent{position:absolute;inset:0 auto 0 0;width:5px}.workforce-team-card>header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.workforce-team-card h3{margin:0 0 4px;font-size:18px}.workforce-team-card header span,.workforce-team-card>p{color:var(--muted);font-size:12px}.workforce-team-card>p{min-height:36px;line-height:1.5}.workforce-card-actions{display:flex;gap:6px;justify-content:flex-end}.workforce-card-actions button{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--line);border-radius:9px;background:#fff;cursor:pointer}.workforce-card-actions .danger{color:#b42318}.workforce-team-leader{display:grid;gap:3px;padding:11px 0;border-top:1px solid var(--line)}.workforce-team-leader span{color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase}.workforce-member-chips{display:flex;flex-wrap:wrap;gap:6px}.workforce-member-chips>span{display:grid;padding:7px 9px;border-radius:9px;background:#edf3fc;font-size:11px;font-weight:800}.workforce-member-chips small{margin-top:2px;color:var(--muted);font-weight:600}.workforce-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.workforce-filters select{min-width:190px}.workforce-absence-table{width:100%;border-collapse:collapse}.workforce-absence-table th,.workforce-absence-table td{padding:13px 16px;border-bottom:1px solid var(--line);text-align:left}.workforce-absence-table th{background:#f8fafc;color:var(--muted);font-size:10px;text-transform:uppercase}.absence-type,.absence-status{display:inline-flex;align-items:center;min-height:28px;padding:0 9px;border-radius:999px;font-size:11px;font-weight:850}.absence-type{background:#eef3fa;color:#345}.absence-type.vacation{background:#eaf4ff;color:#1760b5}.absence-type.sick_leave{background:#fff0f0;color:#b42318}.absence-type.doctor{background:#fff7df;color:#946200}.absence-status.approved{background:#e5f7ef;color:#16845b}.absence-status.planned{background:#eef3ff;color:#2f6fed}.absence-status.cancelled{background:#f1f2f4;color:#697386}.workforce-empty{grid-column:1/-1;padding:34px;text-align:center;color:var(--muted)}
.workforce-modal{width:min(920px,calc(100vw - 30px))}.workforce-modal form,.project-team-modal form{display:flex;min-height:0;flex-direction:column}.workforce-form-grid{display:grid;grid-template-columns:1fr 150px;gap:15px;padding:22px;overflow:auto}.workforce-form-grid.vehicle-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workforce-form-grid label{display:grid;align-content:start;gap:7px;min-width:0;font-size:13px;font-weight:800}.workforce-form-grid .span-2{grid-column:1/-1}.workforce-form-grid input:not([type=checkbox]):not([type=color]),.workforce-form-grid select,.workforce-form-grid textarea,.project-team-modal input[type=search]{width:100%;min-height:46px;padding:10px 13px;border:1px solid #cfd9e8;border-radius:11px;background:#fff;outline:none}.workforce-form-grid input[type=color]{width:100%;height:46px;padding:4px;border:1px solid #cfd9e8;border-radius:11px;background:#fff}.workforce-form-grid textarea{min-height:90px;resize:vertical}.workforce-time-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.workforce-check-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:280px;padding:10px;border:1px solid var(--line);border-radius:12px;background:#f8fafc;overflow:auto}.workforce-check-list.compact{grid-template-columns:1fr}.workforce-check-list>label{display:flex;align-items:center;gap:10px;min-width:0;padding:10px;border:1px solid #e0e6ef;border-radius:10px;background:#fff;cursor:pointer}.workforce-check-list>label:has(input:checked){border-color:#8db4ff;background:#eef5ff}.workforce-check-list input{width:18px;height:18px;flex:0 0 auto}.workforce-check-list label>span{display:grid;min-width:0}.workforce-check-list small{margin-top:2px;color:var(--muted);font-size:11px;font-weight:600;overflow:hidden;text-overflow:ellipsis}.workforce-check-list i{width:11px;height:34px;border-radius:6px;flex:0 0 auto}
.project-team-workspace{padding:24px}.project-team-workspace>header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.project-team-summary{display:grid;grid-template-columns:repeat(2,minmax(0,220px));gap:10px;margin-bottom:14px}.project-team-summary article{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;border:1px solid var(--line);border-radius:12px;background:#fff}.project-team-summary span{color:var(--muted);font-size:12px;font-weight:750}.project-team-summary strong{font-size:22px}.project-team-list{display:block}.project-assigned-team-grid,.project-ungrouped-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.project-assigned-team{min-width:0;overflow:hidden;border:1px solid var(--line);border-top:4px solid var(--team-color,#2f6fed);border-radius:14px;background:#f8fafc}.project-assigned-team>header,.project-ungrouped>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border-bottom:1px solid var(--line);background:#fff}.project-assigned-team>header>div{display:flex;align-items:center;gap:9px;min-width:0}.project-team-color{display:block;width:10px;height:30px;flex:0 0 auto;border-radius:999px;background:var(--team-color,#2f6fed)}.project-assigned-team header small,.project-ungrouped header small{color:var(--muted);font-size:11px}.project-assigned-members{display:grid;gap:8px;padding:10px}.project-assigned-members .project-person-card{grid-template-columns:38px minmax(0,1fr);padding:10px}.project-assigned-members .project-person-avatar{width:38px;height:38px}.project-assigned-members .project-person-availability{grid-column:1/-1;justify-items:start;padding-left:49px}.project-ungrouped{margin-top:18px}.project-ungrouped>header{padding-left:0;padding-right:0;border-top:1px solid var(--line);border-bottom:0;background:transparent}.project-person-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:11px;padding:13px;border:1px solid var(--line);border-radius:13px;background:#fff}.project-person-card.unavailable{border-color:#f2c4c4;background:#fffafa}.project-person-avatar{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#eaf1ff;color:#2f6fed;font-weight:900}.project-person-card>div:nth-child(2){display:grid;min-width:0}.project-person-card small{margin-top:3px;color:var(--muted);font-size:11px}.project-person-availability{display:grid;justify-items:end}.project-person-availability>span{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:850}.project-person-availability .available{background:#e5f7ef;color:#16845b}.project-person-availability .unavailable{background:#ffebeb;color:#b42318}.project-team-modal{width:min(1050px,calc(100vw - 30px))}.project-team-modal-grid{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(420px,1.4fr);gap:15px;padding:20px;overflow:auto}.project-team-modal-grid>section{min-width:0;border:1px solid var(--line);border-radius:14px;background:#f8fafc;overflow:hidden}.project-team-modal-grid>section>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px;border-bottom:1px solid var(--line);background:#fff}.project-team-modal-grid h3{margin:0;font-size:15px}.project-team-modal-grid header span{color:var(--muted);font-size:11px}.project-team-modal-grid .workforce-check-list{border:0;border-radius:0;max-height:410px}.project-team-modal-grid input[type=search]{max-width:230px;min-height:40px}.workforce-check-list>label.covered-by-team{opacity:.5;cursor:not-allowed}
.workplan-team-empty,.workplan-availability-warning{padding:12px 14px;border:1px solid #f0cf80;border-radius:11px;background:#fff9e8;color:#805700;font-size:12px}.workplan-availability-warning strong{display:block;margin-bottom:4px}.workplan-availability-warning p{margin:0 0 7px}.workplan-availability-warning ul{margin:0;padding-left:19px}.workplan-card[draggable=true]{cursor:grab;user-select:none}.workplan-card[draggable=true]:active{cursor:grabbing}.workplan-card.dragging{opacity:.55;transform:rotate(.6deg)}.workplan-card button,.workplan-card a{cursor:pointer}
@media(max-width:1200px){.workforce-team-grid,.project-assigned-team-grid,.project-ungrouped-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.workforce-switch,.workforce-panel{margin-left:18px;margin-right:18px}.workforce-panel>header,.project-team-workspace>header{align-items:flex-start;flex-direction:column}.workforce-team-grid,.project-assigned-team-grid,.project-ungrouped-list{grid-template-columns:1fr}.project-team-modal-grid{grid-template-columns:1fr}.project-person-card{grid-template-columns:44px minmax(0,1fr)}.project-person-availability{grid-column:1/-1;justify-items:start;padding-left:55px}.workforce-check-list{grid-template-columns:1fr}}
@media(max-width:560px){.workforce-switch{overflow-x:auto}.workforce-switch button{white-space:nowrap}.workforce-form-grid,.workforce-form-grid.vehicle-form-grid{grid-template-columns:1fr}.workforce-form-grid .span-2{grid-column:auto}.workforce-time-row{grid-template-columns:1fr}.workforce-panel{margin-left:10px;margin-right:10px}.project-team-workspace{padding:16px}.project-team-summary{grid-template-columns:1fr}}
.workforce-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:18px 20px 0}.workforce-kpis article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}.workforce-kpis span{color:var(--muted);font-size:11px;font-weight:800}.workforce-kpis strong{font-size:22px}.responsive-data-list{display:grid;padding:20px}.workforce-worker-row,.vehicle-row{display:grid;grid-template-columns:44px minmax(210px,1.4fr) minmax(130px,.7fr) minmax(130px,.7fr) minmax(150px,.8fr) auto auto;gap:14px;align-items:center;padding:14px 16px;border:1px solid var(--line);border-bottom:0;background:#fff}.workforce-worker-row:first-child,.vehicle-row:first-child{border-radius:13px 13px 0 0}.workforce-worker-row:last-of-type,.vehicle-row:last-of-type{border-bottom:1px solid var(--line);border-radius:0 0 13px 13px}.worker-avatar,.vehicle-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:#eaf1ff;color:var(--blue);font-weight:900}.worker-main,.workforce-worker-row>div[data-label],.vehicle-row>div[data-label],.vehicle-row>div:nth-child(2){display:grid;gap:3px;min-width:0}.worker-main small,.workforce-worker-row small,.vehicle-row small{color:var(--muted);font-size:11px}.worker-kind{display:inline-flex;width:max-content;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:850}.worker-kind.internal{background:#e5f7ef;color:#16845b}.worker-kind.external{background:#fff3d6;color:#8b6200}.compact-button{min-height:38px!important;padding:0 12px!important}.danger-text{color:#b42318!important}.vehicle-row{grid-template-columns:44px minmax(200px,1.2fr) minmax(120px,.65fr) minmax(120px,.65fr) minmax(170px,1fr) auto auto}.vehicle-row.is-archived{opacity:.62}.row-actions{display:flex;gap:7px}.workforce-worker-modal{width:min(1080px,calc(100vw - 30px));max-height:92vh;overflow:hidden}.workforce-worker-modal>form{display:flex;max-height:calc(92vh - 88px);flex-direction:column}.workforce-worker-modal .worker-form-grid{overflow:auto}.form-section{padding:15px;border:1px solid var(--line);border-radius:13px;background:#f8fafc}.form-section h3{margin:0 0 13px;font-size:14px}.form-section-grid{display:grid;gap:13px}.form-section-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.form-section-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.form-section-grid label{display:grid;gap:7px;min-width:0}.form-section-grid .span-all{grid-column:1/-1}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.aligned-check{align-self:end;min-height:46px;align-items:center!important;align-content:center!important}.input-with-suffix{display:flex;min-width:0}.input-with-suffix input{min-width:0;border-radius:11px 0 0 11px!important}.input-with-suffix span{display:flex;align-items:center;padding:0 12px;border:1px solid #cfd9e8;border-left:0;border-radius:0 11px 11px 0;background:#f3f6fa;color:var(--muted);white-space:nowrap}.workforce-form-grid label small{color:var(--muted);font-size:10px;font-weight:500}
.workforce-worker-row[hidden],.workforce-team-card[hidden],[data-person-search][hidden],.workforce-absence-table tr[hidden],.workforce-empty[hidden]{display:none!important}
@media(max-width:1100px){.workforce-worker-row,.vehicle-row{grid-template-columns:44px minmax(210px,1fr) repeat(2,minmax(130px,.7fr)) auto}.workforce-worker-row>div:nth-of-type(5),.vehicle-row>div:nth-of-type(5){display:none}.workforce-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.workforce-kpis{grid-template-columns:1fr 1fr}.responsive-data-list{padding:12px}.workforce-worker-row,.vehicle-row{grid-template-columns:42px minmax(0,1fr);gap:10px;margin-bottom:10px;border:1px solid var(--line)!important;border-radius:13px!important}.workforce-worker-row>div[data-label],.vehicle-row>div[data-label]{grid-column:1/-1;grid-template-columns:110px minmax(0,1fr);align-items:center;padding-top:8px;border-top:1px solid var(--line)}.workforce-worker-row>div[data-label]::before,.vehicle-row>div[data-label]::before{content:attr(data-label);color:var(--muted);font-size:10px;font-weight:800}.workforce-worker-row>span,.workforce-worker-row>button,.vehicle-row>span,.vehicle-row>.row-actions{grid-column:1/-1}.workforce-worker-row>button,.vehicle-row .row-actions button{width:100%}.vehicle-row .row-actions{display:grid;grid-template-columns:1fr 1fr}.form-section-grid.cols-2,.form-section-grid.cols-3{grid-template-columns:1fr}.form-section-grid .span-all{grid-column:auto}.workforce-worker-modal{width:calc(100vw - 14px)}.workforce-kpis article{padding:11px}.workforce-kpis strong{font-size:18px}}

/* Jednotné modaly, výbery ľudí a mobilné tabuľky. */
.modal-actions,.workforce-modal form>footer,.workforce-picker-modal>footer,.project-team-modal form>footer{display:flex;justify-content:flex-end;gap:10px;padding:15px 22px;border-top:1px solid var(--line)}
.nested-modal{z-index:130}.top-modal{z-index:150}.workforce-picker-modal{width:min(820px,100%);max-height:88vh;overflow:hidden}.workforce-picker-modal .picker-toolbar{display:flex;gap:10px;padding:16px 20px;border-bottom:1px solid var(--line)}.workforce-picker-modal .picker-toolbar input{flex:1;min-width:0;height:44px;border:1px solid #ced8e5;border-radius:10px;padding:0 12px}.workforce-picker-modal .workforce-check-list{margin:16px 20px;max-height:50vh}.assignment-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}.assignment-summary>div:first-child{display:grid;gap:3px}.assignment-summary small{color:var(--muted);font-size:11px}.assignment-chips{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:7px}.assignment-chips>span{display:inline-flex;align-items:center;gap:6px;padding:6px 8px;border-radius:999px;background:#e8f1ff;color:#285fbf;font-size:11px;font-weight:800}.assignment-chips button{display:grid;place-items:center;width:18px;height:18px;border:0;border-radius:50%;background:#fff;color:#a22727;cursor:pointer}.absence-periods{display:grid;grid-template-columns:1fr 1fr;gap:14px}.absence-periods fieldset{min-width:0;margin:0;padding:12px;border:1px solid var(--line);border-radius:12px}.absence-periods legend{padding:0 6px;color:var(--blue);font-size:11px;font-weight:850;text-transform:uppercase}.absence-periods fieldset>div{display:grid;grid-template-columns:1fr 1fr;gap:10px}.absence-periods [hidden]{display:none!important}
.workplan-assignment-modal{width:min(920px,100%);max-height:88vh;overflow:hidden}.workplan-assignment-modal .picker-toolbar{padding:15px 20px;border-bottom:1px solid var(--line)}.workplan-assignment-modal .picker-toolbar input{width:100%;height:44px;border:1px solid #ced8e5;border-radius:10px;padding:0 12px}.workplan-assignment-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:18px 20px;overflow:auto}.workplan-assignment-grid>section{min-width:0;border:1px solid var(--line);border-radius:12px;background:#f8fafc;overflow:hidden}.workplan-assignment-grid>section>header{padding:12px 14px;border-bottom:1px solid var(--line);background:#fff}.workplan-assignment-grid h3{margin:0;font-size:14px}.workplan-assignment-grid .workforce-check-list{border:0;border-radius:0;max-height:45vh}
@media(max-width:720px){
  .modal-actions .primary-button,.modal-actions .secondary-button,.workforce-modal form>footer button,.workforce-picker-modal>footer button{width:auto}
  .workforce-picker-modal .picker-toolbar{align-items:stretch;flex-direction:column}.workforce-picker-modal .picker-toolbar button{width:100%}.assignment-summary{grid-template-columns:1fr}.assignment-summary>button{width:100%}.assignment-chips{grid-column:1}.absence-periods{grid-template-columns:1fr}.absence-periods fieldset>div{grid-template-columns:1fr 1fr}.workplan-assignment-grid{grid-template-columns:1fr}.workplan-assignment-grid .workforce-check-list{max-height:260px}
  .table-scroll,.workplan-table-shell,.hub-table,.rfq-response-table,.rfq-comparison-table{overflow:visible!important;background:transparent!important;border:0!important}.responsive-table{display:block!important;width:100%!important;min-width:0!important}.responsive-table thead{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important}.responsive-table tbody{display:grid!important;gap:12px!important}.responsive-table tr{display:block!important;overflow:hidden!important;border:1px solid var(--line)!important;border-radius:13px!important;background:#fff!important;box-shadow:0 4px 14px rgba(23,45,80,.05)!important}.responsive-table tbody th{display:block!important;width:100%!important;padding:10px 12px!important;border:0!important;background:#edf3fc!important;color:var(--text)!important;text-align:left!important;white-space:normal!important;overflow-wrap:anywhere!important}.responsive-table td{display:grid!important;grid-template-columns:minmax(105px,36%) minmax(0,1fr)!important;align-items:start!important;gap:10px!important;width:100%!important;min-width:0!important;padding:10px 12px!important;border-bottom:1px solid #edf1f6!important;text-align:left!important;white-space:normal!important;overflow-wrap:anywhere!important}.responsive-table td:last-child{border-bottom:0!important}.responsive-table td::before{content:attr(data-label);color:var(--muted);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.responsive-table td[data-label=""]{display:flex!important;justify-content:flex-end!important}.responsive-table td[data-label=""]::before{display:none}.responsive-table .responsive-empty-cell{display:block!important;padding:24px 12px!important;text-align:center!important}.responsive-table .responsive-empty-cell::before{display:none}.responsive-table .identity{min-width:0}.responsive-table .actions,.responsive-table .workplan-row-actions{justify-content:flex-start;text-align:left}.responsive-table button,.responsive-table .primary-button{width:auto}.workplan-table{min-width:0!important}
}
.settings-check-card{display:flex!important;align-items:center!important;gap:11px!important;min-height:72px;padding:12px 14px;border:1px solid var(--line);border-radius:11px;background:#f8fafc;cursor:pointer}.settings-check-card input{width:20px!important;height:20px!important;flex:0 0 auto}.settings-check-card span{display:grid;gap:3px}.settings-check-card small{color:var(--muted);font-weight:500}.disabled-field{opacity:.45}
@media(max-width:430px){.absence-periods fieldset>div{grid-template-columns:1fr}}

/* Dokument neplatcu DPH: DPH sa nepočíta ani nezobrazuje. */
.vat-disabled .quote-line-head,.vat-disabled .quote-line{grid-template-columns:28px minmax(270px,1fr) 82px 72px 108px 125px 28px;min-width:820px}
.vat-disabled .quote-line-head>span:nth-child(6),.vat-disabled .line-vat,.vat-disabled #inspector-content label:has(#inspector-vat),.vat-disabled .room-summary-row>span:has([data-room-vat]),.vat-disabled .quote-offer-summary-grid>article:has([data-offer-vat]){display:none!important}
.vat-disabled .quote-offer-summary-grid{grid-template-columns:repeat(3,minmax(115px,1fr)) minmax(180px,1.25fr)}
@media(max-width:900px){.vat-disabled .quote-offer-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vat-disabled .quote-offer-summary-grid .grand{grid-column:1/-1}}
@media(max-width:720px){.vat-disabled .quote-offer-summary-grid{grid-template-columns:1fr}.vat-disabled .quote-offer-summary-grid .grand{grid-column:auto}}

/* Stavebny dennik */
.site-diary-workspace{display:grid;gap:18px}.site-diary-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.site-diary-heading h2{margin:0 0 6px}.site-diary-heading p{margin:0;color:var(--muted)}.site-diary-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.site-diary-summary article{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;background:#fff;border:1px solid var(--line);border-radius:13px}.site-diary-summary span{color:var(--muted);font-size:12px;font-weight:750}.site-diary-summary strong{font-size:23px}.site-diary-table{border:1px solid var(--line);border-radius:15px;overflow:visible;background:#fff}.site-diary-table table{border-radius:inherit}.site-diary-table td small{max-width:320px}.diary-status-control{display:inline-flex;position:relative}.diary-status-badge{border:0;cursor:pointer;gap:5px}.quote-status.locked{background:#fff3d6;color:#8b6200}.quote-status.approved{background:#e5f7ef;color:#16845b}.status-dot.locked{background:#d79a16}.status-dot.approved{background:#1c9a68}.diary-status-menu button:disabled{opacity:.42;cursor:not-allowed}.document-open-link[type=button]{border:0;background:none;cursor:pointer;font:inherit}.site-diary-modal{width:min(1180px,100%);overflow:hidden}.site-diary-modal>form{display:flex;flex-direction:column;max-height:calc(90vh - 87px)}.site-diary-form-body{display:grid;gap:18px;padding:22px 26px;overflow:auto}.site-diary-form-section{display:grid;gap:14px;padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff}.site-diary-form-section>h3,.site-diary-section-heading h3{margin:0;font-size:16px}.site-diary-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.site-diary-section-heading p{margin:5px 0 0;color:var(--muted);font-size:12px}.site-diary-meta-grid{display:grid;grid-template-columns:1.2fr 1.8fr 1fr 1fr;gap:14px}.site-diary-form-section label,.site-diary-worker-grid label,.site-diary-material-entry label{display:grid;gap:7px;min-width:0;color:var(--text);font-size:12px;font-weight:750}.site-diary-form-section input,.site-diary-form-section select,.site-diary-form-section textarea,.site-diary-worker-grid input,.site-diary-worker-grid select,.site-diary-worker-grid textarea,.site-diary-material-entry input{width:100%;min-height:44px;border:1px solid #ced8e5;border-radius:10px;padding:10px 12px;background:#fff;color:var(--text);font:inherit;font-weight:400;outline:none}.site-diary-form-section select,.site-diary-worker-grid select{-webkit-appearance:none;appearance:none;padding-right:42px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m6 8 4 4 4-4' stroke='%23172033' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:20px}.site-diary-form-section textarea,.site-diary-worker-grid textarea{resize:vertical}.site-diary-form-section input:focus,.site-diary-form-section select:focus,.site-diary-form-section textarea:focus,.site-diary-worker-grid input:focus,.site-diary-worker-grid select:focus,.site-diary-worker-grid textarea:focus,.site-diary-material-entry input:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,111,237,.1)}.site-diary-form-section :disabled,.site-diary-worker-grid :disabled,.site-diary-material-entry :disabled{background:#f5f7fa;color:#596477;opacity:1}.input-suffix{display:flex;min-width:0}.input-suffix>input{min-width:0;border-radius:10px 0 0 10px}.input-suffix>span{display:grid;place-items:center;min-width:54px;border:1px solid #ced8e5;border-left:0;border-radius:0 10px 10px 0;background:#f2f5f9;color:var(--muted);font-weight:800}.site-diary-entry-list,.site-diary-material-list{display:grid;gap:10px}.site-diary-worker-entry{border:1px solid #d8e1ed;border-radius:12px;background:#f9fbfe;overflow:hidden}.site-diary-worker-entry>header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border-bottom:1px solid #e3e9f2}.site-diary-worker-entry>header>div{display:grid;gap:3px}.site-diary-worker-entry small,.site-diary-material-entry small{color:var(--muted)}.site-diary-worker-grid{display:grid;grid-template-columns:140px minmax(210px,1fr) minmax(190px,1fr);gap:12px;padding:14px}.site-diary-worker-grid .wide{grid-column:span 3}.site-diary-material-entry{display:grid;grid-template-columns:minmax(240px,1.4fr) 210px minmax(220px,1fr) 42px;align-items:end;gap:12px;padding:13px 14px;border:1px solid #d8e1ed;border-radius:12px;background:#f9fbfe}.site-diary-material-entry>div:first-child{display:grid;gap:4px;align-self:center}.site-diary-inline-empty{padding:24px;border:1px dashed #cbd6e5;border-radius:12px;color:var(--muted);text-align:center}.site-diary-notes-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.site-diary-modal .modal-actions,.picker-modal .modal-actions{justify-content:flex-end}.nested-picker{z-index:180}.picker-modal{width:min(920px,100%);overflow:hidden}.picker-body{display:grid;gap:14px;padding:20px 24px;overflow:auto}.picker-search{width:100%;height:46px;border:1px solid #ced8e5;border-radius:10px;padding:0 13px;font-size:14px}.picker-modal .workforce-check-list{max-height:52vh;overflow:auto}.picker-modal .modal-actions{display:flex;padding:16px 24px;border-top:1px solid var(--line)}.diary-worker-picker-sections{display:grid;grid-template-columns:1fr 1fr;gap:14px;min-height:0}.diary-worker-picker-section{display:grid;grid-template-rows:auto minmax(0,1fr);min-width:0;border:1px solid var(--line);border-radius:13px;background:#f8fafc;overflow:hidden}.diary-worker-picker-section>header{padding:13px 14px;border-bottom:1px solid var(--line);background:#fff}.diary-worker-picker-section h3{margin:0;font-size:14px}.diary-worker-picker-section p{margin:4px 0 0;color:var(--muted);font-size:11px}.diary-worker-picker-section .workforce-check-list{grid-template-columns:1fr;max-height:42vh;border:0;border-radius:0}.diary-team-option>i{width:10px!important;height:34px!important;background:var(--team-color,#2f6fed)}
@media(max-width:900px){.site-diary-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.site-diary-meta-grid{grid-template-columns:1fr 1fr}.site-diary-worker-grid{grid-template-columns:1fr 1fr}.site-diary-worker-grid .wide{grid-column:span 2}.site-diary-material-entry{grid-template-columns:1fr 1fr 42px}.site-diary-material-entry>div:first-child{grid-column:1/-1}.site-diary-notes-grid{grid-template-columns:1fr}}
@media(max-width:720px){.site-diary-heading{align-items:stretch;flex-direction:column}.site-diary-heading .primary-button{width:100%}.site-diary-summary{grid-template-columns:1fr 1fr}.site-diary-summary article{padding:13px}.site-diary-summary strong{font-size:19px}.site-diary-table{border:0;background:transparent}.site-diary-table table.responsive-table tbody tr{border-left:4px solid #2f6fed!important}.site-diary-form-body{padding:14px}.site-diary-form-section{padding:14px}.site-diary-meta-grid,.site-diary-worker-grid{grid-template-columns:1fr}.site-diary-worker-grid .wide{grid-column:auto}.site-diary-material-entry{grid-template-columns:1fr 42px}.site-diary-material-entry>div:first-child,.site-diary-material-entry label{grid-column:1/-1}.site-diary-material-entry>.icon-button{grid-column:2;grid-row:1}.site-diary-section-heading{align-items:stretch;flex-direction:column}.site-diary-section-heading .secondary-button{width:100%}.site-diary-modal{border-radius:14px}.site-diary-modal>form{max-height:calc(94vh - 76px)}.picker-body{padding:14px}.picker-modal .modal-actions{padding:14px}.site-diary-modal .modal-actions{position:sticky;bottom:0;background:#fff}.diary-worker-picker-sections{grid-template-columns:1fr}.diary-worker-picker-section .workforce-check-list{max-height:230px}}

/* Pracovny plan a stavebny dennik: plan verzus skutocnost */
.workplan-summary{grid-template-columns:repeat(5,minmax(0,1fr))}.workplan-focus{outline:3px solid rgba(47,111,237,.38)!important;outline-offset:2px}.workplan-realization-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.workplan-realization-summary article{display:grid;gap:7px;padding:15px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}.workplan-realization-summary span,.workplan-realization-detail span{color:var(--muted);font-size:10px;font-weight:800}.workplan-realization-summary strong{font-size:20px}.workplan-realization-detail{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:12px;padding:13px 15px;border:1px solid var(--line);border-radius:11px}.workplan-realization-help{margin:16px 0;color:var(--muted);font-size:11px;line-height:1.55}.workplan-realization-actions{display:flex;justify-content:flex-end;gap:9px}.button-link.is-disabled{pointer-events:none;opacity:.48}.site-diary-linked-task{width:max-content;color:#2f6fed;font-size:10px;font-weight:800;text-decoration:none}.site-diary-linked-task:hover{text-decoration:underline}.site-diary-worker-simple{display:grid;grid-template-columns:minmax(180px,1fr) 180px 42px;align-items:end;gap:14px;padding:13px 14px}.site-diary-worker-simple>div:first-child{display:grid;gap:4px;align-self:center}.site-diary-worker-simple small{color:var(--muted)}.site-diary-worker-simple label{display:grid;gap:7px;color:var(--text);font-size:12px;font-weight:750}.site-diary-task-list{display:grid;gap:12px}.site-diary-task-entry{display:grid;gap:14px;padding:15px;border:1px solid #d4dfed;border-radius:13px;background:#f9fbfe}.site-diary-task-entry>header{display:grid;grid-template-columns:minmax(0,1fr) auto 42px;align-items:start;gap:12px}.site-diary-task-entry>header>div{display:grid;gap:3px}.site-diary-task-entry>header small{color:var(--muted)}.site-diary-task-entry>header .workplan-status-static{align-self:center}.site-diary-task-progress{display:grid;grid-template-columns:minmax(170px,1fr) 28px minmax(180px,1fr);align-items:center;gap:16px}.site-diary-task-progress>div:first-child{display:grid;grid-template-columns:1fr auto;gap:7px}.site-diary-task-progress>div:first-child span{color:var(--muted);font-size:11px;font-weight:750}.site-diary-task-progress>div:first-child i{grid-column:1/-1;height:8px;border-radius:99px;background:#dfe7f1;overflow:hidden}.site-diary-task-progress>div:first-child b{display:block;height:100%;border-radius:inherit;background:var(--blue)}.site-diary-progress-arrow{color:var(--blue);font-size:24px;font-weight:900;text-align:center}.diary-task-picker-options{grid-template-columns:repeat(2,minmax(0,1fr))}.site-diary-material-entry{grid-template-columns:minmax(220px,1.25fr) minmax(210px,1fr) 180px minmax(190px,1fr) 42px}.site-diary-material-entry select{width:100%;min-height:44px;border:1px solid #ced8e5;border-radius:10px;padding:10px 42px 10px 12px;background:#fff;color:var(--text);font:inherit;font-weight:400;outline:none;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m6 8 4 4 4-4' stroke='%23172033' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:20px}.site-diary-material-entry select:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,111,237,.1)}
@media(max-width:1150px){.workplan-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.site-diary-material-entry{grid-template-columns:1fr 1fr 1fr 42px}.site-diary-material-entry>div:first-child{grid-column:1/-1}}
@media(max-width:720px){.workplan-summary{grid-template-columns:1fr 1fr}.workplan-realization-summary{grid-template-columns:1fr 1fr}.workplan-realization-actions{display:grid;grid-template-columns:1fr}.workplan-realization-actions .button-link{justify-content:center;width:100%}.site-diary-worker-simple{grid-template-columns:1fr 42px}.site-diary-worker-simple>div:first-child,.site-diary-worker-simple label{grid-column:1/-1}.site-diary-worker-simple>.icon-button{grid-column:2;grid-row:1}.site-diary-task-entry>header{grid-template-columns:1fr auto}.site-diary-task-entry>header>.icon-button{grid-column:2;grid-row:1}.site-diary-task-entry>header .workplan-status-static{grid-column:1/-1;width:max-content}.site-diary-task-progress{grid-template-columns:1fr}.site-diary-progress-arrow{transform:rotate(90deg)}.diary-task-picker-options{grid-template-columns:1fr}.site-diary-material-entry{grid-template-columns:1fr 42px}.site-diary-material-entry>div:first-child,.site-diary-material-entry label{grid-column:1/-1}.site-diary-material-entry>.icon-button{grid-column:2;grid-row:1}}

/* Projektové karty sú skutočné odkazy; fungujú aj pri zlyhaní JavaScriptu. */
.project-hub-tabs a{display:flex;align-items:center;gap:8px;white-space:nowrap;border:0;border-radius:9px;padding:10px 14px;background:transparent;color:var(--muted);font-size:13px;font-weight:800;cursor:pointer;text-decoration:none}.project-hub-tabs a.active{background:#fff;color:var(--navy);box-shadow:0 3px 12px rgba(23,45,80,.11)}
body[data-active-hub] .project-hub-panel{display:none}body[data-active-hub] .project-hub-panel.active{display:block}

/* Project economics */
.project-economics{display:grid;gap:16px}.economics-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.economics-heading h2,.economics-list h3{margin:0}.economics-heading p,.economics-list header p{margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.45}.economics-heading-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.economics-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.economics-summary article{min-width:0;border:1px solid var(--line);border-radius:14px;padding:16px;background:#fff}.economics-summary span,.economics-summary small{display:block;color:var(--muted);font-size:11px}.economics-summary strong{display:block;margin:9px 0 5px;font-size:23px;letter-spacing:-.03em}.economics-summary .positive strong{color:#087a55}.economics-summary .negative strong{color:#b42318}.economics-warnings{display:grid;gap:7px}.economics-warnings>div{display:flex;align-items:center;gap:10px;border:1px solid #f2cf80;border-radius:11px;padding:10px 12px;background:#fff9e9;color:#6c4d00}.economics-warnings span{display:grid;place-items:center;flex:0 0 23px;height:23px;border-radius:999px;background:#f9d774;font-weight:900}.economics-warnings p{margin:0;font-size:12px;font-weight:650}.economics-breakdown{display:grid;grid-template-columns:1fr 1fr;gap:12px}.economics-breakdown article{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff}.economics-breakdown article>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line);background:#f7f9fc}.economics-breakdown h3{margin:0;font-size:14px}.economics-breakdown article>div{display:grid;padding:5px 16px 10px}.economics-breakdown article>div span{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid #edf1f6;color:var(--muted);font-size:12px}.economics-breakdown article>div span:last-child{border-bottom:0}.economics-breakdown b{color:var(--navy);font-weight:800}.economics-tabs{display:flex;gap:4px;padding:4px;border-radius:12px;background:#e8edf5}.economics-tabs button{display:flex;align-items:center;gap:8px;border:0;border-radius:9px;padding:10px 15px;background:transparent;color:var(--muted);font-weight:800;cursor:pointer}.economics-tabs button.active{background:#fff;color:var(--navy);box-shadow:0 3px 12px rgba(23,45,80,.11)}.economics-tabs span{display:grid;place-items:center;min-width:21px;height:21px;border-radius:999px;background:#edf1f7;font-size:10px}.economics-list{display:none}.economics-list.active{display:block}.economics-list>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:12px}.economics-table{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff}.economics-table table{width:100%;border-collapse:collapse}.economics-table th{padding:11px 13px;background:#f7f9fc;color:#69758a;font-size:10px;text-align:left;text-transform:uppercase;letter-spacing:.03em}.economics-table td{padding:12px 13px;border-top:1px solid var(--line);font-size:12px;vertical-align:middle}.economics-table .numeric{text-align:right}.economics-row-actions{display:flex;justify-content:flex-end;gap:6px;white-space:nowrap}.economics-row-actions .secondary-button{min-height:35px;padding:0 10px;font-size:11px}.economics-status{display:inline-flex;align-items:center;min-height:25px;border-radius:999px;padding:0 9px;background:#edf1f7;color:#536176;font-size:10px;font-weight:850}.economics-status.posted{background:#e5f7ef;color:#087a55}.economics-status.draft{background:#fff2cf;color:#885f00}.economics-status.cancelled{background:#fbe7e7;color:#a22}.economics-status.transaction{background:#e9f0ff;color:#205dc2}.economics-modal .modal{max-width:1060px}.economics-modal-body{max-height:min(68vh,720px);overflow:auto;padding:20px}.economics-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.economics-form-grid label{display:grid;align-content:start;gap:7px;color:var(--navy);font-size:12px;font-weight:800}.economics-form-grid .span-2{grid-column:1/-1}.economics-form-grid input,.economics-form-grid select,.economics-form-grid textarea,.economics-check-list select{width:100%;border:1px solid #ced8e5;border-radius:10px;padding:0 12px;background:#fff;color:var(--navy);font:inherit;outline:none}.economics-form-grid input,.economics-form-grid select{height:44px}.economics-form-grid textarea{min-height:86px;padding-top:11px;resize:vertical}.economics-form-grid input:focus,.economics-form-grid select:focus,.economics-form-grid textarea:focus,.economics-check-list select:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,111,237,.1)}.economics-form-grid .input-suffix{display:flex}.economics-form-grid .input-suffix input{min-width:0;border-radius:10px 0 0 10px}.economics-form-grid .input-suffix span{display:grid;place-items:center;min-width:52px;border:1px solid #ced8e5;border-left:0;border-radius:0 10px 10px 0;background:#f2f5f9;color:var(--muted)}.economics-check{display:flex!important;align-items:center;align-self:end;min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:#f8fafc}.economics-check input{width:18px!important;height:18px!important;margin:0 9px 0 0}.economics-check-list{display:grid;gap:8px}.economics-check-list>label{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(155px,220px);gap:12px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:12px;background:#fff}.economics-check-list input{width:18px;height:18px}.economics-check-list span{display:grid;gap:4px}.economics-check-list small{color:var(--muted)}.economics-check-list select{height:40px}.economics-purchase-items{display:grid;gap:8px}.economics-purchase-item{display:grid;grid-template-columns:minmax(230px,2fr) 110px 90px 140px 95px 40px;gap:8px;align-items:end;padding:11px;border:1px solid var(--line);border-radius:11px;background:#f8fafc}.economics-purchase-item label{min-width:0}.economics-purchase-item label:first-child{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(180px,1.2fr);grid-template-rows:auto 44px;column-gap:8px}.economics-purchase-item label:first-child>select{grid-column:1}.economics-purchase-item label:first-child>input{grid-column:2}.economics-purchase-item .icon-button{height:44px}.economics-modal .modal-actions{justify-content:flex-end}.form-section-title{margin-top:4px;padding:10px 0 3px;border-bottom:1px solid var(--line);color:var(--blue);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
@media(max-width:1180px){.economics-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.economics-purchase-item{grid-template-columns:minmax(230px,1fr) repeat(4,minmax(90px,120px)) 40px}.economics-purchase-item label:first-child{grid-template-columns:1fr;grid-template-rows:auto 44px 44px}.economics-purchase-item label:first-child>select,.economics-purchase-item label:first-child>input{grid-column:1}}
@media(max-width:760px){.economics-heading,.economics-list>header{flex-direction:column}.economics-heading-actions,.economics-heading-actions button,.economics-list>header>button{width:100%}.economics-heading-actions{display:grid;grid-template-columns:1fr 1fr}.economics-heading-actions .primary-button{grid-column:1/-1}.economics-summary{grid-template-columns:1fr 1fr}.economics-breakdown{grid-template-columns:1fr}.economics-tabs{display:grid;grid-template-columns:repeat(3,1fr)}.economics-tabs button{justify-content:center;padding:9px 6px;font-size:11px}.economics-table{overflow:visible;border:0;background:transparent}.economics-table table,.economics-table tbody,.economics-table tr,.economics-table td{display:block;width:100%}.economics-table thead{display:none}.economics-table tbody{display:grid;gap:10px}.economics-table tr{overflow:hidden;border:1px solid var(--line);border-radius:13px;background:#fff}.economics-table td{display:grid;grid-template-columns:minmax(100px,38%) minmax(0,1fr);gap:10px;align-items:center;border-top:1px solid #edf1f6;padding:9px 12px;text-align:right!important}.economics-table td:first-child{border-top:0}.economics-table td::before{content:attr(data-label);color:var(--muted);font-size:10px;font-weight:850;text-align:left;text-transform:uppercase}.economics-table td:last-child{display:block}.economics-table td:last-child::before{display:none}.economics-row-actions{display:grid;grid-template-columns:repeat(2,1fr)}.economics-row-actions>*{justify-content:center;width:100%}.economics-form-grid{grid-template-columns:1fr}.economics-form-grid .span-2{grid-column:auto}.economics-modal-body{padding:15px}.economics-check-list>label{grid-template-columns:auto minmax(0,1fr)}.economics-check-list select{grid-column:2}.economics-purchase-item{grid-template-columns:1fr 1fr;padding:12px}.economics-purchase-item label:first-child{grid-column:1/-1}.economics-purchase-item .icon-button{justify-self:end}.economics-modal .modal-actions{justify-content:flex-end}.economics-modal .modal-actions button{width:auto}.project-hub-panel[data-hub-panel="economics"]{margin-left:12px;margin-right:12px}}
@media(max-width:480px){.economics-summary{grid-template-columns:1fr}.economics-heading-actions{grid-template-columns:1fr}.economics-heading-actions .primary-button{grid-column:auto}.economics-tabs{grid-template-columns:1fr}.economics-purchase-item{grid-template-columns:1fr}.economics-purchase-item label:first-child{grid-column:auto}.economics-check-list>label{grid-template-columns:auto minmax(0,1fr)}}
.diary-status-menu{display:none;position:fixed;z-index:1100;width:240px;padding:8px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:0 20px 55px rgba(15,34,65,.22)}.diary-status-menu.open{display:grid;gap:4px}.diary-status-menu button{width:100%;min-height:38px;border:0;border-radius:8px;padding:8px 10px;background:#fff;color:var(--text);font-size:12px;font-weight:750;text-align:left;cursor:pointer}.diary-status-menu button:hover{background:#edf4ff;color:#285fbf}.diary-status-menu button:disabled{opacity:.42;cursor:not-allowed}

/* Kompaktné vykonanie úloh a výber úloh po miestnostiach. */
.site-diary-task-compact{display:grid;grid-template-columns:minmax(250px,.65fr) minmax(320px,1.35fr);align-items:end;gap:14px}.site-diary-task-change{display:grid;grid-template-columns:auto auto 24px minmax(128px,1fr);align-items:end;gap:9px}.site-diary-task-change>span:first-child{grid-column:1/3;color:var(--muted);font-size:11px;font-weight:750}.site-diary-task-change>strong{align-self:center;font-size:19px}.site-diary-task-change>label,.site-diary-task-description{display:grid;gap:7px;color:var(--text);font-size:12px;font-weight:750}.site-diary-task-change>label{grid-column:4;grid-row:1/3}.site-diary-task-change .site-diary-progress-arrow{align-self:end;padding-bottom:11px;color:var(--blue);font-size:22px;font-weight:900;text-align:center;transform:none}.site-diary-task-description textarea{min-height:66px}.diary-task-picker-options{display:grid;grid-template-columns:1fr;gap:14px}.diary-task-category{border:1px solid var(--line);border-radius:13px;background:#f8fafc;overflow:hidden}.diary-task-category>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--line);background:#fff}.diary-task-category>header h3{margin:0;font-size:14px}.diary-task-category>header span{display:grid;place-items:center;min-width:27px;height:27px;border-radius:99px;background:#e8eef7;color:var(--navy);font-size:12px;font-weight:850}.diary-task-category .workforce-check-list{grid-template-columns:1fr;max-height:none;border:0;border-radius:0;padding:10px}.diary-task-category .workforce-check-list label{width:100%}
@media(max-width:720px){.site-diary-task-compact{grid-template-columns:1fr}.site-diary-task-change{grid-template-columns:1fr auto 22px minmax(112px,1fr)}.site-diary-task-change .site-diary-progress-arrow{transform:none}.diary-task-category .workforce-check-list{max-height:none}}
.site-diary-task-change{grid-template-columns:minmax(95px,1fr) 24px minmax(128px,1fr)}.site-diary-task-change>span:first-child{grid-column:1;grid-row:1}.site-diary-task-change>strong{grid-column:1;grid-row:2}.site-diary-task-change>label{grid-column:3;grid-row:1/3}.site-diary-task-change .site-diary-progress-arrow{grid-column:2;grid-row:1/3;align-self:center;padding-bottom:0}
@media(max-width:720px){.site-diary-task-change{grid-template-columns:minmax(90px,1fr) 22px minmax(112px,1fr)}}

/* Dokumenty a fotografie projektu */
.project-files-workspace{display:grid;gap:18px}.project-files-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.project-files-heading h2{margin:0 0 6px}.project-files-heading p{margin:0;color:var(--muted)}.project-files-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.project-files-summary article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border:1px solid var(--line);border-radius:13px;background:#fff}.project-files-summary span{color:var(--muted);font-size:12px;font-weight:750}.project-files-summary strong{font-size:22px}.project-files-toolbar{display:grid;grid-template-columns:auto minmax(190px,230px) minmax(250px,1fr);align-items:center;gap:12px;padding:13px;border:1px solid var(--line);border-radius:13px;background:#fff}.project-files-toolbar label{min-width:0}.project-files-toolbar select,.project-files-toolbar input{width:100%;height:42px;border:1px solid #ced8e5;border-radius:9px;background:#fff;padding:0 12px;outline:none}.project-files-toolbar select{-webkit-appearance:none;appearance:none;padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m6 8 4 4 4-4' stroke='%23172033' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.project-files-toolbar select:focus,.project-files-toolbar input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(47,111,237,.1)}.project-file-kind-filter{width:max-content}.project-file-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.project-file-card{display:grid;grid-template-rows:180px auto auto auto;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 5px 18px rgba(23,45,80,.05)}.project-file-preview{display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,#edf3fc,#e1e9f5);text-decoration:none}.project-file-preview>span{display:grid;place-items:center;width:78px;height:96px;border-radius:10px;background:#fff;color:#2f6fed;box-shadow:0 10px 30px rgba(23,45,80,.12);font-size:15px;font-weight:900;letter-spacing:.04em}.project-file-preview.is-image{background:#e8edf5}.project-file-preview img{width:100%;height:100%;object-fit:cover;transition:transform .2s ease}.project-file-preview:hover img{transform:scale(1.025)}.project-file-info{display:grid;align-content:start;gap:6px;min-width:0;padding:15px 16px 10px}.project-file-category{width:max-content;max-width:100%;padding:5px 8px;border-radius:999px;background:#eaf1ff;color:#285fbf;font-size:10px;font-weight:850}.project-file-info h3{margin:0;font-size:16px;overflow-wrap:anywhere}.project-file-info p{display:-webkit-box;margin:0;color:#4d5b70;font-size:12px;line-height:1.45;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical}.project-file-info small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-file-meta{display:flex;flex-wrap:wrap;gap:5px 12px;padding:0 16px 13px;color:var(--muted);font-size:10px}.project-file-meta span:not(:last-child)::after{content:'·';margin-left:12px}.project-file-actions{display:flex;flex-wrap:wrap;align-items:center;gap:7px;padding:12px 14px;border-top:1px solid #edf1f6;background:#fbfcfe}.project-file-actions form{margin:0}.project-file-actions .secondary-button{width:auto;padding:8px 10px;font-size:11px}.project-file-delete{color:#a22727}.project-files-empty{padding:50px 20px;border:1px dashed #cbd6e5;border-radius:14px;background:#f8fafc;text-align:center}.project-files-empty strong{font-size:17px}.project-files-empty p{margin:7px 0 0;color:var(--muted)}.project-file-modal form{display:flex;flex-direction:column}.project-file-form-body{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:22px 26px}.project-file-form-body label{display:grid;gap:7px;font-size:12px;font-weight:750}.project-file-form-body .span-2{grid-column:1/-1}.project-file-form-body input,.project-file-form-body select,.project-file-form-body textarea{width:100%;border:1px solid #ced8e5;border-radius:10px;background:#fff;padding:10px 12px;font:inherit;font-weight:400;outline:none}.project-file-form-body input,.project-file-form-body select{height:44px}.project-file-form-body textarea{resize:vertical}.project-file-form-body select{-webkit-appearance:none;appearance:none;padding-right:42px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m6 8 4 4 4-4' stroke='%23172033' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.project-file-form-body input:focus,.project-file-form-body select:focus,.project-file-form-body textarea:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,111,237,.1)}.project-file-dropzone{grid-column:1/-1;display:grid;place-items:center;gap:8px;min-height:210px;padding:28px;border:2px dashed #b7c7de;border-radius:14px;background:#f8fbff;text-align:center;cursor:pointer;outline:none}.project-file-dropzone:focus,.project-file-dropzone.dragging{border-color:var(--blue);background:#edf4ff;box-shadow:0 0 0 4px rgba(47,111,237,.08)}.project-file-dropzone>span{color:var(--muted);font-size:12px}.project-file-dropzone .secondary-button{width:auto;margin-top:6px}.project-file-selection{grid-column:1/-1;display:grid;gap:7px;padding:10px;border:1px solid var(--line);border-radius:11px;background:#fafbfd}.project-file-selection[hidden]{display:none}.project-file-selection>div{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:8px 10px;border-radius:8px;background:#fff}.project-file-selection strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.project-file-selection span,.project-file-limit{color:var(--muted);font-size:11px}.project-file-limit{grid-column:1/-1;margin:0}.project-file-modal .modal-actions{display:flex;justify-content:flex-end;gap:10px;padding:16px 26px;border-top:1px solid var(--line)}.project-file-modal .modal-actions button{width:auto}.project-photo-lightbox{z-index:220}.project-photo-dialog{display:grid;grid-template-rows:auto minmax(0,1fr);width:min(1180px,96vw);height:min(860px,92vh);overflow:hidden;border-radius:16px;background:#0a1425;box-shadow:0 35px 100px rgba(0,0,0,.5)}.project-photo-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 16px;background:#fff}.project-photo-dialog>div{display:grid;place-items:center;min-height:0;padding:18px}.project-photo-dialog img{display:block;max-width:100%;max-height:100%;object-fit:contain}
@media(max-width:1100px){.project-file-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-files-toolbar{grid-template-columns:auto 210px minmax(220px,1fr)}}
@media(max-width:720px){.project-files-heading{align-items:stretch;flex-direction:column}.project-files-heading .primary-button{width:100%}.project-files-summary{grid-template-columns:1fr 1fr}.project-files-summary article{padding:13px}.project-files-summary strong{font-size:19px}.project-files-toolbar{grid-template-columns:1fr}.project-file-kind-filter{display:grid;width:100%;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}.project-file-kind-filter button{min-width:0;padding-left:7px;padding-right:7px;white-space:normal}.project-file-grid{grid-template-columns:1fr}.project-file-card{grid-template-rows:190px auto auto auto}.project-file-actions{display:grid;grid-template-columns:1fr 1fr}.project-file-actions .secondary-button,.project-file-actions form,.project-file-actions form button{width:100%;justify-content:center;text-align:center}.project-file-form-body{grid-template-columns:1fr;padding:16px}.project-file-form-body .span-2,.project-file-dropzone,.project-file-selection,.project-file-limit{grid-column:1}.project-file-dropzone{min-height:180px;padding:20px}.project-file-modal .modal-actions{padding:14px 16px}.project-file-modal .modal-actions .primary-button,.project-file-modal .modal-actions .secondary-button{width:auto}}
[data-project-file-upload] .project-file-form-body>label:first-child{grid-column:1/-1}
.project-file-card[hidden]{display:none!important}

/* Generované projektové dokumenty */
.project-files-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}.project-files-heading-actions .primary-button,.project-files-heading-actions .secondary-button{width:auto}.project-generated-document-card .project-file-preview{background:linear-gradient(145deg,#e8f0ff,#dce8fb)}.project-generated-document-card .project-file-preview>span{width:86px;height:108px}.project-generated-document-tags{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.project-generated-badge{padding:5px 8px;border-radius:999px;background:#edf0f5;color:#596477;font-size:10px;font-weight:800}.project-generated-document-card .document-status-control{margin-left:auto}.project-generated-document-card .document-status-toggle{cursor:pointer}.quote-status.final{background:#e8f0ff;color:#285fbf}.quote-status.signed{background:#e5f7ef;color:#16845b}.status-dot.final{background:#2f6fed}.status-dot.signed{background:#1c9a68}
.project-document-form{display:grid;gap:18px}.project-document-card{margin:0 38px;background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:0 6px 20px rgba(23,45,80,.04);overflow:hidden}.project-document-card>header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px;border-bottom:1px solid var(--line)}.project-document-card>header h2{margin:0;font-size:18px}.project-document-card>header p{margin:5px 0 0;color:var(--muted);font-size:12px}.project-document-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:22px}.project-document-meta-grid label,.project-document-content label{display:grid;align-content:start;gap:7px;color:var(--text);font-size:12px;font-weight:750}.project-document-meta-grid .span-2{grid-column:span 2}.project-document-meta-grid input,.project-document-meta-grid select,.project-document-content textarea{width:100%;border:1px solid #ced8e5;border-radius:10px;background:#fff;color:var(--text);font:inherit;font-weight:400;outline:none}.project-document-meta-grid input,.project-document-meta-grid select{height:44px;padding:0 12px}.project-document-meta-grid select{-webkit-appearance:none;appearance:none;padding-right:42px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m6 8 4 4 4-4' stroke='%23172033' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.project-document-meta-grid input:focus,.project-document-meta-grid select:focus,.project-document-content textarea:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,111,237,.1)}.project-document-form[data-editable="0"] input:disabled,.project-document-form[data-editable="0"] select:disabled,.project-document-form[data-editable="0"] textarea:disabled{opacity:1;background:#f7f9fc;color:var(--text);cursor:default}.project-document-parties{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:22px}.project-document-parties article{display:grid;align-content:start;gap:6px;min-height:122px;padding:16px;border:1px solid #dbe3ef;border-radius:12px;background:#f9fbfe}.project-document-parties span{color:var(--blue);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.project-document-parties strong{font-size:16px}.project-document-parties p{margin:0;color:#4d5b70;font-size:12px}.project-document-parties small{color:var(--muted)}.project-document-template-tools{display:flex;align-items:center;gap:10px}.project-document-template-tools>span{color:var(--muted);font-size:11px;font-weight:750}.project-document-template-tools .secondary-button{width:auto;padding:9px 12px}.project-document-content{display:grid;gap:17px;padding:22px}.project-document-content>textarea{min-height:560px;padding:22px;resize:vertical;font-family:"Gothic",Arial,sans-serif;font-size:14px;line-height:1.65}.project-document-content label textarea{min-height:110px;padding:12px;resize:vertical}.project-document-page .quote-savebar{margin-top:0}
@media(max-width:1100px){.project-document-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.project-files-heading-actions{display:grid;grid-template-columns:1fr;width:100%}.project-files-heading-actions .primary-button,.project-files-heading-actions .secondary-button{width:100%}.project-generated-document-card .document-status-control{grid-column:1/-1;margin:0}.project-generated-document-card .document-status-toggle{width:100%;justify-content:center}.project-document-form{gap:14px}.project-document-card{margin:0 20px}.project-document-card>header{align-items:stretch;flex-direction:column;padding:16px}.project-document-meta-grid{grid-template-columns:1fr;padding:16px}.project-document-meta-grid .span-2{grid-column:auto}.project-document-parties{grid-template-columns:1fr;padding:16px}.project-document-template-tools{align-items:stretch;flex-direction:column}.project-document-template-tools .secondary-button{width:100%}.project-document-content{padding:16px}.project-document-content>textarea{min-height:460px;padding:14px}.project-document-page .quote-savebar .secondary-button,.project-document-page .quote-savebar .primary-button{width:auto}}

/* Zdrojove ponuky a firemne sablony projektovych dokumentov */
[data-contract-option][hidden],[data-consumer-contract-option][hidden],[data-template-legal][hidden]{display:none!important}.project-document-template-tools label{display:grid;gap:5px;min-width:230px}.project-document-template-tools label>span{color:var(--muted);font-size:11px;font-weight:750}.project-document-template-tools select{width:100%;height:38px;border:1px solid #ced8e5;border-radius:9px;padding:0 36px 0 10px;background:#fff;color:var(--text);font-size:12px;font-weight:650;outline:none;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m6 8 4 4 4-4' stroke='%23172033' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center}.project-document-template-tools select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(47,111,237,.1)}.document-template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 38px}.document-template-card{display:grid;grid-template-rows:1fr auto;min-height:190px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 5px 18px rgba(23,45,80,.05);overflow:hidden}.document-template-card>div{display:grid;align-content:start;gap:7px;padding:20px}.document-template-card span{color:var(--blue);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.document-template-card h2{margin:0;font-size:18px}.document-template-card p{margin:0;color:#4d5b70;font-size:12px}.document-template-card small{width:max-content;padding:5px 8px;border-radius:99px;background:#edf2f8;color:#536077;font-weight:750}.document-template-card footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 14px;border-top:1px solid var(--line);background:#fbfcfe}.document-template-card footer form{margin:0}.document-template-card footer button{width:auto}.document-template-empty{grid-column:1/-1;padding:54px 20px;border:1px dashed #cbd6e5;border-radius:14px;background:#f8fafc;text-align:center}.document-template-empty p{margin:7px 0 0;color:var(--muted)}.project-document-template-page .modal .form-grid textarea[name="content"]{min-height:390px;font-family:"Gothic",Arial,sans-serif;line-height:1.55}
@media(max-width:1100px){.document-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-document-template-tools{flex-wrap:wrap}}
@media(max-width:720px){.document-template-grid{grid-template-columns:1fr;margin:0 20px}.project-document-template-tools label{min-width:0}.project-document-template-tools .button-link{width:100%;justify-content:center}.project-document-template-page .page-heading>.primary-button{width:100%}}

/* Prihlásenie a bezpečný výber firmy. */
.login-divider{display:flex;align-items:center;gap:12px;margin:22px 0;color:var(--muted);font-size:12px}.login-divider::before,.login-divider::after{content:"";height:1px;flex:1;background:var(--line)}.google-login-button{display:flex;align-items:center;justify-content:center;gap:11px;width:100%;min-height:48px;border:1px solid #cfd8e6;border-radius:11px;background:#fff;color:var(--text);font-size:14px;font-weight:800;text-decoration:none;box-shadow:0 2px 5px rgba(23,45,80,.04);transition:border-color .16s,box-shadow .16s,transform .16s}.google-login-button:hover{border-color:#9fb5d4;box-shadow:0 7px 18px rgba(23,45,80,.1);transform:translateY(-1px)}.google-mark{display:grid;place-items:center;width:25px;height:25px;border:1px solid #d9e1ec;border-radius:50%;color:#4285f4;font-weight:900}.company-choice{max-height:calc(100vh - 48px);overflow:auto}.signed-in-user{display:grid;gap:3px;margin-top:21px;padding:13px 15px;border:1px solid var(--line);border-radius:11px;background:#f7f9fc}.signed-in-user span,.signed-in-user small{color:var(--muted);font-size:11px}.signed-in-user strong{font-size:14px}.company-choice form{margin-top:18px}.company-choice-list{display:grid;gap:9px}.company-choice-option{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 14px;border:1px solid #d7e0ec;border-radius:11px;background:#fff;cursor:pointer}.company-choice-option:has(input:checked){border-color:#79a6ff;background:#eef5ff;box-shadow:0 0 0 3px rgba(47,111,237,.09)}.company-choice-option input{width:18px!important;height:18px;margin:0;accent-color:var(--blue)}.company-choice-name{display:grid;gap:3px;min-width:0}.company-choice-name strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.company-choice-name small{color:var(--muted);font-weight:600}.company-choice-option em{padding:5px 8px;border-radius:999px;background:#dceaff;color:#285fbf;font-size:10px;font-style:normal;font-weight:850;white-space:nowrap}.login-back-link{display:block;margin-top:18px;color:var(--blue);font-size:13px;font-weight:750;text-align:center;text-decoration:none}
@media(max-width:520px){.company-choice-option{grid-template-columns:auto minmax(0,1fr)}.company-choice-option em{grid-column:2;width:max-content}.company-choice{max-height:none}}

/* Riadiaci prehľad firmy. */
.dashboard-heading{align-items:center}.dashboard-heading .heading-actions{display:flex;gap:10px;flex-wrap:wrap}.dashboard-heading a{text-decoration:none}.dashboard-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;padding:0 38px 20px}.dashboard-kpis article{position:relative;display:grid;gap:7px;min-height:126px;padding:20px 21px;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:0 6px 20px rgba(23,45,80,.045);overflow:hidden}.dashboard-kpis article::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#2f6fed}.dashboard-kpis article.is-warning::before,.dashboard-kpis article.is-attention::before{background:#d69812}.dashboard-kpis article.is-danger::before{background:#cf3e3e}.dashboard-kpis span{color:var(--muted);font-size:12px;font-weight:800}.dashboard-kpis strong{font-size:28px;line-height:1.12;letter-spacing:-.025em}.dashboard-kpis small{margin-top:auto;color:var(--muted);font-size:12px}.dashboard-kpis .is-warning small,.dashboard-kpis .is-attention small{color:#8a6100}.dashboard-kpis .is-danger small{color:#a22727}.dashboard-layout{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px;padding:0 38px 38px}.dashboard-section{min-width:0;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 6px 20px rgba(23,45,80,.045);overflow:hidden}.dashboard-section>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px 22px;border-bottom:1px solid var(--line)}.dashboard-section>header h2{margin:0;font-size:19px;letter-spacing:-.015em}.dashboard-section>header p{margin:5px 0 0;color:var(--muted);font-size:12px}.dashboard-section>header>a{color:var(--blue);font-size:12px;font-weight:800;text-decoration:none;white-space:nowrap}.dashboard-tasks{grid-column:span 12}.dashboard-layout:has(.dashboard-invoices) .dashboard-tasks{grid-column:span 8}.dashboard-invoices{grid-column:span 4;border-color:#f0cece}.dashboard-projects{grid-column:span 12}.dashboard-workforce{grid-column:span 5}.dashboard-diary{grid-column:span 7}.dashboard-layout:not(:has(.dashboard-workforce)) .dashboard-diary{grid-column:span 12}.dashboard-list{display:grid}.dashboard-task-card{display:grid;grid-template-columns:145px minmax(190px,1.5fr) minmax(160px,1fr) 145px 18px;align-items:center;gap:16px;min-height:86px;padding:14px 20px;border-bottom:1px solid #e7edf5;color:inherit;text-decoration:none;transition:background .14s}.dashboard-task-card:last-child{border-bottom:0}.dashboard-task-card:hover{background:#f7faff}.dashboard-task-card.overdue{box-shadow:inset 4px 0 #d84646}.dashboard-task-state{display:flex;align-items:center;gap:8px}.task-priority{width:8px;height:8px;border-radius:50%;background:#94a1b5}.task-priority.high{background:#e3a21a}.task-priority.critical{background:#d43f3f}.task-priority.low{background:#79a2d9}.task-status{display:inline-flex;width:max-content;padding:5px 8px;border-radius:999px;background:#eef2f7;color:#58667a;font-size:10px;font-weight:850}.task-status.in_progress,.task-status.locked{background:#e6efff;color:#245cbd}.task-status.review,.task-status.draft{background:#fff3d6;color:#8b6200}.task-status.completed,.task-status.approved{background:#e4f7ee;color:#15815a}.dashboard-task-main,.dashboard-task-people,.dashboard-invoice-card>div,.dashboard-diary-list a>div{display:grid;gap:4px;min-width:0}.dashboard-task-main strong,.dashboard-task-main small,.dashboard-task-people span,.dashboard-task-people small,.dashboard-invoice-card strong,.dashboard-invoice-card small,.dashboard-diary-list strong,.dashboard-diary-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-task-main small,.dashboard-task-people,.dashboard-invoice-card small,.dashboard-diary-list small{color:var(--muted);font-size:11px}.dashboard-progress{display:grid;grid-template-columns:1fr auto;align-items:center;gap:9px}.dashboard-progress>span,.project-card-progress>span{height:7px;border-radius:999px;background:#e6ebf2;overflow:hidden}.dashboard-progress i,.project-card-progress i{display:block;height:100%;border-radius:inherit;background:#2f6fed}.dashboard-progress strong{font-size:11px}.dashboard-task-card>b,.dashboard-invoice-card>b,.dashboard-diary-list a>b{color:var(--blue);font-size:17px}.dashboard-invoice-card{display:grid;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:14px;min-height:76px;padding:14px 18px;border-bottom:1px solid #f2dddd;color:inherit;text-decoration:none}.dashboard-invoice-card:last-child{border-bottom:0}.dashboard-invoice-card:hover{background:#fff8f8}.dashboard-invoice-card>div:nth-child(2){text-align:right}.dashboard-invoice-card>div:nth-child(2) strong{color:#a22727}.dashboard-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:16px}.dashboard-project-grid>article{display:grid;gap:16px;padding:17px;border:1px solid #dfe6ef;border-radius:13px;background:#fbfcfe}.dashboard-project-grid article>header{min-width:0}.dashboard-project-grid article>header>div{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.dashboard-project-grid article>header>div strong{color:#2764ca}.dashboard-project-grid h3{margin:9px 0 4px;font-size:17px}.dashboard-project-grid p{margin:0;overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.project-card-progress{display:grid;gap:7px}.project-card-progress>div{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:11px}.project-card-progress>div strong{color:var(--text)}.dashboard-project-grid dl{display:flex;flex-wrap:wrap;gap:8px 16px;margin:0}.dashboard-project-grid dl>div{display:grid;gap:3px}.dashboard-project-grid dt{color:var(--muted);font-size:10px}.dashboard-project-grid dd{margin:0;font-size:12px;font-weight:800}.dashboard-project-grid .secondary-button{justify-self:end;text-decoration:none}.dashboard-absence-grid{display:grid}.dashboard-absence-grid article{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:70px;padding:12px 18px;border-bottom:1px solid #e7edf5}.dashboard-absence-grid article:last-child{border-bottom:0}.absence-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#e7efff;color:#2b66cc;font-size:14px;font-weight:900}.dashboard-absence-grid article>div{display:grid;gap:3px;min-width:0}.dashboard-absence-grid article>div small{overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.dashboard-diary-list{display:grid}.dashboard-diary-list>a{display:grid;grid-template-columns:92px minmax(0,1fr) 170px 18px;align-items:center;gap:14px;min-height:73px;padding:12px 18px;border-bottom:1px solid #e7edf5;color:inherit;text-decoration:none}.dashboard-diary-list>a:last-child{border-bottom:0}.dashboard-diary-list>a:hover{background:#f7faff}.dashboard-diary-list time{font-size:11px;font-weight:800}.dashboard-diary-list a>div:nth-of-type(2){align-items:end}.dashboard-empty{grid-column:1/-1;display:grid;gap:5px;padding:34px 20px;color:var(--muted);text-align:center}.dashboard-empty strong{color:var(--text)}.dashboard-empty span{font-size:12px}.dashboard-empty.compact{padding:28px 20px}.dashboard-page .danger-text{color:#b02d2d!important}
@media(max-width:1280px){.dashboard-layout:has(.dashboard-invoices) .dashboard-tasks,.dashboard-invoices{grid-column:span 12}.dashboard-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-workforce,.dashboard-diary{grid-column:span 12}}
@media(max-width:820px){.dashboard-heading{align-items:flex-start}.dashboard-heading .heading-actions{width:100%}.dashboard-heading .heading-actions a{flex:1;justify-content:center}.dashboard-kpis,.dashboard-layout{padding-left:20px;padding-right:20px}.dashboard-task-card{grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;padding:15px 17px}.dashboard-task-state{grid-column:1}.dashboard-task-main{grid-column:1/-1;grid-row:2}.dashboard-task-people{grid-column:1;grid-row:3}.dashboard-progress{grid-column:1/-1;grid-row:4}.dashboard-task-card>b{grid-column:2;grid-row:1/4}.dashboard-project-grid{grid-template-columns:1fr}.dashboard-diary-list>a{grid-template-columns:82px minmax(0,1fr) 18px}.dashboard-diary-list a>div:nth-of-type(2){grid-column:2}.dashboard-diary-list a>b{grid-column:3;grid-row:1/3}.dashboard-diary-list a>div:nth-of-type(2){align-items:start}}
@media(max-width:520px){.dashboard-kpis{grid-template-columns:1fr}.dashboard-layout{gap:14px;padding-bottom:24px}.dashboard-section>header{padding:17px}.dashboard-task-people{grid-column:1/-1}.dashboard-invoice-card{grid-template-columns:minmax(0,1fr) 18px}.dashboard-invoice-card>div:nth-child(2){grid-column:1;text-align:left}.dashboard-invoice-card>b{grid-column:2;grid-row:1/3}.dashboard-absence-grid article{grid-template-columns:38px minmax(0,1fr)}.dashboard-absence-grid .absence-status{grid-column:2;width:max-content}.dashboard-diary-list>a{grid-template-columns:minmax(0,1fr) 18px}.dashboard-diary-list time{grid-column:1}.dashboard-diary-list a>div:first-of-type{grid-column:1}.dashboard-diary-list a>div:nth-of-type(2){grid-column:1}.dashboard-diary-list a>b{grid-column:2;grid-row:1/4}}
.dashboard-heading .primary-button,.dashboard-heading .secondary-button,.dashboard-project-grid .secondary-button{display:inline-flex;align-items:center;justify-content:center}
.dashboard-diary-entry{display:grid;grid-template-columns:92px minmax(0,1fr) 170px 18px;align-items:center;gap:14px;min-height:73px;padding:12px 18px;border-bottom:1px solid #e7edf5;color:inherit;text-decoration:none}.dashboard-diary-entry:last-child{border-bottom:0}a.dashboard-diary-entry:hover{background:#f7faff}.dashboard-diary-entry>div{display:grid;gap:4px;min-width:0}.dashboard-diary-entry>div:nth-of-type(2){align-items:end}.dashboard-diary-entry>b{color:var(--blue);font-size:17px}
@media(max-width:820px){.dashboard-diary-entry{grid-template-columns:82px minmax(0,1fr) 18px}.dashboard-diary-entry>div:nth-of-type(2){grid-column:2;align-items:start}.dashboard-diary-entry>b{grid-column:3;grid-row:1/3}}
@media(max-width:520px){.dashboard-diary-entry{grid-template-columns:minmax(0,1fr) 18px}.dashboard-diary-entry time,.dashboard-diary-entry>div:first-of-type,.dashboard-diary-entry>div:nth-of-type(2){grid-column:1}.dashboard-diary-entry>b{grid-column:2;grid-row:1/4}}

/* Rozšírený manažérsky prehľad firmy. */
.dashboard-management{display:grid;gap:16px;margin:0 38px 20px}.dashboard-block-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}.dashboard-block-heading h2{margin:0;font-size:22px}.dashboard-block-heading p{margin:5px 0 0;color:var(--muted);font-size:12px}.dashboard-segmented{display:flex;gap:4px;padding:4px;border:1px solid #d9e2ee;border-radius:11px;background:#edf2f8}.dashboard-segmented a{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 13px;border-radius:8px;color:#637086;font-size:11px;font-weight:850;text-decoration:none;white-space:nowrap}.dashboard-segmented a.active{background:#fff;color:var(--navy);box-shadow:0 4px 12px rgba(23,45,80,.09)}
.dashboard-finance-primary,.dashboard-finance-detail{display:grid;gap:13px}.dashboard-finance-primary{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-finance-detail{grid-template-columns:repeat(5,minmax(0,1fr))}.dashboard-finance-primary article,.dashboard-finance-detail article{position:relative;display:grid;gap:7px;min-width:0;padding:18px 19px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 5px 18px rgba(23,45,80,.04)}.dashboard-finance-primary article{min-height:112px}.dashboard-finance-primary span,.dashboard-finance-detail span{color:var(--muted);font-size:11px;font-weight:800}.dashboard-finance-primary strong{overflow:hidden;font-size:24px;letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap}.dashboard-finance-detail strong{overflow:hidden;font-size:17px;text-overflow:ellipsis;white-space:nowrap}.dashboard-finance-primary small,.dashboard-finance-detail small{margin-top:auto;color:var(--muted);font-size:10px;line-height:1.45}.dashboard-finance-primary .finance-profit{border-color:#bfe5d5;background:#f5fcf9}.dashboard-finance-primary .finance-profit strong{color:#117654}.dashboard-finance-primary .finance-profit.negative{border-color:#efc7c7;background:#fff8f8}.dashboard-finance-primary .finance-profit.negative strong{color:#b02d2d}
.dashboard-management-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.7fr);gap:16px}.dashboard-trend-card,.dashboard-activity-card{min-width:0;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:0 5px 18px rgba(23,45,80,.04);overflow:hidden}.dashboard-trend-card>header,.dashboard-activity-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid var(--line)}.dashboard-trend-card h3,.dashboard-activity-card h3{margin:0;font-size:16px}.dashboard-trend-card header p,.dashboard-activity-card header p{margin:4px 0 0;color:var(--muted);font-size:10px}.trend-legend{display:flex;flex-wrap:wrap;gap:10px;color:var(--muted);font-size:9px;font-weight:800}.trend-legend span{display:flex;align-items:center;gap:5px}.trend-legend span::before{content:"";width:8px;height:8px;border-radius:2px;background:#2f6fed}.trend-legend .paid::before{background:#20a276}.trend-legend .cost::before{background:#e3a21a}.dashboard-trend{display:grid;grid-auto-columns:minmax(24px,1fr);grid-auto-flow:column;align-items:end;gap:5px;height:230px;padding:23px 18px 14px;overflow-x:auto}.trend-column{display:grid;grid-template-rows:1fr auto;gap:7px;height:100%;min-width:24px}.trend-bars{display:flex;align-items:end;justify-content:center;gap:2px;height:100%;border-bottom:1px solid #dbe3ee}.trend-bars i{display:block;width:26%;min-height:2px;border-radius:3px 3px 0 0;background:#2f6fed}.trend-bars i.paid{background:#20a276}.trend-bars i.cost{background:#e3a21a}.trend-column small{color:var(--muted);font-size:8px;text-align:center}.dashboard-activity-card>div{display:grid}.dashboard-activity-card>div>article{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:56px;padding:10px 17px;border-bottom:1px solid #e8edf4}.dashboard-activity-card>div>article:last-child{border-bottom:0}.activity-icon{width:9px;height:9px;border-radius:50%;background:#7b8aa1}.activity-icon.invoice{background:#2f6fed}.activity-icon.quote{background:#7358c8}.activity-icon.statement{background:#20a276}.activity-icon.purchase{background:#e3a21a}.activity-icon.trip{background:#168ca4}.activity-icon.diary{background:#4f8a3e}.activity-icon.task{background:#d06a2e}.dashboard-activity-card article>div{display:grid;gap:3px;min-width:0}.dashboard-activity-card strong,.dashboard-activity-card small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-activity-card strong{font-size:11px}.dashboard-activity-card small,.dashboard-activity-card time{color:var(--muted);font-size:9px}.dashboard-activity-card time{white-space:nowrap}
.dashboard-attention,.dashboard-planning{margin:0 38px 20px}.dashboard-attention>div{display:grid}.attention-row{display:grid;grid-template-columns:32px minmax(0,1fr) 20px;align-items:center;gap:12px;min-height:67px;padding:11px 19px;border-bottom:1px solid #e8edf4;color:inherit;text-decoration:none}.attention-row:last-child{border-bottom:0}.attention-row:hover{background:#f8faff}.attention-row>span{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#fff0d5;color:#9a6800;font-weight:900}.attention-row.danger>span{background:#fde8e8;color:#b02d2d}.attention-row>div{display:grid;gap:4px;min-width:0}.attention-row strong,.attention-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attention-row strong{font-size:12px}.attention-row small{color:var(--muted);font-size:10px}.attention-row>b{color:var(--blue)}
.dashboard-planning>header{align-items:center}.planning-controls{display:flex;align-items:center;gap:10px}.planning-controls>div{display:flex;gap:4px}.planning-controls>div a{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 9px;border:1px solid #d6e0ec;border-radius:8px;color:var(--navy);font-size:11px;font-weight:850;text-decoration:none}.planning-scroll{overflow-x:auto}.planning-table{min-width:980px}.planning-head,.planning-row{display:grid;grid-template-columns:260px minmax(0,1fr)}.planning-head{min-height:56px;border-bottom:1px solid var(--line);background:#f8fafd}.planning-head>strong{display:flex;align-items:center;padding:0 18px;color:var(--muted);font-size:10px;text-transform:uppercase}.planning-days,.planning-track{display:grid;grid-template-columns:repeat(var(--plan-days),minmax(22px,1fr))}.planning-days>span{display:grid;place-items:center;align-content:center;gap:3px;border-left:1px solid #e6ecf4;color:var(--muted)}.planning-days>span.weekend,.planning-track>i.weekend{background:#f3f6fa}.planning-days>span.today{background:#e9f1ff;color:#2462ca}.planning-days b{font-size:8px;text-transform:uppercase}.planning-days small{font-size:9px}.planning-row{min-height:62px;border-bottom:1px solid #e8edf4;color:inherit;text-decoration:none}.planning-row:last-child{border-bottom:0}.planning-row:hover{background:#fbfcff}.planning-row>div:first-child{display:grid;align-content:center;gap:4px;padding:9px 18px;min-width:0}.planning-row>div:first-child strong,.planning-row>div:first-child small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planning-row>div:first-child strong{font-size:11px}.planning-row>div:first-child small{color:var(--muted);font-size:9px}.planning-track{position:relative}.planning-track>i{border-left:1px solid #edf1f6}.planning-track>i.today{background:#edf4ff}.plan-bar{position:absolute;top:17px;height:28px;min-width:10px;border-radius:7px;background:#8dabdf;color:#fff;box-shadow:0 4px 10px rgba(45,91,160,.18);overflow:hidden}.plan-bar.on_time{background:#2f6fed}.plan-bar.risk{background:#d99b13}.plan-bar.late{background:#cf4646}.plan-bar b{display:block;overflow:hidden;padding:7px 9px;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.unscheduled-projects{display:flex;align-items:center;flex-wrap:wrap;gap:7px;padding:13px 18px;border-top:1px solid var(--line);background:#fafbfd}.unscheduled-projects strong{margin-right:5px;color:var(--muted);font-size:10px}.unscheduled-projects a{padding:5px 8px;border:1px solid #d8e1ed;border-radius:999px;background:#fff;color:var(--navy);font-size:9px;font-weight:800;text-decoration:none}
@media(max-width:1280px){.dashboard-finance-primary{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-finance-detail{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-management-grid{grid-template-columns:1fr}.dashboard-activity-card>div{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-activity-card>div>article:nth-last-child(2):first-child{border-bottom:0}}
@media(max-width:820px){.dashboard-management,.dashboard-attention,.dashboard-planning{margin-left:20px;margin-right:20px}.dashboard-block-heading{align-items:flex-start;flex-direction:column}.dashboard-block-heading .dashboard-segmented{width:100%}.dashboard-block-heading .dashboard-segmented a{flex:1}.dashboard-finance-detail{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-activity-card>div{grid-template-columns:1fr}.dashboard-planning>header{align-items:stretch;flex-direction:column}.planning-controls{justify-content:space-between}.planning-scroll{overflow:visible}.planning-table{display:grid;gap:8px;min-width:0;padding:10px}.planning-head{display:none}.planning-row{display:block;min-height:0;border:1px solid #dfe6ef;border-radius:10px;background:#fbfcfe}.planning-row>div:first-child{padding:13px 14px}.planning-row>div:first-child small{white-space:normal}.planning-track{display:none}}
@media(max-width:520px){.dashboard-finance-primary,.dashboard-finance-detail{grid-template-columns:1fr}.dashboard-finance-primary strong{font-size:22px}.dashboard-trend-card>header{align-items:flex-start;flex-direction:column}.dashboard-activity-card>div>article{grid-template-columns:10px minmax(0,1fr)}.dashboard-activity-card time{grid-column:2}.planning-controls{align-items:stretch;flex-direction:column}.planning-controls>div{justify-content:flex-end}.attention-row{grid-template-columns:30px minmax(0,1fr) 14px;padding-left:14px;padding-right:14px}.attention-row small{white-space:normal}.planning-head,.planning-row{grid-template-columns:180px minmax(0,1fr)}}

/* Update 033: permission-aware global search. */
.topbar{position:relative;z-index:80;display:grid;grid-template-columns:minmax(170px,auto) minmax(280px,620px) minmax(250px,auto);gap:22px;height:76px}
.topbar>div{min-width:0}.topbar-company strong,.user-menu>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu{justify-content:flex-end}
.global-search{position:relative;display:flex;align-items:center;min-width:0}.global-search>input{width:100%;height:42px;padding:0 76px 0 42px;border:1px solid #d2dbe8;border-radius:12px;outline:0;background:#f7f9fc;color:var(--text);transition:border-color .15s,box-shadow .15s,background .15s}.global-search>input:focus{border-color:#7aa5f8;background:#fff;box-shadow:0 0 0 4px rgba(47,111,237,.12)}.global-search-icon{position:absolute;left:15px;z-index:1;color:#64738a;font-size:23px;line-height:1;transform:rotate(-18deg);pointer-events:none}.global-search>kbd{position:absolute;right:10px;padding:4px 7px;border:1px solid #d8e0eb;border-bottom-width:2px;border-radius:6px;background:#fff;color:#718096;font-family:inherit;font-size:9px;font-weight:800;pointer-events:none}
.global-search-panel{position:absolute;top:calc(100% + 10px);right:0;left:0;z-index:1600;max-height:min(70vh,620px);overflow:auto;border:1px solid #dbe3ee;border-radius:15px;background:#fff;box-shadow:0 24px 60px rgba(16,33,62,.2)}.global-search-panel[hidden]{display:none}.global-search-panel>section{border-bottom:1px solid #e7edf5}.global-search-panel>section>header{display:flex;align-items:center;justify-content:space-between;padding:10px 13px;background:#f8fafd;color:#69778d;font-size:10px;text-transform:uppercase;letter-spacing:.06em}.global-search-panel>section>header span{display:grid;place-items:center;min-width:23px;height:20px;padding:0 6px;border-radius:999px;background:#e8eef7;color:#53627a;font-size:9px}
.global-search-result{display:grid;grid-template-columns:34px minmax(0,1fr) 18px;align-items:center;gap:11px;min-height:62px;padding:9px 13px;border-top:1px solid #edf1f6;color:inherit;text-decoration:none}.global-search-result:first-of-type{border-top:0}.global-search-result:hover,.global-search-result.active{background:#f0f5ff}.global-search-result>span:nth-child(2){display:grid;gap:2px;min-width:0}.global-search-result small{color:#66758b;font-size:9px;font-weight:800;text-transform:uppercase}.global-search-result strong,.global-search-result em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.global-search-result strong{font-size:12px}.global-search-result em{color:var(--muted);font-size:10px;font-style:normal}.global-search-result>b{color:var(--blue)}.global-search-all{display:flex;align-items:center;justify-content:center;min-height:46px;color:var(--blue);font-size:11px;font-weight:850;text-decoration:none}.global-search-all:hover{background:#f5f8fd}.global-search-message{padding:28px 18px;color:var(--muted);font-size:12px;text-align:center}.global-search-message.loading{color:var(--blue)}.global-search-message.error{color:#a22727}
.search-result-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#e8f0ff;color:#2d63c5;font-size:12px;font-weight:900}.search-result-icon::before{content:"•"}.search-icon-project::before{content:"P"}.search-icon-customer::before{content:"Z"}.search-icon-supplier::before{content:"D"}.search-icon-quote::before{content:"PO"}.search-icon-rfq::before{content:"DO"}.search-icon-work_statement::before{content:"S"}.search-icon-invoice::before{content:"F"}.search-icon-task::before{content:"Ú"}.search-icon-purchase::before{content:"N"}.search-icon-employee::before{content:"ZA"}.search-icon-vehicle::before{content:"V"}.search-icon-work::before{content:"PR"}.search-icon-material::before{content:"M"}.search-icon-warehouse_item::before{content:"SK"}.search-icon-equipment::before{content:"SN"}.search-icon-file::before{content:"SU"}.search-icon-user::before{content:"U"}.search-icon-invoice,.search-icon-quote,.search-icon-rfq,.search-icon-work_statement{background:#f0eaff;color:#6747b7}.search-icon-employee,.search-icon-user{background:#e6f7ef;color:#137653}.search-icon-warehouse_item,.search-icon-equipment,.search-icon-material{background:#fff2da;color:#956300}
.search-page-body{display:grid;gap:19px;padding:0 38px 42px}.search-page-form{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;max-width:940px;padding:9px 10px 9px 15px;border:1px solid #ccd7e5;border-radius:15px;background:#fff;box-shadow:0 8px 28px rgba(23,45,80,.06)}.search-page-form>span{color:#64738a;font-size:27px;transform:rotate(-18deg)}.search-page-form input{height:46px;border:0;outline:0;background:transparent;font-size:16px}.search-results-heading{display:flex;align-items:center;justify-content:space-between;max-width:1100px}.search-results-heading>div{display:flex;align-items:center;gap:12px}.search-results-heading span{color:var(--muted);font-size:11px}.search-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;max-width:1100px}.search-result-group{overflow:hidden;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:0 6px 20px rgba(23,45,80,.04)}.search-result-group>header{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:0 17px;border-bottom:1px solid var(--line);background:#fafbfd}.search-result-group h2{margin:0;font-size:15px}.search-result-group>header span{display:grid;place-items:center;min-width:27px;height:24px;padding:0 7px;border-radius:999px;background:#e8eef7;color:#53627a;font-size:10px;font-weight:800}.search-result-row{display:grid;grid-template-columns:38px minmax(0,1fr) 18px;align-items:center;gap:12px;min-height:76px;padding:11px 16px;border-bottom:1px solid #e9eef5;color:inherit;text-decoration:none}.search-result-row:last-child{border-bottom:0}.search-result-row:hover{background:#f7faff}.search-result-row>div{display:grid;gap:3px;min-width:0}.search-result-row small{color:#66758b;font-size:9px;font-weight:850;text-transform:uppercase}.search-result-row strong,.search-result-row p{overflow:hidden;margin:0;text-overflow:ellipsis;white-space:nowrap}.search-result-row strong{font-size:13px}.search-result-row p{color:var(--muted);font-size:10px}.search-result-row>b{color:var(--blue)}.search-empty-state{display:grid;justify-items:center;gap:8px;max-width:940px;padding:54px 24px;border:1px dashed #c9d5e4;border-radius:16px;background:rgba(255,255,255,.62);text-align:center}.search-empty-state>span{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:#e8f0ff;color:#2d63c5;font-size:32px;transform:rotate(-18deg)}.search-empty-state p,.search-more-hint{margin:0;color:var(--muted);font-size:12px}.search-more-hint{max-width:1100px;padding:12px 15px;border-radius:10px;background:#fff5cc;color:#8a6200}.search-anchor-target{scroll-margin-top:92px}.search-anchor-target:target{animation:search-target-pulse 2.6s ease-out}.search-anchor-target:target td{background:#fff4c4!important}@keyframes search-target-pulse{0%,45%{box-shadow:inset 4px 0 #e5a400,0 0 0 4px rgba(229,164,0,.18)}100%{box-shadow:inset 0 0 transparent,0 0 0 transparent}}
@media(max-width:1180px){.topbar{grid-template-columns:minmax(150px,.75fr) minmax(260px,1.4fr) minmax(230px,1fr);gap:14px;padding-left:24px;padding-right:24px}.topbar .muted{display:none}.global-search>kbd{display:none}.global-search>input{padding-right:14px}.user-menu>span{max-width:120px}}
@media(max-width:900px){.topbar{grid-template-areas:"company user" "search search";grid-template-columns:minmax(0,1fr) auto;height:auto;min-height:122px;padding-top:13px;padding-bottom:13px}.topbar-company{grid-area:company}.global-search{grid-area:search}.user-menu{grid-area:user}.global-search-panel{top:calc(100% + 7px)}.search-results{grid-template-columns:1fr}}
@media(max-width:720px){.topbar{padding-left:20px;padding-right:20px}.user-menu>span{display:none}.search-page-body{padding-left:20px;padding-right:20px}.search-page-form{grid-template-columns:25px minmax(0,1fr)}.search-page-form button{grid-column:1/-1}.search-results-heading>div{align-items:flex-start;flex-direction:column;gap:4px}.global-search-panel{position:fixed;top:116px;right:12px;left:12px;max-height:calc(100vh - 132px)}}

/* Project header actions stay aligned on the right; portal management is shown only once. */
.project-hub-head{display:flex;align-items:center;justify-content:space-between;gap:24px}
.project-hub-head>div:first-child{min-width:0}.project-hub-actions{display:grid;justify-items:end;gap:6px;flex:0 0 auto;margin-left:auto}.project-hub-actions>span{color:var(--muted);font-size:10px;font-weight:750}.project-hub-actions .secondary-button{width:auto;white-space:nowrap;text-decoration:none}
@media(max-width:720px){.project-hub-head{align-items:stretch;flex-direction:column}.project-hub-actions{justify-items:stretch;margin-left:0}.project-hub-actions>span{text-align:left}.project-hub-actions .secondary-button{width:100%;text-align:center}}

/* Employee portal owner navigation */
.employee-portal-sidebar-link{display:flex;align-items:center;gap:11px;min-height:44px;margin:3px 8px;padding:0 12px;border-radius:11px;color:inherit;text-decoration:none;font-size:13px;font-weight:700;transition:.18s ease}.employee-portal-sidebar-link:hover{background:rgba(47,111,237,.08);color:#2f6fed}.employee-portal-sidebar-link.active{background:#edf4ff;color:#2f6fed}.employee-portal-sidebar-icon{display:grid;place-items:center;flex:0 0 25px;width:25px;height:25px;border-radius:8px;background:#e8effb;color:#285cae;font-size:9px;font-weight:900;letter-spacing:.02em}.employee-portal-sidebar-link.active .employee-portal-sidebar-icon{background:#d7e6ff}

/* Unified owner notification centre */
.topbar:not(.topbar-platform){grid-template-columns:minmax(170px,auto) minmax(260px,620px) auto minmax(210px,auto)}
.topbar-platform{grid-template-columns:minmax(170px,auto) minmax(280px,620px) minmax(250px,auto)}
.topbar-notification-center{position:relative;display:flex;align-items:center;justify-content:center;min-width:44px}
.topbar-bell{position:relative;display:grid;place-items:center;width:42px;height:42px;border:1px solid #d7e0eb;border-radius:12px;background:#f7f9fc;color:#1c3558;cursor:pointer;transition:.18s ease}
.topbar-bell:hover,.topbar-bell:focus-visible,.topbar-notification-center.open .topbar-bell{border-color:#9db9e8;background:#eef4ff;color:var(--blue);box-shadow:0 8px 22px rgba(28,65,120,.12)}
.topbar-bell svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.topbar-bell-badge{position:absolute;top:-5px;right:-5px;display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border:2px solid #fff;border-radius:999px;background:#d92d20;color:#fff;font-size:10px;font-weight:900;line-height:1}
.topbar-notification-panel{position:absolute;z-index:1700;top:calc(100% + 12px);right:-12px;width:min(430px,calc(100vw - 24px));overflow:hidden;border:1px solid #d7e0eb;border-radius:17px;background:#fff;box-shadow:0 26px 75px rgba(13,31,57,.24)}
.topbar-notification-panel[hidden]{display:none}
.topbar-notification-panel>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 17px;border-bottom:1px solid #e4e9f0;background:#fbfcfe}
.topbar-notification-panel>header>div:first-child{display:grid;gap:3px;min-width:0}
.topbar-notification-panel>header strong{font-size:15px;color:#142844}
.topbar-notification-panel>header small{color:#6e7b8f;font-size:11px}
.topbar-notification-actions{display:flex;align-items:center;gap:6px}
.topbar-notification-actions button{border:0;border-radius:8px;padding:7px 9px;background:#edf2f8;color:#33547e;font-size:10px;font-weight:800;cursor:pointer}
.topbar-notification-actions button:last-child{width:31px;height:31px;padding:0;font-size:18px}
.topbar-notification-actions button.is-loading{animation:stavix-notification-spin .8s linear infinite}
@keyframes stavix-notification-spin{to{transform:rotate(360deg)}}
.topbar-notification-list{max-height:min(62vh,520px);overflow:auto;overscroll-behavior:contain}
.topbar-notification-item{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;border-bottom:1px solid #edf0f4;background:#fff}
.topbar-notification-item.unread{background:#f6f9ff}
.topbar-notification-item.unread::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:#2f6fed}
.topbar-notification-open{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:start;width:100%;border:0;padding:13px 8px 13px 14px;background:transparent;text-align:left;cursor:pointer}
.topbar-notification-marker{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#e9f1ff;color:#2d62b5;font-weight:900}
.priority-high .topbar-notification-marker{background:#fff4dc;color:#9a6400}.priority-critical .topbar-notification-marker{background:#ffeded;color:#b42318}
.topbar-notification-open>span:last-child{display:grid;gap:3px;min-width:0}
.topbar-notification-open small{color:#55739e;font-size:9px;font-weight:850;letter-spacing:.04em;text-transform:uppercase}
.topbar-notification-open strong{overflow:hidden;color:#172b49;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.topbar-notification-open p{display:-webkit-box;overflow:hidden;margin:0;color:#5f6e82;font-size:11px;line-height:1.42;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.topbar-notification-open em{color:#8a96a7;font-size:9px;font-style:normal}
.topbar-notification-archive{align-self:start;width:29px;height:29px;margin:10px 9px 0 0;border:0;border-radius:8px;background:transparent;color:#8995a7;font-size:18px;cursor:pointer}
.topbar-notification-archive:hover{background:#eef2f7;color:#314b70}
.topbar-notification-empty{padding:34px 18px;color:#738096;font-size:12px;text-align:center}.topbar-notification-empty.error{color:#b42318}
.topbar-notification-panel>footer{padding:11px 16px;border-top:1px solid #e6ebf1;background:#fbfcfe;text-align:right}
.topbar-notification-panel>footer a{color:#2f6fed;font-size:10px;font-weight:850;text-decoration:none}

@media(max-width:1180px){.topbar:not(.topbar-platform){grid-template-columns:minmax(150px,.7fr) minmax(250px,1.4fr) auto minmax(190px,.9fr)}}
@media(max-width:900px){.topbar:not(.topbar-platform){grid-template-areas:"company bell user" "search search search";grid-template-columns:minmax(0,1fr) auto auto}.topbar-notification-center{grid-area:bell}.topbar-notification-panel{right:-64px}.topbar-platform{grid-template-areas:"company user" "search search";grid-template-columns:minmax(0,1fr) auto}}
@media(max-width:720px){.topbar-notification-panel{position:fixed;top:73px;right:10px;left:10px;width:auto;max-height:calc(100dvh - 88px)}.topbar-notification-list{max-height:calc(100dvh - 205px)}.topbar-bell{width:40px;height:40px}.user-menu .language-form{display:none}}

/* Owner dashboard: employee-portal events */
.dashboard-employee-portal{border-color:#d9e5f4;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)}.dashboard-employee-portal.has-attention{box-shadow:0 12px 32px rgba(23,56,99,.08)}.dashboard-employee-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;padding:0 20px 18px}.dashboard-employee-summary>a{display:flex;align-items:center;gap:11px;min-height:82px;padding:14px;border:1px solid #e1e9f3;border-radius:15px;background:#f8fafc;color:#172944;text-decoration:none;transition:transform .16s,border-color .16s,box-shadow .16s}.dashboard-employee-summary>a:hover{transform:translateY(-1px);border-color:#aec8ea;box-shadow:0 9px 22px rgba(16,33,62,.08)}.dashboard-employee-summary>a>span{display:grid;place-items:center;width:39px;height:39px;flex:0 0 39px;border-radius:12px;background:#edf3fa;color:#315c92;font-weight:900}.dashboard-employee-summary>a>div{display:flex;min-width:0;flex-direction:column}.dashboard-employee-summary strong{font-size:22px;line-height:1}.dashboard-employee-summary small{margin-top:5px;color:#6a7890}.dashboard-employee-summary>a.attention{background:#fffaf0;border-color:#f1dfb5}.dashboard-employee-summary>a.attention>span{background:#fff0c9;color:#8f6200}.dashboard-employee-summary>a.critical{background:#fff5f5;border-color:#efcccc}.dashboard-employee-summary>a.critical>span{background:#fee5e5;color:#b02828}.dashboard-employee-events{margin:0 20px 20px;border:1px solid #e1e9f3;border-radius:15px;background:#fff;overflow:hidden}.dashboard-employee-events>h3{margin:0;padding:14px 16px;border-bottom:1px solid #e8eef6;font-size:13px}.dashboard-employee-events>a{display:grid;grid-template-columns:38px minmax(0,1fr) auto 20px;align-items:center;gap:11px;padding:12px 15px;border-top:1px solid #edf1f6;color:#172944;text-decoration:none}.dashboard-employee-events>a:first-of-type{border-top:0}.dashboard-employee-events>a:hover{background:#f8fbff}.dashboard-employee-events>a>div{display:flex;min-width:0;flex-direction:column}.dashboard-employee-events>a strong,.dashboard-employee-events>a small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-employee-events>a small{margin-top:3px;color:#6d7a8e;font-size:11px}.dashboard-employee-events time{color:#758198;font-size:11px;white-space:nowrap}.dashboard-employee-event-icon{display:grid;place-items:center;width:35px;height:35px;border-radius:11px;background:#edf3fa;color:#315c92;font-weight:900}.dashboard-employee-events .priority-high .dashboard-employee-event-icon{background:#fff0c9;color:#8c5b00}.dashboard-employee-events .priority-critical .dashboard-employee-event-icon{background:#fee5e5;color:#ae2626}.dashboard-employee-events>a>b{color:#8b98aa}@media(max-width:980px){.dashboard-employee-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.dashboard-employee-summary{grid-template-columns:1fr 1fr;padding:0 14px 14px}.dashboard-employee-summary>a{min-height:74px;padding:11px}.dashboard-employee-events{margin:0 14px 14px}.dashboard-employee-events>a{grid-template-columns:34px minmax(0,1fr) 16px}.dashboard-employee-events time{display:none}}@media(max-width:430px){.dashboard-employee-summary{grid-template-columns:1fr}}

/* Compact, scroll-safe owner navigation */
.sidebar{display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}
.sidebar nav{gap:2px!important;margin-top:14px!important;padding-bottom:18px}
.sidebar a{padding:8px 11px!important;min-height:36px;box-sizing:border-box}
.sidebar .nav-title{margin:14px 11px 4px!important}
.employee-portal-sidebar-link{margin:0!important}

/* Settings visibility: author display rules must not override the hidden attribute. */
.settings-savebar[hidden],.heading-actions[hidden]{display:none!important}


/* Unified owner navigation */
.sidebar{width:auto}.sidebar-brand{padding-bottom:18px}.sidebar nav{gap:2px!important;margin-top:12px!important}.sidebar a{min-height:36px;padding:8px 12px!important;border-radius:9px;font-size:13.5px;justify-content:flex-start!important;line-height:1.25}.sidebar a:hover{background:rgba(255,255,255,.065);color:#fff}.sidebar a.active{background:linear-gradient(135deg,#356ec6,#2b5fb4);box-shadow:0 5px 14px rgba(0,0,0,.12)}.sidebar .nav-title{margin:15px 12px 4px!important;color:#7893bd;font-size:9px;letter-spacing:.14em}.sidebar .employee-portal-sidebar-icon{display:none!important}.sidebar .employee-portal-sidebar-link{gap:0!important;font-weight:inherit!important}.sidebar nav>a:last-child{margin-bottom:8px}

/* Update 141: company branding previews.
   Logo and signature use the same larger viewport and are always fitted inside it
   without cropping or changing the source aspect ratio. */
.settings-page .branding-grid{gap:22px}
.settings-page .branding-card{min-width:0;padding:20px;gap:14px}
.settings-page .branding-preview,
.settings-page .branding-preview.signature{
  position:relative;
  display:grid;
  place-items:center;
  box-sizing:border-box;
  height:300px;
  padding:0;
  overflow:hidden;
}
.settings-page .branding-preview > img{
  position:absolute!important;
  inset:22px!important;
  display:block!important;
  width:calc(100% - 44px)!important;
  height:calc(100% - 44px)!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center center!important;
}
@media(max-width:1000px){
  .settings-page .branding-preview,
  .settings-page .branding-preview.signature{height:280px}
}
@media(max-width:720px){
  .settings-page .branding-card{padding:16px}
  .settings-page .branding-preview,
  .settings-page .branding-preview.signature{height:230px}
  .settings-page .branding-preview > img{
    inset:16px!important;
    width:calc(100% - 32px)!important;
    height:calc(100% - 32px)!important;
  }
}

/* Update 107: standalone PDF/report viewer - explicit grid areas prevent fixed/hidden widget hosts from creating implicit rows and pushing the report below the fold. */
.pdf-viewer-page{height:100dvh;min-height:0;overflow:hidden}
.pdf-viewer-page .content{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr);grid-template-areas:"viewer-topbar" "viewer-heading" "viewer-pdf";height:100dvh;min-height:0;overflow:hidden}
.pdf-viewer-page .content>.topbar{grid-area:viewer-topbar}
.pdf-viewer-page .content>.pdf-viewer-heading{grid-area:viewer-heading;align-items:flex-end;padding-top:18px;padding-bottom:14px}
.pdf-viewer-page .content>.pdf-viewer-shell{grid-area:viewer-pdf;height:auto;min-height:0;margin-bottom:18px}
@media(max-width:900px){.pdf-viewer-page{height:auto;min-height:100vh;overflow:auto}.pdf-viewer-page .content{display:block;height:auto;min-height:100vh;overflow:visible}.pdf-viewer-page .content>.pdf-viewer-shell{height:76vh;margin-bottom:20px}}
@media(max-width:720px){.pdf-viewer-page .content>.pdf-viewer-shell{height:72vh}}

/* Stavix v2 update 113: document editor history */
.document-history-actions{display:flex;align-items:center;gap:6px;margin-left:auto}.document-history-button{display:inline-flex!important;align-items:center;gap:6px;min-height:36px;padding:0 10px!important;border:1px solid #d9e0e9!important;border-radius:9px!important;background:#fff!important;color:#334155!important;font-size:12px!important;font-weight:800!important;box-shadow:none!important}.document-history-button:hover:not(:disabled){background:#f6f8fb!important;border-color:#bdc9d8!important}.document-history-button:disabled{opacity:.38;cursor:not-allowed!important}.document-history-button span{font-size:17px;line-height:1}@media(max-width:900px){.document-history-actions{order:3;width:100%;margin-left:0}.document-history-button{flex:1;justify-content:center}}

/* Stavix v2 update 113: active project switch */
.project-active-toggle{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 11px;border:1px solid #dbe2eb;border-radius:9px;background:#fff;color:#475569;font-size:12px;font-weight:800;white-space:nowrap}.project-active-toggle input{width:16px;height:16px;margin:0;accent-color:#1f5fc4}

/* Update 113: selectable PDF output variants */
.pdf-output-switcher{display:flex;align-items:center;gap:12px;margin:-4px 0 14px;padding:10px 12px;border:1px solid var(--border,#e6e8eb);border-radius:12px;background:var(--surface,#fff);font-size:13px}.pdf-output-switcher>span{font-weight:700;white-space:nowrap}.pdf-output-switcher>div{display:flex;gap:7px;flex-wrap:wrap}.pdf-output-switcher a{display:inline-flex;align-items:center;min-height:32px;padding:6px 10px;border:1px solid var(--border,#e6e8eb);border-radius:9px;color:inherit;text-decoration:none;background:var(--surface,#fff)}.pdf-output-switcher a:hover{border-color:#aeb4bd}.pdf-output-switcher a.is-active{font-weight:700;border-color:#222;background:#f4f4f2}@media(max-width:760px){.pdf-output-switcher{align-items:flex-start;flex-direction:column}.pdf-output-switcher>div{width:100%}.pdf-output-switcher a{flex:1 1 auto;justify-content:center}}

/* Update 124: project document/source and customer UX. */
.project-documents-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.project-documents-heading-actions .primary-button,.project-documents-heading-actions .secondary-button{width:auto}.source-quote-badge{display:inline-flex;align-items:center;width:max-content;margin-top:2px;padding:3px 7px;border-radius:999px;background:#e8f0ff;color:#285fbf;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.035em}.source-quotes-form{display:grid;gap:14px}.project-source-quote-list{display:grid;gap:8px;max-height:min(52vh,480px);overflow:auto;padding:18px 22px}.source-quote-option{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:11px;padding:13px 14px;border:1px solid #dce4ef;border-radius:11px;background:#fff;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}.source-quote-option:hover{border-color:#9dbbf4;background:#f8fbff}.source-quote-option:has(input:checked){border-color:#7aa5f8;background:#f1f6ff;box-shadow:0 0 0 2px rgba(47,111,237,.07)}.source-quote-option input{margin-top:3px}.source-quote-option span{display:grid;gap:4px}.source-quote-option strong{font-size:12px}.source-quote-option small{color:var(--muted);font-size:10px}.source-quote-auto-note{margin:0 22px;padding:10px 12px;border-radius:9px;background:#eef7ff;color:#315a8c;font-size:11px}.source-quotes-form>footer{display:flex;justify-content:flex-end;gap:9px;padding:14px 22px;border-top:1px solid var(--line)}.source-quotes-form>footer button{width:auto}
.project-customer-field{display:grid;align-content:start;gap:7px;min-width:0}.project-customer-field>.field-label{font-size:12px;font-weight:750}.project-customer-field>small{color:var(--muted);font-size:10px}.project-customer-picker{position:relative;min-width:0}.project-customer-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.project-customer-search-row>input{width:100%;height:44px;border:1px solid #ced8e5;border-radius:10px;background:#fff;padding:0 12px;font:inherit;outline:none}.project-customer-search-row>input:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,111,237,.1)}.project-customer-add{width:auto!important;white-space:nowrap}.project-customer-results{position:absolute;top:calc(100% + 6px);right:0;left:0;z-index:260;max-height:280px;overflow:auto;padding:6px;border:1px solid #d8e1ed;border-radius:11px;background:#fff;box-shadow:0 18px 42px rgba(18,39,72,.18)}.project-customer-results[hidden]{display:none}.project-customer-result{display:block;width:100%;padding:10px 11px;border:0;border-radius:8px;background:transparent;color:var(--text);font:inherit;font-size:11px;font-weight:700;text-align:left;cursor:pointer}.project-customer-result:hover,.project-customer-result:focus{background:#edf4ff;color:#1f5dc5}.project-customer-result-empty{color:var(--muted);font-weight:650}.project-customer-no-result{display:block;padding:12px;color:var(--muted);font-size:11px;text-align:center}.project-location-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.project-location-actions>small{color:#64748b}
@media(max-width:760px){.project-documents-heading-actions{display:grid;width:100%;grid-template-columns:1fr}.project-documents-heading-actions .primary-button,.project-documents-heading-actions .secondary-button{width:100%}.project-customer-search-row{grid-template-columns:1fr}.project-customer-add{width:100%!important}}
#project-customer-modal{z-index:130}
.form-hint{margin:-2px 0 2px;color:var(--muted);font-size:11px;line-height:1.5}
/* Update 132: read-only catalog material detail */
.catalog-row-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:7px}.catalog-detail-trigger{padding:7px 10px;border-radius:8px;font-size:11px}.catalog-detail-modal{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(960px,100%);max-height:92vh;overflow:hidden}.catalog-detail-body{overflow:auto;padding:22px 24px 24px;background:#f7f9fc}.catalog-detail-hero{display:grid;grid-template-columns:170px minmax(0,1fr);gap:22px;align-items:center;padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff}.catalog-detail-image-wrap{display:grid;place-items:center;width:170px;height:150px;padding:10px;border:1px solid #e2e8f0;border-radius:12px;background:#fff}.catalog-detail-image-wrap[hidden]{display:none}.catalog-detail-image-wrap img{max-width:100%;max-height:100%;object-fit:contain}.catalog-detail-identity{display:grid;gap:8px;min-width:0}.catalog-detail-identity h3{margin:0;font-size:22px;line-height:1.2}.catalog-detail-identity p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.catalog-detail-tags{display:flex;flex-wrap:wrap;gap:7px}.catalog-detail-tags span{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;border-radius:999px;background:#eef3f9;color:#44536a;font-size:10px;font-weight:800}.catalog-detail-tags span:empty{display:none}.catalog-detail-section{margin-top:14px;padding:18px;border:1px solid var(--line);border-radius:13px;background:#fff}.catalog-detail-section.muted{background:#fbfcfe}.catalog-detail-section>h3{margin:0 0 13px;font-size:13px}.catalog-detail-description{margin:0;white-space:pre-wrap;line-height:1.6;color:#344157}.catalog-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.catalog-detail-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.catalog-detail-grid>div{display:grid;gap:5px;min-height:66px;padding:11px 12px;border-radius:10px;background:#f5f7fa}.catalog-detail-grid>div.span-2{grid-column:span 2}.catalog-detail-grid span{color:var(--muted);font-size:10px;font-weight:750}.catalog-detail-grid strong{min-width:0;font-size:12px;overflow-wrap:anywhere}.catalog-detail-footer{display:flex;justify-content:flex-end;gap:10px;padding:15px 24px;border-top:1px solid var(--line);background:#fff}.catalog-detail-footer a{text-decoration:none}.catalog-detail-modal>header p[data-detail-field="readonly_note"]{color:#8a5a00}.catalog-detail-modal>header p[data-detail-field="readonly_note"]:empty{display:none}@media(max-width:760px){.catalog-detail-hero{grid-template-columns:1fr}.catalog-detail-image-wrap{width:100%;height:190px}.catalog-detail-grid,.catalog-detail-grid.four{grid-template-columns:1fr 1fr}.catalog-detail-footer{align-items:stretch;flex-direction:column}.catalog-detail-footer>*{text-align:center}}@media(max-width:520px){.catalog-detail-grid,.catalog-detail-grid.four{grid-template-columns:1fr}.catalog-detail-body{padding:14px}.catalog-detail-hero,.catalog-detail-section{padding:14px}}

/* Update 133: katalog kategorií – stromový sidebar */
.catalog-browser{display:grid;grid-template-columns:300px minmax(0,1fr);gap:18px;align-items:start}.catalog-category-sidebar{min-width:0}.catalog-category-card{position:sticky;top:88px;max-height:calc(100vh - 108px);display:grid;grid-template-rows:auto auto minmax(0,1fr);overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 6px 22px rgba(33,49,77,.06)}.catalog-category-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 16px 11px}.catalog-category-card>header>div{min-width:0;display:grid;gap:3px}.catalog-category-card>header strong{font-size:13px}.catalog-category-card>header small{color:var(--muted);font-size:10px;line-height:1.35}.catalog-category-manage{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border:1px solid #d9e1ec;border-radius:9px;background:#fff;color:#66758a;font-size:15px;cursor:pointer}.catalog-category-manage:hover{border-color:#b8c7dc;background:#f7f9fc;color:var(--text)}.catalog-category-search{display:flex;align-items:center;gap:7px;margin:0 12px 10px;padding:0 10px;border:1px solid #d6dee9;border-radius:9px;background:#fff}.catalog-category-search:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px rgba(47,111,237,.09)}.catalog-category-search>span{color:#94a0b2;font-size:17px}.catalog-category-search input{width:100%;height:38px;border:0;outline:0;background:transparent;font-size:12px}.catalog-category-nav{min-height:0;overflow:auto;padding:0 9px 12px}.catalog-category-special,.catalog-category-select{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;border:0;background:transparent;color:#354157;text-align:left;cursor:pointer}.catalog-category-special{min-height:38px;margin:2px 0;padding:7px 9px;border-radius:9px;font-size:12px;font-weight:800}.catalog-category-special small,.catalog-category-select small{flex:0 0 auto;min-width:22px;padding:2px 6px;border-radius:999px;background:#eef2f7;color:#718096;text-align:center;font-size:9px;font-weight:800}.catalog-category-special:hover,.catalog-category-select:hover{background:#f4f7fb}.catalog-category-special.active,.catalog-category-select.active{background:#edf4ff;color:#285fbf}.catalog-category-special.active small,.catalog-category-select.active small{background:#dbe9ff;color:#285fbf}.catalog-category-special.mine{margin-bottom:8px;border-bottom:1px solid transparent}.catalog-category-tree,.catalog-category-children{list-style:none;margin:0;padding:0}.catalog-category-children{padding-left:17px}.catalog-category-node-line{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;min-height:34px}.catalog-category-toggle,.catalog-category-toggle-spacer{width:22px;height:28px}.catalog-category-toggle{display:grid;place-items:center;border:0;background:transparent;color:#7c899b;font-size:17px;line-height:1;cursor:pointer;transition:transform .15s ease}.catalog-category-toggle:hover{color:#334155}.catalog-category-select{min-height:32px;padding:5px 7px;border-radius:8px;font-size:11px}.catalog-category-select span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.catalog-category-empty{margin:14px 8px;color:var(--muted);font-size:11px;line-height:1.5}.catalog-results-card{min-width:0}.catalog-result-heading{display:grid;gap:3px}.catalog-result-heading>span{color:var(--muted);font-size:10px;font-weight:650}.catalog-results-card .table-head{align-items:center}.catalog-results-card .table-tools{flex-wrap:wrap}.catalog-results-card .table-tools input{min-width:240px}.catalog-category-node[hidden]{display:none!important}@media(max-width:1100px){.catalog-browser{grid-template-columns:255px minmax(0,1fr)}.catalog-category-card{top:78px}.catalog-results-card .table-tools input{min-width:190px}}@media(max-width:860px){.catalog-browser{grid-template-columns:1fr}.catalog-category-card{position:static;max-height:420px}.catalog-category-nav{max-height:300px}.catalog-results-card .table-head{align-items:stretch;flex-direction:column;gap:10px}.catalog-results-card .table-tools{width:100%}.catalog-results-card .table-tools>*{flex:1 1 180px}}

/* Update 134: company-owned category branches + persistent category sidebar + material thumbnails */
.catalog-category-sidebar{position:sticky;top:88px;align-self:start;z-index:12}
.catalog-category-card{position:relative;top:auto;max-height:calc(100vh - 108px)}
.catalog-category-owned-group{margin:4px 0 9px;padding-bottom:8px;border-bottom:1px solid #e6ecf3}
.catalog-category-owned-root{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center}
.catalog-category-owned-root .catalog-category-special{margin:0}
.catalog-category-company-tree{padding-left:17px}
.catalog-category-shared-tree{padding-top:2px}
.catalog-product-thumb{position:relative;display:grid;place-items:center;width:52px;height:52px;overflow:hidden;border:1px solid #e0e7f0;border-radius:10px;background:#f7f9fc;color:#a2adbd}
.catalog-product-thumb img{position:relative;z-index:2;width:100%;height:100%;object-fit:contain;background:#fff}
.catalog-product-thumb-placeholder{position:absolute;inset:0;display:grid;place-items:center;font-size:22px;color:#a8b3c3}
@media(max-width:1100px){.catalog-category-sidebar{top:78px}}
@media(max-width:860px){.catalog-category-sidebar{position:sticky;top:72px;z-index:12}.catalog-category-card{position:relative;top:auto;max-height:44vh}.catalog-category-nav{max-height:none}}

/* Update 135: catalog row detail UX, Stavix image fallback and Hornbach on-demand sync */
.catalog-clickable-row{cursor:pointer}
.catalog-clickable-row>td{transition:background .14s ease}
.catalog-clickable-row:hover>td{background:#f8fbff}
.catalog-clickable-row:active>td{background:#f2f7ff}
.catalog-product-thumb img.is-fallback,.catalog-detail-image-wrap img.is-fallback{object-fit:contain;padding:8px;background:#eef4ff;box-sizing:border-box}
.catalog-detail-hero.work-detail{grid-template-columns:minmax(0,1fr)}
.catalog-detail-material-links{display:grid;gap:8px}
.catalog-detail-material-link{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 12px;border:1px solid #e1e8f1;border-radius:10px;background:#f8fafc}
.catalog-detail-material-link>div:first-child{display:grid;gap:3px;min-width:0}
.catalog-detail-material-link strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}
.catalog-detail-material-link small{color:var(--muted);font-size:10px}
.catalog-detail-material-usage{flex:0 0 auto;color:#334155;font-size:11px;font-weight:800;white-space:nowrap}
.catalog-detail-footer form{margin:0}
@media(max-width:640px){.catalog-detail-material-link{align-items:flex-start;flex-direction:column}.catalog-detail-material-usage{white-space:normal}}

/* Update 136: collapsible card sidebar + Stavix brand mark + per-item icons */
.sidebar-brand{gap:13px;padding:2px 8px 18px!important;min-height:72px}
.sidebar-brand-logo{display:block;flex:0 0 48px;width:48px;height:48px;object-fit:contain;border-radius:14px;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.sidebar-brand-name{font-size:22px;line-height:1;color:#fff;letter-spacing:-.02em;white-space:nowrap}
.sidebar-brand-name small{margin-left:2px;color:#71a5ff;font-size:9px;letter-spacing:.03em;vertical-align:baseline}
.sidebar .sidebar-navigation{display:flex!important;flex-direction:column;gap:7px!important;margin-top:14px!important;padding:0 0 18px!important}
.sidebar .sidebar-home-link{margin:0 2px 2px;min-height:40px!important;padding:9px 10px!important;border:1px solid transparent}
.sidebar-group{margin:0 2px;border:1px solid rgba(255,255,255,.065);border-radius:12px;background:rgba(255,255,255,.022);overflow:hidden;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}
.sidebar-group:hover{border-color:rgba(255,255,255,.1)}
.sidebar-group.is-open,.sidebar-group.has-active{background:rgba(255,255,255,.032);border-color:rgba(111,158,229,.16)}
.sidebar-group.has-active{box-shadow:inset 2px 0 0 rgba(89,142,226,.65)}
.sidebar-group-toggle{width:100%;min-height:43px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0;padding:9px 10px;border:0;background:transparent;color:#819bc4;text-align:left;cursor:pointer}
.sidebar-group-toggle:hover{background:rgba(255,255,255,.035);color:#a8bfe1}
.sidebar-group-toggle:focus-visible,.sidebar .sidebar-nav-link:focus-visible{outline:2px solid rgba(112,162,255,.9);outline-offset:-2px}
.sidebar-group-heading{min-width:0;display:flex;align-items:center;gap:9px;font-size:9.5px;font-weight:850;line-height:1.2;letter-spacing:.13em;text-transform:uppercase}
.sidebar-group-heading>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sidebar-group-icon{flex:0 0 17px;width:17px;height:17px;color:#78a2df;opacity:.9}
.sidebar-group-chevron{flex:0 0 15px;width:15px;height:15px;color:#6f88ad;transition:transform .18s ease,color .18s ease}
.sidebar-group.is-open .sidebar-group-chevron{transform:rotate(180deg);color:#9eb8df}
.sidebar-group-items{display:grid;gap:1px;padding:4px 5px 6px;border-top:1px solid rgba(255,255,255,.055)}
.sidebar-group-items[hidden]{display:none!important}
.sidebar .sidebar-nav-link{position:relative;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important;min-height:34px!important;padding:7px 8px!important;border-radius:8px;font-size:13px!important;color:#c5d3e6}
.sidebar .sidebar-nav-link:hover{background:rgba(255,255,255,.06);color:#fff}
.sidebar .sidebar-nav-link.active{background:linear-gradient(135deg,#356ec6,#2b5fb4);color:#fff;box-shadow:0 5px 14px rgba(0,0,0,.12)}
.sidebar-item-icon{flex:0 0 17px;width:17px;height:17px;color:#85a1ca;opacity:.88;transition:color .15s ease,opacity .15s ease}
.sidebar .sidebar-nav-link:hover .sidebar-item-icon{color:#cfe0f7;opacity:1}
.sidebar .sidebar-nav-link.active .sidebar-item-icon{color:#fff;opacity:1}
.sidebar-item-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sidebar .license-limited .sidebar-item-icon{opacity:.62}
@media(max-width:720px){.sidebar-brand-logo{width:46px;height:46px}.sidebar-brand-name{font-size:21px}.sidebar .sidebar-navigation{gap:7px!important}.sidebar-group-toggle{min-height:45px}.sidebar .sidebar-nav-link{min-height:38px!important}}

/* Update 138: sidebar contrast & readability */
.sidebar{background:#10284a}
.sidebar .sidebar-navigation{gap:8px!important}
.sidebar-group{border-color:rgba(255,255,255,.09);background:rgba(255,255,255,.055);box-shadow:0 1px 0 rgba(255,255,255,.018);transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}
.sidebar-group:hover{border-color:rgba(111,158,229,.24)}
.sidebar-group.is-open,.sidebar-group.has-active{background:rgba(255,255,255,.075);border-color:rgba(111,158,229,.28)}
.sidebar-group.has-active{box-shadow:inset 2px 0 0 rgba(111,164,245,.9),0 3px 12px rgba(0,0,0,.08)}
.sidebar-group-toggle{min-height:45px;padding:10px 11px;color:#bfd4ff;transition:background .15s ease,color .15s ease}
.sidebar-group-toggle:hover{background:rgba(68,128,224,.14);color:#e6efff}
.sidebar-group.is-open .sidebar-group-toggle,.sidebar-group.has-active .sidebar-group-toggle{color:#dce8ff}
.sidebar-group-heading{gap:9px;font-size:12px;font-weight:700;letter-spacing:.055em}
.sidebar-group-icon{width:18px;height:18px;flex-basis:18px;color:#bfd4ff;opacity:1}
.sidebar-group.is-open .sidebar-group-icon,.sidebar-group.has-active .sidebar-group-icon{color:#d5e4ff}
.sidebar-group-chevron{width:16px;height:16px;flex-basis:16px;color:#a9bee0;opacity:.95}
.sidebar-group.is-open .sidebar-group-chevron{color:#dce8ff}
.sidebar-group-items{gap:2px;padding:5px 6px 7px 12px;border-top-color:rgba(255,255,255,.075)}
.sidebar .sidebar-nav-link{min-height:36px!important;padding:8px 9px!important;color:#e8eef8;font-size:13.5px!important;font-weight:500;transition:background .15s ease,color .15s ease,box-shadow .15s ease}
.sidebar .sidebar-nav-link:hover{background:rgba(255,255,255,.07);color:#fff}
.sidebar .sidebar-nav-link.active{background:#356fcc;color:#fff;font-weight:600;box-shadow:0 3px 10px rgba(0,0,0,.15)}
.sidebar-item-icon{color:#b9c9e3;opacity:1;transition:color .15s ease,opacity .15s ease}
.sidebar .sidebar-nav-link:hover .sidebar-item-icon,.sidebar .sidebar-nav-link.active .sidebar-item-icon{color:#fff;opacity:1}
.sidebar .sidebar-home-link{color:#e8eef8;font-weight:500;transition:background .15s ease,color .15s ease,border-color .15s ease}
.sidebar .sidebar-home-link:hover{background:rgba(255,255,255,.07);color:#fff;border-color:rgba(255,255,255,.075)}
.sidebar .sidebar-home-link.active{background:#356fcc;color:#fff;font-weight:600;box-shadow:0 3px 10px rgba(0,0,0,.15)}
.sidebar .sidebar-home-link .sidebar-item-icon{color:#b9c9e3;opacity:1}
.sidebar .sidebar-home-link:hover .sidebar-item-icon,.sidebar .sidebar-home-link.active .sidebar-item-icon{color:#fff}
.sidebar .license-limited{color:#c8d4e6}
.sidebar .license-limited .sidebar-item-icon{color:#a9bad2;opacity:.8}
@media(max-width:720px){.sidebar-group-heading{font-size:12px}.sidebar-group-toggle{min-height:47px}.sidebar .sidebar-nav-link{min-height:39px!important;font-size:13.5px!important}}


/* Update 140: utility links stay free at the very bottom of the sidebar */
.sidebar .sidebar-bottom-link{margin:0 2px;min-height:40px!important;padding:9px 10px!important}

/* Update 142: unified official Stavix branding */
.login-brand-logo{display:block;width:min(470px,100%);max-height:190px;margin:0 0 30px;object-fit:contain;object-position:left center}
.account-brand-symbol{display:block;width:48px;height:48px;flex:0 0 48px;object-fit:contain;border-radius:14px;box-shadow:0 10px 28px rgba(47,111,237,.20)}
.sidebar-brand{justify-content:space-between;gap:10px!important}
.sidebar-brand-wordmark{display:block;min-width:0;width:190px;max-width:calc(100% - 42px);height:68px;object-fit:contain;object-position:left center}
@media(max-width:980px){.login-brand-logo{margin-left:auto;margin-right:auto;object-position:center}}
@media(max-width:720px){.sidebar-brand-wordmark{width:178px;height:62px}}


/* Update 144: crisp transparent branding on dark UI + login website link */
.login-brand-logo-link{display:inline-block;max-width:100%;line-height:0}
.login-brand-logo{width:min(530px,100%);max-height:220px;margin-bottom:28px}
.login-site-link{display:flex;align-items:center;justify-content:center;gap:6px;width:max-content;margin:18px auto 0;color:#2f6fed;text-decoration:none;font-size:13px;font-weight:800}
.login-site-link:hover{text-decoration:underline}
.sidebar-brand-wordmark{width:205px;max-width:calc(100% - 38px);height:74px}
@media(max-width:720px){.sidebar-brand-wordmark{width:192px;height:68px}}

/* Update 145: flat always-visible sidebar navigation, separated only by lines */
.sidebar .sidebar-navigation{gap:0!important;margin-top:10px!important;padding:0 0 20px!important}
.sidebar .sidebar-nav-link{margin:1px 2px!important;min-height:34px!important;padding:7px 10px!important;border-radius:9px!important;font-size:13.25px!important;line-height:1.25}
.sidebar .sidebar-home-link,.sidebar .sidebar-bottom-link{margin:1px 2px!important;min-height:34px!important;padding:7px 10px!important}
.sidebar-divider{display:block;flex:0 0 1px;width:auto;height:1px;margin:8px 11px;background:rgba(207,224,248,.16);border:0;pointer-events:none}
.sidebar-item-icon{width:18px;height:18px;flex-basis:18px;color:#bfd0e8}
.sidebar .sidebar-nav-link:hover .sidebar-item-icon,.sidebar .sidebar-nav-link.active .sidebar-item-icon{color:#fff}
.sidebar .sidebar-nav-link.active{box-shadow:0 3px 10px rgba(0,0,0,.14)}
@media(max-width:720px){.sidebar .sidebar-navigation{margin-top:8px!important}.sidebar .sidebar-nav-link,.sidebar .sidebar-home-link,.sidebar .sidebar-bottom-link{min-height:38px!important;padding:8px 10px!important;font-size:13.5px!important}.sidebar-divider{margin:9px 11px}}

/* Update 173: linked drawing shortcut uses the same neutral icon control as other task actions. */
a.workplan-icon-button{text-decoration:none}

/* Update 208.2: native quote bootstrap fallback. Hidden as soon as the existing editor hydrates. */
.quote-native-fallback{margin:0 24px 14px;padding:14px 16px;border:1px solid #dce4ef;border-radius:12px;background:#fff}.quote-native-fallback[hidden]{display:none}.quote-native-fallback article{padding:8px 0;border-top:1px solid #edf0f5}.quote-native-fallback article:first-of-type{border-top:0}.quote-native-fallback ul{margin:7px 0 0;padding-left:20px;color:var(--muted);font-size:12px;line-height:1.5}
/* Update 209.3 — paginated catalog */
.catalog-pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-top:1px solid var(--line);background:#fff}.catalog-pagination-range{color:var(--muted);font-size:11px;font-weight:700}.catalog-pagination>label{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px;font-weight:700}.catalog-pagination select{height:36px;min-width:74px;border:1px solid #ced8e5;border-radius:8px;padding:0 28px 0 10px;background:#fff;color:var(--text)}.catalog-pagination-actions{display:flex;align-items:center;gap:10px}.catalog-pagination-actions>span{min-width:110px;color:var(--muted);text-align:center;font-size:11px;font-weight:750}.catalog-pagination-actions .secondary-button.disabled{pointer-events:none;opacity:.45}.material-picker-pagination{display:flex;align-items:center;justify-content:center;gap:12px;padding:10px 24px;border-top:1px solid var(--line);background:#fff}.material-picker-pagination>span{min-width:120px;color:var(--muted);text-align:center;font-size:11px;font-weight:750}.material-picker-pagination button:disabled{opacity:.45;cursor:not-allowed}@media(max-width:720px){.catalog-pagination{align-items:stretch;flex-direction:column}.catalog-pagination-actions{justify-content:space-between}.catalog-pagination-actions .secondary-button{flex:1}.material-picker-pagination{padding-left:14px;padding-right:14px}}

/* Update 209.5: catalog modal text follows Stavix neutral-text rule. */
#catalog-item-modal .eyebrow,#work-material-picker-modal .eyebrow,#quick-material-modal .eyebrow{color:#66758a}
#catalog-item-modal .code-pill,#work-material-picker-modal .code-pill,#quick-material-modal .code-pill{background:#eef2f7;color:#4b5563}

/* Update 209.6 — catalog work modal polish + neutral text */
#catalog-item-modal .modal{width:min(1180px,calc(100vw - 40px));max-height:90vh;overflow:hidden}
#catalog-item-modal .modal>header{padding:18px 24px}
#catalog-item-modal .modal>header .eyebrow,
#catalog-detail-modal .modal>header .eyebrow,
#work-material-picker-modal .modal>header .eyebrow,
#quick-material-modal .modal>header .eyebrow{color:#667085!important}
#catalog-item-modal .form-section-title{color:#566174!important;font-size:10px;letter-spacing:.09em;padding:7px 0 6px;margin-top:0}
#catalog-item-modal .code-pill,
#catalog-detail-modal .code-pill,
#work-material-picker-modal .code-pill,
#quick-material-modal .code-pill{background:#eef2f6!important;color:#4b5563!important}
#catalog-item-modal .form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 14px;padding:18px 24px 0;max-height:calc(90vh - 82px);overflow:auto;align-items:start}
#catalog-item-modal .form-grid>.form-section-title{grid-column:1/-1}
#catalog-item-modal .form-grid>.span-2{grid-column:1/-1}
#catalog-item-modal .form-grid>div:empty{display:none}
#catalog-item-modal .form-grid label{gap:6px;font-size:12px}
#catalog-item-modal .form-grid input,
#catalog-item-modal .form-grid select{height:42px;min-height:42px}
#catalog-item-modal .form-grid textarea{min-height:68px;max-height:130px}
#catalog-item-modal .form-grid .input-suffix{height:42px}
#catalog-item-modal .form-grid .input-suffix input{height:40px;min-height:40px}
#catalog-item-modal .work-material-editor{gap:8px;padding-bottom:2px}
#catalog-item-modal .work-material-link-row{padding:9px 10px;gap:8px}
#catalog-item-modal .form-grid>footer{position:sticky;bottom:0;z-index:4;margin:2px -24px 0;padding:14px 24px;border-top:1px solid var(--line);background:#fff}
#catalog-detail-modal.catalog-detail-modal{width:min(1040px,calc(100vw - 40px));max-height:88vh}
#catalog-detail-modal .catalog-detail-body{padding:16px 20px 18px}
#catalog-detail-modal .catalog-detail-hero{gap:16px;padding:14px 16px}
#catalog-detail-modal .catalog-detail-identity{gap:6px}
#catalog-detail-modal .catalog-detail-identity h3{font-size:20px}
#catalog-detail-modal .catalog-detail-section{margin-top:10px;padding:14px 16px}
#catalog-detail-modal .catalog-detail-section>h3{margin-bottom:10px}
#catalog-detail-modal .catalog-detail-grid>div{min-height:58px;padding:9px 11px}
#catalog-detail-modal .catalog-detail-footer{padding:12px 20px}
@media(max-width:1050px){#catalog-item-modal .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){#catalog-item-modal .modal,#catalog-detail-modal.catalog-detail-modal{width:calc(100vw - 14px)}#catalog-item-modal .form-grid{grid-template-columns:1fr;padding:14px 16px 0}#catalog-item-modal .form-grid>footer{margin-left:-16px;margin-right:-16px;padding:12px 16px}#catalog-item-modal .form-grid>.span-2{grid-column:auto}}
#catalog-detail-modal .catalog-detail-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px 20px 18px}
#catalog-detail-modal .catalog-detail-hero{grid-column:1/-1;margin:0}
#catalog-detail-modal .catalog-detail-hero.work-detail{grid-template-columns:minmax(0,1fr)}
#catalog-detail-modal .catalog-detail-section{margin-top:0}
#catalog-detail-modal .catalog-detail-section[data-detail-work-only],
#catalog-detail-modal .catalog-detail-section.muted{grid-column:1/-1}
@media(max-width:760px){#catalog-detail-modal .catalog-detail-body{grid-template-columns:1fr}#catalog-detail-modal .catalog-detail-hero,#catalog-detail-modal .catalog-detail-section[data-detail-work-only],#catalog-detail-modal .catalog-detail-section.muted{grid-column:auto}}

/* Update 209.9 — quote editor catalog is server-paged; keep the picker compact. */
.catalog-picker-pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 20px;border-top:1px solid var(--line);background:#fafbfd}.catalog-picker-pagination>span{color:var(--muted);font-size:12px;font-weight:750}.catalog-picker-pagination .secondary-button{min-width:112px;justify-content:center}.catalog-picker-pagination .secondary-button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:900px){.catalog-picker-pagination{padding:12px 16px}.catalog-picker-pagination .secondary-button{min-width:auto}}

/* 209.64.2 quote workflow compact/sticky refinement */
.quote-workbench-page .quote-floating-tools{top:12px;scroll-margin-top:96px}
.quote-workbench-page .quote-inspector{top:12px;max-height:calc(100vh - 24px)}
.quote-workbench-page #inspector-content{gap:8px;padding:11px}
.quote-workbench-page #inspector-content>label,.quote-workbench-page .inspector-grid label{gap:4px}
.quote-workbench-page #inspector-content>label textarea{min-height:48px;max-height:90px;padding:7px 8px}
.quote-workbench-page .inspector-grid{gap:7px}
.quote-workbench-page .inspector-material-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.quote-workbench-page .inspector-material-actions button{min-height:34px;padding:6px 8px;font-size:10px}
.quote-offer-summary-compact{position:sticky;bottom:10px;z-index:34;margin:10px 24px 18px;padding:7px 12px;border:1px solid #d9e2ee;border-radius:11px;background:rgba(255,255,255,.97);box-shadow:0 10px 30px rgba(20,42,76,.13);backdrop-filter:blur(8px)}
.quote-summary-row{display:flex;align-items:center;gap:16px;min-height:30px;font-size:11px}
.quote-summary-row+ .quote-summary-row{border-top:1px solid #e6ebf1}
.quote-summary-row>strong:first-child{min-width:190px;color:var(--navy)}
.quote-summary-row span{color:var(--muted)}
.quote-summary-row b{color:var(--navy)}
.quote-summary-row .summary-total{margin-left:auto;white-space:nowrap}
.quote-summary-row.offer>strong:first-child{text-transform:uppercase}
.quote-price-history-hint{position:fixed;z-index:1800;padding:10px 32px 10px 11px;border:1px solid #d8e2ef;border-radius:10px;background:#fff;box-shadow:0 14px 34px rgba(16,39,72,.18);font-size:10px}
.quote-price-history-hint[hidden]{display:none!important}
.quote-price-history-hint>strong{display:block;margin-bottom:7px;color:var(--navy);font-size:10px}
.quote-price-history-hint>button{position:absolute;top:5px;right:6px;width:24px;height:24px;border:0;border-radius:7px;background:#f0f3f7;color:#6f7a89;cursor:pointer;font-size:16px}
.quote-price-history-hint>div{display:grid;grid-template-columns:1fr 1fr;gap:5px 14px}
.quote-price-history-hint span{display:flex;justify-content:space-between;gap:8px;color:var(--muted)}
.quote-price-history-hint b{color:var(--navy);white-space:nowrap}
@media(max-width:1250px){.quote-workbench-page .quote-inspector{position:sticky;top:12px;max-height:calc(100vh - 24px)}}
@media(max-width:900px){.quote-workbench-page .quote-inspector{position:static;max-height:none}.quote-offer-summary-compact{margin-left:20px;margin-right:20px}.quote-summary-row{flex-wrap:wrap;gap:8px 14px}.quote-summary-row>strong:first-child{width:100%;min-width:0}.quote-summary-row .summary-total{margin-left:0}}
@media(max-width:720px){.quote-workbench-page .quote-floating-tools{top:8px}.quote-offer-summary-compact{margin-left:12px;margin-right:12px}.quote-price-history-hint{right:10px!important;left:10px!important;width:auto!important}.quote-price-history-hint>div{grid-template-columns:1fr}}

/* 209.64.7 document decision surface */
.document-approval-block{margin:12px 0;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff;display:grid;gap:9px}.document-approval-block.compact{margin:8px 0 0;padding:9px;min-width:260px}.document-approval-head strong{font-size:12px;color:var(--text);font-weight:600}.document-approval-entry{padding:9px 10px;border:1px solid #e6ebf1;border-radius:9px;background:#fafbfd}.document-approval-entry.approved{background:#f4fbf7;border-color:#cfe9da}.document-approval-entry.rejected{background:#fff7f6;border-color:#f0d0cc}.document-approval-entry.pending{background:#fffaf0;border-color:#ead9ad}.document-approval-state{display:grid;gap:3px}.document-approval-state>span,.document-approval-state small{font-size:11px;color:var(--muted)}.document-approval-state>strong{font-size:12px;font-weight:600;color:var(--text)}.document-approval-state p{margin:3px 0 0;font-size:11px;line-height:1.4}.document-manual-decision{margin-top:8px}.document-manual-decision summary{cursor:pointer;font-size:11px;font-weight:600;color:var(--text)}.document-manual-decision form{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:9px}.document-manual-decision label{display:grid;gap:4px;font-size:11px;color:var(--muted)}.document-manual-decision input,.document-manual-decision select,.document-manual-decision textarea{width:100%;border:1px solid #ced8e5;border-radius:8px;background:#fff;color:var(--text);font:inherit;padding:8px}.document-manual-decision select,.document-manual-decision input{min-height:36px}.document-manual-decision .span-2{grid-column:1/-1}.document-confirm-email{display:flex!important;grid-template-columns:18px 1fr!important;align-items:center;color:var(--text)!important}.document-confirm-email input{width:auto;min-height:0}.document-manual-actions{display:flex;justify-content:flex-end;gap:7px}.hub-table .document-approval-block.compact{max-width:360px}.pdf-viewer-page .document-approval-block{margin:0 0 14px}@media(max-width:760px){.document-manual-decision form{grid-template-columns:1fr}.document-manual-decision .span-2{grid-column:auto}}

/* 209.64.8: compact document decision in Obchod a doklady lists */
.document-approval-compact-line{margin-top:5px;display:flex;align-items:center;gap:5px;min-width:0;white-space:nowrap;font-size:11px;line-height:1.25;color:var(--muted)}
.document-approval-compact-line strong{font-size:11px;font-weight:600;color:var(--text)}
.document-approval-compact-line small{font-size:10px;color:var(--muted);overflow:hidden;text-overflow:ellipsis}
.document-approval-dot{width:7px;height:7px;border-radius:50%;flex:0 0 7px;background:#9aa6b2}
.document-approval-compact-line.approved .document-approval-dot{background:#36a269}
.document-approval-compact-line.rejected .document-approval-dot{background:#c85b52}
.document-approval-compact-line.pending .document-approval-dot{background:#c59632}
.document-manual-decision.compact{margin:0 0 0 3px;position:relative;flex:0 0 auto}
.document-manual-decision.compact>summary{font-size:10px;font-weight:600;white-space:nowrap}
.document-manual-decision.compact[open]>form{position:absolute;z-index:30;right:0;top:20px;width:360px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 12px 32px rgba(15,23,42,.14)}
@media(max-width:760px){.document-approval-compact-line{white-space:normal;flex-wrap:wrap}.document-manual-decision.compact[open]>form{position:fixed;left:12px;right:12px;top:auto;width:auto}}

/* Update 209.64.13 — decision editor visibility + revocation */
.document-approval-compact-line{flex-wrap:wrap;overflow:visible}
.document-manual-decision.compact[open],.document-decision-revoke.compact[open]{flex:1 0 100%;margin:6px 0 0 12px;min-width:0}
.document-manual-decision.compact[open]>summary,.document-decision-revoke.compact[open]>summary{margin-bottom:7px}
.document-manual-decision.compact[open]>form,.document-decision-revoke.compact[open]>form{position:static!important;z-index:auto;right:auto;top:auto;width:min(520px,100%);box-sizing:border-box;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:none}
.document-decision-revoke{margin-top:8px}.document-decision-revoke summary{cursor:pointer;font-size:11px;font-weight:600;color:var(--text)}
.document-decision-revoke form{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:9px}.document-decision-revoke label{display:grid;gap:4px;font-size:11px;color:var(--muted)}.document-decision-revoke textarea{width:100%;box-sizing:border-box;border:1px solid #ced8e5;border-radius:8px;background:#fff;color:var(--text);font:inherit;padding:8px}.document-decision-revoke .span-2{grid-column:1/-1}
.document-decision-revoke.compact{margin:0 0 0 3px;position:relative;flex:0 0 auto}.document-decision-revoke.compact>summary{font-size:10px;font-weight:600;white-space:nowrap}
@media(max-width:760px){.document-decision-revoke form{grid-template-columns:1fr}.document-decision-revoke .span-2{grid-column:auto}.document-manual-decision.compact[open],.document-decision-revoke.compact[open]{margin-left:0}}

/* 209.64.16 — manual document decision popover */
.document-confirm-email{display:grid!important;grid-template-columns:18px minmax(0,1fr)!important;align-items:start!important;gap:8px!important;min-width:0;white-space:normal!important;line-height:1.35!important;overflow-wrap:anywhere}
.document-confirm-email input[type=checkbox]{width:auto!important;min-height:0!important;margin:2px 0 0!important;flex:0 0 auto}
.document-confirm-email>span{min-width:0;white-space:normal;overflow-wrap:anywhere}
.document-approval-compact-line{flex-wrap:nowrap!important;overflow:visible!important}
.document-manual-decision.compact,.document-decision-revoke.compact{position:static!important;flex:0 0 auto!important;margin:0 0 0 3px!important;min-width:0!important}
.document-manual-decision.compact[open],.document-decision-revoke.compact[open]{flex:0 0 auto!important;margin:0 0 0 3px!important;min-width:0!important}
.document-manual-decision.compact[open]>summary,.document-decision-revoke.compact[open]>summary{margin:0!important}
.document-manual-decision.compact[open]>form,.document-decision-revoke.compact[open]>form{position:fixed!important;z-index:1200!important;left:var(--decision-popover-left,12px)!important;top:var(--decision-popover-top,12px)!important;width:min(520px,calc(100vw - 24px))!important;max-height:calc(100vh - 24px)!important;box-sizing:border-box!important;margin:0!important;padding:14px!important;overflow:auto!important;border:1px solid var(--line)!important;border-radius:12px!important;background:#fff!important;box-shadow:0 18px 46px rgba(15,23,42,.22)!important}
@media(max-width:760px){.document-approval-compact-line{flex-wrap:wrap!important}.document-manual-decision.compact[open]>form,.document-decision-revoke.compact[open]>form{width:calc(100vw - 24px)!important;max-height:calc(100vh - 24px)!important}}

/* 209.64.21 — RFQ bridge layout parity, supplier workflow and dispatch polish. */
.quote-status.sending{background:#fff3db;color:#936500}
.rfq-dispatch-badge{display:inline-flex;align-items:center;width:max-content;padding:3px 8px;border-radius:999px;background:#eef2f7;color:#52606d;font-size:10px;font-weight:800}
.rfq-dispatch-badge.pending,.rfq-dispatch-badge.processing,.rfq-dispatch-badge.queued{background:#fff3db;color:#936500}
.rfq-dispatch-badge.sent,.rfq-dispatch-badge.received,.rfq-dispatch-badge.selected{background:#e3f5ed;color:#14704e}
.rfq-dispatch-badge.failed{background:#fdecec;color:#b42318}
.rfq-flow-shell{margin:0 38px 38px;min-width:0}
.rfq-bridge-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}
.rfq-bridge-summary>div{display:grid;gap:5px;min-width:0;padding:16px 18px;border:1px solid var(--line);border-radius:12px;background:#fff}
.rfq-bridge-summary strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px}
.rfq-bridge-summary span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:11px}
.rfq-bridge-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(360px,.8fr);gap:18px;align-items:start;min-width:0}
.rfq-bridge-items,.rfq-bridge-groups{min-width:0;border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}
.rfq-bridge-items>header,.rfq-bridge-groups>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:18px 20px;border-bottom:1px solid var(--line)}
.rfq-bridge-items h2,.rfq-bridge-groups h2{margin:0;font-size:20px}
.rfq-bridge-items p,.rfq-bridge-groups p{margin:5px 0 0;color:var(--muted);font-size:11px;line-height:1.45}
.rfq-bridge-items .hub-table{overflow-x:auto}
.rfq-bridge-items table{min-width:690px}
.rfq-bridge-items th:nth-child(2),.rfq-bridge-items td:nth-child(2){width:150px}
.rfq-bridge-items th:nth-child(3),.rfq-bridge-items td:nth-child(3){width:230px}
.rfq-bridge-items .stavix-control,.rfq-group-card .stavix-control{width:100%;height:44px;min-height:44px;border:1px solid #ced8e5;border-radius:9px;padding:0 12px;background-color:#fff;font-size:14px;font-weight:400;line-height:1.3;outline:none}
.rfq-bridge-items select.stavix-control{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:44px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m6 8 4 4 4-4' stroke='%23172033' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:20px 20px;cursor:pointer}
.rfq-bridge-items .stavix-control:focus,.rfq-group-card .stavix-control:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,111,237,.1)}
.rfq-bridge-groups{position:sticky;top:90px;max-height:calc(100vh - 110px);overflow:auto}
.rfq-group-card{margin:14px;padding:15px;border:1px solid var(--line);border-radius:11px;background:#fbfcfe}
.rfq-group-card>header{display:flex;align-items:end;gap:10px}
.rfq-bridge-field{display:grid;flex:1;gap:7px;min-width:0;font-size:13px;font-weight:750}
.rfq-remove-group{flex:0 0 auto;color:#a22727;background:#fff0f0}
.rfq-group-suppliers{display:grid;gap:10px;margin-top:14px}
.rfq-group-supplier-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.rfq-group-supplier-head>strong{font-size:12px}
.rfq-group-supplier-head .secondary-button{padding:9px 12px;font-size:11px}
.rfq-bridge-selected-suppliers{display:grid;grid-template-columns:1fr;gap:7px}
.rfq-bridge-selected-suppliers .rfq-selected-supplier{grid-template-columns:34px minmax(0,1fr);gap:9px;padding:9px 10px;background:#fff}
.rfq-bridge-selected-suppliers .supplier-avatar{width:34px;height:34px;border-radius:10px;font-size:12px}
.rfq-bridge-selected-suppliers .supplier-card-content{display:grid;align-content:center;gap:3px;min-width:0}
.rfq-bridge-selected-suppliers .supplier-card-content strong,.rfq-bridge-selected-suppliers .supplier-card-content small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rfq-bridge-selected-suppliers .supplier-card-content small{color:var(--muted);font-size:10px}
.rfq-bridge-selected-suppliers>.empty-inline{padding:12px;border:1px dashed #dbe2ec;border-radius:9px;background:#fff;font-size:11px}
.rfq-group-card>footer{display:flex;gap:14px;margin-top:12px;padding-top:10px;border-top:1px solid #e6ebf1;color:var(--muted);font-size:10px;font-weight:750}
.rfq-batch-grid{display:grid;gap:14px}
.rfq-batch-card{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}
.rfq-batch-card>header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border-bottom:1px solid var(--line)}
.rfq-batch-card h2{margin:4px 0 0;font-size:16px}
.rfq-batch-suppliers{display:grid;gap:0}
.rfq-batch-suppliers article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px 18px;border-bottom:1px solid #eef1f5}
.rfq-batch-suppliers article:last-child{border-bottom:0}
.rfq-batch-suppliers article>div{display:grid;gap:3px;min-width:0}
.rfq-batch-suppliers article strong,.rfq-batch-suppliers article small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rfq-batch-suppliers small{color:var(--muted)}
.rfq-bridge-page .supplier-picker,.rfq-workbench-page .supplier-picker{overflow:hidden}
.rfq-bridge-page .supplier-picker-list,.rfq-workbench-page .supplier-picker-list{max-height:min(52vh,560px)}
@media(max-width:1180px){.rfq-bridge-layout{grid-template-columns:1fr}.rfq-bridge-groups{position:static;max-height:none}.rfq-bridge-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.rfq-flow-shell{margin-left:20px;margin-right:20px}.rfq-bridge-summary{grid-template-columns:1fr}.rfq-batch-suppliers article{grid-template-columns:1fr auto}.rfq-batch-suppliers form{grid-column:1/-1}.rfq-group-supplier-head{align-items:stretch;flex-direction:column}.rfq-group-supplier-head .secondary-button{width:100%}}
@media(max-width:720px){.rfq-flow-shell{margin-left:12px;margin-right:12px}.rfq-group-card>header{align-items:stretch;flex-direction:column}.rfq-remove-group{width:100%}.rfq-bridge-items>header,.rfq-bridge-groups>header{align-items:stretch;flex-direction:column}.rfq-bridge-groups>header .secondary-button{width:100%}.rfq-batch-card>header{align-items:flex-start}}

/* 209.64.22 — fast hierarchical quote → RFQ assignment. Reuses Stavix controls, spacing and surfaces. */
.rfq-assign-toolbar{position:sticky;top:90px;z-index:12;border-bottom:1px solid var(--line);background:#fff;box-shadow:0 6px 14px rgba(18,35,61,.035)}
.rfq-assign-toolbar-row{display:grid;grid-template-columns:auto auto minmax(280px,1fr) auto auto;align-items:center;gap:10px;padding:10px 16px 14px}
.rfq-assign-filters{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(170px,.8fr) minmax(160px,.72fr) minmax(150px,.68fr);gap:9px;padding:14px 16px 10px;border-bottom:1px solid #edf1f5}
.rfq-assign-toolbar .stavix-control{height:40px;min-height:40px;font-size:12px}
.rfq-toolbar-check{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 10px;border:1px solid var(--line);border-radius:9px;background:#fbfcfe;font-size:11px;font-weight:750;white-space:nowrap;cursor:pointer}
.rfq-toolbar-check input,.rfq-tree-check input{width:16px;height:16px;margin:0;accent-color:var(--blue)}
.rfq-toolbar-selected{display:grid;align-content:center;min-width:72px;height:40px;padding:0 10px;border:1px solid var(--line);border-radius:9px;background:#f8fafd}
.rfq-toolbar-selected strong{font-size:14px;line-height:1}.rfq-toolbar-selected span{margin-top:3px;color:var(--muted);font-size:9px;font-weight:700;white-space:nowrap}
.rfq-toolbar-field{display:grid;gap:5px;min-width:0}.rfq-toolbar-field>span{color:var(--muted);font-size:9px;font-weight:750}.rfq-toolbar-target{display:flex;align-items:center;gap:9px;min-width:0}.rfq-toolbar-target>span{flex:0 0 auto;color:#52606d;font-size:10px;font-weight:750;white-space:nowrap}.rfq-toolbar-target>.stavix-control{min-width:0;flex:1}
.rfq-assign-toolbar-row>.primary-button,.rfq-assign-toolbar-row>.secondary-button{min-height:40px;padding:0 13px;white-space:nowrap}
.rfq-filter-search{min-width:0}.rfq-filter-search input{width:100%}
.rfq-quote-tree{display:grid;gap:12px;padding:14px;background:#f7f9fc}
.rfq-quote-tree>#rfq-items-empty[hidden]{display:none!important}
.rfq-quote-section{min-width:0;border:1px solid var(--line);border-radius:11px;background:#fff;overflow:hidden}
.rfq-quote-section-head{display:grid;grid-template-columns:24px 30px minmax(0,1fr) auto;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid #e8edf4;background:#f8fafd}
.rfq-quote-section-head>div{display:grid;gap:3px;min-width:0}.rfq-quote-section-head strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.rfq-quote-section-head small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:10px}
.rfq-section-count{color:var(--muted);font-size:10px;font-weight:750;white-space:nowrap}
.rfq-section-toggle{display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:8px;background:transparent;color:#50617a;cursor:pointer}.rfq-section-toggle:hover{background:#edf2f8}.rfq-section-toggle span{display:block;font-size:10px;line-height:1;transition:transform .16s ease;transform-origin:center}.rfq-quote-section.collapsed .rfq-section-toggle span{transform:rotate(-90deg)}.rfq-quote-section.collapsed .rfq-quote-section-body{display:none}
.rfq-tree-check{display:grid;place-items:center;margin:0;cursor:pointer}.rfq-tree-check span{display:none}
.rfq-quote-section-body{display:grid}
.rfq-assign-row{display:grid;grid-template-columns:32px minmax(0,1fr) 130px minmax(120px,190px);align-items:center;gap:10px;min-width:0;padding:10px 14px;border-bottom:1px solid #edf1f5;background:#fff}
.rfq-assign-row:last-child{border-bottom:0}.rfq-assign-row:hover{background:#fbfcfe}.rfq-assign-row.child-material{padding-left:46px;background:#fdfcf9}.rfq-assign-row.child-material:hover{background:#fbfaf6}.rfq-assign-row.child-material .rfq-assignment-item-main{position:relative}.rfq-assign-row.child-material .rfq-assignment-item-main:before{content:"";position:absolute;left:-19px;top:2px;bottom:2px;width:2px;border-radius:2px;background:#d9e2ee}
.rfq-assign-row.filter-context{opacity:.66}.rfq-assign-row.filter-context .rfq-tree-check{visibility:hidden}
.rfq-assignment-item-main{display:grid;gap:4px;min-width:0}.rfq-assignment-name-line{display:flex;align-items:center;gap:8px;min-width:0}.rfq-assignment-name-line strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.rfq-assignment-item-main small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:9px}.rfq-assignment-name-line .item-type-badge{flex:0 0 auto}
.rfq-assignment-quantity{font-size:11px;font-weight:750;text-align:right;white-space:nowrap;color:#334155}.rfq-assignment-target{display:flex;justify-content:flex-end;min-width:0}
.rfq-assignment-badge{display:inline-flex;align-items:center;max-width:100%;min-height:28px;padding:5px 9px;border:1px solid #dbe3ee;border-radius:999px;background:#f2f5f8;color:#52606d;font-size:9px;font-weight:800;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.rfq-assignment-badge.assigned{border-color:#bcd0f5;background:#edf4ff;color:#285fbf}.rfq-assignment-badge:hover{border-color:#9bb9ef}
.rfq-bridge-groups{scrollbar-gutter:stable}.rfq-group-card[data-rfq-group]{transition:border-color .15s ease,box-shadow .15s ease}.rfq-group-card[data-rfq-group]:focus-within{border-color:#b7caf0;box-shadow:0 0 0 3px rgba(47,111,237,.07)}
@media(max-width:1280px){.rfq-assign-toolbar-row{grid-template-columns:auto auto minmax(190px,1fr) auto}.rfq-assign-toolbar-row>.secondary-button{grid-column:3/5;justify-self:end}.rfq-assign-filters{grid-template-columns:1fr 1fr}.rfq-assign-row{grid-template-columns:32px minmax(0,1fr) 110px minmax(110px,160px)}}
@media(max-width:900px){.rfq-assign-toolbar{position:static}.rfq-assign-toolbar-row{grid-template-columns:1fr 1fr}.rfq-toolbar-target{grid-column:1/-1}.rfq-assign-toolbar-row>.primary-button,.rfq-assign-toolbar-row>.secondary-button{width:100%}.rfq-assign-toolbar-row>.secondary-button{grid-column:auto}.rfq-assign-filters{grid-template-columns:1fr}.rfq-assign-row{grid-template-columns:28px minmax(0,1fr) auto}.rfq-assignment-target{grid-column:2/4;justify-content:flex-start}.rfq-assign-row.child-material{padding-left:34px}}
@media(max-width:620px){.rfq-assign-toolbar-row{grid-template-columns:1fr}.rfq-toolbar-target{grid-column:auto;display:grid;grid-template-columns:auto minmax(0,1fr)}.rfq-assign-row{grid-template-columns:26px minmax(0,1fr)}.rfq-assignment-quantity{grid-column:2;text-align:left}.rfq-assignment-target{grid-column:2}.rfq-quote-section-head{grid-template-columns:22px 28px minmax(0,1fr)}.rfq-section-count{grid-column:3}}

/* RFQ workspace tabs and XLSX supplier reconciliation — 209.64.29 */
.rfq-editor-tabs{margin-bottom:18px}.rfq-editor-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:8px}.rfq-editor-tabs button b{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;border-radius:999px;padding:0 6px;background:#e8edf5;color:#536176;font-size:10px;font-weight:850}.rfq-editor-tabs button.active b{background:#edf4ff;color:var(--blue)}
.rfq-editor-panel[hidden]{display:none!important}.rfq-editor-panel{margin:0}.rfq-tab-section{margin-top:0}.rfq-tab-section>header>div>p{margin:5px 0 0;color:var(--muted);font-size:11px;line-height:1.45}.rfq-evaluation-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}.rfq-evaluation-choice{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid var(--line);border-radius:11px;background:#fbfcfe}.rfq-evaluation-choice.selected{border-color:#7fcca9;background:#f1fbf6}.rfq-evaluation-choice>div{display:grid;gap:4px;min-width:0}.rfq-evaluation-choice strong{font-size:12px}.rfq-evaluation-choice small{color:var(--muted);font-size:10px}.rfq-evaluation-choice form{margin:0}
.rfq-response-supplier-data{margin:0 24px 22px;padding:18px;background:#fff;border:1px solid var(--line);border-radius:13px}.rfq-response-supplier-data>header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:15px}.rfq-response-supplier-data h2{margin:0;font-size:18px}.rfq-response-supplier-data header p{margin:5px 0 0;color:var(--muted);font-size:11px}.rfq-response-supplier-data input[readonly]{background:#f8fafd;color:var(--text);-webkit-text-fill-color:var(--text)}
.rfq-supplier-update-body{padding:2px 20px 18px}.rfq-supplier-update-body>p{margin:0 0 14px;color:var(--muted);font-size:12px;line-height:1.55}.rfq-supplier-diff-list{display:grid;gap:8px;max-height:min(52vh,520px);overflow:auto}.rfq-supplier-diff-list article{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(0,1fr) minmax(0,1fr);gap:10px;align-items:center;padding:11px 12px;border:1px solid var(--line);border-radius:9px;background:#fbfcfe}.rfq-supplier-diff-list article>strong{font-size:11px}.rfq-supplier-diff-list article>span{display:grid;gap:3px;min-width:0;overflow-wrap:anywhere;font-size:11px}.rfq-supplier-diff-list small{color:var(--muted);font-size:9px;font-weight:750;text-transform:uppercase;letter-spacing:.03em}.rfq-supplier-diff-list .is-new{color:#14704e}.pdf-viewer-heading .heading-actions form{margin:0}
@media(max-width:1100px){.rfq-evaluation-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.rfq-supplier-diff-list article{grid-template-columns:1fr 1fr}.rfq-supplier-diff-list article>strong{grid-column:1/-1}}
@media(max-width:720px){.rfq-editor-tabs{margin-left:20px;margin-right:20px}.rfq-evaluation-choices{grid-template-columns:1fr}.rfq-response-supplier-data{margin-left:12px;margin-right:12px}.rfq-supplier-diff-list article{grid-template-columns:1fr}}

/* RFQ management tables and received-offer tab layout. */
.rfq-management-table{overflow-x:auto;overflow-y:visible;border:1px solid var(--line);border-radius:11px;background:#fff}
.rfq-management-table table{min-width:860px}
.rfq-management-table th,.rfq-management-table td{padding:13px 14px}
.rfq-management-table tbody tr:last-child td{border-bottom:0}
.rfq-management-table .selected-row{background:#f1fbf6}
.rfq-management-table .document-table-actions{flex-wrap:wrap}
.rfq-response-tabs{margin-top:0}
.rfq-response-page [data-response-panel][hidden]{display:none!important}
@media(max-width:720px){.rfq-management-table{border-radius:9px}.rfq-response-tabs{margin-left:20px;margin-right:20px}}

/* 209.64.31 — supplier XLSX update modal polish. Keep standard Stavix modal rhythm and actions. */
#rfq-supplier-update-modal .modal{width:min(760px,calc(100vw - 40px));max-height:min(780px,90vh);display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}
#rfq-supplier-update-modal .modal>header{align-items:center;padding:22px 24px}
#rfq-supplier-update-modal .modal>header h2{font-size:24px;line-height:1.2;letter-spacing:-.02em}
#rfq-supplier-update-modal .modal-close{flex:0 0 auto}
#rfq-supplier-update-modal .rfq-supplier-update-body{min-height:0;overflow:auto;padding:20px 24px 22px}
#rfq-supplier-update-modal .rfq-supplier-update-body>p{max-width:680px;margin:0 0 18px;color:var(--muted);font-size:12px;line-height:1.6}
#rfq-supplier-update-modal .rfq-supplier-diff-list{display:grid;gap:10px;max-height:none;overflow:visible}
#rfq-supplier-update-modal .rfq-supplier-diff-list article{grid-template-columns:minmax(145px,.72fr) minmax(0,1fr) minmax(0,1fr);gap:12px;padding:13px 14px;border:1px solid var(--line);border-radius:11px;background:#fff}
#rfq-supplier-update-modal .rfq-supplier-diff-list article>strong{font-size:12px;line-height:1.35}
#rfq-supplier-update-modal .rfq-supplier-diff-list article>span{gap:4px;padding:8px 10px;border-radius:8px;background:#f6f8fb;font-size:12px;line-height:1.4}
#rfq-supplier-update-modal .rfq-supplier-diff-list article>span.is-new{background:#f1fbf6;color:#14704e}
#rfq-supplier-update-modal .rfq-supplier-diff-list small{font-size:9px;line-height:1.2}
#rfq-supplier-update-modal .modal>footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid var(--line);background:#fbfcfe}
#rfq-supplier-update-modal .modal>footer button{width:auto;min-width:118px;min-height:42px;margin:0;padding:10px 16px}
#rfq-supplier-update-modal .modal>footer .primary-button{min-width:190px}
@media(max-width:720px){#rfq-supplier-update-modal .modal{width:calc(100vw - 16px);max-height:94vh}#rfq-supplier-update-modal .modal>header{padding:18px 16px}#rfq-supplier-update-modal .modal>header h2{font-size:20px}#rfq-supplier-update-modal .rfq-supplier-update-body{padding:16px}#rfq-supplier-update-modal .rfq-supplier-diff-list article{grid-template-columns:1fr;gap:8px;padding:12px}#rfq-supplier-update-modal .modal>footer{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:14px 16px}#rfq-supplier-update-modal .modal>footer button,#rfq-supplier-update-modal .modal>footer .primary-button{width:100%;min-width:0}}

/* 209.64.32 — compact quote create-actions dropdown in project quote list. */
.document-create-trigger{display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap}
.document-create-caret{display:inline-block;font-size:9px;line-height:1;color:currentColor;transform:translateY(1px)}
.document-create-menu{width:220px}
.document-create-menu .menu-link{font-weight:750}

/* 209.64.33 — Súpis: ponuka je baseline, súpis eviduje reálnu skutočnosť. */
.work-statement-actual-warning{display:flex;align-items:center;gap:10px;margin:0 0 14px;padding:11px 14px;border:1px solid #f0cf8a;border-radius:11px;background:#fff8e8;color:#6e5100;font-size:12px}
.work-statement-actual-warning strong{font-size:12px}
.line-variance-badge{display:inline-flex;align-items:center;width:max-content;max-width:100%;margin-top:5px;padding:4px 7px;border-radius:999px;font-size:9px;font-weight:800;line-height:1.2}
.line-variance-badge.baseline{background:#eef2f7;color:#5c6879}
.line-variance-badge.extra{background:#fff0dc;color:#935f00}
.work-statement-overrun-modal{width:min(760px,calc(100vw - 32px));max-height:min(82vh,760px);display:flex;flex-direction:column}
.work-statement-overrun-modal>header{flex:0 0 auto}
.work-statement-overrun-body{overflow:auto;padding:18px 22px}
.work-statement-overrun-body ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.work-statement-overrun-body li{padding:11px 13px;border:1px solid var(--line);border-radius:10px;background:#fbfcfe;color:var(--text);font-size:12px;font-weight:700}
.work-statement-overrun-modal>.modal-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;padding:16px 22px;border-top:1px solid var(--line);background:#fff}
@media(max-width:720px){.work-statement-actual-warning{align-items:flex-start;flex-direction:column}.work-statement-overrun-modal>.modal-actions{flex-direction:column}.work-statement-overrun-modal>.modal-actions .primary-button,.work-statement-overrun-modal>.modal-actions .secondary-button{width:100%}}

/* Invoice workspace tabs: reuse the Stavix settings-tab visual language. */
.invoice-editor-tabs button b{display:inline-grid;place-items:center;min-width:21px;height:21px;margin-left:7px;padding:0 6px;border-radius:999px;background:#e8f0ff;color:var(--blue);font-size:10px;font-weight:850;line-height:1}
.invoice-editor-panel[hidden]{display:none!important}
.invoice-editor-panel.active{display:block}
.invoice-document-panel{margin:0 38px 34px;padding:18px;background:#fff;border:1px solid var(--line);border-radius:14px}
.invoice-document-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}
.invoice-document-panel>header h2{margin:0 0 4px;font-size:18px}
.invoice-document-panel>header p{margin:0;color:var(--muted);font-size:12px}
.invoice-document-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.invoice-document-actions form{margin:0}
.invoice-payment-confirmation-body{display:grid;gap:12px;padding:20px 22px}
.invoice-payment-confirmation-body p{margin:0;color:var(--text);font-size:14px;line-height:1.55}
.invoice-payment-confirmation-body .flash{margin:0}
.invoice-payment-confirmation-modal .modal-action-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:15px 20px;border-top:1px solid var(--line);background:#fff}
.invoice-payment-confirmation-modal .button-link{display:inline-flex;align-items:center;justify-content:center}
@media(max-width:720px){.invoice-document-panel{margin:0 20px 24px;padding:15px}.invoice-document-panel>header{flex-direction:column}.invoice-document-actions{align-items:stretch;flex-direction:column}.invoice-document-actions .button-link,.invoice-document-actions button{width:100%;justify-content:center}.invoice-payment-confirmation-modal .modal-action-footer{align-items:stretch;flex-direction:column-reverse}.invoice-payment-confirmation-modal .modal-action-footer .primary-button,.invoice-payment-confirmation-modal .modal-action-footer .secondary-button{width:100%;justify-content:center}}

/* 209.64.38 — Etapy projektu: rovnaký vizuálny jazyk ako pracovný plán Stavixu. */
.workplan-level-tabs{margin:18px 0 16px;padding:8px;border:1px solid var(--line);border-radius:14px;background:#eaf0f8}.workplan-level-tabs button{min-width:150px}
.workplan-stage-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0 0 16px}.workplan-stage-summary article{display:grid;gap:7px;padding:15px 16px;border:1px solid var(--line);border-radius:12px;background:#fff}.workplan-stage-summary span{color:var(--muted);font-size:10px;font-weight:800}.workplan-stage-summary strong{font-size:22px}
.workplan-stage-content{min-height:180px}.stage-table-shell{border-radius:14px}.stage-table td{vertical-align:middle}.stage-table .workplan-task-title{display:grid;gap:4px}.stage-table .workplan-task-title small{color:var(--muted);font-size:10px}.stage-order-actions{display:flex;gap:4px}.stage-order-actions .workplan-icon-button{width:28px;height:28px;font-size:9px}.stage-order-actions .workplan-icon-button:disabled{opacity:.28;cursor:default}.stage-status{display:inline-flex;align-items:center;width:max-content;padding:6px 9px;border-radius:999px;background:#edf1f6;color:#50627a;font-size:10px;font-weight:850}.stage-status.in_progress{background:#e8f0ff;color:#285fbf}.stage-status.on_hold{background:#fff3db;color:#936500}.stage-status.completed{background:#e3f5ed;color:#14704e}.stage-status.cancelled{background:#f8e8e8;color:#a33838}.stage-overdue-note{display:block;margin-top:4px;color:#b42318;font-weight:800}
.workplan-stage-modal{width:min(860px,100%)}.stage-form-grid{padding:18px 20px}.stage-form-grid textarea{min-height:86px}.stage-form-grid select{appearance:none;padding-right:38px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m6 8 4 4 4-4' stroke='%23172033' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 10px center}
.workplan-stage-plan-modal{width:min(1180px,100%);max-height:90vh;overflow:hidden}.workplan-stage-plan-modal form{display:flex;min-height:0;flex-direction:column}.stage-plan-controls{flex:0 0 auto}.stage-plan-template{display:flex;flex-wrap:wrap;gap:7px;padding:0 20px 12px}.stage-template-chip{display:inline-flex;align-items:center;padding:7px 10px;border:1px solid #d7e0ed;border-radius:999px;background:#f6f8fb;color:var(--text);font-size:10px}.stage-plan-list{display:grid;min-height:160px;max-height:48vh;overflow:auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stage-plan-row{display:grid;grid-template-columns:36px minmax(280px,1fr) 120px minmax(210px,270px);align-items:center;gap:12px;padding:11px 20px;border-bottom:1px solid #edf1f6}.stage-plan-row:last-child{border-bottom:0}.stage-plan-row>div{display:grid;gap:3px}.stage-plan-row small{color:var(--muted);font-size:9px}.stage-plan-row strong{font-size:12px}.stage-plan-row>span{font-size:11px;font-weight:750}.stage-plan-row select{width:100%;height:40px;border:1px solid #ced8e5;border-radius:9px;padding:0 38px 0 11px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m6 8 4 4 4-4' stroke='%23172033' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 10px center;appearance:none}.stage-plan-row select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(47,111,237,.1);outline:none}
@media(max-width:1100px){.workplan-stage-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.stage-plan-row{grid-template-columns:36px minmax(220px,1fr) 100px minmax(180px,230px)}}
@media(max-width:720px){.workplan-level-tabs{display:grid;grid-template-columns:1fr 1fr}.workplan-level-tabs button{min-width:0;width:100%}.workplan-stage-summary{grid-template-columns:1fr 1fr}.stage-plan-row{grid-template-columns:34px minmax(0,1fr);gap:8px}.stage-plan-row>span,.stage-plan-row>select{grid-column:2}.workplan-stage-plan-modal{max-height:94vh}.stage-plan-list{max-height:50vh}}

/* 209.64.40 – profession catalog picker in work planning. */
.catalog-profession-picker{display:grid;gap:8px}
.catalog-profession-picker [data-profession-custom][hidden]{display:none!important}

/* 209.64.41 – inteligentný plán z ponuky: normy, profesie, materiálové potreby. */
.workplan-stage-plan-modal{width:min(1520px,calc(100vw - 34px));max-height:92vh}
.workplan-stage-plan-modal .stage-plan-controls{grid-template-columns:minmax(230px,1fr) minmax(190px,.7fr) minmax(360px,1.5fr);align-items:end}
.stage-plan-toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.stage-plan-toolbar>[data-stage-plan-count]{margin-right:auto}.stage-plan-metrics{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.stage-plan-metrics span{display:inline-flex;align-items:center;min-height:31px;padding:6px 10px;border:1px solid #d9e1ec;border-radius:999px;background:#f7f9fc;color:#536379;font-size:10px;font-weight:800}.stage-plan-metrics span.warning{border-color:#f0cf8c;background:#fff8e8;color:#8b6200}
.stage-plan-list{display:block;max-height:54vh;background:#fff}.stage-plan-table-head,.stage-plan-row{display:grid;grid-template-columns:32px minmax(270px,1.7fr) 94px 108px 104px minmax(150px,.9fr) 84px 84px minmax(170px,1fr);align-items:center;gap:10px}.stage-plan-table-head{position:sticky;top:0;z-index:4;padding:9px 18px;border-bottom:1px solid var(--line);background:#f5f8fc;color:#65748a;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.035em}.stage-plan-section>header{position:sticky;top:35px;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 18px;border-bottom:1px solid #dfe6f0;background:#eef3f9}.stage-plan-section>header strong{font-size:11px}.stage-plan-section>header span{color:var(--muted);font-size:9px;font-weight:750}.stage-plan-row{padding:10px 18px;border-bottom:1px solid #edf1f6}.stage-plan-row:last-child{border-bottom:0}.stage-plan-check{justify-content:center}.stage-plan-work{display:grid;gap:3px;min-width:0}.stage-plan-work>strong{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.stage-plan-work>small{overflow:hidden;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.stage-plan-quantity{font-size:10px;font-weight:800;white-space:nowrap}.stage-plan-cell{display:grid;gap:4px;min-width:0}.stage-plan-cell>span{display:none;color:var(--muted);font-size:8px;font-weight:800;text-transform:uppercase}.stage-plan-cell input,.stage-plan-cell select{width:100%;height:38px;border:1px solid #ced8e5;border-radius:9px;padding:0 9px;background:#fff;color:var(--text);font:inherit;font-size:10px;outline:none}.stage-plan-cell select{padding-right:32px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='m6 8 4 4 4-4' stroke='%23172033' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 8px center;appearance:none}.stage-plan-cell input:focus,.stage-plan-cell select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(47,111,237,.1)}.stage-plan-hours strong{display:flex;align-items:center;min-height:38px;padding:0 9px;border:1px solid #d9e1ec;border-radius:9px;background:#f7f9fc;font-size:10px}.stage-plan-hours strong.missing{border-color:#f0cf8c;background:#fff8e8;color:#8b6200}.stage-plan-materials{margin-top:2px}.stage-plan-materials summary{width:max-content;max-width:100%;cursor:pointer;color:#536379;font-size:9px;font-weight:750}.stage-plan-materials>div{display:grid;gap:3px;margin-top:5px;padding-left:10px;border-left:2px solid #d7e2f2}.stage-plan-materials>div span{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;color:#58677c;font-size:9px}.stage-plan-materials>div b{overflow:hidden;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.stage-plan-materials>div small{flex:0 0 auto;color:#78879a;font-size:8px}.stage-plan-template{padding-top:2px}
@media(max-width:1280px){.stage-plan-table-head,.stage-plan-row{grid-template-columns:30px minmax(230px,1.4fr) 84px 100px 94px minmax(140px,.85fr) 74px 74px minmax(150px,.9fr);gap:8px}.workplan-stage-plan-modal{width:min(1320px,calc(100vw - 24px))}}
@media(max-width:980px){.workplan-stage-plan-modal .stage-plan-controls{grid-template-columns:1fr 1fr}.workplan-stage-plan-modal .stage-plan-controls .span-2{grid-column:1/-1}.stage-plan-table-head{display:none}.stage-plan-section>header{top:0}.stage-plan-row{grid-template-columns:32px minmax(0,1fr) 100px 100px;padding:12px 14px}.stage-plan-work{grid-column:2/-1}.stage-plan-quantity{grid-column:2}.stage-plan-cell{display:grid}.stage-plan-cell>span{display:block}.stage-plan-cell:nth-of-type(n){grid-column:auto}.stage-plan-stage{grid-column:2/-1}.stage-plan-materials>div span{justify-content:flex-start}}
@media(max-width:640px){.workplan-stage-plan-modal{width:calc(100vw - 12px);max-height:96vh}.workplan-stage-plan-modal .stage-plan-controls{grid-template-columns:1fr}.workplan-stage-plan-modal .stage-plan-controls .span-2{grid-column:auto}.stage-plan-toolbar{align-items:flex-start;flex-direction:column}.stage-plan-toolbar>[data-stage-plan-count]{margin-right:0}.stage-plan-metrics{justify-content:flex-start}.stage-plan-row{grid-template-columns:30px minmax(0,1fr) 96px}.stage-plan-work{grid-column:2/-1}.stage-plan-quantity{grid-column:2}.stage-plan-cell{grid-column:2/-1}.stage-plan-cell.compact{grid-column:auto}.stage-plan-section>header{padding-left:12px;padding-right:12px}.stage-plan-list{max-height:58vh}}

/* Update 209.64.76 — compact professional work-detail modal, approved visual */
#catalog-detail-modal.is-work-detail .catalog-detail-modal{
  width:min(1180px,calc(100vw - 34px));max-height:94vh;border-radius:22px;overflow:hidden;background:#fff;
}
#catalog-detail-modal.is-work-detail .catalog-detail-header{
  display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding:24px 28px 18px;border-bottom:1px solid #dce4ee;background:#fff;
}
#catalog-detail-modal.is-work-detail .catalog-detail-header-main{min-width:0;flex:1}
#catalog-detail-modal.is-work-detail .catalog-detail-header .eyebrow{margin:0 0 8px;color:#6d788b;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
#catalog-detail-modal.is-work-detail .catalog-detail-header h2{max-width:1040px;margin:0;color:#182236;font-size:31px;line-height:1.14;font-weight:800;letter-spacing:-.018em}
#catalog-detail-modal.is-work-detail .catalog-detail-header .modal-close{flex:0 0 44px;width:44px;height:44px;margin-top:2px;border-radius:14px;background:#eef3f8;color:#1f2b3d;font-size:28px}
#catalog-detail-modal.is-work-detail .catalog-detail-header-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:11px}
#catalog-detail-modal.is-work-detail .catalog-detail-meta-pill{display:inline-flex;align-items:center;min-height:30px;padding:6px 11px;border-radius:999px;background:#edf2f7;color:#27354a;font-size:11px;font-weight:800}
#catalog-detail-modal.is-work-detail .catalog-detail-meta-pill.code{font-variant-numeric:tabular-nums}
#catalog-detail-modal.is-work-detail .catalog-detail-meta-pill.status.active{background:#dcf5e6;color:#087c3f}
#catalog-detail-modal.is-work-detail .catalog-detail-breadcrumb{display:flex;align-items:center;gap:8px;margin-top:11px;color:#78859a;font-size:12px;line-height:1.35}
#catalog-detail-modal.is-work-detail .catalog-detail-breadcrumb [data-detail-field="category"]{overflow-wrap:anywhere}
#catalog-detail-modal.is-work-detail .catalog-detail-home{font-size:15px;color:#66758b}

#catalog-detail-modal.is-work-detail .catalog-detail-body{
  display:grid;grid-template-columns:minmax(0,3fr) minmax(300px,2fr);gap:12px;padding:12px 20px 14px;background:#f7f9fc;overflow:auto;
}
#catalog-detail-modal.is-work-detail .catalog-detail-section{margin:0;padding:14px 16px;border:1px solid #dbe3ed;border-radius:16px;background:#fff;box-shadow:none}
#catalog-detail-modal.is-work-detail .catalog-detail-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px}
#catalog-detail-modal.is-work-detail .catalog-detail-heading-left{display:flex;align-items:center;gap:10px;min-width:0}
#catalog-detail-modal.is-work-detail .catalog-detail-section-heading h3{margin:0;color:#111b2f;font-size:14px;font-weight:800}
#catalog-detail-modal.is-work-detail .catalog-detail-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#edf3fa;color:#214b7b;font-size:16px;font-weight:800}
#catalog-detail-modal.is-work-detail .catalog-detail-copy{padding:8px 12px;border-radius:9px;font-size:11px}
#catalog-detail-modal.is-work-detail .catalog-detail-description{margin:0;color:#1f2c40;font-size:14px;line-height:1.6;white-space:pre-wrap}

#catalog-detail-modal.is-work-detail .catalog-detail-price-list,
#catalog-detail-modal.is-work-detail .catalog-detail-state-list{display:grid;gap:0;border-radius:12px;overflow:hidden;background:#f7f9fc}
#catalog-detail-modal.is-work-detail .catalog-detail-price-list>div,
#catalog-detail-modal.is-work-detail .catalog-detail-state-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;min-height:36px;padding:7px 12px;border-bottom:1px solid #e7ecf2}
#catalog-detail-modal.is-work-detail .catalog-detail-price-list>div:last-child,
#catalog-detail-modal.is-work-detail .catalog-detail-state-list>div:last-child{border-bottom:0}
#catalog-detail-modal.is-work-detail .catalog-detail-price-list span,
#catalog-detail-modal.is-work-detail .catalog-detail-state-list span{color:#66758b;font-size:11px;font-weight:700}
#catalog-detail-modal.is-work-detail .catalog-detail-price-list strong,
#catalog-detail-modal.is-work-detail .catalog-detail-state-list strong{max-width:290px;color:#111b2f;font-size:12px;font-weight:800;text-align:right;overflow-wrap:anywhere}
#catalog-detail-modal.is-work-detail .catalog-detail-state-status{color:#087c3f!important}

#catalog-detail-modal.is-work-detail .catalog-detail-planning-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
#catalog-detail-modal.is-work-detail .catalog-detail-planning-grid>div{min-height:66px;padding:11px 13px;border-radius:12px;background:#f2f5f9}
#catalog-detail-modal.is-work-detail .catalog-detail-planning-grid span{font-size:10.5px}
#catalog-detail-modal.is-work-detail .catalog-detail-planning-grid strong{font-size:12px}

#catalog-detail-modal.is-work-detail .catalog-detail-wide{grid-column:1/-1}
#catalog-detail-modal.is-work-detail .catalog-detail-add-material{padding:8px 13px;border-radius:9px;font-size:11px}
#catalog-detail-modal.is-work-detail .catalog-detail-material-table-head,
#catalog-detail-modal.is-work-detail .catalog-detail-material-link{display:grid;grid-template-columns:150px minmax(260px,2fr) minmax(130px,1fr) 90px minmax(160px,1fr);gap:12px;align-items:center}
#catalog-detail-modal.is-work-detail .catalog-detail-material-table-head{padding:8px 12px;border-top:1px solid #e5eaf0;border-bottom:1px solid #e5eaf0;color:#5f6d82;font-size:10px;font-weight:800;text-transform:uppercase}
#catalog-detail-modal.is-work-detail .catalog-detail-material-link{padding:9px 12px;border-bottom:1px solid #edf1f5;color:#26344a;font-size:11px}
#catalog-detail-modal.is-work-detail .catalog-detail-material-link strong{font-size:11px;color:#172237}
#catalog-detail-modal.is-work-detail .catalog-detail-material-empty{display:flex;align-items:center;justify-content:center;gap:11px;min-height:50px;color:#7a8799;font-size:11px}
#catalog-detail-modal.is-work-detail .catalog-detail-empty-icon{font-size:20px;color:#6480a1}

#catalog-detail-modal.is-work-detail .catalog-detail-related-tabs{display:flex;align-items:center;gap:22px;border-bottom:1px solid #dfe5ec;margin:0 -16px;padding:0 16px}
#catalog-detail-modal.is-work-detail .catalog-detail-related-tabs button{position:relative;padding:7px 2px 9px;border:0;background:transparent;color:#66758b;font-size:11px;font-weight:700;cursor:pointer}
#catalog-detail-modal.is-work-detail .catalog-detail-related-tabs button.active{color:#2668d8}
#catalog-detail-modal.is-work-detail .catalog-detail-related-tabs button.active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;border-radius:2px;background:#2f73ed}
#catalog-detail-modal.is-work-detail .catalog-detail-related-all{padding:7px 11px;border-radius:9px;font-size:10px}
#catalog-detail-modal.is-work-detail .catalog-detail-related-table-head,
#catalog-detail-modal.is-work-detail .catalog-detail-related-row{display:grid;grid-template-columns:160px minmax(0,1fr) 110px 120px;gap:14px;align-items:center}
#catalog-detail-modal.is-work-detail .catalog-detail-related-table-head{padding:9px 12px 7px;color:#5f6d82;font-size:9.5px;font-weight:800;text-transform:uppercase}
#catalog-detail-modal.is-work-detail .catalog-detail-related-row{width:100%;padding:9px 12px;border:0;border-top:1px solid #edf1f5;background:#fff;color:#26344a;text-align:left;font-size:11px;cursor:pointer}
#catalog-detail-modal.is-work-detail .catalog-detail-related-row:hover{background:#f7faff}
#catalog-detail-modal.is-work-detail .catalog-detail-related-row strong{font-size:11px;color:#182236}
#catalog-detail-modal.is-work-detail .catalog-detail-related-row .price{text-align:right;font-weight:800}
#catalog-detail-modal.is-work-detail .catalog-detail-related-empty{margin:0;padding:15px 12px;text-align:center}

#catalog-detail-modal.is-work-detail .catalog-detail-footer{display:flex;align-items:center;gap:9px;padding:11px 20px;border-top:1px solid #dce4ee;background:#fff}
#catalog-detail-modal.is-work-detail .catalog-detail-footer-spacer{flex:1}
#catalog-detail-modal.is-work-detail .catalog-detail-footer .primary-button{min-width:100px}
#catalog-detail-modal.is-work-detail .catalog-detail-show-row{font-size:11px}
.catalog-row-focus{animation:catalogRowFocus 1.8s ease}
@keyframes catalogRowFocus{0%,100%{box-shadow:none}20%,65%{box-shadow:inset 0 0 0 2px #2f73ed;background:#edf5ff}}

@media(max-width:900px){
  #catalog-detail-modal.is-work-detail .catalog-detail-body{grid-template-columns:1fr}
  #catalog-detail-modal.is-work-detail .catalog-detail-wide{grid-column:auto}
  #catalog-detail-modal.is-work-detail .catalog-detail-planning-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  #catalog-detail-modal.is-work-detail .catalog-detail-material-table-head{display:none}
  #catalog-detail-modal.is-work-detail .catalog-detail-material-link{grid-template-columns:120px minmax(0,1fr) 100px 70px}
  #catalog-detail-modal.is-work-detail .catalog-detail-material-link>:last-child{grid-column:2/-1;color:#6b778a}
}
@media(max-width:620px){
  #catalog-detail-modal.is-work-detail .catalog-detail-modal{width:calc(100vw - 12px);max-height:96vh;border-radius:16px}
  #catalog-detail-modal.is-work-detail .catalog-detail-header{padding:18px 16px 14px}
  #catalog-detail-modal.is-work-detail .catalog-detail-header h2{font-size:23px}
  #catalog-detail-modal.is-work-detail .catalog-detail-body{padding:9px 10px 12px;gap:9px}
  #catalog-detail-modal.is-work-detail .catalog-detail-section{padding:12px}
  #catalog-detail-modal.is-work-detail .catalog-detail-planning-grid{grid-template-columns:1fr 1fr}
  #catalog-detail-modal.is-work-detail .catalog-detail-material-link{grid-template-columns:1fr 1fr;gap:7px}
  #catalog-detail-modal.is-work-detail .catalog-detail-related-table-head{display:none}
  #catalog-detail-modal.is-work-detail .catalog-detail-related-row{grid-template-columns:1fr auto;gap:5px 12px}
  #catalog-detail-modal.is-work-detail .catalog-detail-related-row strong{grid-column:1/-1}
  #catalog-detail-modal.is-work-detail .catalog-detail-footer{padding:10px;flex-wrap:wrap}
  #catalog-detail-modal.is-work-detail .catalog-detail-footer-spacer{display:none}
}

/* 209.64.77 — work detail: exact approved compact composition */
#catalog-detail-modal.is-work-detail [hidden]{display:none!important}
#catalog-detail-modal.is-work-detail .catalog-detail-modal{
  width:min(1220px,calc(100vw - 34px));max-height:92vh;border-radius:20px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-header{
  gap:16px;padding:18px 22px 13px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-header .eyebrow{
  margin:0 0 5px;font-size:10px;letter-spacing:.13em;
}
#catalog-detail-modal.is-work-detail .catalog-detail-header h2{
  max-width:1080px;font-size:28px;line-height:1.1;letter-spacing:-.02em;
}
#catalog-detail-modal.is-work-detail .catalog-detail-header .modal-close{
  flex-basis:40px;width:40px;height:40px;margin-top:0;border-radius:12px;font-size:25px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-header-meta{
  gap:7px;margin-top:9px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-meta-pill{
  min-height:27px;padding:5px 10px;font-size:10px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-breadcrumb{
  gap:7px;margin-top:9px;font-size:11px;line-height:1.25;
}
#catalog-detail-modal.is-work-detail .catalog-detail-home{font-size:13px}

#catalog-detail-modal.is-work-detail .catalog-detail-body{
  grid-template-columns:minmax(0,3fr) minmax(315px,1.8fr);gap:8px;padding:8px 12px 10px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-section{
  padding:10px 12px;border-radius:14px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-section-heading{
  gap:9px;margin-bottom:8px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-heading-left{gap:8px}
#catalog-detail-modal.is-work-detail .catalog-detail-section-heading h3{font-size:13px}
#catalog-detail-modal.is-work-detail .catalog-detail-icon{
  width:30px;height:30px;border-radius:10px;font-size:14px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-copy{
  padding:6px 10px;border-radius:8px;font-size:10px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-description{
  font-size:12.5px;line-height:1.48;
}

#catalog-detail-modal.is-work-detail .catalog-detail-price-list,
#catalog-detail-modal.is-work-detail .catalog-detail-state-list{border-radius:10px}
#catalog-detail-modal.is-work-detail .catalog-detail-price-list>div,
#catalog-detail-modal.is-work-detail .catalog-detail-state-list>div{
  min-height:31px;padding:5px 10px;gap:10px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-price-list span,
#catalog-detail-modal.is-work-detail .catalog-detail-state-list span{font-size:10px}
#catalog-detail-modal.is-work-detail .catalog-detail-price-list strong,
#catalog-detail-modal.is-work-detail .catalog-detail-state-list strong{font-size:11px}

#catalog-detail-modal.is-work-detail .catalog-detail-planning-grid{gap:6px}
#catalog-detail-modal.is-work-detail .catalog-detail-planning-grid>div{
  min-height:52px;padding:8px 10px;border-radius:10px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-planning-grid span{font-size:9.5px}
#catalog-detail-modal.is-work-detail .catalog-detail-planning-grid strong{font-size:11px}

#catalog-detail-modal.is-work-detail .catalog-detail-add-material{
  padding:6px 10px;border-radius:8px;font-size:10px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-material-table-head,
#catalog-detail-modal.is-work-detail .catalog-detail-material-link{
  grid-template-columns:135px minmax(250px,2fr) minmax(120px,1fr) 80px minmax(145px,1fr);gap:10px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-material-table-head{
  padding:6px 10px;font-size:9px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-material-link{
  padding:7px 10px;font-size:10px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-material-link strong{font-size:10px}
#catalog-detail-modal.is-work-detail .catalog-detail-material-empty{
  min-height:42px;gap:9px;font-size:10px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-empty-icon{font-size:17px}

#catalog-detail-modal.is-work-detail .catalog-detail-related-tabs{
  gap:18px;margin:0 -12px;padding:0 12px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-related-tabs button{
  padding:6px 2px 7px;font-size:10px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-related-all{
  padding:6px 9px;border-radius:8px;font-size:9px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-related-table-head,
#catalog-detail-modal.is-work-detail .catalog-detail-related-row{
  grid-template-columns:145px minmax(0,1fr) 90px 105px;gap:11px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-related-table-head{
  padding:7px 10px 6px;font-size:8.5px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-related-row{
  padding:7px 10px;font-size:10px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-related-row strong{font-size:10px}
#catalog-detail-modal.is-work-detail .catalog-detail-related-empty{padding:10px}

#catalog-detail-modal.is-work-detail .catalog-detail-footer{
  gap:8px;padding:8px 14px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-footer .primary-button{
  min-width:94px;min-height:38px;padding:8px 16px;
}
#catalog-detail-modal.is-work-detail .catalog-detail-show-row{
  min-height:36px;padding:7px 11px;font-size:10px;
}

@media(max-width:900px){
  #catalog-detail-modal.is-work-detail .catalog-detail-body{grid-template-columns:1fr}
}
@media(max-width:620px){
  #catalog-detail-modal.is-work-detail .catalog-detail-header{padding:14px 13px 11px}
  #catalog-detail-modal.is-work-detail .catalog-detail-header h2{font-size:22px}
  #catalog-detail-modal.is-work-detail .catalog-detail-body{padding:7px;gap:7px}
  #catalog-detail-modal.is-work-detail .catalog-detail-section{padding:9px}
}

/* Audit 209.64.146: readable quote data; neutral section labels. */
.quote-workbench-page .quote-line-head{font-size:12px;color:#526174;letter-spacing:0;text-transform:none}
.quote-workbench-page .room-summary-row,.quote-workbench-page .quote-offer-summary{font-size:12px}
.quote-workbench-page .quote-meta-card>summary,.quote-workbench-page .heading-eyebrow{color:#526174}
.quote-workbench-page .line-type{font-size:11px}
.quote-workbench-page .room-lines{scrollbar-width:auto}
.quote-workbench-page .quote-room{position:relative}

.quote-workbench-page .room-summary-row span,.quote-workbench-page .quote-pro-summary label{font-size:12px}
/* Minimum readable labels in the quote editor, including the item inspector. */
body.quote-workbench-page :is(.quote-status,.item-type-badge,.quote-meta-card>summary span,#inspector-content label,.inspector-total span,.quote-offer-summary-grid span,.quote-summary-row,.quote-summary-row span,.room-summary-row,.room-summary-row span,.quote-pro-summary span,.stv-line-label){font-size:12px!important;line-height:1.4}
body.quote-workbench-page .quote-meta-card>summary span{color:#526174;letter-spacing:0;text-transform:none}

.sidebar .sidebar-nav-link [data-order-badge]{display:inline-flex!important;align-items:center;justify-content:center;margin-left:auto!important;flex:0 0 auto;min-width:22px;height:22px;padding:2px 6px;border-radius:5px;background:#eff6ff!important;color:#1e4f80!important;font-size:11px;line-height:1;font-weight:800}.sidebar .sidebar-nav-link [data-order-badge][hidden]{display:none!important}

/* Update 162: collapse only navigation on physical mobile touch screens.
   The content retains its desktop viewport, tables and page layout. */
@media screen and (hover:none) and (pointer:coarse) and (max-device-width:1024px), screen and (hover:none) and (pointer:coarse) and (max-device-height:1024px){
 body.app-page{grid-template-columns:minmax(0,1fr)}
 body.app-page>.content{width:100%;min-width:0;margin-left:0}
 body.app-page>.sidebar{position:fixed!important;inset:0 auto 0 0!important;z-index:1200!important;width:min(320px,88vw)!important;height:100dvh!important;visibility:hidden;transform:translateX(-105%);transition:transform .22s ease,visibility 0s linear .22s;box-shadow:20px 0 60px rgba(5,15,30,.28);overscroll-behavior:contain}
 body.app-page>.sidebar.mobile-open{visibility:visible;transform:translateX(0);transition-delay:0s}
 body.app-page>.sidebar nav{display:grid}
 body.app-page .mobile-nav-toggle,body.app-page .sidebar-close{display:inline-flex!important;align-items:center;justify-content:center}
 body.app-page .sidebar-backdrop:not([hidden]){display:block;position:fixed;inset:0;z-index:1100;background:rgba(7,18,35,.58)}
 body.app-page.mobile-nav-open{overflow:hidden}
}
@media(prefers-reduced-motion:reduce){body.app-page>.sidebar{transition:none}}
