:root{--navy:#1d2125;--navy-hover:#2c333a;--brand:#0c66e4;--brand-hover:#0055cc;--brand-press:#09326c;--ink:#172b4d;--text:#44546f;--muted:#626f86;--line:#dcdfe4;--line-strong:#b3b9c4;--bg:#f7f8f9;--panel:#ffffff;--sidebar:#f7f8f9;--danger:#c9372c;--success:#1f845a;--focus:0 0 0 2px #fff,0 0 0 4px #388bff;--shadow:0 1px 1px rgba(9,30,66,0.13),0 0 1px rgba(9,30,66,0.13);--radius:3px}*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Helvetica Neue,sans-serif;background:var(--bg);color:var(--ink);line-height:1.42857;font-size:14px}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}.auth{min-height:100vh;display:grid;justify-items:center;align-content:start;padding:80px 24px 24px;background:#f7f8f9}.auth-card{width:100%;max-width:400px;background:#fff;border-radius:8px;padding:32px 40px 40px;box-shadow:0 0 10px rgba(0,0,0,.1);text-align:center}.auth-mark{width:40px;height:40px;margin:0 auto 16px;border-radius:8px;background:var(--brand);color:#fff;display:grid;place-items:center;font-weight:800;font-size:18px}.auth-card h1{margin:0 0 8px;font-size:16px;font-weight:600}.auth-card p{margin:0 0 24px;color:var(--muted);font-size:14px}.auth-card label{text-align:left}.auth-card .btn{width:100%;height:40px;margin-top:8px}.auth-card .muted{margin-top:20px}.auth-legal{display:flex;align-items:flex-start;gap:10px;text-align:left;margin:4px 0 12px}.auth-legal input[type=checkbox]{width:16px;height:16px;margin:3px 0 0;flex:0 0 16px;accent-color:var(--brand)}.auth-legal label{margin:0;font-size:12px;font-weight:400;color:var(--text);line-height:1.45}.auth-legal a{font-weight:600}.auth-legal-links{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:6px;font-size:12px}.legal-page{min-height:100vh;background:var(--bg)}.legal-head{display:flex;flex-wrap:wrap;gap:16px 24px;align-items:center;justify-content:space-between;padding:16px 28px;background:#fff;border-bottom:1px solid var(--line)}.legal-brand{display:inline-flex;align-items:center;gap:8px;color:var(--ink);font-weight:700}.legal-brand,.legal-brand:hover{text-decoration:none}.legal-brand span{width:28px;height:28px;border-radius:6px;background:var(--brand);color:#fff;display:grid;place-items:center;font-size:13px}.legal-nav{display:flex;flex-wrap:wrap;gap:8px 16px}.legal-nav a{color:var(--text);font-size:13px;font-weight:600}.legal-nav a.is-active{color:var(--ink)}.legal-main{max-width:760px;margin:0 auto;padding:32px 20px 64px}.legal-kicker{margin:0 0 6px;color:var(--muted);font-size:12px;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.legal-main h1{margin:0 0 8px;font-size:28px;font-weight:600}.legal-back,.legal-download,.legal-meta{margin:0 0 16px;color:var(--muted);font-size:13px}.legal-body h2{margin:28px 0 10px;font-size:18px;font-weight:600}.legal-body li,.legal-body p{font-size:15px;line-height:1.55;color:var(--ink)}.legal-body ol,.legal-body ul{margin:0 0 16px;padding-left:20px}.legal-body li+li{margin-top:6px}.legal-note{margin:0 0 20px;padding:12px 14px;background:#fff;border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:6px}.legal-note strong{display:block;margin-bottom:4px;font-size:13px}.legal-note p{margin:0;font-size:14px;color:var(--text)}.legal-table-wrap{overflow-x:auto;margin:0 0 16px}.legal-table-wrap table{width:100%;border-collapse:collapse;font-size:13px}.legal-table-wrap td,.legal-table-wrap th{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}.legal-table-wrap th{background:#f1f2f4}.legal-index{list-style:none;padding:0;margin:24px 0}.legal-index li+li{margin-top:10px}.legal-index a{display:flex;flex-direction:column;gap:2px;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:8px;color:inherit;text-decoration:none}.legal-index a:hover{border-color:var(--brand);text-decoration:none}.legal-index span{color:var(--muted);font-size:13px}.jira-app{min-height:100vh;display:grid;grid-template-rows:56px 1fr}.topnav{background:var(--navy);color:#deebff;display:flex;align-items:center;gap:8px;padding:0 12px;overflow:visible;z-index:60}.topnav a{color:#deebff;text-decoration:none}.topnav-brand{display:flex;align-items:center;gap:10px;padding:0 8px;font-weight:600;font-size:15px;color:#fff}.topnav-brand:hover{text-decoration:none;color:#fff}.logo-mark{width:28px;height:28px;border-radius:6px;background:var(--brand);display:grid;place-items:center;font-size:13px;font-weight:800;color:#fff}.topnav-menu{display:none;width:40px;height:40px;margin:0;padding:0;border:0;border-radius:8px;background:transparent;color:#deebff;cursor:pointer;place-items:center;flex-shrink:0}.topnav-menu:hover{background:rgba(255,255,255,.08);color:#fff}.topnav-menu:focus-visible{outline:none;box-shadow:var(--focus)}.topnav-menu svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.side-backdrop{display:none;border:0;padding:0;margin:0;background:transparent}.topnav-right{margin-left:auto;display:flex;align-items:center;gap:8px}.avatar{width:32px;height:32px;border:0;padding:0;border-radius:50%;background:#e774bb;color:#fff;display:grid;place-items:center;font-size:12px;font-weight:700;flex-shrink:0;cursor:pointer}button.avatar:hover{filter:brightness(1.06)}button.avatar:focus-visible{outline:none;box-shadow:var(--focus)}.avatar.teal{background:#1aa6ae;cursor:default}.account-menu{position:relative;z-index:70}.account-menu-panel{position:absolute;right:0;top:calc(100% + 8px);min-width:200px;padding:6px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 16px rgba(9,30,66,.25);z-index:80}.account-menu-name{margin:0;padding:8px 10px 10px;font-size:13px;font-weight:600;color:var(--text);border-bottom:1px solid var(--line)}.account-menu-name p{margin:0}.account-menu-name span{display:block;margin-top:2px;font-size:12px;font-weight:500;color:var(--muted)}.account-menu-item,.topnav a.account-menu-item{display:block;width:100%;margin-top:4px;padding:8px 10px;border:0;border-radius:6px;background:transparent;color:#000;text-align:left;text-decoration:none;cursor:pointer}.account-menu-item:hover,.topnav a.account-menu-item:hover{background:#f1f2f4;color:#000;text-decoration:none}.users-page{display:flex;flex-direction:column;gap:20px}.users-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.users-head p{margin:6px 0 0;max-width:42em}.users-empty{background:var(--panel);border:1px dashed var(--line-strong);border-radius:8px;padding:28px 24px;text-align:center}.users-empty p{margin:0 0 16px;color:var(--muted)}.users-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:12px;gap:12px}.user-card{display:flex;flex-direction:column;gap:10px;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:16px 18px 14px;box-shadow:var(--shadow)}.user-card:hover{border-color:var(--line-strong)}.user-card-top{display:grid;grid-template-columns:36px 1fr auto;grid-gap:10px;gap:10px;align-items:start}.user-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#dfe1e6;color:var(--ink);font-size:12px;font-weight:700}.user-card-id{min-width:0}.user-card-id strong{display:block;font-size:15px;font-weight:600;line-height:1.25}.user-card-id span{display:block;margin-top:2px;color:var(--muted);font-size:13px}.user-card-id span.is-empty{font-style:italic}.user-card-email{margin:0;color:var(--text);font-size:13px}.user-card-contacts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.user-card-contacts li{display:grid;grid-gap:1px;gap:1px}.user-card-contacts span{color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.02em}.user-card-contacts strong{color:var(--text);font-size:13px;font-weight:500;overflow-wrap:anywhere}.user-card-objects{display:flex;flex-wrap:wrap;gap:6px}.user-chip{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:#f1f2f4;color:var(--text);font-size:12px}.user-chip.is-empty{color:var(--muted)}.user-card-note{margin:auto 0 0;font-size:12px;color:var(--muted)}.user-card-actions,.user-card-note{padding-top:10px;border-top:1px solid var(--line)}.user-card-actions{display:flex;gap:8px;margin-top:auto}.lozenge.ROLE_OWNER{background:#e9f2ff;color:#0c66e4}.lozenge.ROLE_ADMIN{background:#f3e6ff;color:#5e4db2}.lozenge.ROLE_MANAGER{background:#dcfff1;color:#216e4e}.lozenge.ROLE_VIEWER{background:#dfe1e6;color:#42526e}.users-dialog{max-width:480px}.users-dialog>.muted{margin:0 0 16px}.users-fields{display:flex;flex-direction:column}.users-role-hint{margin:4px 0 12px;font-size:12px;color:var(--muted)}.users-pass-row{position:relative}.users-pass-row input{margin-bottom:8px;padding-right:40px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;letter-spacing:.04em}.users-eye{position:absolute;top:6px;right:6px;width:28px;height:28px;display:grid;place-items:center;border:0;border-radius:4px;background:transparent;color:var(--muted);cursor:pointer}.users-eye:hover{color:var(--ink);background:#f1f2f4}.users-copy{width:100%;margin:0 0 14px}.users-cred{margin:0 0 8px;padding:12px 14px;background:#f7f8f9;font:13px/1.5 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:var(--ink);-webkit-user-select:all;-moz-user-select:all;user-select:all}.users-cred,.users-objects{border:1px solid var(--line);border-radius:8px}.users-objects{margin:4px 0 0;padding:4px 10px 6px}.users-objects legend{padding:0 4px;font-size:12px;font-weight:600;color:var(--muted)}.users-object{display:flex;align-items:center;gap:10px;margin:0;padding:8px 2px;font-size:14px;font-weight:500;color:var(--ink);cursor:pointer}.users-object+.users-object{border-top:1px solid var(--line)}.users-object input[type=checkbox]{width:16px;height:16px;margin:0;flex:0 0 16px;accent-color:var(--brand)}.users-object-indent{flex:0 0 auto;height:1px}.users-object span{min-width:0}.profile-page{display:flex;flex-direction:column;gap:20px;max-width:560px}.profile-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:18px 20px 8px;box-shadow:var(--shadow)}.profile-card h2{margin:0 0 14px;font-size:15px}.profile-hint{margin:-8px 0 12px;font-size:12px;color:var(--muted)}.profile-actions{display:flex;align-items:center;gap:12px}.profile-saved{margin:0;font-size:13px;color:var(--success)}.profile-legal{margin:0 0 16px;font-size:13px}.jira-body{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:0}.jira-body.is-side-collapsed{grid-template-columns:auto minmax(0,1fr)}.side{background:var(--sidebar);border-right:1px solid var(--line);padding:12px 8px;display:flex;flex-direction:column;gap:8px;min-height:0;min-width:0}.side.is-collapsed{padding:8px;width:-moz-fit-content;width:fit-content}.side.is-collapsed .nav-section{display:none}.side-toggle{width:32px;height:32px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--text);cursor:pointer;display:grid;place-items:center;flex-shrink:0;align-self:flex-end}.side-toggle:hover{background:#ebecf0;color:var(--ink)}.side-toggle:focus-visible{outline:none;box-shadow:var(--focus)}.side-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.side nav{display:flex;flex-direction:column;gap:2px}.side a.nav-item{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);padding:8px 10px;border-radius:3px;font-weight:400}.side a.nav-item:hover{background:#ebecf0;text-decoration:none}.side a.nav-item.active{background:#e9f2ff;color:var(--brand);font-weight:600}.nav-ico{width:16px;height:16px;opacity:.8}.nav-section{flex:1 1;min-height:0;overflow:auto;padding:0 4px}.nav-section-head{display:flex;align-items:center;justify-content:space-between;gap:4px;min-height:32px;padding:0 2px 0 8px;font-size:13px;font-weight:600;color:var(--ink)}.icon-plus{width:24px;height:24px;border:1px solid var(--line);border-radius:3px;background:#fff;color:var(--ink);cursor:pointer;display:grid;place-items:center;flex-shrink:0;padding:0}.icon-plus svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}.icon-plus:hover{background:#e9f2ff;color:var(--brand)}.nav-hint{margin:0;padding:4px 8px;font-size:13px;color:var(--muted)}.object-tree{list-style:none;margin:0;padding:0}.object-tree li{margin:0}.object-tree-row{display:flex;align-items:center;justify-content:space-between;gap:4px;border-radius:3px;min-height:32px;padding:0 2px 0 0}.object-tree-row:hover{background:#ebecf0}.object-tree-row.active{background:#e9f2ff}.object-tree-row a{flex:1 1;min-width:0;padding:6px 8px;color:var(--ink);text-decoration:none;font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.object-tree-row.active a{color:var(--brand)}.object-tree-row a:hover{text-decoration:none}.dialog-backdrop{position:fixed;inset:0;background:rgba(9,30,66,.54);display:grid;place-items:center;z-index:50;padding:16px;overflow:auto}.dialog{width:100%;max-width:420px;background:#fff;border-radius:8px;padding:20px 24px 24px;box-shadow:0 8px 16px rgba(9,30,66,.25);text-align:left}.dialog h2{margin:0 0 8px;font-size:20px;font-weight:500}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.dialog-backdrop.dialog-confirm{z-index:60}.dialog-confirm .dialog p{margin:0 0 16px}.dialog.dialog-problem{width:min(520px,calc(100vw - 32px));max-height:min(92vh,840px);overflow:auto}.dialog-problem h2{margin-bottom:12px}.dialog-problem .muted{margin:0 0 12px}.main{padding:24px 32px 48px;min-width:0;background:var(--bg)}.row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}h1.page{margin:0;font-size:24px;font-weight:500;letter-spacing:-.01em}.object-head-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.object-code{display:inline-flex;align-items:center;font-size:12px;font-weight:700;letter-spacing:.04em;color:var(--muted);border:1px solid var(--line);border-radius:3px;padding:2px 6px;line-height:16px}.object-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:10px}.object-meta label{margin:0;color:var(--muted)}.object-meta select{width:auto;min-width:200px;margin:0;background:var(--panel)}.object-tabs{display:flex;flex-wrap:nowrap;gap:4px 4px;margin:4px 0 20px;border-bottom:1px solid var(--line);overflow-x:auto}.object-tabs a{display:inline-flex;align-items:center;gap:8px;padding:8px 10px 10px;margin-bottom:-1px;color:var(--muted);font-size:14px;text-decoration:none;white-space:nowrap;border-bottom:2px solid transparent}.object-tabs a:hover{color:var(--ink);text-decoration:none}.object-tabs a.is-on{color:var(--brand);border-bottom-color:var(--brand);font-weight:500}.object-tabs svg{width:16px;height:16px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.section-placeholder{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:28px 20px;box-shadow:var(--shadow)}.section-placeholder p{margin:0}.exec{display:flex;flex-direction:column;gap:20px}.exec h2{margin:0}.exec-section-head h2,.exec>section>h2{margin:0 0 10px;font-size:16px;font-weight:600}.exec-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.exec-section-head h2{margin:0}.exec-section-title{display:flex;align-items:center;gap:2px;min-width:0}.exec-risks{display:grid;grid-gap:12px;gap:12px}.exec-actions{margin:0;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:16px 20px 16px 36px;box-shadow:var(--shadow)}.exec-actions li{margin:0 0 12px}.exec-actions li:last-child{margin:0}.exec-actions p{margin:4px 0 0;color:var(--text)}.data-import{display:flex;flex-direction:column;gap:18px}.data-intro,.data-preview{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:16px 20px;box-shadow:var(--shadow)}.data-import>section>h2,.data-intro h2,.data-preview h2{margin:0 0 8px;font-size:16px;font-weight:600}.data-intro p{margin:0 0 8px}.data-intro p:last-child{margin:0}.data-kinds{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}.data-kind{display:flex;flex-direction:column;gap:6px;text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:14px 16px;cursor:pointer;box-shadow:var(--shadow)}.data-kind strong{font-size:14px}.data-kind span{color:var(--muted);font-size:13px;line-height:1.4}.data-kind.is-on{border-color:var(--brand)}.data-actions{display:flex;flex-wrap:wrap;gap:8px}.extract-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin:0 0 12px}.extract-toolbar p{margin:0}.extract-table{overflow:auto;max-height:min(62vh,640px)}.extract-table .table td,.extract-table .table th{padding:4px 6px}.extract-table .table tbody tr:hover{background:#fafbfc}.extract-table .table tbody tr.is-on{background:#e9f2ff}.extract-table input,.extract-table select{margin:0;width:100%;min-width:0;padding:4px 8px;font-size:13px}.extract-table input[type=date]{min-width:132px}.extract-row-actions{display:flex;gap:4px;white-space:nowrap;width:1%}.extract-row-actions .btn{height:28px;padding:0 8px;font-size:12px}.contractor-extract-card{display:grid;grid-gap:10px;gap:10px;margin:12px 0;padding:16px;border:1px solid var(--line);border-radius:10px;background:#fff}.contractor-extract-card input,.contractor-extract-card select{margin-bottom:0}.contractor-extract-miss{background:#fff8f7}.data-sample{color:var(--muted);font-size:13px;max-width:280px}.data-notice{margin:0;color:#216e4e}.lozenge.PENDING{background:#f8e6a0;color:#533f04}.lozenge.APPLIED{background:#dcfff1;color:#216e4e}.lozenge.FAILED{background:#ffd5d2;color:#ae2e24}@media (max-width:720px){.data-kinds{grid-template-columns:1fr}}.insight-attention,.weather-risks{display:flex;flex-direction:column;gap:12px}.insight-census{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;margin:0;padding:0;list-style:none}.insight-census li{min-width:0}.insight-census button{display:grid;grid-gap:2px;gap:2px;width:100%;min-height:72px;padding:12px 14px;text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);color:inherit;font:inherit;cursor:pointer}.insight-census button:hover{border-color:var(--line-strong)}.insight-census button:focus-visible{outline:none;box-shadow:var(--focus)}.insight-census button.is-on{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand)}.insight-census strong{display:block;font-size:22px;line-height:1.2}.insight-census span{color:var(--muted);font-size:12px}.insight-table{display:grid;grid-gap:6px;gap:6px}.insight-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:8px;gap:8px}.insight-list-head,.insight-row{display:grid;grid-template-columns:40px minmax(0,1fr) 148px 148px;align-items:center;grid-gap:12px;gap:12px}.insight-list-head.is-tracked,.insight-row.is-tracked{grid-template-columns:40px minmax(0,1fr) 148px 110px 110px}.insight-list-head{padding:0 14px 0 18px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.insight-row{width:100%;text-align:left;background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--line-strong);border-radius:8px;padding:10px 14px;box-shadow:var(--shadow);cursor:pointer;color:inherit;font:inherit}.insight-row.is-on,.insight-row:focus-visible,.insight-row:hover{border-color:var(--line-strong)}.insight-row .brief-headline{margin:0;min-width:0;font-size:14px;font-weight:600}.insight-row-meta{display:contents}.insight-author{overflow:hidden;text-overflow:ellipsis}.insight-author,.insight-row time{white-space:nowrap;color:var(--muted);font-size:12px}.insight-row.LOW{border-left-color:#8c9bab}.insight-row.MEDIUM{border-left-color:#f5cd47}.insight-row.HIGH{border-left-color:#ef5c48}.insight-row.CRITICAL{border-left-color:#ae2e24}.insight-number{margin:0;font-size:12px;font-weight:700;letter-spacing:.04em;color:var(--muted);flex:0 0 auto}.insight-card-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:12px}.insight-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:16px}.insight-footer .dialog-actions{margin-top:0}.insight-history-toggle{flex:0 0 auto}.ticket-chat{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.ticket-chat-history{display:grid;grid-gap:10px;gap:10px;max-height:36vh;overflow:auto}.ticket-chat-meta{display:flex;justify-content:space-between;gap:8px;margin:0 0 4px;font-size:12px;color:var(--muted)}.ticket-chat-meta strong{color:var(--text)}.chat-bubble.comment{justify-self:start}.overview-inbox{display:flex;flex-direction:column;align-items:stretch;gap:8px;margin:0}.overview-inbox-tabs{display:flex;align-items:center;gap:8px;min-width:0}.overview-tabs{display:inline-flex;align-items:center;padding:3px;gap:2px;background:#ebecf0;border-radius:8px}.overview-tabs button{height:28px;margin:0;padding:0 12px;border:0;border-radius:6px;background:transparent;color:var(--text);font:inherit;font-weight:500;white-space:nowrap;cursor:pointer}.overview-tabs button:hover{color:var(--ink);background:#f7f8f9}.overview-tabs button.is-on{background:#fff;color:var(--ink);box-shadow:var(--shadow)}.overview-tabs button:focus-visible{outline:none;box-shadow:var(--focus)}.weather-request{width:32px;height:32px;margin:0}.weather-request[aria-busy=true]{opacity:.55}.weather-location-notice{margin:0;padding:10px 12px;border-radius:6px;background:#fff7d6;color:var(--ink);font-size:14px}.weather-location-notice a{font-weight:600;color:inherit}.overview-search{display:flex;align-items:center;gap:8px;width:100%;height:32px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--muted);font-weight:400}.overview-search:hover{border-color:var(--line-strong)}.overview-search:focus-within{border-color:var(--brand);color:var(--ink);box-shadow:var(--focus)}.overview-search svg{width:16px;height:16px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.overview-search input{width:100%;height:100%;margin:0;padding:0;border:0;background:transparent;font-weight:400}.overview-search input:focus{outline:none;background:transparent;border:0}.overview-search input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}.ticket-work{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.ticket-work h3{margin:0 0 8px;font-size:13px}.dialog.dialog-insight .insight-head{align-items:flex-start;padding-right:36px}.insight-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:8px}.insight-confidence{font-weight:700;letter-spacing:.04em;text-transform:uppercase}.insight-confidence,.insight-created,.insight-meta{font-size:12px;color:var(--muted);white-space:nowrap}.insight-meta{justify-content:flex-end;margin:0;flex:0 0 auto}.insight-meta,.row-actions{display:flex;align-items:center;gap:8px}.dialog.dialog-chat{max-width:720px;width:min(720px,calc(100vw - 32px));height:min(88vh,800px);max-height:min(88vh,800px);display:flex;flex-direction:column;padding:0;overflow:hidden;border-radius:16px}.chat-head{justify-content:space-between;gap:12px;margin:0;padding:14px 16px;border-bottom:1px solid var(--line)}.chat-brand,.chat-head{display:flex;align-items:center}.chat-brand{gap:10px;min-width:0}.chat-brand h2{margin:0;font-size:16px;font-weight:600}.chat-head .muted{margin:0;font-size:12px}.chat-head-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.chat-icon-btn{height:32px;margin:0;padding:0 10px;border:0;border-radius:8px;background:transparent;color:var(--text);font:inherit;font-weight:500;cursor:pointer}.chat-icon-btn:hover{background:#f1f2f4;color:var(--ink)}.chat-icon-btn:disabled{opacity:.45;cursor:default}.chat-icon-btn.is-close{width:32px;padding:0}.chat-icon-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}.chat-avatar{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e9f2ff;color:var(--brand);flex-shrink:0}.chat-avatar svg{width:16px;height:16px;fill:currentColor}.chat-thread{flex:1 1;min-height:0;overflow:auto;display:grid;align-content:start;grid-gap:12px;gap:12px;padding:18px 16px;background:#f7f8f9}.chat-empty{display:grid;justify-items:center;grid-gap:8px;gap:8px;padding:48px 16px 24px;text-align:center}.chat-empty p{margin:0;max-width:360px}.chat-row{display:flex;align-items:flex-end;gap:8px;max-width:100%}.chat-row.user{justify-self:end;justify-content:flex-end}.chat-row.assistant{justify-self:start}.chat-bubble{max-width:88%;padding:8px 10px;border-radius:8px;background:#f1f2f4}.dialog-chat .chat-bubble{max-width:min(520px,100%);padding:10px 14px;border-radius:16px;box-shadow:none}.chat-bubble p{margin:0;white-space:pre-wrap}.chat-bubble.user{justify-self:end;background:#deebff}.dialog-chat .chat-bubble.user{background:var(--brand);color:#fff;border-bottom-right-radius:6px}.chat-bubble.assistant{justify-self:start}.dialog-chat .chat-bubble.assistant{background:#fff;border:1px solid var(--line);border-bottom-left-radius:6px}.dialog-chat .chat-bubble.thinking{padding:12px 16px}.chat-dots{display:inline-flex;align-items:center;gap:5px;height:16px}.chat-dots i{width:6px;height:6px;border-radius:50%;background:var(--muted);animation:chat-dot 1.1s ease-in-out infinite}.chat-dots i:nth-child(2){animation-delay:.15s}.chat-dots i:nth-child(3){animation-delay:.3s}@keyframes chat-dot{0%,80%,to{opacity:.28;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.chat-files{margin:6px 0 0;padding:0;list-style:none;display:grid;grid-gap:2px;gap:2px;font-size:12px;color:var(--muted)}.dialog-chat .chat-bubble.user .chat-files{color:rgba(255,255,255,.82)}.chat-files.pending{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 8px}.chat-files.pending li{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;background:#f1f2f4;color:var(--text)}.chat-file-remove{width:16px;height:16px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--muted);cursor:pointer}.chat-composer{padding:12px 16px 16px;border-top:1px solid var(--line);background:#fff}.chat-composer textarea{width:100%;resize:vertical;margin-bottom:8px}.dialog-chat .chat-composer textarea{flex:1 1;min-height:24px;max-height:120px;margin:0;padding:8px 0;border:0;background:transparent;resize:none;field-sizing:content}.dialog-chat .chat-composer textarea:focus{outline:none;box-shadow:none;background:transparent}.chat-input{display:flex;align-items:flex-end;gap:8px;padding:6px 8px 6px 10px;border:1px solid var(--line);border-radius:16px;background:#f7f8f9}.chat-input:focus-within{border-color:var(--brand);background:#fff;box-shadow:var(--focus)}.chat-attach{display:grid;place-items:center;width:32px;height:32px;margin:0;color:var(--muted);cursor:pointer}.chat-attach svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.chat-attach:hover{color:var(--ink)}.chat-send{display:grid;place-items:center;width:32px;height:32px;margin:0;padding:0;border:0;border-radius:50%;background:var(--brand);color:#fff;cursor:pointer}.chat-send:hover{background:var(--brand-hover)}.chat-send:disabled{opacity:.4;cursor:default}.chat-send svg{width:16px;height:16px;fill:currentColor}.chat-send-spin{width:14px;height:14px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:chat-spin .7s linear infinite}@keyframes chat-spin{to{transform:rotate(1turn)}}.chat-file-signal{display:block;width:100%;margin:8px 0 0;padding:0;border:0;background:none;color:var(--brand);font:inherit;font-weight:600;cursor:pointer}.chat-file-signal:hover{text-decoration:underline}.chat-file-signal:disabled{opacity:.55;cursor:default}.chat-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.insight-details{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.dialog.dialog-insight{position:relative;max-width:720px;width:min(720px,calc(100vw - 32px));max-height:min(92vh,840px);overflow:auto;border-left:4px solid var(--line-strong)}.dialog.dialog-insight .insight-close{position:absolute;top:12px;right:12px;width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:var(--radius);background:transparent;color:var(--text);cursor:pointer}.dialog.dialog-insight .insight-close svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.dialog.dialog-insight .insight-close:hover{background:#f1f2f4;color:var(--ink)}.dialog.dialog-insight .insight-close:focus-visible{outline:none;box-shadow:var(--focus)}.dialog.dialog-insight.is-tracked{max-width:1040px;width:min(1040px,calc(100vw - 32px))}.dialog.dialog-insight .issue-aside{position:-webkit-sticky;position:sticky;top:0}.dialog.dialog-insight.LOW{border-left-color:#8c9bab}.dialog.dialog-insight.MEDIUM{border-left-color:#f5cd47}.dialog.dialog-insight.HIGH{border-left-color:#ef5c48}.dialog.dialog-insight.CRITICAL{border-left-color:#ae2e24}.dialog.dialog-insight .insight-number,.dialog.dialog-insight .insight-title{margin:0;font-size:16px;font-weight:500;letter-spacing:0;color:var(--ink);line-height:1.35}.dialog.dialog-insight .insight-title{display:flex;gap:8px;flex:1 1;min-width:0}.dialog.dialog-insight .insight-number{flex:0 0 auto}.dialog.dialog-insight .insight-compact,.dialog.dialog-insight .insight-meta-grid{grid-template-columns:1fr 1fr}.dialog.dialog-insight .insight-meta-grid{margin-bottom:8px}.dialog.dialog-insight .insight-meta-block{display:flex;align-items:center;gap:10px;min-width:0;width:auto;background:#f7f8f9;border:0;border-radius:6px;padding:10px 12px;box-shadow:none}.dialog.dialog-insight .brief-col{border-radius:6px}.dialog.dialog-insight .insight-meta-mark{flex:0 0 auto;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#e9f2ff;color:var(--brand);font-size:11px;font-weight:700;letter-spacing:0;text-transform:none}.dialog.dialog-insight .insight-meta-mark.is-date{background:#ebecf0;color:var(--text)}.dialog.dialog-insight .insight-meta-mark svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.dialog.dialog-insight .insight-meta-block p{min-width:0;margin:0}.dialog.dialog-insight .insight-meta-block p>span{display:block;margin:0 0 1px;font-size:11px;font-weight:600;letter-spacing:.02em;text-transform:none;color:var(--muted)}.dialog.dialog-insight .insight-meta-block strong,.dialog.dialog-insight .insight-meta-block time{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;line-height:1.3;color:var(--ink);font-style:normal}.dialog.dialog-insight .insight-meta-block time em{margin-left:6px;font-style:normal;font-size:12px;font-weight:500;color:var(--muted)}.dialog.dialog-insight .insight-impact-list,.dialog.dialog-insight .insight-impact-text{margin:0;color:var(--danger);font-size:14px;line-height:1.42857;font-weight:500}.dialog.dialog-insight .insight-impact-list{padding-left:1.15em}.dialog.dialog-insight .insight-details,.insight-attachments{margin-top:16px}.insight-attachment-list{display:flex;flex-direction:column;gap:8px;margin-top:8px}.insight-attachment-row{display:flex;align-items:center;gap:8px;width:-moz-fit-content;width:fit-content;max-width:100%;min-width:0;padding:2px 4px 2px 10px;border:1px solid var(--line);border-radius:6px;background:#fff}.insight-attachment-row .name{display:block;min-width:0;margin-right:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;line-height:20px;letter-spacing:normal;text-transform:none;color:var(--text)}.btn.insight-attachment-download{width:40px;min-width:40px;height:40px;padding:0;border:1px solid #b8c7e8;background:#e9f2ff;color:var(--brand)}.btn.insight-attachment-download:hover{border-color:var(--brand);background:#dbe8ff}.insight-attachment-download svg{width:24px;min-width:24px;height:24px;flex:0 0 24px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.dialog.dialog-insight .insight-next strong{font-size:14px;font-weight:600}.dialog.dialog-insight .brief-col p,.dialog.dialog-insight .insight-compact p,.dialog.dialog-insight .insight-next p{font-size:14px;line-height:1.42857}.dialog.dialog-insight .insight-footer .btn{min-width:0}.insight-compact p{margin:0;font-size:14px;line-height:1.4}.insight-grid{grid-template-columns:1fr 1fr}.insight-evidence,.insight-next{margin:0;padding:0;list-style:none;display:grid;grid-gap:8px;gap:8px}.insight-evidence li,.insight-next li{display:grid;grid-gap:2px;gap:2px}.insight-evidence strong,.insight-next strong{font-weight:600}.insight-evidence em{font-style:normal;color:var(--ink)}.insight-evidence small{color:var(--muted);font-size:12px}.insight-evidence .btn-download{justify-self:start;border:0;padding:0;background:none;color:var(--brand);cursor:pointer}.insight-evidence .btn-download:hover{text-decoration:underline}.insight-evidence .btn-download:disabled{color:var(--muted);cursor:default}.insight-impacts{display:flex;flex-wrap:wrap;gap:6px}.insight-chip{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;background:#fff;border:1px solid var(--line);font-size:13px;font-weight:600}.insight-chip.NEGATIVE{background:#ffd5d2;color:#ae2e24;border-color:transparent}.insight-chip.POSITIVE{background:#dcfff1;color:#216e4e;border-color:transparent}.insight-chip.UNKNOWN{background:#f1f2f4;color:#44546f}.insight-status{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.insight-status select{height:32px;border:1px solid var(--line);border-radius:3px;background:#fff;padding:0 8px}@media (max-width:720px){.insight-census,.insight-grid{grid-template-columns:1fr}}.decision-brief{background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--line-strong);border-radius:8px;padding:16px 20px 18px;box-shadow:var(--shadow)}.decision-brief.GREEN{border-left-color:#4bce97}.decision-brief.YELLOW{border-left-color:#f5cd47}.decision-brief.RED{border-left-color:#ef5c48}.brief-kicker{margin:0 0 6px;font-size:12px;font-weight:600;color:var(--muted)}.brief-headline{margin:0 0 8px;font-size:18px;font-weight:600;line-height:1.35}.brief-meta{margin:0 0 12px;color:var(--text);font-size:13px}.brief-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;margin:0 0 8px}.brief-col{background:#f7f8f9;border-radius:6px;padding:10px 12px}.brief-col.ignore{background:#fff7d6}.brief-col.recommend{background:#e9f2ff}.brief-col span{display:block;margin:0 0 4px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.brief-col p{margin:0;white-space:pre-wrap}.brief-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.passport{display:flex;flex-direction:column;gap:16px;max-width:760px;margin-bottom:32px}.passport-hero,.passport-section{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:18px 20px 14px;box-shadow:var(--shadow)}.passport-hint{margin:10px 0 2px;font-size:12px;color:var(--muted)}.passport-section-head{margin-bottom:4px}.passport-section-head h2{margin:0;font-size:15px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--ink)}.passport-section-head p{margin:4px 0 0;font-size:13px;color:var(--muted)}.passport-danger .btn.danger{margin-top:12px}.passport-rows{display:flex;flex-direction:column}.passport-hero-meta{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 8px;gap:0 8px}.passport-field{display:grid;grid-template-columns:148px minmax(0,1fr);grid-gap:6px 16px;gap:6px 16px;align-items:center;min-height:44px;padding:8px 6px;margin:0 -6px;border-top:1px solid #f1f2f4;border-radius:8px}.passport-field.is-note,.passport-field.is-title{grid-template-columns:1fr;align-items:start;border-top:0}.passport-field.is-title{padding-top:0;min-height:0}.passport-field.is-note{padding-top:12px}.passport-field.is-editable:hover,.passport-field.is-editing{background:#f7f8f9}.passport-label{margin:0;font-size:13px;font-weight:500;color:var(--muted)}.passport-value{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;margin:0;padding:4px 6px;border:0;border-radius:6px;background:transparent;text-align:left;font-size:15px;line-height:1.45;color:var(--ink);cursor:pointer}.passport-value.is-empty{color:var(--muted)}.passport-value:focus-visible{outline:none;box-shadow:var(--focus)}.passport-pencil{width:14px;height:14px;flex-shrink:0;opacity:.28;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linejoin:round;stroke-linecap:round}.passport-field:hover .passport-pencil,.passport-value:focus-visible .passport-pencil{opacity:1;color:var(--brand)}.passport-editor{min-width:0}.passport-editor input,.passport-editor select,.passport-editor textarea{width:100%;margin:0}.passport-editor textarea{min-height:96px}.passport-field-hint{margin:6px 0 0;font-size:12px;color:var(--muted)}.passport-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.passport-chips span{padding:2px 8px;border-radius:999px;background:#ebecf0;font-size:13px}.passport-field.is-title .passport-value{padding:2px 4px}.passport-field.is-title .passport-editor input,.passport-field.is-title .passport-value{font-size:22px;font-weight:600;letter-spacing:-.02em}.passport-field.is-note .passport-value{align-items:flex-start;white-space:pre-wrap}.stage-hint{margin:-4px 0 12px}.readonly-field{margin:0 0 12px;padding:6px 10px;border:2px solid var(--line);border-radius:3px;background:#f4f5f7;color:var(--text)}h2{margin:0 0 12px;font-size:16px;font-weight:600}.crumbs{display:flex;align-items:center;gap:6px;font-size:14px;margin-bottom:8px}.crumbs,.crumbs a{color:var(--muted)}.crumbs a:hover,.issue-key{color:var(--brand)}.issue-key{font-weight:600;font-size:14px}.card{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:16px 20px;margin-bottom:16px;box-shadow:var(--shadow)}label{display:block;font-size:12px;font-weight:600;color:var(--text);margin:0 0 4px}input,select,textarea{width:100%;border:2px solid var(--line);border-radius:3px;padding:6px 10px;background:#fafbfc;margin-bottom:12px}input:focus,select:focus,textarea:focus{outline:none;background:#fff;border-color:var(--brand)}textarea{min-height:90px;resize:vertical}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:3px;padding:6px 12px;cursor:pointer;background:var(--brand);font-weight:500;height:32px}.btn,.btn:hover{color:#fff;text-decoration:none}.btn:hover{background:var(--brand-hover)}.btn.secondary{background:#fff;color:var(--ink);border:1px solid var(--line-strong);cursor:pointer}.btn.secondary:hover{background:#f1f2f4;color:var(--ink)}.btn.secondary.is-on{border-color:var(--brand);color:var(--brand)}.plan{display:flex;flex-direction:column;gap:12px;min-width:0}.plan-toolbar{display:flex;justify-content:space-between;align-items:center;gap:8px 12px;flex-wrap:wrap}.plan-toolbar-meta{display:flex;align-items:center;gap:8px;height:32px;min-width:0}.plan-stage{position:relative;min-width:0}.plan-stage.is-read{padding:0 2px}.plan-stage-btn,.plan-stage.is-read{display:flex;align-items:center;gap:8px;height:32px}.plan-stage-btn{min-width:0;max-width:min(280px,46vw);margin:0;padding:0 8px 0 10px;border:1px solid var(--line-strong);border-radius:3px;background:#fff;color:var(--ink);cursor:pointer}.plan-stage-btn:hover{background:#f1f2f4}.plan-stage-btn.is-open,.plan-stage-btn:focus-visible{outline:none;border-color:var(--brand);color:var(--brand)}.plan-stage-btn:disabled{opacity:.7;cursor:default}.plan-stage-kicker{flex-shrink:0;font-size:11px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--muted)}.plan-stage-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;color:var(--ink)}.plan-stage-chevron{width:14px;height:14px;margin-left:2px;flex-shrink:0;align-self:center;fill:none;stroke:var(--muted);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.plan-stage-btn.is-open .plan-stage-chevron{transform:rotate(180deg)}.plan-stage-menu{position:absolute;z-index:20;top:calc(100% + 6px);left:0;min-width:100%;width:max-content;max-width:min(320px,calc(100vw - 32px));margin:0;padding:6px;list-style:none;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.plan-stage-menu button{display:flex;align-items:center;width:100%;margin:0;padding:8px 10px;border:0;border-radius:6px;background:none;color:var(--ink);font-size:14px;font-weight:500;text-align:left;cursor:pointer}.plan-stage-menu button:hover{background:#f1f2f4}.plan-stage-menu button.is-current{background:#e9f2ff;color:#0c66e4}.plan-stage-error{position:absolute;top:calc(100% + 6px);left:0;margin:0;font-size:12px;color:var(--danger);white-space:nowrap}.plan-help{width:32px;height:32px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--text);cursor:pointer;display:grid;place-items:center;flex-shrink:0}.plan-help:hover{background:#ebecf0;color:var(--ink)}.plan-help:focus-visible{outline:none;box-shadow:var(--focus)}.plan-help svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}.plan-toolbar-actions{display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:8px;margin-left:auto}.plan-toolbar-actions .btn{margin:0;height:32px;font-size:14px;font-weight:500;display:inline-flex;width:auto;flex:0 0 auto;white-space:nowrap}.hint-wrap{position:relative;display:inline-flex;flex-shrink:0}.hint-wrap .hint{position:absolute;top:calc(100% + 8px);right:0;z-index:6;width:max-content;max-width:min(280px,calc(100vw - 32px));padding:8px 10px;border-radius:6px;background:#172b4d;color:#fff;font-size:13px;line-height:1.35;box-shadow:var(--shadow);opacity:0;pointer-events:none;transform:translateY(-4px);transition:opacity .12s ease,transform .12s ease}.hint-wrap:focus-within .hint,.hint-wrap:hover .hint{opacity:1;transform:none}.plan-help-dialog{max-width:560px;max-height:min(92vh,720px);overflow:auto}.plan-help-dialog p{margin:0 0 12px;color:var(--text)}.plan-help-dialog h3{margin:4px 0 8px;font-size:14px;font-weight:600}.plan-help-dialog ul{margin:0 0 12px;padding-left:18px;color:var(--text)}.plan-help-dialog li{margin:0 0 6px}.plan-gantt{display:flex;align-items:stretch;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);overflow:hidden;max-height:calc(100vh - 240px)}.plan-gantt-left{flex:0 0 auto;width:min(290px,46%);min-width:180px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;border-right:1px solid var(--line);background:#fff;z-index:3;box-shadow:6px 0 10px rgba(9,30,66,.08);scrollbar-width:none}.plan-gantt-left::-webkit-scrollbar{display:none}.plan-gantt-left-head,.plan-gantt-name,.plan-gantt-pkg{display:grid;grid-template-columns:72px 1fr;grid-gap:8px;gap:8px;align-items:center;padding:0 10px;border-bottom:1px solid var(--line)}.plan-gantt-left-head{position:-webkit-sticky;position:sticky;top:0;z-index:4;height:44px;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.02em;line-height:1.15;background:#fff}.plan-gantt-pkg{height:30px;font-size:12px;font-weight:600;background:#f7f8f9;grid-template-columns:1fr}.plan-gantt-name{width:100%;height:36px;border:0;background:transparent;text-align:left;cursor:pointer;color:inherit}.plan-gantt-name.is-on{background:#e9f2ff}.plan-gantt-name span{color:var(--muted);font-size:12px}.plan-gantt-name strong{font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.plan-gantt-name em{font-style:normal;margin-left:6px;font-size:10px;color:#ae2e24}.plan-gantt-chart{flex:1 1;min-width:0;overflow:auto;overscroll-behavior:contain}.plan-gantt-scale{position:-webkit-sticky;position:sticky;top:0;z-index:2;background:#fff}.plan-gantt-days,.plan-gantt-months{display:flex}.plan-gantt-months div{border-right:1px solid var(--line);font-size:11px;padding:4px 6px}.plan-gantt-days div,.plan-gantt-months div{height:22px;color:var(--muted);box-sizing:border-box}.plan-gantt-days div{border-right:1px solid #f1f2f4;font-size:10px;text-align:center}.plan-gantt-days .is-today{color:var(--brand);font-weight:700}.plan-gantt-body{position:relative;background-image:linear-gradient(90deg,transparent calc(100% - 1px),#f1f2f4 1px);background-repeat:repeat}.plan-gantt-today{top:0;bottom:0;width:1px;background:var(--brand);z-index:2}.plan-gantt-links,.plan-gantt-today{position:absolute;pointer-events:none}.plan-gantt-links{inset:0;z-index:1}.plan-gantt-links path{stroke:#8590a2;stroke-width:1.25;marker-end:none}.plan-gantt-links path.is-critical{stroke:#e34935}.plan-gantt-track{position:relative;border-bottom:1px solid #f1f2f4}.plan-gantt-track.is-pkg{background:#f7f8f9}.plan-gantt-bar,.plan-gantt-mile,.plan-gantt-summary{position:absolute;top:8px;height:20px;border-radius:4px;background:#cce0ff;overflow:hidden;cursor:pointer}.plan-gantt-summary{top:8px;height:14px;border-radius:2px;background:#8590a2}.plan-gantt-bar span,.plan-gantt-summary span{display:block;height:100%;background:#0c66e4}.plan-gantt-bar.is-critical,.plan-gantt-summary.is-critical{background:#ffd5d2}.plan-gantt-bar.is-critical span,.plan-gantt-summary.is-critical span{background:#e34935}.plan-gantt-bar.is-on{outline:2px solid var(--brand)}.plan-gantt-mile{width:14px!important;height:14px;top:11px;background:#0c66e4;transform:rotate(45deg);overflow:visible}.plan-gantt-mile.is-critical{background:#e34935}.plan-gantt-handle{position:absolute;top:0;width:8px;height:100%;z-index:2;cursor:ew-resize}.plan-gantt-handle.start{left:0}.plan-gantt-handle.end{right:0}.plan-gantt-nodate{margin:8px 12px;border:0;background:transparent;color:var(--muted);cursor:pointer}.dialog.dialog-task{width:min(640px,calc(100vw - 32px));max-width:100%;max-height:min(92vh,840px);overflow:hidden;padding:0;min-width:0;container-type:inline-size}.dialog.dialog-task,.gantt-editor{display:flex;flex-direction:column}.gantt-editor{gap:12px;min-height:0}.dialog.dialog-task .gantt-editor{border:0;box-shadow:none;background:transparent;padding:20px 24px 16px;flex:1 1}.gantt-editor input,.gantt-editor select,.gantt-editor textarea{margin-bottom:0;min-width:0}.gantt-editor fieldset{border:0;margin:0;padding:0 2px 0 0;min-width:0;min-height:0;flex:1 1;overflow:auto;display:grid;grid-gap:10px;gap:10px}.gantt-editor h2{margin:0;font-size:20px;font-weight:500;flex-shrink:0}.gantt-editor-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.gantt-editor-row.is-3{grid-template-columns:repeat(3,minmax(0,1fr))}.gantt-check{display:flex;align-items:center;gap:8px;font-weight:500}.gantt-check input{width:auto;margin:0}.gantt-editor-actions{display:flex;justify-content:flex-end;gap:8px;align-items:center;flex-wrap:wrap;flex-shrink:0;padding-top:8px;border-top:1px solid var(--line);background:#fff}.gantt-editor-actions .btn.danger{margin-right:auto}@container (max-width: 540px){.gantt-editor-row,.gantt-editor-row.is-3{grid-template-columns:1fr}}@media (max-width:720px){.gantt-editor-row,.gantt-editor-row.is-3{grid-template-columns:1fr}}.btn.subtle{background:transparent;color:var(--ink)}.btn.subtle:hover{background:#091e420f;color:var(--ink)}.btn.danger{background:var(--danger)}.btn:disabled{opacity:.55;cursor:not-allowed}.error{color:var(--danger);font-size:13px;margin:0 0 12px}.muted{color:var(--muted)}.tree{padding:0;margin:0}.tree,.tree ul{list-style:none}.tree ul{padding-left:20px;margin:4px 0 0}.tree li{margin:0 0 4px}.node{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:3px;background:var(--panel);border:1px solid var(--line)}.node:hover{background:#f1f2f4}.node a{font-weight:600;color:var(--ink)}.node a:hover{color:var(--brand)}.issue-table-wrap{background:var(--panel);border:1px solid var(--line);border-radius:8px;overflow:hidden;box-shadow:var(--shadow)}.table{width:100%;border-collapse:collapse}.table td,.table th{text-align:left;padding:8px 12px;border-bottom:1px solid var(--line);font-size:14px;vertical-align:middle}.table th{font-size:12px;font-weight:600;color:var(--muted);background:#f7f8f9}.table tbody tr:hover{background:#f1f2f4}.table tbody tr.is-row{cursor:pointer}.table td.is-num,.table th.is-num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.purchase-file-list{display:flex;flex-direction:column;align-items:stretch;gap:8px;flex-shrink:0;max-height:220px;overflow:auto}.purchase-file-row{display:flex;align-items:center;gap:4px;width:100%;min-width:0;padding:8px 8px 8px 12px;border:1px solid var(--line);border-radius:6px;background:#f7f8f9}.purchase-file-row .name{font-weight:400;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:auto}.purchase-file-add,.purchase-file-download,.purchase-file-remove{width:32px;min-width:32px;height:32px;padding:0}.purchase-file-add{align-self:flex-start}.purchase-file-add svg,.purchase-file-download svg,.purchase-file-remove svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.purchase-file-remove:hover{color:#c9372c}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.table tbody tr:last-child td{border-bottom:0}.table tbody tr.is-order-late td{background:#fffaf0}.coverage-cell{min-width:148px}.coverage-track{display:flex;height:6px;margin-top:6px;overflow:hidden;background:#dfe1e6;border-radius:4px}.coverage-fill{height:100%}.coverage-fill.is-delivered{background:#216e4e}.coverage-fill.is-ordered{background:#579dff}.filter-chips{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.filter-chips button.is-on{background:#e9f2ff;color:#0c66e4}.table a.key{font-weight:600;white-space:nowrap}.table a.summary{color:var(--ink)}.table a.summary:hover{color:var(--brand)}.lozenge{display:inline-flex;align-items:center;width:max-content;max-width:100%;justify-self:start;font-size:11px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;padding:1px 6px;border-radius:3px;line-height:16px;white-space:nowrap}.lozenge.OPEN{background:#dfe1e6;color:#42526e}.lozenge.IN_PROGRESS{background:#e9f2ff;color:#0c66e4}.lozenge.WAITING{background:#f8e6a0;color:#533f04}.lozenge.CLOSED,.lozenge.GREEN{background:#dcfff1;color:#216e4e}.lozenge.ORDERED{background:#dfe1e6;color:#42526e}.lozenge.IN_TRANSIT{background:#e9f2ff;color:#0c66e4}.lozenge.DELIVERED{background:#dcfff1;color:#216e4e}.lozenge.DELAYED{background:#ffd5d2;color:#ae2e24}.lozenge.REQUESTED{background:#fff7d6;color:#974f0c}.lozenge.DRAFT{background:#dfe1e6;color:#42526e}.lozenge.PARTIALLY_DELIVERED{background:#e9f2ff;color:#0c66e4}.lozenge.PARTIALLY_ORDERED{background:#fff7d6;color:#974f0c}.lozenge.CANCELLED{background:#dfe1e6;color:#42526e}.lozenge.CONFIRMED,.lozenge.SENT{background:#e9f2ff;color:#0c66e4}.lozenge.APPROVED,.lozenge.RECEIVED{background:#dcfff1;color:#216e4e}.lozenge.PLANNED{background:#dfe1e6;color:#42526e}.lozenge.REJECTED{background:#ffd5d2;color:#ae2e24}.lozenge.ON_TRACK{background:#dcfff1;color:#216e4e}.lozenge.AT_RISK{background:#fff7d6;color:#974f0c}.lozenge.ACTIVE{background:#dcfff1;color:#216e4e}.lozenge.INACTIVE,.lozenge.NOT_STARTED{background:#dfe1e6;color:#42526e}.lozenge.COMPLETED{background:#dcfff1;color:#216e4e}.priority{display:inline-flex;align-items:center;gap:6px;font-size:13px}.prio-dot{width:8px;height:8px;border-radius:2px;transform:rotate(45deg)}.prio-dot.RED{background:#ef5c48}.prio-dot.YELLOW{background:#f5cd47}.prio-dot.GREEN{background:#4bce97}.issue-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;grid-gap:24px;gap:24px;align-items:start}.issue-title{display:block;width:100%;font-size:24px;font-weight:500;margin:0 0 16px;padding:0;border:0;background:none;text-align:left;cursor:default}button.issue-title:not(:disabled){cursor:pointer}button.issue-title:not(:disabled):hover{color:var(--brand)}.issue-title-edit{margin:0 0 16px}.issue-title-input{font-size:24px;font-weight:500;margin:0;padding:4px 8px}.issue-desc{background:#fff;border:1px solid var(--line);border-radius:8px;padding:10px 14px;margin-bottom:16px}.issue-desc.editable{padding:0}.issue-desc textarea{margin:0;min-height:0;height:auto;overflow:hidden;field-sizing:content;background:#fff;resize:none}.desc-view{display:block;width:100%;margin:0;padding:10px 14px;border:0;background:transparent;text-align:left;white-space:pre-wrap;cursor:default;font:inherit;color:inherit}.issue-desc.editable .desc-view{cursor:pointer}.desc-view:disabled{color:inherit;cursor:default}.desc-view.empty{color:var(--muted)}.desc-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.add-file{display:inline-flex;align-items:center;gap:6px;margin:4px 0 16px;padding:0;border:0;background:none;color:var(--muted);font-size:13px;font-weight:400;cursor:pointer}.add-file input{display:none}.add-file svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.add-file:hover{color:var(--ink)}.issue-aside{background:#fff;border:1px solid var(--line);border-radius:10px;padding:4px 0;box-shadow:var(--shadow)}.issue-aside .error{margin:8px 14px 0}.field-row{display:grid;grid-template-columns:118px minmax(0,1fr);grid-gap:8px;gap:8px;padding:10px 14px;align-items:center;font-size:13px}.field-row+.field-row{border-top:1px solid #f1f2f4}.field-row .lbl{color:var(--muted);font-weight:600;font-size:12px;padding:0}.field-row.is-meta{color:var(--ink)}.issue-aside input[type=date],.issue-aside select{width:100%;height:32px;margin:0;padding:0 8px;border:1px solid var(--line);border-radius:6px;background:#fff}.issue-aside input[type=date]:focus,.issue-aside select:focus{outline:none;border-color:var(--brand);box-shadow:var(--focus)}.due-days{display:flex;align-items:center;gap:6px}.due-days input{width:56px;height:32px;margin:0;padding:0 8px;text-align:center;border:1px solid var(--line);border-radius:6px;background:#fff;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.due-days input:focus{outline:none;border-color:var(--brand);box-shadow:var(--focus)}.due-days input::-webkit-inner-spin-button,.due-days input::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0}.due-check{width:24px;height:24px;padding:0;border:0;border-radius:4px;background:transparent;color:var(--success);cursor:pointer}.due-check svg{width:18px;height:18px;display:block}.due-check:hover{background:#dcfff1}.due-check:disabled{opacity:.55;cursor:not-allowed}.assignee-picker{position:relative}.assignee-btn{width:100%;height:32px;margin:0;padding:0 8px;border:1px solid var(--line);border-radius:6px;background:#fff;text-align:left;cursor:pointer}.assignee-btn:disabled{cursor:default;opacity:.7}.assignee-btn:not(:disabled):hover{border-color:var(--line-strong)}.assignee-menu{position:absolute;z-index:20;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:var(--shadow);padding:6px}.assignee-search{margin:0 0 6px;padding:4px 8px}.assignee-list{max-height:220px;overflow:auto}.assignee-option{display:flex;flex-direction:column;align-items:flex-start;gap:1px;width:100%;margin:0;padding:6px 8px;border:0;border-radius:4px;background:none;text-align:left;cursor:pointer}.assignee-option.selected,.assignee-option:hover{background:#f1f2f4}.assignee-empty,.assignee-option.unassigned{color:var(--muted)}.assignee-empty{padding:8px;font-size:12px}.activity{margin-top:8px}.comment-composer{display:grid;grid-template-columns:32px 1fr;grid-gap:10px;gap:10px;align-items:start;margin-top:12px}.comment-box{border:1px solid var(--line);border-radius:16px;padding:12px 16px 10px;background:#fff}.comment-box textarea{min-height:24px;height:auto;border:0;background:transparent;margin:0;padding:0;resize:none}.comment-box textarea:focus{outline:none;border:0;background:transparent}.comment-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.comment-chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:4px 12px;font-size:13px;color:var(--ink);cursor:pointer}.comment-chip:hover{background:#f4f5f7}.comment{display:grid;grid-template-columns:32px 1fr;grid-gap:10px;gap:10px;padding:12px 0;border-top:1px solid var(--line)}.comment p{margin:4px 0 0}.actions{margin:8px 0 0}.actions,.photos{display:flex;flex-wrap:wrap;gap:8px}.photos{margin:8px 0}.photos img{width:120px;height:120px;object-fit:cover;border-radius:3px;border:1px solid var(--line)}.analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px;margin-bottom:24px}.analytics-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:16px 20px 18px;box-shadow:var(--shadow)}.analytics-card h2{margin:0 0 14px}.analytics-body{display:flex;align-items:center;gap:20px}.analytics-donut-wrap{position:relative;width:140px;height:140px;flex-shrink:0}.analytics-donut{width:140px;height:140px;transform:rotate(-90deg)}.analytics-donut circle:not(.analytics-donut-track),.analytics-donut-track{fill:none;stroke-width:18}.analytics-donut-track{stroke:#f1f2f4}.analytics-donut-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.analytics-donut-center strong{font-size:22px;font-weight:600;line-height:1.1;color:var(--ink)}.analytics-donut-center span{font-size:11px;color:var(--muted)}.analytics-legend{list-style:none;margin:0;padding:0;flex:1 1;min-width:0}.analytics-legend li{display:grid;grid-template-columns:10px 1fr auto auto;align-items:center;grid-gap:8px;gap:8px;min-height:28px;font-size:13px}.analytics-swatch{width:10px;height:10px;border-radius:2px}.analytics-legend-label{color:var(--ink)}.analytics-legend-count{font-weight:600;color:var(--ink)}.analytics-legend-share{color:var(--muted)}.layer{display:flex;flex-direction:column;gap:16px}.layer-stats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:10px;gap:10px}.layer-card,.layer-stats li{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.layer-stats li{padding:12px 14px}.layer-stats span{display:block;font-size:12px;color:var(--muted)}.layer-stats strong{font-size:18px;font-weight:600}.layer-card{padding:16px 20px}.layer-card h2{margin:0 0 10px;font-size:16px;font-weight:600}.layer-card .muted{margin:0 0 12px}.contractors-table tbody tr{cursor:pointer}.contractors-table tbody tr:hover td{background:#f7f8f9}.contractors-table tr.is-on td{background:#e9f2ff}.contractor-warn{color:#ae2e24;font-weight:600}.contractor-facts{margin:0;padding:10px 12px;background:#f7f8f9;border-radius:6px;display:grid;grid-gap:6px;gap:6px;font-size:13px;color:var(--text)}.contractor-facts p{margin:0}.contractor-facts ul{margin:0;padding-left:16px}.contractor-row-actions,.contractor-spec-list{display:flex;flex-wrap:wrap;gap:6px}.contractor-spec-list label{display:inline-flex;align-items:center;gap:6px;margin:0;padding:4px 8px;border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:500}.contractor-spec-list label.is-on{background:#e9f2ff;border-color:#0c66e4;color:#0c66e4}.contractor-spec-list input{width:auto;margin:0}.contractor-task-block{display:grid;grid-gap:8px;gap:8px;padding-top:4px}.contractor-chip-list,.contractor-selected-tasks,.task-picker-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:6px;gap:6px;max-height:240px;overflow:auto}.contractor-chip-list li,.contractor-selected-tasks li{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;background:#f7f8f9;border-radius:6px}.contractor-selected-tasks em,.contractor-selected-tasks strong,.task-picker-item em{display:block}.contractor-selected-tasks em,.task-picker-item em{font-style:normal;color:var(--muted);font-size:12px;font-weight:400}.task-picker .gantt-editor{padding:20px 24px 16px}.task-picker-item{display:flex;align-items:flex-start;gap:10px;margin:0;padding:8px 10px;border:1px solid var(--line);border-radius:6px}.task-picker-item input{width:auto;margin:4px 0 0}.contractor-dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:12px 16px;gap:12px 16px;margin:0}.contractor-dl div{margin:0}.contractor-dl dt{font-size:12px;color:var(--muted)}.contractor-dl dd{margin:2px 0 0}.plan-gantt-contractor{display:block;margin-top:1px;font-size:11px;color:var(--muted);font-weight:400}.gantt{display:flex;flex-direction:column;gap:10px}.gantt-row{display:grid;grid-template-columns:minmax(120px,180px) 1fr;grid-gap:12px;gap:12px;align-items:center}.gantt-label strong{display:block;font-size:13px}.gantt-label span{font-size:12px;color:var(--muted)}.gantt-track{position:relative;height:18px;background:#f1f2f4;border-radius:4px}.gantt-bar{position:absolute;top:0;height:100%;min-width:8px;background:#cce0ff;border-radius:4px;overflow:hidden}.gantt-bar span{display:block;height:100%;background:#0c66e4}.gantt-bar.is-critical{background:#ffd5d2}.gantt-bar.is-critical span{background:#e34935}.meter{display:inline-block;width:72px;height:8px;margin-right:8px;background:#f1f2f4;border-radius:4px;overflow:hidden;vertical-align:middle}.meter span{display:block;height:100%;background:#0c66e4}.table .lozenge{margin-left:8px}.money-chart{display:flex;flex-direction:column;gap:12px}.money-row{display:grid;grid-template-columns:minmax(100px,160px) 1fr 120px;grid-gap:12px;gap:12px;align-items:center}.money-row em{font-style:normal;font-size:12px;color:var(--muted);text-align:right}.money-tracks{display:flex;flex-direction:column;gap:4px}.money-track{height:8px;background:#f1f2f4;border-radius:4px;overflow:hidden}.money-track span{display:block;height:100%;border-radius:4px}.money-track .is-budget{background:#0c66e4}.money-track .is-forecast{background:#6b778c}.money-track .is-over{background:#e34935}.estimate-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.estimate-toolbar .btn,.estimate-toolbar select{height:32px;margin:0}.estimate-toolbar label.btn{display:inline-flex;font-size:14px;font-weight:500}.estimate-toolbar select{width:auto;min-width:260px;max-width:100%}.estimate-summary{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.estimate-chart{display:grid;grid-template-columns:1fr 1fr;align-items:center;grid-gap:16px 20px;gap:16px 20px;min-width:0;padding:20px 22px}.estimate-donut-wrap{position:relative;width:100%;max-width:280px;aspect-ratio:1;justify-self:center}.estimate-donut{width:100%;height:100%;transform:rotate(-90deg)}.estimate-donut circle:not(.estimate-donut-track),.estimate-donut-track{fill:none;stroke-width:28}.estimate-donut-track{stroke:#f1f2f4}.estimate-donut-center{position:absolute;inset:18%;display:flex;align-items:center;justify-content:center;text-align:center;pointer-events:none}.estimate-donut-center strong{font-size:22px;font-weight:600;letter-spacing:-.03em;line-height:1.15;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.estimate-chart-legend{list-style:none;margin:0;padding:0;min-width:0;width:100%;display:flex;flex-direction:column;gap:8px}.estimate-chart-legend li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;grid-gap:10px;gap:10px;padding:7px 10px;border-radius:6px;font-size:13px;line-height:1.3}.estimate-chart-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.estimate-chart-amount{font-weight:600;white-space:nowrap}.estimate-chart-amount,.estimate-chart-share{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.estimate-chart-share{min-width:3.5ch;text-align:right;opacity:.8}.estimate-layout{min-width:0}.estimate-tree-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.work-package-create{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.work-package-create input{min-width:160px;flex:1 1}.estimate-mini-form{display:grid;grid-gap:8px;gap:8px;margin-top:8px}.estimate-filters{flex-wrap:wrap;margin-bottom:12px}.estimate-filters,.estimate-search{display:flex;align-items:center;gap:8px}.estimate-search{flex:1 1;min-width:160px;height:32px;margin:0;padding:0 10px;border:2px solid var(--line);border-radius:3px;background:#fafbfc;font-weight:400;color:var(--muted)}.estimate-search:focus-within{background:#fff;border-color:var(--brand);color:var(--ink)}.estimate-search svg{width:16px;height:16px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.estimate-search input{width:100%;height:100%;margin:0;padding:0;border:0;background:transparent}.estimate-search input:focus{outline:none;background:transparent;border:0}.estimate-filters select{width:auto;min-width:150px;height:32px;margin:0;flex-shrink:0}.estimate-filters-actions{margin-left:auto;display:flex;align-items:center;gap:8px;flex-shrink:0}.estimate-filters .btn{margin:0;flex-shrink:0}.estimate-filters label.btn{height:32px;display:inline-flex;align-items:center}.estimate-layout .issue-table-wrap{overflow-x:auto;overflow-y:hidden;max-width:100%}.estimate-layout .table{table-layout:auto;width:100%}.estimate-col-code{width:84px}.estimate-col-name{width:auto}.estimate-col-qty{width:88px}.estimate-col-unit{width:52px}.estimate-col-price,.estimate-col-total{width:128px}.estimate-col-cat{width:120px}.estimate-col-pkg{width:112px}.estimate-col-actions{width:64px}.estimate-layout .table td,.estimate-layout .table th{padding:6px 10px;white-space:nowrap}.estimate-layout .table td:nth-child(2){overflow:hidden;text-overflow:ellipsis;max-width:220px}.estimate-layout .table thead th{white-space:nowrap;vertical-align:middle}.estimate-layout .table thead th:not(.estimate-item-actions) button{display:inline-flex;align-items:center;gap:6px;margin:0;padding:0;border:0;background:transparent;font:inherit;font-weight:600;color:inherit;cursor:pointer}.estimate-layout .table thead th:not(.estimate-item-actions) button.is-sorted,.estimate-layout .table thead th:not(.estimate-item-actions) button:hover{color:var(--brand)}.estimate-sort-dir{font-size:11px;font-weight:500}.estimate-layout .table tbody tr{cursor:pointer}.estimate-layout .table tr.is-selected td{background:#e9f2ff}.estimate-layout .table td.estimate-item-actions,.estimate-layout .table th.estimate-item-actions{width:64px;min-width:64px;padding:2px 4px;text-align:right;vertical-align:middle;white-space:nowrap}.estimate-item-actions-row{display:inline-flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:0}.estimate-item-actions-row .btn{height:28px;width:28px;min-width:28px;padding:0;flex:0 0 28px;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box}.estimate-item-actions-row svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.estimate-item-actions-row .btn[aria-label="Удалить"]:hover{color:#c9372c}.estimate-editor .gantt-editor{padding:0;border:0;box-shadow:none;background:transparent}@media (max-width:720px){.gantt-row,.money-row{grid-template-columns:1fr}}@media (max-width:900px){.analytics-grid,.brief-grid,.estimate-summary,.issue-layout{grid-template-columns:1fr}}@media (max-width:640px){.passport-field{min-height:0}.passport-field,.passport-hero-meta{grid-template-columns:1fr}}@media (max-width:768px){body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.jira-app{min-height:100dvh;grid-template-rows:calc(56px + env(safe-area-inset-top)) 1fr;overflow:visible;width:100%;max-width:100vw}.jira-body,.jira-body.is-side-collapsed{width:100%;max-width:100%;min-width:0}.topnav{padding-top:env(safe-area-inset-top);height:calc(56px + env(safe-area-inset-top));padding-left:8px;padding-right:8px;overflow:visible}.topnav-menu{display:grid}.topnav-brand{padding:0 4px;font-size:14px}.account-menu-panel{position:fixed;top:calc(56px + env(safe-area-inset-top) + 6px);right:8px;left:auto;width:min(280px,calc(100vw - 16px));min-width:0;z-index:80}.account-menu-item,.topnav a.account-menu-item{min-height:44px;display:flex;align-items:center;font-size:15px}.jira-body,.jira-body.is-side-collapsed{display:block;min-height:0}.side-backdrop{display:none;position:fixed;inset:0;z-index:35;background:rgba(9,30,66,.46)}.jira-app.is-drawer-open .side-backdrop{display:block}.side,.side.is-collapsed{position:fixed;top:calc(56px + env(safe-area-inset-top));left:0;bottom:0;width:min(320px,calc(100vw - 56px));padding:12px 8px calc(16px + env(safe-area-inset-bottom));z-index:40;transform:translateX(-110%);transition:transform .2s ease;box-shadow:none;overflow:auto;pointer-events:none}.jira-app.is-drawer-open .side{transform:translateX(0);box-shadow:8px 0 24px rgba(9,30,66,.2);pointer-events:auto}.side.is-collapsed .nav-section{display:block}.side-toggle{display:none}.object-tree-row{min-height:44px}.object-tree-row a{padding:10px 8px;font-size:15px}.icon-plus{width:32px;height:32px}.main{padding:16px 16px calc(32px + env(safe-area-inset-bottom));width:100%;max-width:100%;min-width:0;overflow-x:hidden}.row{flex-wrap:wrap;align-items:flex-start;gap:10px;margin-bottom:12px}.row-actions{width:100%}.row-actions .btn{width:100%;height:40px}h1.page{font-size:20px}.crumbs{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.object-tabs{margin-bottom:16px;gap:0;-webkit-overflow-scrolling:touch;scrollbar-width:none}.object-tabs::-webkit-scrollbar{display:none}.object-tabs a{padding:10px 12px 12px;font-size:14px}.auth{padding:48px 16px 24px;align-content:center}.auth-card{padding:24px 20px 28px}.users-head{flex-direction:column}.users-head .btn{height:40px}.users-grid{grid-template-columns:1fr}.user-card-actions{flex-wrap:wrap}.user-card-actions .btn{flex:1 1;height:40px}.profile-page{max-width:none}.profile-actions{flex-wrap:wrap}.profile-actions .btn{width:100%;height:40px}input,select,textarea{font-size:16px;padding:10px 12px}.btn{min-height:40px;height:auto;padding:8px 14px}.estimate-filters select,.estimate-search,.object-meta select,.overview-search,.overview-tabs button{min-height:40px;height:40px}.overview-inbox-tabs{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:8px;gap:8px}.overview-tabs{width:auto;min-width:0;overflow-x:auto}.overview-tabs button{flex:1 1 auto;padding:0 8px;font-size:13px}.insight-list-head{display:none}.insight-row,.insight-row.is-tracked{grid-template-columns:36px minmax(0,1fr);gap:2px 10px;padding:12px 12px 12px 10px}.insight-row .insight-number{align-self:start;padding-top:2px}.insight-row .brief-headline{font-size:15px;white-space:normal}.insight-row-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;grid-column:2}.insight-row .insight-author,.insight-row time{white-space:normal}.insight-census button{min-height:64px}.dialog-backdrop{padding:16px 12px calc(16px + env(safe-area-inset-bottom));align-items:end;z-index:90}.dialog-backdrop.dialog-confirm{z-index:100}.dialog{max-width:none;width:100%;border-radius:12px;padding:20px 16px 16px}.dialog.dialog-chat,.dialog.dialog-insight,.dialog.dialog-insight.is-tracked,.dialog.dialog-problem,.dialog.dialog-task,.plan-help-dialog,.users-dialog{position:fixed;inset:0;width:100%;max-width:none;height:100dvh;max-height:100dvh;border-radius:0;padding:16px 16px calc(16px + env(safe-area-inset-bottom))}.dialog.dialog-insight{padding:calc(16px + env(safe-area-inset-top)) 16px calc(16px + env(safe-area-inset-bottom))}.dialog.dialog-chat{padding:0}.dialog.dialog-insight .insight-title{font-size:16px}.dialog.dialog-insight .brief-grid,.dialog.dialog-insight .insight-compact,.dialog.dialog-insight .insight-meta-grid{grid-template-columns:1fr}.insight-footer{flex-direction:column;align-items:stretch}.insight-footer .dialog-actions{width:100%;flex-direction:column-reverse}.insight-footer .btn{width:100%}.dialog-actions{flex-wrap:wrap}.dialog-actions .btn{flex:1 1 auto;min-width:120px}.dialog.dialog-chat{height:100dvh;max-height:100dvh}.chat-bubble,.dialog-chat .chat-bubble{max-width:92%}.estimate-layout .issue-table-wrap,.extract-table,.issue-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.table td,.table th{white-space:nowrap}.estimate-layout .table td:nth-child(2){max-width:180px}.estimate-filters,.estimate-toolbar,.extract-toolbar,.plan-toolbar,.plan-toolbar-actions{flex-wrap:wrap;align-items:stretch}.plan-toolbar-actions{justify-content:flex-start}.data-actions .btn,.estimate-filters .btn,.estimate-toolbar .btn,.plan-toolbar-actions .btn{flex:0 1 auto}.plan-gantt{max-height:none;min-height:64vh;max-width:100%}.plan-gantt-left{width:148px;min-width:128px}.plan-gantt-left-head,.plan-gantt-name,.plan-gantt-pkg{grid-template-columns:1fr}.exec-section-head{align-items:flex-start}.work-package-create{flex-direction:column;align-items:stretch}.work-package-create input{min-width:0}.contractor-dl,.estimate-summary{grid-template-columns:1fr}.estimate-filters,.estimate-layout,.estimate-toolbar,.exec,.passport,.plan,.plan-toolbar,.plan-toolbar-actions,.profile-page,.users-page{max-width:100%;min-width:0}.btn{max-width:100%;white-space:normal;text-align:center;box-sizing:border-box}.plan-toolbar-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;margin-left:0}.data-actions .btn,.estimate-filters .btn,.estimate-toolbar .btn,.extract-toolbar .btn,.plan-toolbar-actions .btn{width:100%;min-width:0;justify-content:center}.data-actions,.estimate-filters,.estimate-toolbar,.extract-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.estimate-filters select,.estimate-search,.estimate-toolbar select{grid-column:1/-1;width:100%;min-width:0}.extract-toolbar{align-items:stretch}.users-head .btn{width:100%}.profile-card{padding:16px 14px 8px}.readonly-field{overflow-wrap:anywhere}.issue-aside input[type=date],.issue-aside select{width:100%;min-width:0}.desc-actions .btn,.gantt-editor-actions .btn{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 8px);min-width:0}}