
:root{color-scheme:dark;--bg:#000;--panel:#0b0b0b;--line:#252525;--muted:#999;--text:#eee;--accent:#baff70;--cell:36px;--row:48px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}button,input,select,textarea{font:inherit;color:inherit}button{background:#171717;border:1px solid #333;padding:9px 13px;cursor:pointer;border-radius:0;white-space:nowrap}button:hover{background:#282828;border-color:#666}button:disabled{opacity:.4;cursor:not-allowed}.primary{background:var(--accent);border-color:var(--accent);color:#000;font-weight:650}.primary:hover{background:#d0ff9f}.danger{color:#ff9797}.quiet{background:transparent}a{color:var(--accent)}input,select,textarea{background:#111;border:1px solid #333;padding:10px;width:100%;border-radius:0;min-width:0}input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input[type=checkbox]{width:auto}textarea{resize:vertical;min-height:100px}label{display:block;color:#bbb;font-size:12px;margin:0 0 7px}h1,h2,h3,p{margin-top:0}h1{font-size:28px;font-weight:600;letter-spacing:-.8px}h2{font-size:20px;font-weight:600}h3{font-size:15px}.muted{color:var(--muted)}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--accent);text-transform:uppercase;margin-bottom:22px}.top{height:68px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 26px;gap:20px}.brand{display:flex;align-items:center;gap:12px;letter-spacing:2px;font-weight:750}.brand svg{width:26px;height:26px}.actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.login{max-width:440px;margin:12vh auto;padding:32px;border:1px solid var(--line);background:var(--panel)}.field{margin-bottom:18px}.login .primary{width:100%}.workspace{padding:32px 28px;max-width:1500px;margin:auto}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}.heading h1{margin:0 0 6px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:16px}.card{padding:26px;border:1px solid var(--line);background:#080808;cursor:pointer;text-align:left;min-height:175px}.card:hover{background:#111;border-color:#777}.card h2{margin:24px 0 12px}.stat{border:1px solid #333;font-size:11px;padding:4px 8px;color:#bbb}.empty{padding:64px 20px;text-align:center;border:1px dashed #333}.editor-head{padding:24px 26px 18px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.editor-head h1{font-size:23px;margin:0 0 6px}.toolbar{padding:12px 26px;display:flex;gap:10px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);flex-wrap:wrap}.toolbar input{width:200px}.toolbar select{width:auto}.board{display:flex;height:calc(100vh - 218px);min-height:360px}.chart-scroll{overflow:auto;flex:1;position:relative}.chart-grid{display:grid;grid-template-columns:320px auto;width:max-content;min-width:100%;position:relative}.task-list{position:sticky;left:0;z-index:3;background:#070707;width:320px;border-right:1px solid #444}.listhead{height:62px;background:#111;position:sticky;top:0;z-index:5;border-bottom:1px solid #333;display:flex;align-items:center;justify-content:space-between;padding:0 16px;font-size:11px;letter-spacing:1px;color:#aaa}.task-row{height:48px;display:flex;align-items:center;gap:8px;border-bottom:1px solid #222;cursor:pointer;padding:0 14px}.task-row:hover,.task-row.selected{background:#20251a}.task-row .name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.task-row .id{color:#777;font-size:11px;min-width:22px}.task-row .pct{font-size:11px;color:#aaa}.task-row button{padding:0;border:0;background:none;width:18px;color:#aaa}.timeline{position:relative}.timehead{height:62px;position:sticky;top:0;z-index:2;background:#111;border-bottom:1px solid #333}.month{height:28px;border-bottom:1px solid #222;display:flex;align-items:center;padding-left:12px;font-size:11px;letter-spacing:1px;color:#bbb}.days{display:flex;height:34px}.day{flex-shrink:0;text-align:center;padding:8px 0;border-right:1px solid #222;font-size:11px;color:#999}.weekend{background:#161616}.chartsvg{display:block}.inspector{width:340px;overflow:auto;padding:24px;border-left:1px solid #333;background:#0c0c0c}.inspector h2{margin:24px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:12px}.inspector .field{margin-bottom:14px}.inspector .actions button{flex:1}.panel{max-width:800px;margin:30px auto;padding:28px;border:1px solid #333;background:#080808}.panel section{border-top:1px solid #333;padding-top:24px;margin-top:24px}.item{border-bottom:1px solid #222;padding:16px 0;display:flex;justify-content:space-between;gap:15px;align-items:center}.small{font-size:12px}.badge{font-size:11px;color:var(--accent);padding:3px 7px;border:1px solid #52643f}.error{color:#ff9696;margin-top:12px}.notice{padding:14px;background:#191e13;border:1px solid #3b4b2e;color:#d0e3b9;line-height:1.6}.save{font-size:12px;color:#999}.save.pending{color:#baff70}#toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#eee;color:#000;padding:14px 20px;z-index:30;display:none;max-width:90vw}#toast.show{display:block}.workdays{display:flex;gap:8px;flex-wrap:wrap}.workdays label{font-size:13px}.legend{display:flex;gap:20px;font-size:11px;color:#888;padding:9px 26px;border-top:1px solid #222}.linekey{color:var(--accent)}.help{line-height:1.8}.light{color-scheme:light;--bg:#fafafa;--panel:#fff;--line:#ddd;--muted:#666;--text:#151515;--accent:#526c28}.light input,.light select,.light textarea{background:#fff;border-color:#ccc}.light button{background:#eee;color:#111;border-color:#ccc}.light .primary{background:#d7f5b4}.light .card,.light .task-list,.light .panel,.light .inspector{background:#fff}.light .timehead,.light .listhead{background:#eee}.light .weekend{background:#e7e7e7}.light .task-row:hover,.light .task-row.selected{background:#e9f3df}.light .task-row,.light .month,.light .day{border-color:#ddd}.light .notice{background:#f2f8eb;color:#30471a}.light .badge{color:#526c28}@media(max-width:900px){.board{height:calc(100vh - 260px)}.inspector{position:fixed;inset:0;width:100%;z-index:20;padding:24px;max-width:none}.toolbar,.editor-head{padding:14px 16px}.top{padding:0 16px}.chart-grid{grid-template-columns:230px auto}.task-list{width:230px}.workspace{padding:26px 16px}.heading{align-items:start}.editor-head{align-items:start}.editor-head h1{font-size:20px}.editor-head>.actions{justify-content:end}.login{margin:8vh 16px;max-width:none}.panel{margin:20px 16px;padding:20px}.toolbar input{width:140px}.heading .actions{justify-content:end}}@media print{body{background:white;color:black}.top,.toolbar,.editor-head .actions,.inspector,.legend{display:none}.board{height:auto;display:block}.chart-scroll{overflow:visible}.chart-grid{transform-origin:top left}.task-list,.timehead,.listhead{position:static;background:white!important;color:black}.task-row{color:black;background:white}.editor-head{border:none}.chartsvg text{fill:black}.panel{border:none}}
.toolbar .actions{flex-wrap:nowrap}.toolbar select{width:110px;flex:none}.toolbar input{width:180px;flex:none}@media(max-width:900px){.toolbar .actions{flex-wrap:wrap}.top{height:auto;min-height:68px;padding-top:10px;padding-bottom:10px}.top .brand{font-size:12px}.top .brand .muted{display:none}.board{height:55vh;min-height:360px}.toolbar input{width:150px}.toolbar select{width:100px}}
/* OnlineGantt-inspired work surface, shared variables also drive SVG. */
:root{--bg:#171a1e;--panel:#20242a;--line:#3b4148;--muted:#aab0b7;--text:#edf0f3;--accent:#007bff;--weekend:#252a30;--gridline:#3b4148;--header:#20242a;--tasks-width:450px;--row:36px}
.light{--bg:#fff;--panel:#fff;--line:#dee2e6;--muted:#6c757d;--text:#212529;--accent:#007bff;--weekend:#f8f9fa;--gridline:#dedede;--header:#f8f9fa}
body{font-family:Arial,Helvetica,sans-serif;font-size:14px}.top{height:55px;padding:0 30px;background:var(--panel)}.brand{letter-spacing:0;font-size:18px;font-weight:600}.brand svg{color:#42aac4}.brand .muted{font-size:12px}.eyebrow{color:var(--muted);letter-spacing:.4px}.editor-head{padding:20px 30px 18px;min-height:98px;border-bottom:0;align-items:center}.editor-head h1{font-size:19px;letter-spacing:0;margin:0 0 9px}.editor-head>.actions>button{background:#343a40;color:white;border:1px solid #343a40;border-radius:4px}.editor-head>.actions>button:hover{background:#23272b}.editor-head .actions{gap:7px}.save{font-size:12px}.toolbar{margin:0 30px;padding:8px 12px;background:var(--header);border:1px solid var(--line);gap:8px;min-height:40px}.toolbar .actions{gap:4px;flex-wrap:nowrap}.toolbar button{padding:7px 9px;border:0;background:transparent!important;color:var(--text)!important;font-size:13px;font-weight:400}.toolbar button:hover{background:var(--weekend)!important}.toolbar input{height:32px;padding:7px;width:170px;border-radius:4px}.toolbar select{width:90px;height:32px;padding:6px;font-size:12px;border-radius:4px}.board{margin:0 30px;height:calc(100vh - 245px);min-height:360px;border:1px solid var(--line);border-top:0}.chart-grid{grid-template-columns:var(--tasks-width) auto}.task-list{width:var(--tasks-width);background:var(--panel)!important;border-right:1px solid var(--line)}.listhead{height:72px;background:var(--panel)!important;border-bottom:1px solid var(--line);padding:0;display:grid;grid-template-columns:70px 1fr 70px;color:var(--text);font-size:13px;letter-spacing:0}.listhead>span,.listhead>strong{height:100%;display:flex;align-items:center;padding:0 12px;border-right:1px solid var(--line)}.task-row{height:36px;padding:0!important;display:grid;grid-template-columns:70px 20px minmax(0,1fr) 55px;gap:0;border-bottom:1px solid var(--line)!important;font-size:13px}.task-row .id{height:100%;display:flex;align-items:center;justify-content:center;border-right:1px solid var(--line);color:var(--muted)}.task-row .name{padding-right:6px}.task-row .pct{text-align:right;padding-right:9px;color:var(--muted)}.task-row:hover,.task-row.selected{background:#e8f0fa!important;color:#212529}.task-row button{padding:0;border:0;color:var(--muted);width:18px;background:none}.timehead{height:72px;background:var(--panel)!important;border-color:var(--line)}.weeks{display:flex;height:36px;border-bottom:1px solid var(--line);overflow:hidden}.week{flex-shrink:0;display:flex;align-items:center;padding:0 9px;border-right:1px solid var(--line);font-size:12px;color:var(--text);font-weight:600;white-space:nowrap;overflow:hidden}.days{height:36px}.day{font-size:12px;font-weight:600;color:var(--text);padding:10px 0;border-right:1px solid var(--line)}.weekend{background:var(--weekend)!important}.timeline{background:var(--panel)}.legend{border:0;padding:12px 30px;color:var(--muted)}.linekey{color:#0056b3}.light input,.light select,.light textarea{background:#fff;color:#212529;border-color:#ced4da}.light button{background:#f8f9fa;border-color:#dee2e6;color:#212529;border-radius:4px}.primary,.light .primary{background:#007bff;color:white;border-color:#007bff}.primary:hover,.light .primary:hover{background:#0069d9;color:white}.light .card{background:#fff}.light .badge{color:#0056b3;border-color:#b8daff}.inspector{background:var(--panel)!important;border-color:var(--line)}.resize-handle{position:absolute;right:-3px;top:0;height:100%;width:7px;cursor:col-resize;z-index:10;background:var(--header);border-left:1px solid var(--line);border-right:1px solid var(--line);touch-action:none}.resize-handle:hover,.resize-handle:focus{background:#9ac2ef}.resize-handle:before{content:'⋮';position:sticky;top:50%;display:block;text-align:center;color:var(--muted);font-size:15px}.resizing{user-select:none;cursor:col-resize!important}.resizing *{cursor:col-resize!important}.card h2{font-size:20px}.login{border-radius:4px}.light .login{background:#fff}.panel{background:var(--panel)!important}.notice{background:#e8f3ff;color:#17436e;border-color:#b8daff}.light .task-row .id{color:#6c757d}
@media(max-width:1200px){.toolbar{flex-wrap:wrap;justify-content:start}.board{height:calc(100vh - 270px)}}
@media(max-width:900px){:root{--tasks-width:230px}.top{height:auto;min-height:55px;padding:10px 16px}.editor-head{padding:16px;margin:0;align-items:start}.editor-head h1{font-size:17px}.editor-head .actions{gap:6px;justify-content:end}.toolbar{margin:0 16px;flex-wrap:wrap;padding:8px}.toolbar .actions{flex-wrap:wrap}.toolbar input{width:140px}.board{margin:0 16px;height:55vh}.task-row{grid-template-columns:38px 18px minmax(0,1fr) 36px}.listhead{grid-template-columns:38px 1fr 50px;font-size:11px}.listhead>span,.listhead>strong{padding:0 6px}.task-row .pct{font-size:10px;padding-right:6px}.inspector{position:fixed;inset:0;width:100%;z-index:20}.legend{padding:12px 16px;flex-wrap:wrap}.resize-handle{width:9px}}
/* GAN-10: full-width chart; task inspector takes space only while open. */
.editor-head{padding:12px 16px;min-height:72px}.toolbar{margin:0;border-left:0;border-right:0}.board{margin:0;width:100%;height:calc(100dvh - 200px);min-height:360px;border-left:0;border-right:0}.legend{padding:9px 16px}.chart-scroll{min-width:0;min-height:0}.inspector[hidden]{display:none!important}.inspector:not([hidden]){flex:0 0 340px}.task-list{align-self:stretch}.light label{color:#495057}.day{flex-shrink:0}.light .save{color:#6c757d}
@media(max-width:1200px){.board{height:calc(100dvh - 230px)}}
@media(max-width:900px){.toolbar{margin:0}.board{margin:0;height:calc(100dvh - 300px)}.inspector:not([hidden]){width:100%;flex:none}}
@media print{.board{height:auto!important;min-height:0}.chart-scroll{overflow:visible}.resize-handle{display:none}.task-list,.timehead,.listhead{position:static}.task-row{break-inside:avoid}.legend{display:none}}
#app:has(.board){height:100dvh;display:flex;flex-direction:column}#app:has(.board)>.top,#app:has(.board)>.editor-head,#app:has(.board)>.toolbar,#app:has(.board)>.legend{flex-shrink:0}#app:has(.board)>.board{flex:1;min-height:0;height:auto}
@media print{#app:has(.board){display:block;height:auto}#app:has(.board)>.board{display:block;height:auto}}
/* Keep scroll geometry stable during collapse and redraw. */
.chart-scroll{scrollbar-gutter:auto;overflow-x:scroll}.chartsvg{display:block}
/* Approved Vitamin Web adaptation. Keep task data colours unchanged. */
:root{--accent:#007dbc;font-family:Roboto,Arial,sans-serif}body{font-family:Roboto,Arial,sans-serif}body.light{--bg:#fff;--panel:#fff;--text:#263b4b;--muted:#657b90;--line:#d7dee4;--header:#f4f6f8;--accent:#007dbc}.brand{letter-spacing:0;color:var(--accent);gap:8px}.brand .small{font-size:11px;color:var(--muted)}button,input,select,textarea{border-radius:4px}button{min-height:48px;padding:10px 14px;font-weight:600}input,select{min-height:48px}.primary{background:var(--accent)!important;color:white!important;border-color:var(--accent)!important}.primary:hover{background:#00689c!important}.top{height:auto;min-height:72px;padding:12px 20px;gap:18px;flex-wrap:nowrap}.top>.actions{flex-wrap:nowrap}.project-nav{display:flex;align-items:center;gap:20px;flex:1;min-width:0}.project-picker{position:relative;flex:0 1 260px;min-width:170px}.project-picker input{height:48px;width:100%}.main-actions{display:flex;align-items:center;justify-content:center;gap:8px;flex:1;white-space:nowrap}.options-wrap{position:relative}.cmdk-overlay{position:fixed;inset:0;width:100vw;background:#0008;display:flex;align-items:flex-start;justify-content:center;z-index:200;padding-top:18vh}.cmdk{background:var(--panel);border:1px solid var(--line);border-radius:8px;width:min(560px,92vw);box-shadow:0 16px 48px #0006;overflow:hidden}.cmdk>input{width:100%;box-sizing:border-box;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);padding:14px 16px;font-size:15px;outline:none}.cmdk .cmdk-results{max-height:50vh;overflow:auto;padding:6px}.cmdk .cmdk-results button{display:block;width:100%;text-align:left;padding:9px 10px;border-radius:6px;color:var(--text)}.cmdk .cmdk-results button.active{background:var(--bg)}.cmdk-task-name{display:block}.cmdk-task-meta{display:block;font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cmdk .picker-label{padding:8px 10px}
.dropdown{position:absolute;z-index:40;top:calc(100% + 8px);left:0;min-width:260px;background:var(--panel);border:1px solid var(--line);box-shadow:0 6px 20px #0002;border-radius:4px;overflow:hidden}.options-wrap .dropdown{left:auto;right:0;min-width:250px}.dropdown button{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);border-radius:0;background:var(--panel);font-weight:400;white-space:normal}.dropdown button.active,.dropdown button:hover{background:var(--header)}.picker-label{padding:12px;font-size:12px;color:var(--muted)}.editor-head{min-height:60px;padding:14px 24px}.editor-head>div{display:flex;align-items:center;gap:20px}.editor-head h1{margin:0;font-size:22px}.toolbar{padding:8px 24px;min-height:64px;background:var(--header)}.toolbar .actions{margin-left:auto;gap:8px}.toolbar button{min-height:48px;height:48px;padding:10px 14px;border:1px solid var(--line);font-size:14px;font-weight:600;background:var(--panel)!important}.toolbar input,.toolbar select{height:48px;min-height:48px;font-size:14px;padding:10px}.board{position:relative}.inspector{padding:20px;overflow:auto}.inspector h2{margin:0 0 20px}.detail-tab{position:absolute;right:322px;top:calc(50% - 18px);width:36px;min-height:36px;height:36px;border-radius:50%;padding:0;background:#fff!important;color:#455767!important;border:1px solid #e3e6eb;box-shadow:0 3px 9px #0003;z-index:25;font:28px Arial,sans-serif}.detail-tab[hidden]{display:none}.danger{color:#d4351c}.light button:not(.primary){border-color:var(--line)}
@media(max-width:1500px){.top{gap:10px;padding:10px 12px}.project-nav{gap:12px}.project-picker{flex-basis:200px;min-width:150px}.main-actions{gap:6px}.main-actions button{padding:10px}.top .brand .small{display:none}.top>.actions{gap:6px}}
@media(max-width:1250px){.top{overflow-x:auto}.project-nav{min-width:890px}.top .brand{flex-shrink:0}.top>.actions{flex-shrink:0}.project-picker{flex:0 0 190px}}
@media(max-width:900px){.inspector:not([hidden]){position:absolute;inset:0 0 0 auto;width:min(340px,calc(100vw - 24px));z-index:20}.detail-tab{position:absolute;right:calc(min(340px,100vw - 24px) - 18px)}.toolbar .actions{flex-wrap:wrap;margin-left:0}.editor-head>div{flex-wrap:wrap;gap:8px}}
@media print{.top,.detail-tab,.dropdown{display:none!important}}
button.detail-tab{border-radius:50%!important;min-width:36px;max-width:36px}
/* Tree toggles belong to rows, not the 48px navigation control set. */
.task-row button{min-height:0;height:24px;padding:0;flex-shrink:0}
/* Latest request: filters share title strip, no separate row. */
.editor-head{min-height:72px;justify-content:space-between;gap:16px}.editor-head>.toolbar{margin:0;padding:0;min-height:0;border:0;background:transparent;flex-shrink:0}.editor-head>.toolbar>.actions{gap:8px}
@media(max-width:1100px){.editor-head{flex-wrap:wrap}.editor-head>.toolbar{flex-shrink:1;width:100%;overflow-x:auto}.editor-head>.toolbar>.actions{flex-wrap:nowrap;margin-left:0}}
.legend #save{margin-left:auto;font:inherit;color:var(--muted);white-space:nowrap}.legend{display:flex;align-items:center}.legend #save:empty{display:none}
@media print{.legend{display:none!important}}
/* Compact top controls requested after Vitamin approval; uniform 36px. */
.top{min-height:52px;padding-top:8px;padding-bottom:8px}.top button,.project-picker input{height:36px;min-height:36px;padding-top:6px;padding-bottom:6px}.dropdown button{height:auto;min-height:36px}.top .project-picker input{padding-top:6px;padding-bottom:6px}
.user-menu{position:relative}.user-menu #userMenu{display:flex;align-items:center;gap:8px;border:0;background:transparent}.user-menu>.dropdown{right:0;left:auto;min-width:180px}.avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;flex-shrink:0}.initials{display:inline-flex;align-items:center;justify-content:center;background:var(--header);border:1px solid var(--line);color:var(--text);font-size:11px}.profile-panel #avatarPreview{margin:18px 0}.profile-panel #avatarPreview .avatar{width:80px;height:80px;font-size:25px}.profile-panel section{margin-top:32px}.profile-projects{display:flex;flex-direction:column;gap:8px}.profile-projects button{text-align:left}
.board{border-top:1px solid var(--line)}
@media(max-width:1250px){.top .dropdown{position:fixed;top:52px;right:12px;left:auto;max-width:calc(100vw - 24px)}.top .project-picker .dropdown{left:12px;right:auto}}
.profile-panel{border-color:var(--line)}.profile-panel section{border-color:var(--line)}
.profile-project-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.profile-project-heading h2{margin:0}
.user-menu #userMenu>span:not(.avatar){line-height:20px}.user-chevron{width:12px;height:20px;display:block;flex-shrink:0;align-self:center}
.admin-layout{display:grid;grid-template-columns:minmax(320px,1fr) minmax(420px,1.2fr);gap:32px}.admin-layout>section{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:24px;min-width:0}.admin-users{display:flex;flex-direction:column;gap:8px}.admin-users>button{display:flex;flex-wrap:wrap;text-align:left;gap:8px;align-items:center;justify-content:space-between;min-height:60px}.admin-users>button.active{border-color:var(--accent);background:var(--header)}.admin-users .small{width:100%;order:3}.admin-panel h2{margin-top:24px}.admin-projects .item{display:flex;align-items:center;gap:8px}.admin-projects .item>span:first-child{flex:1;overflow-wrap:anywhere}.admin-projects select{width:140px}.admin-access #deleteAdminUser{margin-top:24px}#inviteResult{margin-top:20px;border:1px solid var(--accent);padding:16px;border-radius:6px}#inviteLink{width:100%;margin:12px 0}@media(max-width:850px){.admin-layout{grid-template-columns:1fr}.admin-layout>section{padding:16px}.admin-projects .item{flex-wrap:wrap}}

.admin-panel .item,.panel{border-color:var(--line)}.admin-panel>.heading{margin-top:24px}
.gantt-tooltip{position:fixed;z-index:50;pointer-events:none;background:#111;color:#fff;border:1px solid #333;border-radius:4px;padding:10px 12px;box-shadow:0 4px 14px #0003;font-size:12px;line-height:1.7;max-width:min(320px,calc(100vw - 16px));overflow-wrap:anywhere}.gantt-tooltip strong{display:block;font-weight:600;margin-bottom:2px}@media print{.gantt-tooltip{display:none}}
.title-actions{display:flex;align-items:center;gap:16px;min-width:0}.title-actions h1{margin:0}.title-actions .actions{flex-wrap:nowrap}.editor-head .title-actions button{height:36px;padding:7px 10px;font-size:13px}@media(max-width:850px){.title-actions{flex-wrap:wrap;gap:8px}}
.merge-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:60;padding:24px}.merge-dialog{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:24px;width:800px;max-width:100%;max-height:90dvh;overflow:auto}.merge-field{border-top:1px solid var(--line);padding-top:16px}.merge-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.merge-columns label{color:var(--text);font-size:14px}.merge-columns pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--header);padding:12px;border-radius:4px;max-height:200px;overflow:auto}.merge-dialog .actions{margin-top:20px}@media(max-width:600px){.merge-columns{grid-template-columns:1fr}.merge-overlay{padding:12px}}
.merge-columns input[type=radio]{width:16px!important;height:16px!important;min-height:0!important;margin:0 8px 0 0;vertical-align:middle;display:inline-block}.merge-columns label{display:block}
.project-user-list{display:flex;flex-direction:column;gap:12px}.project-user{display:flex;align-items:center;gap:12px;padding:12px;border-bottom:1px solid var(--line)}.project-user .avatar{width:36px;height:36px}

.delete-user-dialog{max-width:min(560px,calc(100vw - 48px));box-sizing:border-box;padding:28px;border:1px solid var(--line);border-radius:12px;color:var(--text);background:var(--panel)}.delete-user-dialog::backdrop{background:rgba(0,0,0,.6)}.delete-user-dialog p{overflow-wrap:anywhere}.delete-user-dialog .actions{margin-top:24px;flex-wrap:wrap}

.brand-home{color:var(--accent);text-decoration:none;cursor:pointer}.brand-home:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:3px}

.resource-suggestions{display:flex;flex-direction:column;gap:4px}.resource-choice{text-align:left;white-space:normal;height:auto;min-height:36px}

.url-add-row{display:flex;gap:8px}.url-add-row input{min-width:0;flex:1}.task-url-row{display:flex;align-items:center;gap:8px;margin-top:8px}.task-url-row a,.task-url-row span{min-width:0;flex:1;overflow-wrap:anywhere}.url-remove{flex:0 0 36px;padding:0;font-size:24px}.task-urls{margin-top:20px}

.url-add-row[hidden]{display:none}

.resource-assigned-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}.resource-assigned,.resource-choice{display:flex;align-items:center;gap:10px}.resource-assigned>span,.resource-choice>span:not(.avatar){display:flex;flex-direction:column;min-width:0;overflow-wrap:anywhere}.resource-generic{display:inline-flex;align-items:center;justify-content:center;color:#708795;background:#eef3f7;flex-shrink:0}.resource-generic svg{width:22px;height:22px}.resource-assigned .avatar,.resource-choice .avatar{width:32px;height:32px;flex-shrink:0;object-fit:cover;border-radius:50%}

.folder-workspace{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px}.folder-sidebar{border-right:1px solid var(--line);padding-right:16px;display:flex;flex-direction:column;gap:4px}.folder-nav{border:0;background:none;display:flex;gap:8px;align-items:center;text-align:left;padding:10px 8px 10px calc(8px + var(--folder-depth,0)*12px);min-width:0}.folder-nav span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-nav.active,.drop-target{background:#dceef9!important;color:#005b89}.folder-icon{width:24px;height:24px;flex-shrink:0;color:#62899f}.folder-content{min-width:0}.folder-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}.folder-breadcrumb{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.folder-breadcrumb button{border:0;padding:5px;background:none}.folder-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin-bottom:20px}.folder-card{display:flex;align-items:center;gap:12px;text-align:left;padding:18px}.folder-card strong{overflow-wrap:anywhere}.project-card{position:relative;min-width:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface)}.project-card .card{width:100%;border:0;border-radius:0}.project-move{border:0;border-top:1px solid var(--line);border-radius:0;width:100%;text-align:left;background:transparent}.project-location{display:block;margin-top:8px;font-size:12px;color:var(--muted);overflow-wrap:anywhere}.personal-dialog{max-width:480px;width:calc(100% - 40px);border:1px solid #a8bfcd;border-radius:14px;padding:24px;color:var(--text);background:var(--surface,#fff)}.personal-dialog::backdrop{background:#10263688}.personal-dialog select{max-width:100%}.personal-dialog h2{margin-top:0}.folder-sidebar{max-height:70vh;overflow:auto}@media(max-width:900px){.folder-workspace{grid-template-columns:1fr;gap:16px}.folder-sidebar{border-right:0;border-bottom:1px solid var(--line);padding:0 0 12px;max-height:180px}.folder-heading .actions{flex-wrap:wrap}.folder-heading .actions button{padding:8px;font-size:12px}}
.project-card,.personal-dialog{background:var(--panel)}.folder-nav.active,.drop-target{background:var(--panel)!important;color:var(--accent)}body.light .folder-nav.active,body.light .drop-target{background:#dceef9!important;color:#005b89}@media(max-width:900px){.folder-sidebar{max-height:220px;scroll-padding:8px}}
.sso-buttons{display:flex;flex-direction:column;gap:10px;margin-top:16px}.sso-login-button{display:block;padding:12px;border:1px solid var(--line);text-align:center;text-decoration:none;border-radius:6px}
.check{display:flex;align-items:center;gap:8px}.check input[type=checkbox]{width:auto;margin:0;flex-shrink:0}.task-row{grid-auto-columns:auto}.task-row .add-sub{visibility:hidden;width:20px;height:22px;color:var(--muted)}.task-row:hover .add-sub,.task-row:focus-within .add-sub{visibility:visible}@media(hover:none){.task-row .add-sub{visibility:visible}}
.editable-name{cursor:text;border-bottom:1px dashed var(--muted)}#taskNameInput{font-size:20px;font-weight:600;padding:6px}

/* Task title edits keep exactly the visible title box. */
.task-heading{display:flex;align-items:center;gap:6px;min-width:0}.task-heading .editable-name{display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:28px}.task-heading .small{flex-shrink:0}#taskNameInput{flex:none;min-height:0;max-width:100%;padding:0;border:0;border-bottom:1px dashed var(--muted);border-radius:0;background:transparent;line-height:28px;outline-offset:0}


.tree-toggle{width:42px;min-height:42px;padding:9px;display:inline-flex;align-items:center;justify-content:center}.tree-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

.folder-emoji{display:inline-flex;align-items:center;justify-content:center;font-size:22px;line-height:1}

/* GAN-69: compact labels and date header together, keeping rows aligned. */
.listhead,.timehead{height:44px}.weeks{height:22px}.days{height:22px}.day{height:22px;line-height:22px}.week{font-size:11px}.listhead{font-size:12px}

.task-row{grid-template-columns:84px 18px minmax(0,1fr) 52px 20px}.listhead{grid-template-columns:102px minmax(0,1fr) 72px}.task-row .id{font-size:11px;padding-left:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.task-comment{display:flex;align-items:flex-start;gap:10px;padding:14px 0;border-bottom:1px solid var(--line)}.task-comment .avatar{flex-shrink:0;width:32px;height:32px}.task-comment>div{min-width:0;flex:1}.task-comment time{display:block;color:var(--muted);font-size:11px;margin-top:4px}.task-comment p,.historical-note p{white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0}.historical-note{border:1px solid var(--line);padding:12px;margin:12px 0}.task-comments textarea{margin-top:8px}

.resource-assigned .remove-assigned{width:28px;height:28px;min-height:28px;padding:0;flex-shrink:0;margin-left:auto}

.project-user>span:not(.avatar):not(.project-person-kind){min-width:0;overflow-wrap:anywhere}.project-person-kind{margin-left:auto;white-space:nowrap}.project-user{flex-wrap:wrap}.project-user .resource-generic{border-radius:50%}
/* The ID and progress boundaries use the same tracks in heading and rows. */
.listhead{grid-template-columns:84px minmax(0,1fr) 72px}.task-row .pct{height:100%;display:flex;align-items:center;justify-content:flex-end;border-left:1px solid var(--line)}

.task-row{grid-template-columns:84px 18px minmax(0,1fr) 72px}.task-name-cell{min-width:0;display:flex;align-items:center;overflow:hidden;gap:6px;padding-right:6px}.task-name-cell .name{flex:0 1 auto;min-width:0;padding-right:0}.task-name-cell .add-sub{flex:0 0 20px}
@media(max-width:900px){.listhead{grid-template-columns:60px minmax(0,1fr) 48px}.task-row{grid-template-columns:60px 18px minmax(0,1fr) 48px}.task-row .id{font-size:10px;padding-left:0}.task-name-cell{gap:3px;padding-right:3px}.task-name-cell .add-sub{flex-basis:16px;width:16px}.task-row .pct{padding-right:4px}}

.participant-color-controls{display:flex;align-items:center;gap:8px;margin-left:auto}.participant-color-controls input[type=color]{width:44px;height:36px;min-height:36px;padding:3px;flex-shrink:0}.participant-color-controls button{height:36px;min-height:36px;padding:4px 8px;font-weight:400}.project-user .project-person-kind{margin-left:0}
#assigneeColorOption[hidden]{display:none}
.check input[type=checkbox]{min-height:0;height:auto}

@media(max-width:600px){.workspace>.heading{align-items:stretch;flex-direction:column}.workspace>.heading>.actions{justify-content:flex-start}.workspace>.heading>.actions button{max-width:100%;white-space:normal}.legacy-transfer{margin-bottom:18px}}

.bulk-bar{display:inline-flex;align-items:center;gap:8px;margin-right:8px}.bulk-count{font-size:12px;color:var(--muted);white-space:nowrap}.bulk-check{width:16px;height:16px;margin:0 4px 0 0;flex:0 0 auto;accent-color:#007bff}.task-row.picked{background:#dbeafe!important}#bulkSelect.active{border-color:#007bff}.bulk-dialog{max-width:420px;width:calc(100% - 32px);background:var(--panel);color:var(--text);border:1px solid var(--line);padding:22px}.bulk-dialog::backdrop{background:rgba(0,0,0,.55)}.bulk-dialog .actions{justify-content:flex-end;margin-top:18px}
@media(max-width:900px){.bulk-bar{flex-wrap:wrap}}
.bulk-count{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.bulk-bar{flex-wrap:nowrap}

.legend .license-link{color:inherit;text-decoration:underline}.legend #appVersion{white-space:normal}
.bulk-check:focus,.bulk-check:focus-visible{outline:none;box-shadow:none}.bulk-check:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}

.card-milestones{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:13px}.card-milestones li{display:flex;gap:8px;align-items:baseline;min-width:0}.card-milestones time{color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}.card-milestones .ms-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.card-milestones .ms-more{color:var(--muted);padding-left:20px}
#app:not(:has(.board)){min-height:100dvh;display:flex;flex-direction:column}#app:not(:has(.board))>.legend{margin-top:auto}#app:not(:has(.board))>.workspace{margin-block:0;width:100%}#app:not(:has(.board))>.panel{width:calc(100% - 32px)}#app:not(:has(.board))>.legend{justify-content:center}@media(max-width:900px){#app:not(:has(.board))>.panel{width:auto}}

.settings-page{max-width:1000px;margin:30px auto;padding:0 28px;width:100%}.settings-page h1{margin:24px 0 4px}.settings-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:24px;margin-top:24px}.settings-tabs{display:flex;flex-direction:column;gap:4px;border-right:1px solid var(--line);padding-right:16px}.settings-body{min-width:0;max-width:720px}.settings-body h2{margin-top:0}.settings-body h3{margin:28px 0 8px}.inline-field{display:flex;gap:10px}.inline-field input{flex:1;min-width:0}.weekday-chips .chip{display:inline-flex}.weekday-chips .chip input{position:absolute;opacity:0;width:1px;height:1px}.weekday-chips .chip span{min-width:44px;min-height:40px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:6px;cursor:pointer}.weekday-chips .chip input:checked+span{background:var(--accent);color:#000;border-color:var(--accent)}.weekday-chips .chip input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.danger-zone{margin-top:36px;padding-top:24px;border-top:1px solid var(--line)}.autocomplete{position:relative}.suggestions{position:absolute;z-index:20;left:0;right:0;top:100%;margin:2px 0 0;padding:4px;list-style:none;background:var(--panel);border:1px solid var(--line);max-height:260px;overflow:auto}.suggestions li{padding:10px;cursor:pointer;border-radius:4px}.suggestions li:hover,.suggestions li:focus{background:var(--line);outline:none}
@media(max-width:900px){.settings-page{padding:0 16px;margin:20px auto}.settings-layout{grid-template-columns:1fr;gap:16px}.settings-tabs{flex-direction:row;overflow-x:auto;border-right:0;padding:0 0 8px;gap:8px}.settings-tabs .folder-nav{flex:0 0 auto;min-height:44px;border-radius:22px;padding:0 18px;border:1px solid var(--line)}.inline-field{flex-direction:column}.inline-field button,.settings-body button{min-height:44px}.weekday-chips .chip span{min-height:44px}}

.menu-sub{display:flex;flex-direction:column;padding-left:14px;border-left:2px solid var(--line);margin-left:10px}.menu-sub[hidden]{display:none}.theme-switch{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 8px;border-radius:999px;font-size:13px}.theme-switch .knob{width:30px;height:16px;border-radius:8px;background:var(--line);position:relative}.theme-switch .knob::after{content:'';position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:var(--muted);transition:left .15s}.theme-switch[aria-checked=true] .knob::after{left:16px;background:var(--accent)}.top>.actions{display:flex;align-items:center;gap:10px}
@media(max-width:900px){.theme-switch{min-height:44px}.options-wrap .dropdown button{min-height:44px}}

[data-admin-panel][hidden]{display:none!important}.admin-tabs{flex-direction:row;border-right:0;border-bottom:1px solid var(--line);padding:0 0 8px;margin:16px 0 20px;gap:8px;overflow-x:auto}.admin-tabs .folder-nav{flex:0 0 auto;width:auto}.admin-layout>[data-admin-panel=invite],.admin-layout>[data-admin-panel=gantt]{grid-column:1/-1;max-width:720px}@media(max-width:900px){.admin-tabs .folder-nav{min-height:44px;border-radius:22px;padding:0 18px;border:1px solid var(--line)}}

.theme-button{width:36px;height:36px;padding:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:17px;line-height:1}@media(max-width:900px){.theme-button{width:44px;height:44px}}

.legend a,.legend .license-link,.legend .docs-link{display:inline;padding:0;margin:0;background:none;font:inherit;color:inherit;text-decoration:underline}.legend a:hover{background:none}

.theme-button{width:36px;height:36px;padding:0;border-radius:50%;border:1px solid var(--line);background:var(--panel);color:var(--text);display:inline-flex;align-items:center;justify-content:center}.theme-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.zoom-btn{min-width:36px;padding:9px 0;text-align:center;font-size:16px;line-height:1}@media(max-width:900px){.theme-button{width:44px;height:44px}.zoom-btn{min-width:44px;min-height:44px}}

.toolbar-sep{align-self:stretch;width:1px;min-height:24px;margin:0 6px;background:var(--line);opacity:.8;flex:0 0 1px}@media(max-width:900px){.toolbar-sep{min-height:32px}}
.theme-button{border-radius:50%!important}
.top .theme-button{width:36px;height:36px;min-width:36px;min-height:36px;flex:0 0 36px;padding:0}@media(max-width:900px){.top .theme-button{width:44px;height:44px;min-width:44px;min-height:44px;flex-basis:44px}}
.editor-head{padding:8px 26px;min-height:0;gap:12px}.editor-head h1{margin:0;font-size:19px;line-height:1.2}.editor-head .title-actions{display:flex;align-items:center;gap:12px}.editor-head .toolbar{padding:0;border:0;gap:8px}.editor-head .toolbar .actions,.editor-head .title-actions .actions{gap:6px;align-items:center}.editor-head button,.editor-head input,.editor-head select,.editor-head .tree-toggle{height:32px;min-height:32px;padding-top:0;padding-bottom:0;line-height:30px;box-sizing:border-box}.editor-head button,.editor-head select{padding-left:12px;padding-right:12px}.editor-head input{padding-left:10px;padding-right:10px}.editor-head .tree-toggle{width:32px;min-width:32px;padding:0}.editor-head .tree-toggle svg{width:18px;height:18px}.editor-head .zoom-btn{min-width:32px;width:32px;padding:0;line-height:1}.editor-head .toolbar-sep{min-height:20px;height:20px;align-self:center}
@media(max-width:900px){.editor-head{padding:8px 16px}.editor-head button,.editor-head input,.editor-head select,.editor-head .tree-toggle{height:40px;min-height:40px}.editor-head .tree-toggle,.editor-head .zoom-btn{width:40px;min-width:40px}}
.editor-head .tree-toggle{height:32px!important;min-height:32px!important;width:32px!important}@media(max-width:900px){.editor-head .tree-toggle{height:40px!important;min-height:40px!important;width:40px!important}}
/* Full-width sign-in with a fixed, credited planning photograph. */
.login-brand-space{height:40px}
.login.login-split{display:grid;grid-template-columns:1fr 2fr;align-items:stretch;max-width:none;margin:0;padding:0;border:0;border-radius:0;background:#142129;color:#edf3f6;min-height:calc(100svh - 38px);width:100%}
.login-split .login-form-panel{align-self:center;padding:56px 40px;min-width:0;width:100%}
.login-split .brand{color:#e7eff3;text-decoration:none;margin:0 0 28px;padding:0 10px 22px;font-size:20px}
.login-split .brand .muted{color:#b0c3cd}
.login-split .login-brand-space{height:0}
.login-split label{color:#becdd5;font-size:12px}
.login-split input,.light .login-split input{background:#f1f3f5;color:#001018;border:1px solid #dce3e7;border-radius:8px;height:40px;padding:10px 12px;font-size:13px}
.login-split .primary,.light .login-split .primary,.login-split .sso-login-button{display:block;width:100%;border-radius:8px;background:#007faf;color:#fff;border:1px solid #007faf;font-size:13px;font-weight:650;padding:9px 14px;text-align:center;text-decoration:none;min-height:40px}
.login-split .primary:hover,.login-split .sso-login-button:hover{background:#006992;border-color:#006992}
.login-split .error:empty{display:none}.login-split .error{color:#ffafaf}
.login-divider{display:flex;align-items:center;gap:12px;color:#a4b9c3;font-size:11px;margin:16px 0 8px;text-transform:uppercase}
.login-divider:before,.login-divider:after{content:'';height:1px;background:#30434e;flex:1}
.login-photo-panel{position:relative;min-width:0;min-height:100%;overflow:hidden}
.login-photo-panel>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.login-photo-credit{position:absolute;right:14px;bottom:14px;padding:6px 12px;border-radius:20px;background:rgba(18,33,44,.8);color:#fff;font-size:11.5px;line-height:1.4}
.login-photo-credit a{color:inherit;text-underline-offset:2px}
#app:has(>.login-split)>footer.legend{background:#142129;color:#c0d1db;border:0;min-height:38px;padding:10px 16px}
@media(max-width:900px){.login.login-split{grid-template-columns:1fr}.login-split .login-form-panel{padding:40px;max-width:520px;margin:auto}.login-photo-panel{display:none}}
@media(max-width:360px){.login-split .login-form-panel{padding:32px 24px}}
@media(max-width:900px){.login.login-split{grid-template-rows:1fr auto}.login-photo-panel{display:block;min-height:0;padding:0 24px 14px;text-align:center}.login-photo-panel>img{display:none}.login-photo-credit{position:static;display:inline-block;background:transparent;padding:0;color:#c0d1db}}
.login-split h1{color:#f1f5f7;font-size:28px;line-height:1.2;margin:0 0 28px;letter-spacing:-.6px}
.login-split .sso-buttons{margin-top:0;gap:0}
/* Task keys share the ID heading's left inset; progress is centered. */
.task-row .id{justify-content:flex-start;padding-left:12px;text-align:left}
.task-row .pct{text-align:center;padding-left:0;padding-right:0}
.listhead>span:last-child,.listhead>strong:last-child{justify-content:center;text-align:center;padding-left:0;padding-right:0}
.task-row .pct{justify-content:center}
@media(max-width:900px){.task-row .id{padding-left:6px}}
.dependency-label{display:flex;align-items:center;gap:8px;margin-bottom:7px}.dependency-label label{margin:0}.dependency-info-button,.light .dependency-info-button{width:22px;height:22px;min-height:22px;padding:0;border-radius:50%;font-size:13px;font-weight:700;line-height:20px;color:var(--text);background:var(--panel);border:1px solid var(--line)}
.dependency-help{position:fixed;inset:auto;margin:0;padding:16px;max-width:calc(100vw - 24px);max-height:calc(100svh - 24px);overflow:auto;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 32px #0003;font-size:12px;line-height:1.5}.dependency-help strong{display:block;margin-bottom:10px}.dependency-help p{margin:0 0 8px}.dependency-help .dependency-help-limits{border-top:1px solid var(--line);padding-top:10px;margin:10px 0 0}.dependency-help::backdrop{background:transparent}
.profile-panel{max-width:1100px}.profile-layout [data-profile-panel][hidden]{display:none!important}.profile-layout .settings-body>section{margin:0;padding:0;border:0}.profile-layout .settings-tabs{align-self:start}

/* Keep desktop page width unchanged when document scrollbars appear. */
@media(min-width:901px){html{scrollbar-gutter:stable}@supports not (scrollbar-gutter:stable){html{overflow-y:scroll}}}

.home-controls{display:flex;align-items:center;gap:12px}.home-controls>input{width:260px}.create-menu{position:relative}.create-menu .dropdown{right:0;left:auto;min-width:160px}.create-menu .dropdown button{display:block;text-align:left;width:100%}@media(max-width:900px){.home-controls{flex-wrap:wrap;width:100%}.home-controls>input{flex:1;min-width:140px}.home-controls>.actions{margin-left:auto}}

/* Airy project list: horizontal separators, never cell borders. */
.project-list{width:100%}.project-list-labels,.project-list-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(90px,140px) 150px 225px;gap:20px;align-items:center}.project-list-labels{padding:0 14px 14px;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px}.project-actions-label{text-align:right}.project-list-item{min-width:0;border-bottom:1px solid var(--line)}.project-list-row{padding:22px 14px}.project-list-title{min-width:0}.project-title-link{display:block;min-height:0;width:100%;border:0;background:none;text-align:left;padding:0;color:var(--text);font-size:16px;line-height:1.5;white-space:normal;overflow-wrap:anywhere}.project-title-link:hover{color:var(--accent);background:none}.project-meta{display:flex;gap:8px;align-items:center;margin-top:7px}.project-updated{line-height:1.6}.project-list-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px}.project-open{color:var(--accent);border:0;background:none;padding:8px 0;min-height:40px}.project-open:hover{background:none;text-decoration:underline}.project-list-move{background:transparent;padding:8px 10px;min-height:40px}.project-milestones{list-style:none;margin:0 14px 18px;padding:4px 18px;background:var(--panel);border-left:2px solid var(--line);font-size:13px}.project-milestones li{display:flex;gap:12px;align-items:flex-start;padding:12px 0}.milestone-symbol{color:var(--accent);flex:0 0 auto}.milestone-name{flex:1;min-width:0;overflow-wrap:anywhere}.project-milestones time{color:var(--muted);font-size:12px;flex:0 0 auto;line-height:1.5}body.light .project-milestones{background:#f9fbfc}.project-list .project-location{margin-top:7px}
@media(max-width:1100px){.project-list-labels,.project-list-row{grid-template-columns:minmax(0,1fr) minmax(80px,120px) 125px 190px;gap:14px}.project-list-actions{gap:10px}.project-list-actions button{font-size:12px}}
@media(max-width:900px){.project-list-labels{display:none}.project-list-row{grid-template-columns:minmax(0,1fr);gap:10px;padding:22px 0 14px}.project-list-actions{justify-content:flex-start;gap:20px}.project-list-actions button{font-size:13px}.project-milestones{margin:0 0 18px;padding:4px 12px}.project-milestones li{gap:9px}.project-milestones time{font-size:11px}.folder-sidebar{flex-direction:row;overflow-x:auto;max-height:none}.folder-sidebar .folder-nav{flex:0 0 auto;white-space:nowrap}}
.project-list button.project-title-link,.project-list button.project-open{background:transparent!important;border-color:transparent!important;box-shadow:none!important}.project-list button.project-open{color:var(--accent)!important}.project-list button.project-title-link{color:var(--text)!important}.project-list button.project-title-link:hover{color:var(--accent)!important}
/* Task editor: fixed head/actions and an independently scrolling draft. */
.inspector:not([hidden]){flex:0 0 440px;width:440px;max-width:100%;padding:24px;display:flex;flex-direction:column;overflow:hidden;position:relative}.task-panel-head{display:flex;justify-content:space-between;gap:12px;flex:none;margin-bottom:16px}.task-panel-head>div{min-width:0;flex:1}.task-key{display:block;margin-bottom:8px;color:var(--accent)}.task-title-input{font-size:20px;font-weight:600;padding:0!important;border:0!important;background:transparent!important;min-height:32px!important;width:100%}.task-panel-head #taskClose{font-size:24px;min-width:32px;min-height:32px;height:32px;padding:0;border:0;background:transparent}.inspector #task{display:flex;flex-direction:column;min-height:0;flex:1}.task-form-scroll{overflow-y:auto;min-height:0;flex:1;padding-right:8px;scrollbar-gutter:stable}.task-panel-actions{flex:none;display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:18px;margin-top:12px}.task-panel-actions button{min-width:110px}.task-color-row{display:flex;align-items:center;gap:10px}.task-color-row select{flex:1;min-width:0}.task-color-row #color{width:38px!important;height:38px!important;min-height:38px!important;padding:0!important;border-radius:5px;overflow:hidden}.task-color-row #color:disabled{opacity:.35}.dependency-row{display:grid;grid-template-columns:minmax(0,1fr) 70px 24px 24px;gap:6px;align-items:center}.dependency-row input{min-width:0}.dependency-row select{padding:8px}.dependency-row button{min-height:24px!important;height:24px;padding:0}.dependency-offset{display:flex;align-items:center;gap:8px;margin:8px 0 12px}.dependency-offset label{margin:0}.dependency-offset input{width:80px}.dependency-remove{border:0;background:transparent}#addDependency{width:42px;padding:0}.task-comments,.task-urls{border-top:1px solid var(--line);padding-top:17px;margin-top:20px}.task-comments textarea{height:76px;min-height:76px}#postComment{margin-top:8px}.resource-assigned-list{min-height:125px;border:1px solid var(--line);border-radius:6px;padding:8px;margin-top:10px}.inline-discard{flex:none;border:1px solid var(--line);padding:12px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.inline-discard[hidden]{display:none}.inline-discard span{width:100%}.inspector.task-create:not([hidden]){position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:min(860px,calc(100vw - 48px));height:auto;max-height:calc(100dvh - 80px);z-index:55;border:1px solid var(--line);border-radius:10px;box-shadow:0 0 0 100vmax #17344855,0 16px 60px #0002;padding:26px}.task-create .task-panel-actions{border:0;justify-content:flex-end}.task-create .task-columns{display:grid;grid-template-columns:minmax(0,1fr) 300px;column-gap:30px}.task-create .task-main-fields{grid-column:1;grid-row:1}.task-create .task-assigned-fields{grid-column:2;grid-row:1/3}.task-create .task-secondary-fields{grid-column:1;grid-row:2}.task-create .resource-assigned-list{min-height:310px}.task-create .task-form-scroll{max-height:calc(100dvh - 270px)}
@media(max-width:600px){.inspector:not([hidden]),.inspector.task-create:not([hidden]){position:fixed;inset:0;transform:none;width:100%;height:100dvh;max-height:none;z-index:55;border:0;border-radius:0;padding:22px 18px;background:var(--panel);box-shadow:none}.task-create .task-columns{display:flex;flex-direction:column;gap:0}.task-create .resource-assigned-list{min-height:125px}.task-create .task-form-scroll{max-height:none}.task-title-input{font-size:19px}.task-panel-actions{padding-bottom:env(safe-area-inset-bottom)}}
/* Date cells use the same exact widths as SVG grid columns at every scale. */
.days .day{flex:0 0 auto;min-width:0;padding:0;display:flex;align-items:center;justify-content:center;line-height:normal;overflow:hidden}.weeks .week{flex:0 0 auto;min-width:0;overflow:hidden;white-space:nowrap}.weeks,.days{padding:0;margin:0}
/* Pointer capture keeps drag/resize gestures on the selected bar. */
.chartsvg [data-bar]{touch-action:none}.bar-resize-handle{cursor:ew-resize;touch-action:none}.resize-grip{pointer-events:none}.bar-resize-handle:focus{outline:none}.bar-resize-handle:focus .resize-grip{stroke:var(--text);stroke-width:2}.bar-resize-handle .resize-hit{pointer-events:all}@media(pointer:coarse){.resize-hit{stroke:transparent;stroke-width:8}}
.admin-virtual-panel{grid-column:1/-1;width:100%}.virtual-controls{display:flex;justify-content:space-between;gap:12px;margin-bottom:20px}.virtual-controls input{width:310px;max-width:100%;min-width:0}.virtual-row{display:grid;grid-template-columns:250px minmax(0,1fr) 165px;gap:24px;padding:18px 0;border-bottom:1px solid var(--line)}.virtual-head{font-size:12px;color:var(--muted);padding:10px 0}.virtual-person{display:flex;align-items:flex-start;gap:12px}.virtual-project{display:flex;justify-content:space-between;gap:15px;margin-bottom:8px}.virtual-project a{color:var(--accent);text-decoration:none;overflow-wrap:anywhere}.virtual-project span{font-size:12px;color:var(--muted);white-space:nowrap}.virtual-invitation>span{display:block;margin-bottom:10px}.virtual-invitation button{min-height:36px;font-size:12px;padding:8px 12px}.virtual-project-picker{display:flex;flex-direction:column;gap:6px;margin-top:8px}.virtual-project-picker[hidden]{display:none}@media(max-width:600px){.virtual-row{grid-template-columns:1fr;gap:14px}.virtual-head{display:none}.virtual-row>div:nth-child(2),.virtual-row>div:nth-child(3){padding-left:46px}.virtual-invitation{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.virtual-invitation>span{margin:0}.virtual-project-picker{width:100%}}

.project-creator{overflow-wrap:anywhere;min-width:0}.profile-project-creator{margin-left:auto;overflow-wrap:anywhere}@media(max-width:900px){.project-list-row{grid-template-columns:minmax(0,1fr)}.project-creator{font-size:12px}.profile-project-creator{margin-left:8px}}

#taskDateRange[hidden],#milestoneDateField[hidden]{display:none!important}

/* Task form refinement using the app's established blue/Roboto design tokens. */
.inspector:not([hidden]){flex-basis:528px;width:528px;padding:28px}.task-panel-head{margin-bottom:24px;align-items:flex-start}.task-key{font-weight:600;letter-spacing:.02em}.task-title-input{font-size:22px;line-height:1.4}.inspector #taskClose{width:36px;height:36px;min-width:36px;flex:none;border:1px solid var(--line);border-radius:4px}.inspector #taskClose svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;vertical-align:middle}.task-form-scroll{padding:4px 8px 4px 4px;scrollbar-gutter:stable;overflow-x:hidden}.task-columns,.task-columns>*,.inspector .field,.inspector .split>*{min-width:0}.inspector input,.inspector select,.inspector textarea{max-width:100%;box-sizing:border-box;border-color:var(--line);background:var(--panel)}.inspector input:focus,.inspector select:focus,.inspector textarea:focus{outline-offset:0}.inspector label{color:var(--muted);font-weight:500;margin-bottom:8px}.inspector .field{margin-bottom:20px}.inspector .split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.dependency-row{grid-template-columns:minmax(0,1fr) 76px 30px 30px;gap:8px}.dependency-row button{width:30px;height:30px;min-width:0;padding:0}.dependency-row select{width:76px;padding:8px}.dependency-offset{margin:10px 0 16px}.resource-assigned-list{border-radius:6px;background:var(--header);padding:12px}.task-color-row select{min-width:0}.url-add-row{min-width:0}.url-add-row input{flex:1;min-width:0}.task-create .task-columns{grid-template-columns:minmax(0,1fr) minmax(0,300px);column-gap:32px}.inspector.task-create:not([hidden]){width:min(900px,calc(100vw - 64px));padding:30px;border-radius:12px}.task-discard-dialog{width:min(430px,calc(100vw - 48px));border:1px solid var(--line);border-radius:12px;padding:28px;background:var(--panel);color:var(--text);box-shadow:0 16px 60px #0002}.task-discard-dialog::backdrop{background:#17344855}.task-discard-dialog h2{font-size:20px;margin-bottom:26px}.task-discard-dialog .actions{justify-content:flex-end;gap:12px}.task-discard-dialog button{min-height:44px}
@media(min-width:601px) and (max-width:900px){.task-create .task-columns{grid-template-columns:minmax(0,1fr) minmax(0,240px);gap:24px}.task-create .resource-assigned-list{min-height:230px}.inspector.task-create:not([hidden]){padding:24px}.task-create .dependency-row{grid-template-columns:minmax(0,1fr) 64px 24px 24px;gap:4px}.task-create .dependency-row select{width:64px}}
@media(max-width:600px){.inspector:not([hidden]),.inspector.task-create:not([hidden]){width:100%;flex-basis:auto;padding:22px 18px;border-radius:0}.task-form-scroll{padding:4px 6px 4px 2px}.inspector .split{gap:12px}.dependency-row{grid-template-columns:minmax(0,1fr) 66px 26px 26px;gap:5px}.dependency-row select{width:66px}.dependency-row button{width:26px}.task-create .task-columns{display:flex;gap:0}.task-title-input{font-size:21px}}
.inspector:not(.task-create) #taskClose{border-radius:50%;box-shadow:0 1px 5px #24374618;color:var(--accent)}

.board{position:relative}.inspector:not(.task-create) #taskClose{display:none}button.detail-tab:not([hidden]){position:absolute;z-index:60;top:50%;right:510px;transform:translateY(-50%);width:36px;height:36px;min-height:36px;padding:0;background:var(--panel)!important;color:var(--accent);border:1px solid var(--line);border-radius:50%;box-shadow:0 1px 5px #24374618;font-size:24px;line-height:1}
@media(max-width:600px){button.detail-tab:not([hidden]){position:fixed;top:50%;left:0;right:auto;width:28px;min-width:28px;max-width:28px;height:36px;border-radius:0 18px 18px 0!important}.inspector:not(.task-create){padding-left:32px}}
/* Hierarchy drag: the ID is the compact handle, leaving names and scroll usable. */
.task-row .task-grip{cursor:grab;touch-action:none;user-select:none}.task-row .task-grip:active{cursor:grabbing}.task-grip:focus-visible{outline:2px solid #007dbc;outline-offset:-2px}.task-row.task-dragging{opacity:.45}.task-row.drop-inside{background:rgba(0,125,188,.16)!important;box-shadow:inset 0 0 0 2px #007dbc}.task-row.drop-before{box-shadow:inset 0 3px #007dbc}.task-row.drop-after{box-shadow:inset 0 -3px #007dbc}
.save-area{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.history-link{background:none;border:0;padding:0;min-height:0;height:auto;color:var(--muted);font-size:12px;text-decoration:underline}.history-link:hover{background:none;color:#007dbc}.project-history{display:flex;flex-direction:column;padding:24px 28px;min-height:0}.project-history[hidden]{display:none}.history-head h2{margin:0 0 22px;font-size:20px}.history-entries{flex:1;overflow:auto;min-height:0;padding:0 6px 8px 0}.history-entry{padding:16px 0;border-bottom:1px solid var(--line)}.history-meta{display:flex;flex-direction:column;gap:5px}.history-meta time{font-size:12px;color:var(--muted)}.history-entry ul{padding-left:18px;margin-bottom:0;line-height:1.6;overflow-wrap:anywhere}.history-actions{padding-top:12px}@media(max-width:600px){.project-history{position:fixed;inset:0;z-index:70;width:100%;max-width:none;padding:24px 20px 24px 36px}}
.legend .save-area{margin-left:auto}.legend .save-area .save{margin-left:0}
.history-detail{white-space:pre-wrap;font-size:12px;color:var(--muted);line-height:1.6;margin:3px 0 8px;overflow-wrap:anywhere}
/* Separate grip gutter: identifiers remain plain text. */
.task-row{grid-template-columns:24px 84px 18px minmax(0,1fr) 72px}.listhead{grid-template-columns:24px 84px minmax(0,1fr) 72px}.task-row button.task-grip{width:24px;height:35px;min-height:0;display:flex;align-items:center;justify-content:center;border:0;border-radius:0;background:transparent;color:var(--muted);padding:0;opacity:.65}.task-row button.task-grip:hover,.task-row button.task-grip:focus-visible{opacity:1;color:#007dbc;background:rgba(0,125,188,.07)}.task-grip svg{width:10px;height:16px}.listhead>.task-grip-space{padding:0;border-right:0}.task-row .id{cursor:default;touch-action:auto;user-select:text}@media(max-width:900px){.task-row{grid-template-columns:28px 60px 18px minmax(0,1fr) 48px}.listhead{grid-template-columns:28px 60px minmax(0,1fr) 48px}.task-row button.task-grip{width:28px;opacity:.8}}@media print{.task-grip,.task-grip-space{visibility:hidden}}
/* Compact project list actions and date-first milestones. */
.project-list-labels,.project-list-row{grid-template-columns:minmax(180px,1fr) minmax(90px,140px) 150px 40px;gap:18px}.project-title-link{max-width:480px;line-height:1.4;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.project-list-actions{position:relative;justify-content:flex-end}.home-action-menu{position:relative}.home-action-menu .dropdown{position:absolute;right:0;top:calc(100% + 5px);z-index:30;min-width:170px;padding:5px;box-shadow:0 6px 18px #0002}.home-action-menu .dropdown button{width:100%;text-align:left;display:block;border:0;background:transparent;min-height:40px}.project-action-toggle{width:36px;min-height:36px;height:36px;padding:7px;border:0;background:transparent}.project-action-toggle svg{width:12px;height:18px;fill:currentColor}.project-list-item{overflow:visible}.project-milestones li{gap:8px;padding:8px 0}.project-milestones time{width:82px;color:var(--muted);text-align:left;flex:0 0 82px}.milestone-divider{color:var(--muted)}.milestone-name{flex:initial}.project-list-labels .project-actions-label{font-size:0}@media(max-width:1100px){.project-list-labels,.project-list-row{grid-template-columns:minmax(180px,1fr) minmax(80px,120px) 125px 36px;gap:12px}}@media(max-width:900px){.project-list-row{grid-template-columns:minmax(0,1fr) 36px;gap:8px}.project-list-title{grid-column:1;grid-row:1}.project-list-actions{grid-column:2;grid-row:1}.project-creator,.project-updated{grid-column:1}.project-milestones time{width:74px;flex-basis:74px}.project-title-link{max-width:none}}
.project-title-link{display:block;-webkit-line-clamp:unset;overflow:visible}.project-milestones time{width:auto;flex:0 0 auto}
.home-action-menu .dropdown{left:auto;right:0}.home-action-menu .dropdown button:hover,.home-action-menu .dropdown button:focus-visible,.home-action-menu .dropdown button.active{background:var(--header)}

/* board pages must use the full viewport width; no reserved scrollbar track (older Safari falls back to overflow-y:scroll). */
@media(min-width:901px){html:has(.board){scrollbar-gutter:auto;overflow-y:auto}}

/* Keep account controls near the viewport edge without reducing their hit area. */
@media(min-width:901px){.top{padding-right:6px}.top .user-menu #userMenu{padding-right:4px;padding-left:8px}.top>.actions{gap:8px}}

/* Cuenta y administración: menú lateral propio de Projects */
.acct-shell{flex:1;display:flex;align-items:stretch;min-width:0;background:var(--bg)}
.acct-side{flex:0 0 220px;width:220px;display:flex;flex-direction:column;justify-content:space-between;gap:16px;padding:20px 12px;background:var(--header);border-right:1px solid var(--line)}
.acct-side nav{display:flex;flex-direction:column;gap:2px}
.acct-group{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:14px 12px 6px}
.acct-group:first-child{padding-top:0}
.acct-item{display:flex;align-items:center;min-height:38px;padding:8px 12px;border:0;border-radius:8px;background:transparent;color:var(--text);font-weight:500;text-align:left}
.acct-item:hover{background:color-mix(in srgb,var(--accent) 10%,transparent);border:0}
.acct-item.on{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);font-weight:600}
.acct-fold{min-height:32px;padding:4px 12px;border:0;background:transparent;color:var(--muted);font-size:12px;font-weight:500;text-align:left}
.acct-fold:hover{background:transparent;border:0;color:var(--text)}
.acct-shell.collapsed .acct-side{flex-basis:56px;width:56px;padding:20px 6px}
.acct-main{flex:1;min-width:0;padding:28px 32px 40px}
.acct-main>main{margin:0;max-width:1100px;width:100%}
.acct-main>.profile-panel,.acct-main>.admin-panel{background:transparent;border:0;padding:0;box-shadow:none}
.acct-main h1{font-size:26px;font-weight:700;letter-spacing:0;margin:8px 0 4px}
.acct-main #back,.acct-main #adminBack{min-height:32px;padding:4px 10px;border:0;background:transparent;color:var(--muted);font-size:13px;font-weight:500;margin-left:-10px}
.acct-main #back:hover,.acct-main #adminBack:hover{background:transparent;color:var(--text)}
.acct-main .profile-panel h1{margin-top:8px!important}
.acct-main .admin-tabs{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);margin:0;padding:0;border:0;white-space:nowrap}
.acct-main .admin-panel .heading{margin-top:0}
.acct-main .settings-tabs.profile-tabs,.acct-main .profile-layout .settings-tabs{display:inline-flex;flex-direction:row;gap:4px;padding:4px;border:1px solid var(--line);border-radius:10px;background:var(--panel);align-self:flex-start;border-right:1px solid var(--line);margin-bottom:16px;width:fit-content;max-width:100%;overflow-x:auto}
.acct-main .profile-layout{display:flex;flex-direction:column;gap:0}
.acct-main .profile-layout .folder-nav{min-height:34px;padding:6px 14px;border-radius:7px;border:0;font-size:13px;font-weight:600;color:var(--muted)}
.acct-main .profile-layout .folder-nav.active{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent)}
.acct-main .profile-layout .settings-body{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:24px;max-width:none}
.acct-main .admin-layout>section{border-radius:12px;padding:24px}
.acct-main .admin-layout{gap:24px}
.acct-main input,.acct-main select{border-radius:8px;min-height:42px}
.acct-main button{border-radius:8px;min-height:40px;font-weight:600}
.acct-main .primary{border-radius:8px}
.acct-main .admin-users{gap:0}
.acct-main .admin-users>button{border:0;border-bottom:1px solid var(--line);background:transparent;border-radius:0;min-height:56px;padding:10px 12px}
.acct-main .admin-users>button:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}
.acct-main .admin-users>button.active{background:color-mix(in srgb,var(--accent) 12%,transparent);border-color:var(--line)}
.acct-main .badge{display:inline-flex;align-items:center;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);border:0}
.acct-main .virtual-row{border-bottom:1px solid var(--line)}
.acct-main .item{border-color:var(--line)}
@media(max-width:850px){
.acct-shell{flex-direction:column}
.acct-side{flex:none;width:auto;flex-direction:row;align-items:center;padding:8px 10px;border-right:0;border-bottom:1px solid var(--line);overflow-x:auto;gap:8px}
.acct-side nav{flex-direction:row;gap:4px}
.acct-group,.acct-fold{display:none}
.acct-item{white-space:nowrap;min-height:44px}
.acct-shell.collapsed .acct-side{width:auto;flex-basis:auto;padding:8px 10px}

.acct-main{padding:20px 14px 32px}
.acct-main .profile-layout .settings-body{padding:16px}
}
.acct-side .acct-item{background:transparent;border:0;box-shadow:none}
.acct-side .acct-item:hover{background:color-mix(in srgb,var(--accent) 10%,transparent)}
.acct-side .acct-item.on{background:color-mix(in srgb,var(--accent) 16%,transparent)}
.acct-main .admin-layout>section>h2:first-child{margin-top:0}
.acct-main .admin-access>*+*{margin-top:12px}
.acct-main .admin-access>h2+p{margin-top:4px}
.acct-main .admin-access h3{margin:20px 0 0}
.acct-main .admin-access .field{margin:16px 0 0}
.acct-main .admin-users>button{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;row-gap:2px;align-items:center}
.acct-main .admin-users>button>strong{grid-column:1}.acct-main .admin-users>button>.badge{grid-column:2;grid-row:1/3}
.acct-main .admin-users>button>.small{grid-column:1;width:auto;order:0}
.acct-main .profile-layout form{max-width:620px}
.acct-main .profile-layout .field{margin-bottom:18px}
.acct-main .legacy-transfer>*+*{margin-top:12px}
.acct-main .legacy-transfer>h2{margin-bottom:4px}
body:not(.light) #app:has(>.acct-shell){--bg:#0d1117;--panel:#161b22;--header:#0d1117;--line:#30363d;background:var(--bg);color:var(--text)}
body:not(.light) #app:has(>.acct-shell)>.top{background:var(--header)}
body:not(.light) #app:has(>.acct-shell) .acct-side{background:var(--header)}
body:not(.light) #app:has(>.acct-shell)>footer.legend{background:var(--header)}
.acct-main #saveAppRole,.acct-main #adminExportGantt,.acct-main #adminImportGantt{background:var(--accent);color:#fff;border-color:var(--accent)}
.acct-main #saveAppRole:hover,.acct-main #adminExportGantt:hover,.acct-main #adminImportGantt:hover{background:#00689c;border-color:#00689c}
.acct-main #saveAppRole:disabled{opacity:.4}
.acct-main>main.panel,.acct-main>main.profile-panel,.acct-main>main.admin-panel{background:transparent!important;border:0!important;box-shadow:none;padding:0;border-radius:0}
/* Perfil/Administración/Proyectos: ajuste al prototipo aprobado v2 */
.acct-shell{--pa:#58a6ff;--pas:#1c2a3a;--bg:#0d1117;--panel:#161b22;--header:#0d1117;--line:#30363d;--text:#e6edf3;--muted:#8b949e;--accent:#2f81f7;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;font-size:13.5px;color:var(--text)}
body.light .acct-shell{--pa:#0969da;--pas:#ddf4ff;--bg:#f6f8fa;--panel:#fff;--header:#fff;--line:#d0d7de;--text:#1f2328;--muted:#59636e;--accent:#0969da}
#app:has(>.acct-shell){height:100dvh;min-height:0;display:flex;flex-direction:column;overflow:hidden}
#app:has(>.acct-shell)>.top,#app:has(>.acct-shell)>footer.legend{flex-shrink:0;position:relative;z-index:30}
#app:has(>.acct-shell)>.acct-shell{flex:1 1 auto;min-height:0;overflow:hidden}
.acct-side{flex:0 0 188px;width:188px;padding:14px 10px;overflow-y:auto;background:var(--header)}
.acct-main{overflow-y:auto;padding:24px 28px 32px;min-height:0}
.acct-group{font-size:11px;letter-spacing:.06em;padding:16px 10px 6px}
.acct-item{gap:10px;min-height:36px;padding:9px 10px;margin:1px 0;font-weight:500;color:var(--text)}
.acct-item .acct-ico{flex:none;width:18px;height:18px}
.acct-lbl{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.acct-side .acct-item.on,.acct-side .acct-item:hover.on{background:var(--pas);color:var(--pa);font-weight:600}
.acct-side .acct-item:hover:not(.on){background:color-mix(in srgb,var(--pa) 8%,transparent)}
.acct-fold{display:flex;align-items:center;gap:8px;padding:4px 10px}
.acct-fold .acct-arr{font-weight:400;font-size:16px;line-height:1;width:18px;text-align:center;flex:none}
.acct-shell.collapsed .acct-side{flex-basis:56px;width:56px;padding:14px 8px}
.acct-shell.collapsed .acct-group{font-size:0;height:1px;padding:0;margin:10px 6px;background:var(--line)}
.acct-shell.collapsed .acct-group:first-child{display:none}
.acct-shell.collapsed .acct-lbl,.acct-shell.collapsed .acct-fold span{display:none}
.acct-shell.collapsed .acct-item{justify-content:center;padding:9px 0}
.acct-shell.collapsed .acct-fold{justify-content:center;padding:4px 0}
.acct-shell.collapsed .acct-fold .acct-arr{transform:rotate(180deg)}
.acct-main h1{font-size:24px;font-weight:700;letter-spacing:-.01em}
.acct-main #back,.acct-main #adminBack{display:none}
.acct-main .profile-panel h1{margin-top:0!important}
.acct-main .profile-layout .settings-body,.acct-main .admin-layout>section{border-radius:12px;padding:20px 22px;background:var(--panel);border:1px solid var(--line);box-shadow:0 1px 2px rgba(20,40,60,.04)}
.acct-main .profile-layout .settings-tabs,.acct-main .settings-tabs.profile-tabs{background:var(--panel);border-radius:10px;padding:4px;gap:6px}
.acct-main .profile-layout .folder-nav{border-radius:7px;font-weight:500;font-size:13.5px}
.acct-main .profile-layout .folder-nav.active{background:var(--pas);color:var(--pa)}
.acct-main input,.acct-main select{border-radius:8px;min-height:0;padding:8px 10px;font:inherit;background:var(--panel);color:var(--text);border:1px solid var(--line)}
.acct-main button{min-height:0;padding:7px 14px;border-radius:8px;font:inherit;font-weight:500;background:var(--panel);color:var(--text);border:1px solid var(--line)}
.acct-main button.primary,.acct-main #saveAppRole,.acct-main #adminExportGantt,.acct-main #adminImportGantt{background:var(--pa);border-color:var(--pa);color:#fff}
body:not(.light) .acct-main button.primary,body:not(.light) .acct-main #saveAppRole,body:not(.light) .acct-main #adminExportGantt,body:not(.light) .acct-main #adminImportGantt{color:#000}
.acct-main .profile-layout form{max-width:none}
.acct-main .profile-layout .field,.acct-main .admin-access .field{display:grid;grid-template-columns:150px minmax(0,1fr);gap:4px 12px;align-items:start;margin:0 0 14px}
.acct-main .profile-layout .field>label,.acct-main .admin-access .field>label{grid-column:1;font-weight:600;padding-top:8px}
.acct-main .profile-layout .field>:not(label),.acct-main .admin-access .field>:not(label){grid-column:2}
.acct-main .profile-layout .field input:not([type=file]),.acct-main .profile-layout .field select,.acct-main .admin-access .field input,.acct-main .admin-access .field select{width:min(100%,320px)}
.acct-main .profile-layout .field p.small{margin:0;font-size:12px;color:var(--muted)}
.acct-main #removeAvatar,.acct-main #changeLocalEmail,.acct-main [data-local-email]{border:0;background:transparent;color:var(--pa);padding:0;justify-self:start;font-weight:500}
.acct-main .badge{background:var(--pas);color:var(--pa)}
.acct-main .folder-sidebar .folder-nav.active{background:var(--pas);color:var(--pa)}
@media(max-width:850px){
#app:has(>.acct-shell)>.acct-shell{flex-direction:column;overflow:hidden}
.acct-side{flex:none;width:auto;overflow-x:auto;overflow-y:hidden;padding:6px}
.acct-shell.collapsed .acct-side{width:auto;flex-basis:auto;padding:6px}
.acct-shell.collapsed .acct-lbl{display:inline}
.acct-shell.collapsed .acct-item{padding:9px 10px;justify-content:flex-start}
.acct-item .acct-ico{display:none}
.acct-main{flex:1 1 auto;padding:16px 14px 24px}
.acct-main .profile-layout .field,.acct-main .admin-access .field{grid-template-columns:1fr}
.acct-main .profile-layout .field>*,.acct-main .admin-access .field>*{grid-column:1!important}.acct-main .profile-layout .field>label,.acct-main .admin-access .field>label{padding-top:0}
}
.acct-main #profileForm>button[type=button]{border:0;background:transparent;color:var(--pa);padding:0 0 12px;font-weight:500}
.acct-main>main.workspace{margin:0;padding:0;width:100%;max-width:none}
.acct-main>main.workspace .heading{margin-top:0;padding-top:0}
.acct-main>main.workspace .folder-nav.active,.acct-main>main.workspace .folder-nav.active svg{color:var(--pa)}
.acct-main>main.workspace .folder-nav.active{background:var(--pas)}
.acct-main .admin-access>button:not(.primary):not(#saveAppRole){margin-bottom:12px}
html:has(#app>.acct-shell),body:has(#app>.acct-shell){overflow:hidden;height:100dvh}
/* 0.2.23: acciones de tarea junto al título, solo iconos */
.editor-head .title-actions .actions{gap:6px}
.title-actions .main-actions.title-tools{flex:0 0 auto;display:flex;gap:6px;margin-left:6px;padding-left:12px;border-left:1px solid var(--line)}
.title-actions .main-actions.title-tools .options-wrap{display:inline-flex}
.title-actions .main-actions.title-tools button{width:32px!important;min-width:32px!important;height:32px!important;min-height:32px!important;padding:0!important;display:inline-flex;align-items:center;justify-content:center}
.title-actions .main-actions.title-tools button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.title-actions .main-actions.title-tools button.primary svg,.title-actions .main-actions.title-tools button.active svg{stroke:currentColor}
.title-actions .main-actions.title-tools .options-wrap .dropdown button{width:100%!important;min-width:0!important;height:auto!important;min-height:44px!important;padding:0 14px!important;justify-content:flex-start}
@media(max-width:850px){.title-actions .actions{flex-wrap:wrap}.title-actions .main-actions.title-tools{border-left:0;margin-left:0;padding-left:0}}
.editor-head{position:relative;z-index:30}
.title-actions .main-actions.title-tools .options-wrap .dropdown{left:0;right:auto}
.title-actions .options-wrap .dropdown{height:auto!important;max-height:none!important;display:block}.title-actions .options-wrap .dropdown[hidden]{display:none}
.title-actions .main-actions.title-tools .options-wrap .dropdown button{display:block!important;text-align:left;line-height:44px}
/* 0.2.24: chevrons y rombo de hito en la columna de nombre: solo trazo, sin caja, mismo tamaño y alineación */
.task-row button[data-toggle]{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0;width:18px;min-width:18px;height:36px;display:inline-flex;align-items:center;justify-content:flex-start;padding:0 0 0 4px!important;color:var(--muted)}
.task-row button[data-toggle]:hover,.task-row button[data-toggle]:focus-visible{background:transparent!important;color:var(--text,currentColor)}
.task-row .row-mark{width:18px;height:36px;display:inline-flex;align-items:center;justify-content:flex-start;padding-left:4px;box-sizing:border-box;color:var(--muted)}
.task-row .row-ico{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}
.task-row .task-name-cell{margin-left:8px}
/* 0.2.26: affordance de hover en chevrons */
.task-row button[data-toggle]{cursor:pointer;transition:color .12s,transform .12s}
.task-row button[data-toggle]:hover,.task-row button[data-toggle]:focus-visible{color:#007dbc!important;transform:scale(1.18);outline:none}
.task-row button[data-toggle]:active{transform:scale(1.05)}
@media(hover:none){.task-row button[data-toggle]:hover{transform:none}}
/* 0.2.28: cabecera global con fondo azul suave, sin línea separadora */
#app>.top,#app:has(>.acct-shell)>.top{background:var(--header);border-bottom:1px solid var(--line)}
body:not(.light) #app>.top,body:not(.light) #app:has(>.acct-shell)>.top{background:var(--header);border-bottom:1px solid var(--line)}
body.light #app>.top .project-picker input{background:#fff}
/* 0.2.33: panel derecho con fondo apenas distinto del gráfico */
body.light .inspector:not([hidden]){background:#f4f7fa!important;border-left:1px solid #d7dee4}
body:not(.light) .inspector:not([hidden]){background:#262b32!important;border-left:1px solid #3b4148}

/* 0.2.34: paleta cerrada de colores */

.swatches{margin:6px 0;max-width:420px}.swatches .swatch-trigger{display:inline-flex;align-items:center;gap:10px;min-height:38px;padding:4px 12px 4px 8px;border:1px solid var(--border,rgba(127,127,127,.45));border-radius:8px;background:var(--bg,#fff);color:var(--text);box-shadow:none;cursor:pointer}.swatches .swatch-trigger:disabled{opacity:.6;cursor:not-allowed}.swatch-dot{width:24px;height:24px;border-radius:50%;background:var(--sw);border:1px solid rgba(127,127,127,.6);flex-shrink:0}.swatch-name{font-size:13px;font-variant-numeric:tabular-nums}.swatch-chev{width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin:0 2px 3px 4px}.swatches .swatch-trigger[aria-expanded=true] .swatch-chev{transform:rotate(-135deg);margin:3px 2px 0 4px}.swatch-menu{display:grid;grid-template-columns:repeat(auto-fill,32px);gap:8px;margin-top:8px;padding:10px;border:1px solid var(--border,rgba(127,127,127,.45));border-radius:8px}.swatch-menu[hidden]{display:none}.swatches .swatch{width:32px;height:32px;min-width:32px;min-height:32px;padding:0;border-radius:50%;background:var(--sw);border:1px solid rgba(127,127,127,.6);box-shadow:none;cursor:pointer;transition:none;filter:none}.swatches .swatch:hover{background:var(--sw);border-color:var(--text);transform:none;box-shadow:none}.swatches .swatch[aria-checked=true]{background:var(--sw);border:3px solid var(--text);box-shadow:none}.swatches .swatch:focus-visible,.swatches .swatch-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.swatches .swatch.legacy{border-style:dashed}.swatches .swatch:disabled{background:var(--sw)}
.task-color-row{flex-wrap:wrap}.task-color-row .swatches{display:contents}.task-color-row .swatch-menu{flex:0 0 100%;margin-top:0}.task-color-row select{flex:1 1 120px}
.task-row.ctx>:not(.task-grip):not(.task-grip-space){opacity:.55}
.task-row{height:32px}.task-row button.task-grip{height:31px}.task-row button[data-toggle],.task-row .row-mark{height:32px}
#app>.top{height:44px;min-height:44px;padding:0 20px;gap:16px;position:relative;flex-wrap:nowrap;overflow:visible}
#app>.top button{height:32px;min-height:32px}
#app>.top .theme-button{width:32px;height:32px;min-width:32px}
#app>.top .brand{font-size:18px}
#app>.top .user-menu #userMenu{height:32px;min-height:32px;padding-top:0;padding-bottom:0}
#app>.top .actions{display:flex;align-items:center;gap:10px}
#app>.top .project-nav{flex:1;min-width:0;display:block}
#app>.top .project-picker{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(420px,calc(100vw - 560px));min-width:200px;flex:none}
#app>.top .project-picker input{height:32px;min-height:32px;padding:0 16px;border-radius:999px;text-align:left}
#app>.top .project-picker .dropdown{left:0;right:auto;top:38px;min-width:100%}
@media(max-width:1250px){#app>.top .dropdown{top:40px}#app>.top .project-picker .dropdown{top:38px;left:0;right:auto;position:absolute}#app>.top .user-menu .dropdown{position:fixed;top:40px;right:12px;left:auto}}
@media(max-width:820px){#app>.top{padding:0 12px;gap:8px}#app>.top .project-nav{flex:1 1 auto}#app>.top .project-picker{position:relative;left:auto;top:auto;transform:none;width:100%;min-width:0}}
@media(max-width:820px){#app>.top .user-menu #userMenu>span:not(.avatar),#app>.top .brand .small{display:none}#app>.top .project-picker{min-width:90px}}
#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:60;display:flex;opacity:0;pointer-events:none;transition:opacity .6s ease;max-width:min(560px,calc(100vw - 32px));padding:13px 26px 13px 15px;border-radius:26px;background:rgba(20,108,52,.85);color:#fff;font-size:14px;font-weight:600;line-height:1.3;box-shadow:0 2px 6px rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.35);align-items:center;gap:16px}
#toast.show{display:flex;opacity:1;transition-duration:.18s}@media(prefers-reduced-motion:reduce){#toast,#toast.show{transition-duration:.01s}}
#toast::before{content:"\2713";flex:0 0 24px;width:24px;height:24px;border-radius:50%;background:rgba(255,255,255,.25);display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:700}
#toast.error{background:rgba(166,27,27,.85)}#toast.error::before{content:"\2715"}
#toast.warn{background:rgba(154,74,7,.85)}#toast.warn::before{content:"!"}
#app>.top{z-index:40}#app>.top .dropdown{z-index:41}

/* Listado de proyectos: tabla limpia, carpetas como fichas discretas */
.folder-workspace{display:block}
.folder-strip{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 14px}
.folder-chip{display:inline-flex;align-items:center;gap:6px;min-height:0;height:28px;padding:0 11px 0 8px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--muted);font-size:12.5px;max-width:240px}
.folder-chip .folder-icon{width:15px;height:15px;font-size:13px;line-height:15px;color:inherit;opacity:.75}
.folder-chip span:not(.folder-icon){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.folder-chip:hover{background:var(--panel);color:var(--text)}
.folder-chip.active,.folder-chip.drop-target{background:var(--panel)!important;color:var(--text)!important;border-color:var(--line)}
.project-card-table{background:var(--surface,var(--panel));border:1px solid var(--line);border-radius:14px;overflow:visible;box-shadow:0 1px 2px #0000000d}
body.light .project-card-table{background:#fff}
.project-toolbar{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--line)}
.sort-chip{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 4px 0 11px;border:1px solid var(--line);border-radius:999px;font-size:12.5px;color:var(--text)}
.sort-chip:not(:has(.sort-clear)){padding-right:11px}
.sort-clear{border:0;background:transparent;min-height:0;width:20px;height:20px;padding:0;border-radius:50%;color:var(--muted);font-size:11px;line-height:1}
.project-card-table .project-list-labels,.project-card-table .project-list-row{grid-template-columns:minmax(200px,1fr) 150px 160px minmax(80px,120px) minmax(120px,160px) 40px;gap:14px}
.project-card-table .project-list-labels{padding:10px 16px;border-bottom:1px solid var(--line)}
.col-sort{display:inline-flex;gap:6px;align-items:center;border:0;background:transparent;min-height:0;padding:0;color:var(--muted);font-size:12px;font-weight:600}
.col-sort i{font-style:normal;opacity:.45}.col-sort.on{color:var(--text)}.col-sort.on i{opacity:1}
.project-card-table .project-list-row{padding:9px 16px}
.project-card-table .project-list-item:last-child{border-bottom:0}
.project-card-table .project-list-item:hover{background:color-mix(in srgb,var(--panel) 55%,transparent)}
.project-card-table .project-title-link{font-size:15px;font-weight:600;max-width:none}
.project-card-table .project-meta{margin-top:3px;gap:8px}
.project-card-table .project-location{margin:0}
.due-edit{display:inline-flex;align-items:center;gap:6px;color:var(--muted)}
.due-edit svg{width:14px;height:14px;flex:0 0 14px}
.due-edit input{border:0;background:transparent;color:var(--text);font:inherit;font-size:13px;padding:0;min-height:0;width:118px;outline-offset:2px}
.project-due.overdue .due-edit,.project-due.overdue .due-edit input,.project-due.overdue>span{color:#d92d20}
.status-pill{appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;height:26px;padding:0 24px 0 11px;border:0;border-radius:999px;font:inherit;font-size:12.5px;font-weight:600;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 13px) 11px,calc(100% - 9px) 11px;background-size:4px 4px;background-repeat:no-repeat;min-height:0;cursor:pointer;max-width:100%}
span.status-pill{padding-right:11px;background-image:none;cursor:default}
.st-none{background-color:transparent;color:var(--muted);box-shadow:inset 0 0 0 1px var(--line)}
.st-backlog{background-color:#fdf0c4;color:#7a5600}.st-ready{background-color:#d3f2dc;color:#146c35}.st-progress{background-color:#d6e8ff;color:#1a56b0}.st-done{background-color:#e6e8ec;color:#4b5563}
body:not(.light) .st-backlog{background-color:#4a3b0a;color:#f6d36b}body:not(.light) .st-ready{background-color:#12381f;color:#7fdca1}body:not(.light) .st-progress{background-color:#13335f;color:#8dbcff}body:not(.light) .st-done{background-color:#2a2d33;color:#b6bcc6}
.status-pill option{background:var(--surface,#fff);color:var(--text)}
.project-assignee{min-width:0}
.assignee-btn{display:inline-flex;align-items:center;gap:8px;border:0;background:transparent;min-height:0;padding:0;max-width:100%;font-size:13px;color:var(--text)}
.assignee-btn span:not(.avatar),.project-assignee>span:not(.avatar){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.project-assignee{display:flex;align-items:center;gap:8px;font-size:13px}
.project-assignee .avatar,.assignee-btn .avatar{width:22px;height:22px;flex:0 0 22px;font-size:10px}
.assignee-select{font:inherit;font-size:13px;max-width:100%;min-height:30px}
@media(max-width:900px){
.project-card-table .project-list-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 12px;padding:12px 14px;position:relative}
.project-card-table .project-list-title{grid-column:1/-1;padding-right:40px}
.project-card-table .project-list-actions{position:absolute;right:8px;top:8px;grid-column:auto;grid-row:auto}
.project-card-table .project-due,.project-card-table .project-status,.project-card-table .project-creator,.project-card-table .project-assignee{grid-column:auto}
.project-card-table .project-list-labels{display:none}
.folder-strip{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px}.folder-chip{flex:0 0 auto}
}
.project-card-table select.status-pill{height:26px!important;min-height:0!important;padding:0 24px 0 11px!important;border:0!important;border-radius:999px!important;line-height:26px;width:auto;box-shadow:none;font-size:12.5px!important;font-weight:600}
.project-card-table select.status-pill.st-none{box-shadow:inset 0 0 0 1px var(--line)}
.project-card-table .project-due input[type=date]{border:0!important;background:transparent!important;padding:0!important;min-height:0!important;height:22px;width:112px;box-shadow:none!important;border-radius:0!important}
.project-card-table .project-due input[type=date]::-webkit-calendar-picker-indicator{display:none}
.project-card-table .assignee-btn{border:0!important;background:transparent!important;padding:0!important;min-height:0!important;height:26px;box-shadow:none!important;border-radius:0!important}
.project-card-table .assignee-btn:hover span:not(.avatar){text-decoration:underline}
.project-card-table .project-action-toggle{border:0!important;background:transparent!important;box-shadow:none!important;width:32px;height:32px;min-height:0!important;padding:8px!important;color:var(--muted)}
.project-card-table .sort-clear{border:0!important;background:transparent!important;width:20px;height:20px;min-height:0!important;padding:0!important}
.project-card-table .col-sort{border:0!important;background:transparent!important;padding:0!important;min-height:0!important;box-shadow:none!important}
.project-card-table .project-list-title{display:block;padding:0}
.project-card-table .project-title-link{display:block!important;padding:0!important;margin:0}
.project-card-table .project-meta{margin-top:3px}
.folder-chip{border-radius:999px!important;min-height:0!important;height:28px!important;padding:0 11px 0 8px!important}
.folder-chip:not(.active){background:transparent!important;border-color:transparent!important;box-shadow:none!important}
.project-card-table .project-assignee .avatar{width:22px;height:22px}
.folder-heading:not(:has(#folderActions)){display:none}
.sort-chip{padding:0 4px 0 11px!important}
.project-card-table select.status-pill{background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%)!important;background-position:calc(100% - 13px) 11px,calc(100% - 9px) 11px!important;background-size:4px 4px!important;background-repeat:no-repeat!important}
.project-card-table .st-backlog{background-color:#fdf0c4!important;color:#7a5600!important}.project-card-table .st-ready{background-color:#d3f2dc!important;color:#146c35!important}.project-card-table .st-progress{background-color:#d6e8ff!important;color:#1a56b0!important}.project-card-table .st-done{background-color:#e6e8ec!important;color:#4b5563!important}.project-card-table .st-none{background-color:transparent!important;color:var(--muted)!important}
body:not(.light) .project-card-table .st-backlog{background-color:#4a3b0a!important;color:#f6d36b!important}body:not(.light) .project-card-table .st-ready{background-color:#12381f!important;color:#7fdca1!important}body:not(.light) .project-card-table .st-progress{background-color:#13335f!important;color:#8dbcff!important}body:not(.light) .project-card-table .st-done{background-color:#2a2d33!important;color:#b6bcc6!important}
.project-card-table span.status-pill{background-image:none!important}
.project-due input[value=""]{color:var(--muted)!important}
.project-due.overdue input{color:#d92d20!important}
/* Pie de pagina: mismo separador que la pantalla del Gantt (linea de 1px, color de linea del tema) */
#app:not(:has(.board)):not(:has(>.login-split))>footer.legend{border-top:1px solid var(--line);min-height:33px}

/* Limpieza del listado: filas de una linea, codigo suave junto al titulo, carpetas + acciones en una fila */
.folder-bar{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}
.folder-bar .folder-strip{margin:0;flex:1;min-width:0}
.folder-bar .home-action-menu>button{height:28px;min-height:0;padding:0 12px;font-size:12.5px;border-radius:8px}
.project-card-table .project-list-row{padding:5px 16px;min-height:40px;align-items:center}
.project-card-table .project-list-title{display:flex;align-items:center;gap:10px;min-width:0}
.project-card-table .project-title-link{display:block!important;flex:0 1 auto;width:auto!important;min-width:0;max-width:100%!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap!important;-webkit-line-clamp:unset!important;font-size:15px;font-weight:600;line-height:1.4}
.project-code{flex:0 0 auto;font-size:15px;font-weight:400;line-height:1.4;color:var(--pa);background:var(--pas);border-radius:4px;padding:0 7px}
.project-card-table .project-location{flex:0 1 auto;font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.project-card-table .ms-toggle{flex:0 0 auto;border:0!important;background:transparent!important;box-shadow:none!important;min-height:0!important;height:22px;padding:0 6px!important;border-radius:4px!important;font-size:12px;color:var(--muted)}
.project-card-table .ms-toggle:hover,.project-card-table .ms-toggle[aria-expanded=true]{color:var(--accent)}
.project-card-table .project-milestones{margin:0 16px 8px}
.project-card-table .assignee-btn,.project-card-table .assignee-btn span{font-weight:400!important}
.project-card-table .project-assignee,.project-card-table .project-creator{font-weight:400}
.project-card-table .project-labels-spacer{display:none}
@media(max-width:900px){.project-card-table .project-list-title{padding-right:40px;flex-wrap:wrap;row-gap:2px}.folder-bar{flex-wrap:wrap}}

/* Areas fijas: titulo | codigo | hitos | carpeta | vencimiento | estado | creador | asignado | acciones */
.project-card-table .project-list-labels,.project-card-table .project-list-row{grid-template-columns:minmax(160px,1fr) 72px 52px minmax(90px,150px) 130px 150px minmax(70px,110px) minmax(100px,140px) 40px;gap:12px}
.project-card-table .project-list-title{display:block;min-width:0}
.project-card-table .project-title-link{max-width:100%!important}
.project-card-table .project-code-cell,.project-card-table .project-ms-cell,.project-card-table .project-folder-cell{min-width:0;display:flex;align-items:center}
.project-card-table .project-code-cell:empty,.project-card-table .project-ms-cell:empty,.project-card-table .project-folder-cell:empty{display:flex}
.col-plain{color:var(--muted);font-size:12px;font-weight:600}
@media(max-width:900px){.project-card-table .project-list-row{grid-template-columns:auto auto minmax(0,1fr);gap:6px 12px}.project-card-table .project-list-title{grid-column:1/-1}.project-card-table .project-ms-cell:empty,.project-card-table .project-folder-cell:empty{display:none}.project-card-table .project-due,.project-card-table .project-status,.project-card-table .project-creator,.project-card-table .project-assignee{grid-column:auto}.project-card-table .project-folder-cell{grid-column:auto}}

.project-card-table .project-list-labels,.project-card-table .project-list-row{grid-template-columns:minmax(160px,360px) 72px 52px minmax(80px,130px) 128px minmax(130px,150px) minmax(60px,100px) minmax(90px,140px) minmax(36px,1fr)}
.project-card-table .project-list-actions{justify-self:end}
@media(max-width:900px){.project-card-table .project-list-row{grid-template-columns:auto auto minmax(0,1fr)}}
#app>.top .theme-button,#themeToggle.theme-button{width:32px!important;min-width:32px!important;max-width:32px!important;height:32px!important;min-height:32px!important;flex:0 0 32px;padding:0!important;border-radius:50%!important;aspect-ratio:1/1;display:inline-flex;align-items:center;justify-content:center}
.project-card-table .project-creator{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;overflow-wrap:normal}
@media(max-width:900px){.project-card-table .project-creator{overflow:visible}}

/* Columnas proporcionales, clave antes del titulo, avatares, selector de asignado estable */
.project-card-table .project-list-labels,.project-card-table .project-list-row{grid-template-columns:64px minmax(140px,3fr) 52px minmax(70px,.8fr) 112px minmax(116px,.9fr) minmax(100px,.9fr) minmax(112px,1fr) 36px;gap:12px}
.project-card-table .project-code-cell{margin-right:-8px}
.project-card-table .project-person,.project-card-table .assignee-btn{display:flex;align-items:center;gap:8px;min-width:0;font-size:13px;font-weight:400;color:var(--text)}
.project-card-table .project-person span:not(.avatar),.project-card-table .assignee-btn span:not(.avatar){overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.project-card-table .project-person .avatar,.project-card-table .assignee-btn .avatar{width:22px;height:22px;flex:0 0 22px;font-size:10px}
.project-card-table .project-creator{color:var(--text)}
.avatar.ghost{display:inline-block;border:1px dashed var(--muted);background:transparent;border-radius:50%;box-sizing:border-box}
.project-assignee{position:relative}
.project-card-table .assignee-btn{width:100%;height:26px;padding:0!important;border:0!important;background:transparent!important}
.assignee-pop{position:absolute;left:-8px;top:calc(100% + 2px);z-index:50;min-width:210px;max-height:260px;overflow:auto;padding:5px;border:1px solid var(--line);border-radius:10px;background:var(--surface,var(--panel));box-shadow:0 4px 14px #0002}
body.light .assignee-pop{background:#fff}
.assignee-pop[hidden]{display:none}
.assignee-pop button{display:flex;align-items:center;gap:8px;width:100%;min-height:34px;padding:0 10px;border:0;border-radius:6px;background:transparent;text-align:left;font-size:13px;color:var(--text)}
.assignee-pop button:hover,.assignee-pop button[aria-selected=true]{background:var(--panel)}
.assignee-pop button[aria-selected=true]{font-weight:600}
.assignee-pop .avatar{width:22px;height:22px;flex:0 0 22px;font-size:10px}
@media(max-width:1180px){
.project-card-table .project-list-labels,.project-card-table .project-list-row{grid-template-columns:56px minmax(110px,1.6fr) 44px 124px minmax(120px,1fr) minmax(90px,.9fr) minmax(100px,1fr) 36px;gap:10px}
.project-card-table .project-list-labels>span:nth-child(4){display:none}
.project-card-table .project-list-row{align-items:center}
.project-card-table .project-list-row>*{grid-row:1/span 2}
.project-card-table .project-list-title{grid-row:1}
.project-card-table .project-folder-cell{grid-column:2;grid-row:2;align-self:start;margin-top:-10px;font-size:12px}
.project-card-table .project-folder-cell:empty{display:none}
.project-card-table .project-list-row:has(.project-folder-cell:not(:empty)) .project-list-title{align-self:end}
}
@media(max-width:1180px){
.project-card-table .project-list-labels,.project-card-table .project-list-row{grid-template-columns:56px minmax(100px,1.6fr) 44px 112px minmax(110px,1fr) 36px 36px 36px}
.project-card-table .project-person span:not(.avatar),.project-card-table .assignee-btn span:not(.avatar){display:none}
.project-card-table .project-list-labels>span:nth-child(7) .col-sort,.project-card-table .project-list-labels>span:nth-child(8) .col-sort{font-size:0}
.project-card-table .project-list-labels>span:nth-child(7) .col-sort i,.project-card-table .project-list-labels>span:nth-child(8) .col-sort i{font-size:12px}
.project-card-table .project-list-labels>span:nth-child(7) .col-sort::before,.project-card-table .project-list-labels>span:nth-child(8) .col-sort::before{content:'';display:inline-block;width:15px;height:15px;margin-right:3px;vertical-align:-3px;background:currentColor;-webkit-mask:var(--hic) center/contain no-repeat;mask:var(--hic) center/contain no-repeat}
.project-card-table .project-list-labels>span:nth-child(7) .col-sort{--hic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c0-4.4 3.6-7 8-7s8 2.6 8 7z'/%3E%3C/svg%3E")}
.project-card-table .project-list-labels>span:nth-child(8) .col-sort{--hic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='4'/%3E%3Cpath d='M2 21c0-4 3-6.5 7-6.5'/%3E%3Cpath d='M14 17l2.5 2.5L21 14'/%3E%3C/svg%3E")}
}
@media(max-width:900px){
.project-card-table .project-list-row{grid-template-columns:50px 98px minmax(96px,1fr) 24px 24px;gap:2px 6px;align-items:center}
.project-card-table .project-list-row>*{grid-row:auto}
.project-card-table .project-code-cell{margin-right:0;grid-column:1;grid-row:1}
.project-card-table .project-list-title{grid-column:2/6;grid-row:1;padding-right:34px;align-self:center}
.project-card-table .project-ms-cell{grid-column:5;grid-row:1;justify-self:end;margin-right:30px}
.project-card-table .project-due{grid-column:2;grid-row:2}
.project-card-table .project-status{grid-column:3;grid-row:2}
.project-card-table .project-creator{grid-column:4;grid-row:2}
.project-card-table .project-assignee{grid-column:5;grid-row:2}
.project-card-table .project-folder-cell{grid-column:2/-1;grid-row:3;margin:0;min-width:0;font-size:12px}
.project-card-table .project-due{font-size:12px}
.project-card-table .project-person span:not(.avatar),.project-card-table .assignee-btn span:not(.avatar){display:none}
.project-card-table .assignee-btn{width:auto}
.project-card-table .project-list-actions{right:8px;top:8px}
}

.bar-label.out{fill:var(--text)}
#labelsBtn[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}#labelsBtn[aria-pressed=false] svg path:last-child{opacity:.45}@media(max-width:700px){#labelsBtn{display:none}}
html.tasks-collapsed{--tasks-width:12px!important}.tasks-collapsed .task-list{overflow:visible}.tasks-collapsed .task-list>:not(.resize-handle){display:none}
button.tasks-tab{position:absolute;z-index:26;top:50%;left:max(0px,calc(var(--tasks-width) - 18px));transform:translateY(-50%);width:36px;min-width:36px;max-width:36px;height:36px;min-height:36px;padding:0;border-radius:50%;background:var(--panel)!important;color:var(--accent);border:1px solid var(--line);box-shadow:0 1px 5px #24374618;font:24px/1 Arial,sans-serif}@media(max-width:900px){.board:has(#inspector:not([hidden])) .tasks-tab{display:none}}@media print{.tasks-tab{display:none!important}}
.project-card-table .st-cat-todo{background-color:#fdf0c4!important;color:#7a5600!important}.project-card-table .st-cat-doing{background-color:#d6e8ff!important;color:#1a56b0!important}.project-card-table .st-cat-done{background-color:#e6e8ec!important;color:#4b5563!important}
body:not(.light) .project-card-table .st-cat-todo{background-color:#4a3b0a!important;color:#f6d36b!important}body:not(.light) .project-card-table .st-cat-doing{background-color:#13335f!important;color:#8dbcff!important}body:not(.light) .project-card-table .st-cat-done{background-color:#2a2d33!important;color:#b6bcc6!important}
.state-list{list-style:none;margin:18px 0 12px;padding:0;display:flex;flex-direction:column;gap:8px}.state-row{display:grid;grid-template-columns:minmax(0,1fr) 140px 68px auto auto auto;gap:8px;align-items:center}.state-row input.state-color{padding:2px;height:36px;width:44px}.state-row button{min-width:36px}.state-actions{display:flex;flex-wrap:wrap;gap:10px}@media(max-width:640px){.state-row{display:flex;flex-wrap:wrap}.state-row .state-name{flex:1 1 100%}.state-row .state-cat{flex:1 1 auto}}

.acct-main .profile-layout>.settings-tabs{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);margin:0;padding:0;border:0;white-space:nowrap}
.settings-layout>.settings-tabs:not(.profile-tabs) .folder-nav{display:flex;align-items:center;min-height:38px;padding:8px 12px;border:0;border-radius:8px;background:transparent;color:var(--text);font-weight:500;text-align:left}
.settings-layout>.settings-tabs:not(.profile-tabs) .folder-nav.active,.settings-layout>.settings-tabs:not(.profile-tabs) .folder-nav[aria-selected="true"]{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);font-weight:700;box-shadow:inset 3px 0 0 var(--accent)}
@media(max-width:900px){.settings-page .settings-layout>.settings-tabs{flex-wrap:wrap;overflow:visible;gap:6px;padding:0 0 12px;border-bottom:1px solid var(--line)}.settings-page .settings-layout>.settings-tabs .folder-nav{flex:1 1 calc(50% - 6px);min-height:44px;justify-content:center;text-align:center;border-radius:10px;border:1px solid var(--line);padding:0 10px;white-space:normal;line-height:1.15}.settings-page .settings-layout>.settings-tabs .folder-nav.active,.settings-page .settings-layout>.settings-tabs .folder-nav[aria-selected="true"]{background:var(--accent);color:#000;border-color:var(--accent);box-shadow:none}}

.acct-side{flex-basis:264px;width:264px}
.acct-grp-h{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:38px;padding:8px 12px;border:0;border-radius:8px;background:transparent;color:var(--text);font-weight:600;text-align:left}
.acct-grp-h:hover{background:color-mix(in srgb,var(--accent) 10%,transparent);border:0}
.acct-chev{color:var(--muted);font-size:18px}
.acct-grp.open>.acct-grp-h .acct-chev{transform:rotate(90deg)}
.acct-sub{display:none;flex-direction:column;gap:2px;margin:2px 0 6px 10px;padding-left:8px;border-left:1px solid var(--line)}
.acct-grp.open>.acct-sub{display:flex}
.acct-shell.collapsed .acct-grp-h{display:none}.acct-shell.collapsed .acct-sub{display:flex;margin:0;padding:0;border:0}
.acct-main #back,.acct-main #adminBack{display:none}
@media(max-width:900px){.acct-side{flex:none;width:auto;flex-direction:column;align-items:stretch;overflow:visible;padding:8px 10px}.acct-side nav{flex-direction:column;gap:2px}.acct-fold{display:none}.acct-grp-h{min-height:44px}.acct-sub{margin-left:8px}.acct-item{white-space:normal}.acct-shell.collapsed .acct-side{width:auto}.acct-shell.collapsed .acct-grp-h{display:flex}.acct-shell.collapsed .acct-sub{display:none;margin:2px 0 6px 8px}.acct-shell.collapsed .acct-grp.open>.acct-sub{display:flex}}
.acct-main .settings-layout>.settings-tabs{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);margin:0;padding:0;border:0;white-space:nowrap}.acct-main .settings-layout{display:block}.acct-main .settings-page{max-width:1000px;margin:0;padding:0}.acct-main .settings-body{max-width:760px}

.state-row{position:relative}.state-row .swatches{margin:0;max-width:none}.state-row .swatch-name{display:none}.state-row .swatch-menu{position:absolute;z-index:20;top:100%;right:0;width:268px;background:var(--bg,#fff);box-shadow:0 6px 18px rgba(0,0,0,.18)}
.state-row .swatch-trigger{padding:4px 8px 4px 6px;gap:6px;min-height:36px}.state-row .swatch-chev{margin:0 0 3px 2px}.state-row .swatches .swatch-trigger[aria-expanded=true] .swatch-chev{margin:3px 0 0 2px}

.foot-main{display:flex;align-items:center;min-width:0}.legend a.foot-logo{display:inline-flex;align-items:center;margin:-6px 7px -6px 0;flex:none}.foot-logo img{height:11px;width:auto;display:block;transform:translateY(-1px)}.foot-logo .logo-dark{display:none}body:not(.light) .foot-logo .logo-light{display:none}body:not(.light) .foot-logo .logo-dark{display:block}#app:has(>.login-split)>footer.legend .logo-light{display:none}#app:has(>.login-split)>footer.legend .logo-dark{display:block}footer.legend:has(.foot-main) .save-area{margin-left:auto}
@media(max-width:600px){.foot-main{flex:1 1 100%}.legend a.foot-logo{margin-right:5px}}
@media(max-width:600px){footer.legend:has(.foot-main) .save-area:not(:has(.history-link)):has(#save:empty){display:none}#app:has(>.login-split)>footer.legend:has(.foot-main){padding-top:6px;padding-bottom:6px}}
@media(max-width:360px){footer.legend:has(.foot-main){padding-left:12px;padding-right:12px}.legend a.foot-logo{margin-right:4px}}
@media(max-width:600px){footer.legend:has(.foot-main){row-gap:8px}}

.legend a.foot-logo{text-decoration:none;color:inherit}.legend a.foot-logo:focus-visible{outline:2px solid currentColor;outline-offset:2px;border-radius:2px}

.sf-wrap{position:relative;display:inline-flex}.sf-count{font-size:.85em;color:var(--muted);white-space:nowrap;align-self:center}.sf-dropdown{min-width:200px;padding:6px}.sf-item{display:flex;align-items:center;gap:8px;padding:6px 8px;font-size:.9em;border-radius:6px;cursor:pointer}.sf-item:hover{background:rgba(127,127,127,.12)}.sf-item input[type=checkbox]{padding:0;border:0;min-height:0;height:auto;width:auto;margin:0;flex:none}.sf-dot{width:10px;height:10px;border-radius:50%;flex:none;display:inline-block}.bcm-label{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-size:.85em;color:var(--muted);white-space:nowrap}
.task-flow{margin-top:6px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.task-flow .tf-label{font-size:11px;color:var(--muted,#9aa4ad);margin-right:2px}
.task-flow .tf-chip{display:inline-flex;align-items:center;gap:5px;font-size:11px;padding:2px 8px;border:1px solid var(--border,#3a4148);border-radius:999px;color:var(--fg,#e6e9ec)}
.task-flow .tf-chip.tf-off{opacity:.55}
.task-flow .tf-dot{width:8px;height:8px;border-radius:50%;display:inline-block}
.task-flow .tf-empty{font-size:11px;color:var(--muted,#9aa4ad)}

/* ==========================================================================
   Comunmedia Projects 0.3.0 — GitHub Primer tokens + chrome.
   Light (Primer default) is the default theme; dark uses Primer dark.
   Wins the cascade by source order; refactor 5.x will absorb the layers.
   ========================================================================== */
:root{color-scheme:dark;--bg:#0d1117;--panel:#161b22;--line:#30363d;--muted:#8b949e;--text:#e6edf3;--accent:#2f81f7;--weekend:#161b22;--gridline:#21262d;--header:#161b22;--hover:#21262d;--row:36px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans",Helvetica,Arial,sans-serif}
.light{color-scheme:light;--bg:#f6f8fa;--panel:#ffffff;--line:#d0d7de;--muted:#57606a;--text:#1f2328;--accent:#0969da;--weekend:#eaeef2;--gridline:#d8dee4;--header:#f6f8fa;--hover:#f3f4f6}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans",Helvetica,Arial,sans-serif;background:var(--bg);color:var(--text)}
a{color:var(--accent)}
button{background:var(--panel);border:1px solid var(--line);border-radius:6px;color:var(--text);padding:5px 16px;min-height:32px;font-weight:500}
button:hover{background:var(--hover);border-color:var(--muted)}
.primary{background:var(--accent)!important;border-color:var(--accent)!important;color:#fff!important;font-weight:600}
.primary:hover{background:#0860ca!important;border-color:#0860ca!important}
.light .primary{background:var(--accent)!important;color:#fff!important}
.light .primary:hover{background:#0860ca!important}
.danger{color:#cf222e}
.quiet{background:transparent}
input,select,textarea{background:var(--panel);border:1px solid var(--line);border-radius:6px;color:var(--text);padding:5px 12px;min-height:32px}
input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid var(--accent);outline-offset:0;border-color:var(--accent)}
label{color:var(--muted)}
.brand{color:var(--text);letter-spacing:0}
.brand .small{color:var(--muted)}
.top{background:var(--panel);border-bottom:1px solid var(--line);min-height:56px;height:auto;padding:8px 24px}
.card,.panel,.login{background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 1px 3px rgba(31,35,40,.04)}
.card:hover{background:var(--hover);border-color:var(--muted)}
.stat{border:1px solid var(--line);border-radius:6px;color:var(--muted)}
.empty{border:1px dashed var(--line);border-radius:6px;color:var(--muted)}
.dropdown,.cmdk{background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 8px 24px rgba(31,35,40,.12);color:var(--text)}
.dropdown button{color:var(--text)}
.dropdown button:hover{background:var(--hover)}
.task-list{background:var(--panel);border-right:1px solid var(--line)}
.timehead,.listhead{background:var(--header);border-bottom:1px solid var(--line);color:var(--muted)}
.month{color:var(--muted);border-color:var(--gridline)}
.day{color:var(--muted);border-color:var(--gridline)}
.weekend{background:var(--weekend)}
.task-row{border-color:var(--gridline);color:var(--text)}
.task-row:hover{background:var(--hover)}
.task-row.selected{background:#ddf4ff}
.task-row .id{color:var(--muted)}
.task-row .pct{color:var(--muted)}
.task-row button{color:var(--muted)}
.inspector{background:var(--panel);border-left:1px solid var(--line)}
.editor-head{background:var(--panel);border-bottom:1px solid var(--line)}
.toolbar{background:var(--panel);border-bottom:1px solid var(--line)}
.item{border-color:var(--gridline)}
.legend{border-top:1px solid var(--line);color:var(--muted)}
.save{color:var(--muted)}
.save.pending{color:var(--accent)}
.notice{background:#ddf4ff;border:1px solid #54aeff;color:#0a3069;border-radius:6px}
.badge{color:var(--accent);border:1px solid var(--line);border-radius:6px}
.error{color:#cf222e}
.eyebrow{color:var(--accent)}
#toast{background:var(--text);color:var(--bg);border-radius:6px;padding:10px 16px}
.foot-logo img{filter:none}

/* 0.3.0 — login on Primer light canvas (keeps the credited photo panel). */
.login.login-split{background:var(--bg);color:var(--text)}
.login-split .brand{color:var(--text)}
.login-split .brand .muted{color:var(--muted)}
.login-split h1{color:var(--text)}
.login-split label{color:var(--muted)}
.login-split input,.light .login-split input{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:6px}
.login-split input:focus{border-color:var(--accent)}
.login-split .primary,.light .login-split .primary,.login-split .sso-login-button{border-radius:6px;background:var(--accent);border:1px solid var(--accent);color:#fff}
.login-split .primary:hover,.login-split .sso-login-button:hover{background:#0860ca;border-color:#0860ca}
.login-split .error{color:#cf222e}
.login-divider{color:var(--muted)}
.login-divider:before,.login-divider:after{background:var(--line)}
#app:has(>.login-split)>footer.legend{background:var(--panel);color:var(--muted);border-top:1px solid var(--line)}#app footer.legend{line-height:1.2}#app:has(.board)>footer.legend{padding-top:8px;padding-bottom:8px}@media(max-width:900px){#app footer.legend{padding-top:8px;padding-bottom:8px}}
#app:has(>.login-split)>footer.legend .logo-light{display:block}
#app:has(>.login-split)>footer.legend .logo-dark{display:none}
