.tools-hero{margin-bottom:16px}
.tools-jump{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 22px}
.tools-jump a{display:inline-flex;align-items:center;gap:8px;padding:10px 15px;border:1px solid #435775;border-radius:999px;background:#202f3e;color:#c9dcfa;text-decoration:none;font-size:12px;font-weight:800;transition:.2s}
.tools-jump a:hover,.tools-jump a:focus-visible{background:#2b3d59;border-color:#7199ef;color:#fff}
.tools-jump svg{width:16px;height:16px}
.tool-panel{margin-bottom:22px;scroll-margin-top:25px;overflow:hidden}
.tool-heading{display:flex;align-items:flex-start;gap:16px;margin-bottom:20px}
.tool-heading-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;flex:0 0 auto;color:#fff}
.tool-heading-icon svg{width:23px;height:23px}
.gantt-icon{background:linear-gradient(135deg,#1665df,#558dff)}
.ishikawa-icon{background:linear-gradient(135deg,#6541c4,#9c6df2)}
.tool-heading h2{margin:4px 0 4px;font-size:22px;color:#f4f7ff;letter-spacing:-.025em}
.tool-heading p{margin:0;color:#adbfce;font-size:12px;line-height:1.55}
.gantt-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;margin:0 0 12px;background:#222f3d;border:1px solid #3e5164;border-radius:12px}
.gantt-toolbar>span,.gantt-toolbar>div{display:flex;align-items:center;gap:8px}
.gantt-toolbar>span{color:#d7e7f6;font-size:12px;font-weight:800}.gantt-toolbar svg{width:16px;height:16px}
.gantt-toolbar .mini-button{padding:7px 10px;text-decoration:none}
.gantt-scroll{overflow-x:auto;border:1px solid #3d4c59;border-radius:13px;background:#172129}
.gantt-scroll:focus-visible{outline:2px solid #809bff;outline-offset:3px}
.gantt-board{min-width:940px}
.gantt-row{display:grid;grid-template-columns:230px minmax(710px,1fr);min-height:58px;border-bottom:1px solid #33414d}
.gantt-row:last-of-type{border-bottom:0}
.gantt-head{min-height:42px;background:#253440}
.gantt-task-label{padding:10px 14px;border-right:1px solid #3b4b5a;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:3px}
.gantt-task-label strong{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#e7eef6;font-size:12px}
.gantt-task-label small{color:#9fb1bf;font-size:10px}
.gantt-head .gantt-task-label{color:#b9c9d7;text-transform:uppercase;font-size:10px;font-weight:900;letter-spacing:.08em}
.gantt-track{position:relative;min-width:0}
.gantt-weeks{display:grid;grid-template-columns:repeat(12,minmax(0,1fr))}
.gantt-weeks span{display:flex;align-items:center;justify-content:center;border-right:1px solid #3a4c5b;color:#bed1df;font-size:10px;font-weight:800}
.gantt-weeks span:last-child{border-right:0}
.gantt-body-track{background:repeating-linear-gradient(90deg,transparent 0,transparent calc(8.3333% - 1px),#2d3c48 calc(8.3333% - 1px),#2d3c48 8.3333%)}
.gantt-today{position:absolute;z-index:2;top:0;bottom:0;width:2px;background:#a882ff;pointer-events:none}
.gantt-today:before{content:'';position:absolute;top:0;left:-3px;border-left:4px solid transparent;border-right:4px solid transparent;border-top:6px solid #a882ff}
.gantt-bar{position:absolute;top:16px;height:26px;min-width:9px;border-radius:7px;background:#5798f9;display:flex;align-items:center;padding:0 7px;color:#fff;font-size:10px;font-weight:800;overflow:hidden;white-space:nowrap;box-shadow:0 5px 13px rgba(0,0,0,.18)}
.gantt-bar span{overflow:hidden;text-overflow:ellipsis}.gantt-bar.status-todo{background:#566eaa}.gantt-bar.status-doing{background:linear-gradient(90deg,#2478ed,#8465e5)}.gantt-bar.status-done{background:#25825c}.gantt-bar.overdue{background:#c56465}
.gantt-no-bar{position:absolute;top:19px;left:12px;color:#8fa5b5;font-size:11px;font-style:italic}
.gantt-schedule{padding:0 14px;border-bottom:1px solid #33414d;color:#baccda}
.gantt-schedule summary{cursor:pointer;padding:8px 0;font-size:11px;font-weight:700}
.gantt-schedule[open] summary{color:#c8d6ff}
.gantt-schedule form{display:flex;align-items:end;flex-wrap:wrap;gap:12px;padding:3px 0 13px}
.gantt-schedule form>div{min-width:145px}.gantt-schedule label{margin:0 0 5px}.gantt-schedule input{padding:8px 10px}
.gantt-empty{padding:24px;color:#afc0cd;text-align:center;font-size:12px}
.gantt-legend{display:flex;flex-wrap:wrap;gap:15px;margin-top:13px;color:#aebfcc;font-size:10px}
.gantt-legend span{display:inline-flex;align-items:center;gap:6px}.legend-dot{width:8px;height:8px;border-radius:3px;display:inline-block}.legend-dot.todo{background:#566eaa}.legend-dot.doing{background:#5d74ea}.legend-dot.done{background:#25825c}.legend-dot.overdue{background:#c56465}
.ishikawa-problem{display:flex;align-items:center;gap:15px;padding:15px 18px;border:1px solid #6a5e9a;border-radius:13px;background:linear-gradient(90deg,#292c49,#28243c);margin-bottom:13px}
.ishikawa-problem span{font-size:10px;letter-spacing:.12em;font-weight:900;color:#b99cff;white-space:nowrap}.ishikawa-problem strong{font-size:14px;color:#f2eaff}
.tool-editor{margin:0 0 16px;color:#bfcbe0}.tool-editor summary{cursor:pointer;font-size:12px;font-weight:800;color:#a9c1ff}.tool-editor form{display:flex;align-items:end;gap:10px;margin-top:10px}.tool-editor form label{margin:0 0 5px}.tool-editor form input{flex:1}.tool-editor form button{white-space:nowrap}
.fishbone{padding:20px 17px 15px;border:1px solid #3e4b60;border-radius:17px;background:radial-gradient(circle at 85% 50%,rgba(99,69,159,.1),transparent 37%),#18232e}
.fishbone-half{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px;padding:0 34px 0 6px}
.fishbone-branch{position:relative;min-width:0;padding:12px 12px 13px;border:1px solid #47516a;border-radius:13px;background:#222e3c}
.fishbone-branch:after{content:'';position:absolute;height:25px;width:2px;background:#7565a8;left:50%;bottom:-25px;transform:rotate(-28deg);transform-origin:top}
.fishbone-half.bottom .fishbone-branch:after{bottom:auto;top:-25px;transform:rotate(28deg);transform-origin:bottom}
.fishbone-branch h3{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:12px;color:#c5b5ff}.fishbone-branch h3:before{content:'';width:7px;height:7px;border-radius:50%;background:#9777f2;flex:0 0 auto}
.fishbone-branch ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.fishbone-branch li{display:flex;align-items:start;justify-content:space-between;gap:5px;padding:7px 8px;border:1px solid #35485b;border-radius:8px;background:#1a2733;color:#e1e9f4;font-size:11px;line-height:1.35;overflow-wrap:anywhere}
.fishbone-branch li.fishbone-placeholder{border-style:dashed;color:#8496a8;font-style:italic}
.fishbone-branch li form{flex:0 0 auto}.fishbone-branch li button{display:grid;place-items:center;width:17px;height:17px;padding:0;border:0;border-radius:4px;background:transparent;color:#a8b7c8}.fishbone-branch li button:hover{background:#513840;color:#ffb5bd}.fishbone-branch li button svg{width:12px;height:12px}
.fishbone-spine{display:flex;align-items:center;gap:11px;height:45px;color:#a794dd;font-size:10px;font-weight:900;letter-spacing:.1em}.fishbone-spine>div{height:3px;flex:1;background:linear-gradient(90deg,#5773b9,#9164db);border-radius:9px}.fishbone-spine>span:last-child{display:flex;align-items:center;gap:4px;color:#cbb3ff}.fishbone-spine svg{width:15px;height:15px}
.fishbone-half.bottom .fishbone-branch{border-color:#3e5e71}.fishbone-half.bottom .fishbone-branch h3{color:#a9cfff}.fishbone-half.bottom .fishbone-branch h3:before{background:#5897ea}
.cause-form{display:grid;grid-template-columns:minmax(140px,.75fr) minmax(220px,2fr) auto;align-items:end;gap:11px;margin-top:17px;padding:15px;border:1px solid #3d4f64;border-radius:13px;background:#202d3a}
.cause-form label{margin:0 0 6px}.cause-form button{white-space:nowrap}
@media(max-width:760px){.tool-heading h2{font-size:19px}.gantt-toolbar{align-items:flex-start;flex-direction:column}.ishikawa-problem{align-items:flex-start;flex-direction:column;gap:5px}.fishbone-half{grid-template-columns:1fr;padding:0;gap:9px}.fishbone-branch:after{display:none}.fishbone-spine{height:34px}.cause-form{grid-template-columns:1fr}.tool-editor form{align-items:stretch;flex-direction:column}.tool-editor form button{align-self:flex-start}}

/* Visão administrativa de responsáveis por atividade. */
.assignment-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin:0 0 15px}
.assignment-summary>div{display:grid;gap:5px;padding:15px 17px;border:1px solid #41576e;border-radius:14px;background:#202c39}
.assignment-summary span{color:#a9bdce;font-size:10px;font-weight:800;letter-spacing:.08em}
.assignment-summary strong{color:#eef3ff;font-size:23px;line-height:1}
.assignment-summary>div:nth-child(2) strong{color:#83adff}.assignment-summary>div:nth-child(3) strong{color:#c4aaff}
.assignment-intro{display:flex;align-items:flex-start;gap:10px;margin:0 0 18px;padding:11px 14px;border:1px solid #3e5066;border-radius:11px;background:#1c2937;color:#b9c9d8}
.assignment-intro svg{width:17px;height:17px;flex:0 0 auto;color:#92b5f0}.assignment-intro p{margin:0;font-size:11px;line-height:1.5}
.assignment-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(265px,1fr));align-items:start;gap:15px}
.assignment-lane{min-width:0;border:1px solid #405063;border-radius:16px;background:#1b2632;overflow:hidden}
.assignment-lane header{display:flex;align-items:center;gap:11px;min-height:78px;padding:15px;border-bottom:1px solid #394c5d;background:linear-gradient(115deg,#26374a,#242d43)}
.assignment-lane.unassigned-lane header{background:linear-gradient(115deg,#303047,#322b43)}
.assignment-lane header>div{min-width:0}.assignment-lane h2{margin:0 0 4px;font-size:13px;color:#f3f6ff;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.assignment-lane header small{display:block;color:#a9b9c9;font-size:10px;line-height:1.4}
.assignment-avatar{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,#246bd6,#7855dc);color:#fff;display:grid;place-items:center;flex:0 0 auto;font-weight:900;font-size:16px}.assignment-avatar svg{width:18px;height:18px}
.unassigned-lane .assignment-avatar{background:#554970;color:#dac6ff}
.assignment-stack{display:grid;gap:9px;padding:11px}
.assignment-task{padding:12px;border:1px solid #405368;border-radius:12px;background:#23313e;scroll-margin-top:20px}
.assignment-task:target{border-color:#9b85ec;box-shadow:0 0 0 3px rgba(132,108,230,.2)}
.assignment-task-head{display:flex;align-items:flex-start;justify-content:space-between;gap:6px}
.assignment-task-head strong{color:#eff4fb;font-size:12px;line-height:1.4;overflow-wrap:anywhere}
.assignment-task>small{display:block;margin:7px 0 10px;color:#aebecd;font-size:10px;line-height:1.4}
.assignment-state{flex:0 0 auto;padding:4px 6px;border-radius:6px;background:#3c4664;color:#b9cfff;font-size:9px;font-weight:800;white-space:nowrap}
.assignment-state.status-doing{background:#294c76;color:#a9d0ff}.assignment-state.status-done{background:#234b3b;color:#91e0b7}
.assignment-task form{border-top:1px solid #3c4e5f;padding-top:9px}.assignment-task label{margin:0 0 5px;font-size:10px;color:#b6c9da}
.assignment-task-actions{display:flex;gap:6px}.assignment-task-actions select{min-width:0;flex:1;padding:8px 7px;font-size:10px}.assignment-task-actions button{padding:7px 9px;font-size:10px;white-space:nowrap}
.assignment-empty{padding:16px 10px;border:1px dashed #41546a;border-radius:10px;color:#9fb1c1;text-align:center;font-size:11px;line-height:1.5}
@media(max-width:700px){.assignment-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.assignment-board{grid-template-columns:1fr}}

/* Kanban do projeto: usa as mesmas atividades do Gantt e da lista. */
.kanban-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 18px}
.kanban-overview>div{display:grid;gap:6px;padding:15px 18px;border:1px solid #3d5365;border-radius:13px;background:linear-gradient(150deg,#202f3c,#192631)}
.kanban-overview span{color:#a9becb;font-size:10px;font-weight:800;letter-spacing:.08em}.kanban-overview strong{font-size:24px;color:#f0f6fb}
.kanban-overview>div:nth-child(2) strong{color:#80baff}.kanban-overview>div:nth-child(3) strong{color:#6dd99b}
.kanban-toolbar-teamlink{display:flex;align-items:center;gap:12px;margin:0 0 8px}
.kanban-toolbar-teamlink label{display:flex;align-items:center;gap:9px;flex:1;max-width:450px;padding:0 12px;border:1px solid #435768;border-radius:10px;background:#202f3c;color:#93b5c7}
.kanban-toolbar-teamlink label svg{width:17px;height:17px;flex:none}.kanban-toolbar-teamlink input{height:42px;min-width:0;width:100%;padding:0;border:0;outline:0;background:transparent;color:#eef6fa}
.kanban-toolbar-teamlink>span{color:#a9bfca;font-size:11px}.kanban-toolbar-teamlink>a{display:flex;align-items:center;gap:6px;margin-left:auto;text-decoration:none;white-space:nowrap}.kanban-toolbar-teamlink>a svg{width:15px;height:15px}
.kanban-help{margin:0 0 15px;color:#a9becb;font-size:11px;line-height:1.5}
.teamlink-kanban{display:grid;grid-template-columns:repeat(3,minmax(250px,1fr));gap:14px;align-items:start;overflow-x:auto;padding-bottom:12px}
.teamlink-kanban-lane{min-width:0;border:1px solid #3d5365;border-radius:16px;background:#192631;overflow:hidden;transition:border-color .16s,box-shadow .16s}
.teamlink-kanban-lane.drop-target{border-color:#70aff0;box-shadow:0 0 0 3px rgba(80,152,232,.17)}
.teamlink-kanban-lane>header{display:flex;align-items:center;gap:10px;min-height:74px;padding:13px 15px;border-bottom:1px solid #3c5060;background:#223442}
.teamlink-kanban-lane.lane-doing>header{background:#203850}.teamlink-kanban-lane.lane-done>header{background:#203a34}
.lane-symbol{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:10px;background:#35495b;color:#a9bfd4}.lane-doing .lane-symbol{background:#27527b;color:#a5d0ff}.lane-done .lane-symbol{background:#285844;color:#99e6bd}.lane-symbol svg{width:18px;height:18px}
.teamlink-kanban-lane header>div{min-width:0;flex:1}.teamlink-kanban-lane h2{margin:0;color:#eff6f8;font-size:14px}.teamlink-kanban-lane header small{color:#a9bbc7;font-size:10px}.teamlink-kanban-lane header b{display:grid;place-items:center;min-width:25px;height:25px;padding:0 5px;border-radius:7px;background:#35495a;color:#e1eef6;font-size:11px}
.teamlink-kanban-stack{display:grid;align-content:start;gap:10px;min-height:170px;padding:11px}
.teamlink-kanban-card{padding:13px;border:1px solid #42586a;border-radius:12px;background:#243441;box-shadow:0 5px 13px rgba(0,0,0,.12)}
.teamlink-kanban-card[data-movable="true"]{cursor:grab}.teamlink-kanban-card[data-movable="true"]:active{cursor:grabbing}.teamlink-kanban-card.is-dragging{opacity:.45}.teamlink-kanban-card[hidden]{display:none}
.kanban-card-top{display:flex;justify-content:space-between;gap:7px;align-items:center}.kanban-card-id{color:#91aaba;font-size:10px;font-weight:800}.kanban-review{padding:4px 7px;border-radius:6px;font-size:9px;font-weight:800}.kanban-review.correction{background:#503e3d;color:#ffd1bd}.kanban-review.approved{background:#315744;color:#aef4c8}
.kanban-gut{margin-left:auto;padding:4px 7px;border-radius:6px;background:#59472e;color:#ffdaa2;font-size:9px;font-weight:800}
.teamlink-kanban-card h3{margin:10px 0 6px;color:#f3f8fb;font-size:13px;line-height:1.35;overflow-wrap:anywhere}.teamlink-kanban-card p{margin:0 0 10px;color:#afc2ce;font-size:10px;line-height:1.45;overflow-wrap:anywhere}
.kanban-card-meta{display:grid;gap:5px;margin:10px 0;color:#b4c9d5;font-size:10px}.kanban-card-meta span{display:flex;align-items:center;gap:6px}.kanban-card-meta svg{width:13px;height:13px;color:#7fb9d8}
.kanban-status-form{padding-top:10px;border-top:1px solid #3d5262}.kanban-status-form label{display:block;margin:0 0 5px;color:#bed1db;font-size:10px}.kanban-status-form>div{display:flex;gap:6px}.kanban-status-form select{min-width:0;flex:1;padding:7px 8px;font-size:11px}.kanban-status-form button{padding:7px 9px;font-size:10px}
.kanban-lane-empty{margin:0;padding:20px 10px;border:1px dashed #445767;border-radius:10px;color:#9fb5c2;text-align:center;font-size:11px}
@media(max-width:900px){.teamlink-kanban{grid-template-columns:repeat(3,minmax(260px,1fr))}.kanban-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.kanban-toolbar-teamlink{flex-wrap:wrap}.kanban-toolbar-teamlink label{max-width:none;flex-basis:100%}.kanban-toolbar-teamlink>a{margin-left:0}}

.gut-icon{background:linear-gradient(135deg,#b07825,#d6a049)}
.gut-scale{display:flex;justify-content:space-between;gap:10px;margin:0 0 12px;padding:8px 12px;border:1px solid #4a5560;border-radius:9px;background:#1c2a34;color:#adbec8;font-size:10px}
.gut-list{display:grid;gap:10px}.gut-item{display:grid;grid-template-columns:58px minmax(180px,1fr) auto;align-items:center;gap:14px;padding:12px 14px;border:1px solid #455664;border-radius:12px;background:#202f3a;scroll-margin-top:25px}
.gut-item:target{border-color:#d9a95f;box-shadow:0 0 0 3px rgba(211,157,73,.16)}.gut-rank{display:grid;justify-items:center;gap:1px;color:#b8c6ce}.gut-rank span{font-size:9px;font-weight:800}.gut-rank strong{color:#f5c27b;font-size:23px;line-height:1}.gut-rank small{font-size:9px}
.gut-item-main{min-width:0}.gut-item-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.gut-item-head strong{color:#edf4f8;font-size:12px;overflow-wrap:anywhere}.gut-item-head span{color:#adc0ca;font-size:10px;white-space:nowrap}.gut-meter{height:7px;margin:9px 0 6px;border-radius:8px;background:#3b4c59;overflow:hidden}.gut-meter i{display:block;height:100%;border-radius:8px;background:linear-gradient(90deg,#4586c0,#e9a347)}.gut-item-main>small{color:#adbec9;font-size:10px}
.gut-item form{display:flex;align-items:end;gap:7px}.gut-item form label{display:grid;gap:5px;margin:0;color:#bacbd5;font-size:9px}.gut-item form select{min-width:54px;padding:7px 6px;font-size:11px}.gut-item form button{padding:8px 10px;white-space:nowrap;font-size:10px}
@media(max-width:1000px){.gut-item{grid-template-columns:48px minmax(0,1fr)}.gut-item form{grid-column:1/-1;justify-content:flex-end}}
@media(max-width:550px){.gut-scale{font-size:8px}.gut-item{gap:10px}.gut-item form{flex-wrap:wrap;justify-content:flex-start}.gut-item form button{align-self:end}}
