:root{--indigo:var(--marque,#3b2099);--indigo-fort:var(--marque-fort,#2d1875);--hausse:#028282;--baisse:#96174b;--or:#cc9017;--papier:#f4f3f0;--carte:#fff;--creux:#edecea;--encre:#17131f;--encre-2:#45404f;--encre-3:#837e8c;--estompe:#aca8b3;--filet:#17131f17;--filet-doux:#17131f0d;--anneau:0 0 0 1px #17131f0d, 0 1px 2px -1px #17131f0d, 0 2px 4px #17131f08;--ombre-haute:0 0 0 1px #17131f0d, 0 12px 40px #17131f2e;--sur-primaire:#fff;--voile:#17131f38;--c-slate:#837e8c;--c-red:#96174b;--c-amber:#cc9017;--c-green:#0f7a45;--c-teal:#028282;--c-blue:#1f6fd0;--c-violet:#3b2099;--c-pink:#a81f7a;--surface:var(--carte);--surface-2:var(--creux);--ink:var(--encre);--muted:var(--encre-3);--line:var(--filet);--danger:var(--baisse);--brand:var(--indigo);--teinte:12%;--sans:"Schibsted Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono:"IBM Plex Mono", ui-monospace, monospace;--side:218px;--row:34px;--ease-out:cubic-bezier(.2, .7, .2, 1);--ease-io:cubic-bezier(.45, 0, .2, 1);--t-fast:.15s;--t-base:.2s;--t-exit:.16s;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--indigo:var(--marque-sombre,#a78bfa);--indigo-fort:var(--marque-sombre-fort,#8b6df0);--hausse:#2dd4bf;--baisse:#f472b6;--or:#fbbf24;--papier:#131019;--carte:#1a1622;--creux:#100d16;--encre:#f2f0f6;--encre-2:#c2bdcc;--encre-3:#8b8598;--estompe:#5f5a6b;--filet:#f2f0f617;--filet-doux:#f2f0f60d;--anneau:0 0 0 1px #f2f0f612;--ombre-haute:0 0 0 1px #f2f0f614, 0 16px 48px #0000008c;--sur-primaire:var(--sur-marque-sombre,#1b1033);--voile:#00000073;--c-slate:#8b8598;--c-red:#f78bb2;--c-amber:#f0c771;--c-green:#6fd49e;--c-teal:#5fdede;--c-blue:#8fbcf7;--c-violet:#b4a0ff;--c-pink:#e889c8;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--papier);color:var(--encre);font:400 12.5px/1.45 var(--sans);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,h4{margin:0;font-weight:650}h1{font-size:17px;line-height:1.25}h2{font-size:13.5px}h3{font-size:12.5px}p{margin:0}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--indigo);outline-offset:2px;border-radius:6px}::selection{background:color-mix(in srgb, var(--indigo) 20%, transparent)}.muted{color:var(--encre-3)}.small{font-size:11.5px}.num{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:.94em}.sub{color:var(--encre-3);font-weight:400}.nowrap{white-space:nowrap}.grow{flex:1;min-width:0}.row{align-items:center;gap:8px;display:flex}.stack{flex-direction:column;gap:12px;display:flex}.ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sr{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.btn{background:var(--carte);height:30px;color:var(--encre-2);box-shadow:var(--anneau);cursor:pointer;white-space:nowrap;transition:background var(--t-fast) var(--ease-out), color var(--t-fast) var(--ease-out), transform var(--t-fast) var(--ease-out), opacity var(--t-fast);border:0;border-radius:8px;align-items:center;gap:7px;padding:0 12px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{background:var(--creux);color:var(--encre)}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.55;cursor:default;transform:none}.btn.primary{background:var(--indigo);color:var(--sur-primaire);box-shadow:none}.btn.primary:hover{background:var(--indigo-fort)}.btn.ghost{box-shadow:none;background:0 0}.btn.ghost:hover{background:var(--creux)}.btn.danger{color:var(--baisse)}.btn.danger:hover{background:color-mix(in srgb, var(--baisse) var(--teinte), transparent)}.btn.sm{height:26px;padding:0 9px;font-size:11.5px}.icon-btn{width:28px;height:28px;color:var(--encre-3);cursor:pointer;transition:background var(--t-fast) var(--ease-out), color var(--t-fast), transform var(--t-fast) var(--ease-out);background:0 0;border:0;border-radius:7px;place-items:center;text-decoration:none;display:inline-grid}.icon-btn:hover{background:var(--creux);color:var(--encre)}.icon-btn:active{transform:scale(.97)}.input,.select,.textarea{background:var(--creux);width:100%;height:30px;color:var(--encre);box-shadow:inset 0 0 0 1px var(--filet-doux);transition:box-shadow var(--t-fast) var(--ease-out), background var(--t-fast);border:0;border-radius:8px;outline:none;padding:0 10px;font-size:12.5px}.select{cursor:pointer;padding-right:6px}.textarea{resize:vertical;height:auto;min-height:84px;padding:8px 10px;line-height:1.5}.input:focus,.select:focus,.textarea:focus{background:var(--carte);box-shadow:inset 0 0 0 1px var(--indigo), 0 0 0 3px color-mix(in srgb, var(--indigo) var(--teinte), transparent)}.input.bare{box-shadow:none;background:0 0;padding:0 6px}.input.bare:hover{background:var(--creux)}.input.bare:focus{background:var(--carte);box-shadow:inset 0 0 0 1px var(--indigo)}.field{gap:4px;display:grid}.field>span{color:var(--encre-3);font-size:11.5px;font-weight:500}input[type=checkbox]{accent-color:var(--indigo)}.seg,.tabs{background:var(--creux);border-radius:9px;gap:2px;padding:2px;display:inline-flex}.seg button,.tabs a{white-space:nowrap;cursor:pointer;height:26px;color:var(--encre-3);transition:background var(--t-fast) var(--ease-out), color var(--t-fast), box-shadow var(--t-fast), transform var(--t-fast) var(--ease-out);background:0 0;border:0;border-radius:7px;align-items:center;padding:0 11px;font-size:12px;font-weight:500;text-decoration:none;display:inline-flex}.seg button:hover,.tabs a:hover{color:var(--encre)}.seg button:active,.tabs a:active{transform:scale(.97)}.seg button[aria-pressed=true],.tabs a[aria-current=page]{background:var(--carte);color:var(--encre);box-shadow:var(--anneau);font-weight:600}[data-theme=dark] .seg button[aria-pressed=true],[data-theme=dark] .tabs a[aria-current=page]{background:#241f2e}.switch{height:26px;color:var(--encre-2);cursor:pointer;white-space:nowrap;transition:color var(--t-fast), background var(--t-fast);background:0 0;border:0;border-radius:7px;align-items:center;gap:7px;padding:0 6px;font-size:12px;font-weight:500;display:inline-flex}.switch:hover{color:var(--encre);background:var(--creux)}.switch .trk{background:var(--estompe);width:26px;height:15px;transition:background var(--t-base) var(--ease-out);border-radius:999px;flex:none;position:relative}.switch .trk:after{content:"";width:11px;height:11px;transition:transform var(--t-base) var(--ease-io), width var(--t-fast) var(--ease-out);background:#fff;border-radius:999px;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #00000040}.switch[aria-checked=true] .trk{background:var(--indigo)}.switch[aria-checked=true] .trk:after{transform:translate(11px)}.switch:active .trk:after{width:12.5px}.switch[aria-checked=true]:active .trk:after{transform:translate(9.5px)}.switch .muted{font-weight:400}.pill{--pc:var(--c-slate);white-space:nowrap;color:var(--encre-2);align-items:center;gap:6px;font-size:12px;font-weight:500;display:inline-flex}.pill .dot{background:var(--pc);border-radius:50%;flex:none;width:7px;height:7px}.list-head .pill,.col-head .pill{color:var(--encre);font-size:12.5px;font-weight:650}.chip{background:var(--creux);height:18px;color:var(--encre-2);white-space:nowrap;border-radius:5px;align-items:center;padding:0 6px;font-size:11px;display:inline-flex}.avatar{--ac:var(--c-slate);background:color-mix(in srgb, var(--ac) var(--teinte), var(--carte));width:22px;height:22px;color:var(--ac);border-radius:50%;flex:none;place-items:center;font-size:9.5px;font-weight:700;display:inline-grid}.avatar.lg{width:30px;height:30px;font-size:11.5px}.avatar.team{border-radius:6px}.member-chip{background:var(--creux);border-radius:15px;align-items:center;gap:6px;height:30px;padding:0 4px;font-size:12.5px;display:inline-flex}.member-chip:not(:has(.icon-btn)){padding-right:10px}.avatar.none{box-shadow:inset 0 0 0 1.5px var(--filet);color:#0000;background:0 0}.card{background:var(--carte);box-shadow:var(--anneau);border-radius:12px}.empty{background:var(--carte);box-shadow:var(--anneau);color:var(--encre-2);border-radius:12px;justify-items:start;gap:10px;max-width:620px;padding:24px;display:grid}.error-text{color:var(--baisse);font-size:12.5px}.kbd{font-family:var(--mono);background:var(--creux);color:var(--encre-3);border-radius:4px;padding:1px 5px;font-size:10.5px}.app{grid-template-columns:var(--side) 1fr;height:100%;display:grid}.side{background:var(--papier);border-right:1px solid var(--filet);z-index:2;flex-direction:column;min-height:0;padding:14px 12px 10px;display:flex;position:relative}.brand{align-items:center;gap:10px;margin-bottom:18px;padding:0 10px;display:flex}.brand-link{color:var(--encre);align-items:center;gap:9px;min-width:0;display:flex}.brand-link a{text-decoration:none}.brand-back{color:var(--estompe);transition:color var(--t-fast);font-size:10.5px;text-decoration:none;display:block}a.brand-back:hover{color:var(--indigo)}.logo-squares{flex:none;grid-template-columns:repeat(2,1fr);gap:3px;display:grid}.logo-squares i{border-radius:2.5px;width:10px;height:10px}.logo-squares i:first-child{background:var(--indigo)}.logo-squares i:nth-child(2){background:var(--hausse)}.logo-squares i:nth-child(3){background:var(--or)}.logo-squares i:nth-child(4){background:var(--baisse)}.brand-name{color:var(--encre);font-size:13px;font-weight:700;line-height:1.2;display:block}.brand-tag{color:var(--encre-3);font-size:11.5px}.brand-mark{background:var(--indigo);width:28px;height:28px;color:var(--sur-primaire);border-radius:8px;flex:none;place-items:center;font-size:11.5px;font-weight:700;display:grid}.brand-logo{object-fit:contain;border-radius:6px;max-width:28px;max-height:28px}.nav{align-content:start;gap:1px;display:grid}.nav a,.nav button.navlink{height:29px;color:var(--encre-3);cursor:pointer;text-align:left;width:100%;transition:background var(--t-fast) var(--ease-out), color var(--t-fast) var(--ease-out), transform var(--t-fast) var(--ease-out);background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;margin-bottom:2px;padding:0 10px;font-size:12.5px;font-weight:500;text-decoration:none;display:flex}.nav a:hover,.nav button.navlink:hover{background:color-mix(in srgb, var(--c,var(--encre-2)) var(--teinte), transparent);color:var(--c,var(--encre-2))}.nav a:active{transform:scale(.97)}.nav a[aria-current=page]{background:color-mix(in srgb, var(--c,var(--encre-2)) var(--teinte), transparent);color:var(--c,var(--encre));font-weight:700}.nav svg{color:currentColor;flex:none}.side-projects a[aria-current=page] .ellipsis{color:var(--encre)}.nav .count{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--encre-3);margin-left:auto;font-size:11px}.nav .count.late{color:var(--baisse)}.side-label{min-height:22px;color:var(--encre-3);justify-content:space-between;align-items:center;padding:10px 10px 4px;font-size:11px;font-weight:600;display:flex}.brand+.side-label{padding-top:0}.side-projects{flex:1;min-height:0;margin:0 -4px;padding:0 4px 4px;overflow:auto}.side-projects details summary{list-style:none}.side-projects details summary::-webkit-details-marker{display:none}.pdot{border-radius:2.5px;flex:none;width:8px;height:8px}.side-foot{border-top:1px solid var(--filet-doux);align-items:center;gap:8px;margin-top:8px;padding:10px 6px 2px;display:flex}.side-back{height:28px;color:var(--encre-3);transition:background var(--t-fast), color var(--t-fast);border-radius:8px;align-items:center;gap:9px;margin:6px 0 0;padding:0 8px;font-size:12px;text-decoration:none;display:flex}.side-back:hover{background:var(--creux);color:var(--encre)}.theme-toggle{background:var(--carte);width:30px;height:30px;color:var(--encre-2);box-shadow:var(--anneau);cursor:pointer;transition:background var(--t-fast) var(--ease-out), transform var(--t-fast) var(--ease-out);border:0;border-radius:9px;flex:none;place-items:center;margin-left:auto;display:grid;position:relative}.theme-toggle:hover{background:var(--creux)}.theme-toggle:active{transform:scale(.97)}.theme-toggle svg{width:15px;height:15px;transition:opacity var(--t-base) var(--ease-out), transform var(--t-base) var(--ease-out), filter var(--t-base) var(--ease-out);position:absolute}.theme-toggle .icon-sun{opacity:0;filter:blur(2px);transform:rotate(-40deg)scale(.6)}[data-theme=dark] .theme-toggle .icon-sun{opacity:1;filter:none;transform:none}[data-theme=dark] .theme-toggle .icon-moon{opacity:0;filter:blur(2px);transform:rotate(40deg)scale(.6)}::view-transition-old(root){animation-duration:.22s;animation-timing-function:var(--ease-io)}::view-transition-new(root){animation-duration:.22s;animation-timing-function:var(--ease-io)}.main{flex-direction:column;min-width:0;min-height:0;display:flex}.topbar{background:var(--papier);z-index:1;flex-wrap:wrap;align-items:center;gap:14px;min-height:56px;padding:10px 22px;display:flex;position:relative}.topbar h1{font-size:17px;font-weight:600}.topbar .sub-line{color:var(--encre-3);font-size:12px}.page{flex:1;min-height:0;padding:4px 22px 40px;overflow:auto}.page.flush{flex-direction:column;padding:0;display:flex;overflow:hidden}.mobile-bar{display:none}@media (width<=860px){.app{grid-template-columns:1fr}.trow .meta .pill,.trow .chip,.trow .meta .prio,.hide-narrow{display:none}.trow.sub{padding-left:26px}.gantt-tools{padding:8px 16px}.side{z-index:40;width:min(84vw,300px);transition:transform var(--t-base) var(--ease-io);box-shadow:var(--ombre-haute);position:fixed;inset:0 auto 0 0;transform:translate(-102%)}.side.open{transform:none}.mobile-bar{background:var(--papier);height:50px;box-shadow:0 1px 0 var(--filet-doux);align-items:center;gap:10px;padding:0 16px;display:flex}.topbar{padding:10px 16px}.page{padding:14px 16px 36px}}.list{background:var(--carte);box-shadow:var(--anneau);border-radius:12px;padding:0 0 4px;overflow:hidden}.list+.list{margin-top:12px}.list-head{border-bottom:1px solid var(--filet-doux);align-items:center;gap:6px;height:40px;padding:0 16px;display:flex}.list-head h3{align-items:center;gap:7px;font-size:12.5px;font-weight:600;display:flex}.list-head>h3:before,.card-head h2:before{content:"";background:var(--c,var(--indigo));border-radius:2px;flex:none;width:7px;height:7px}.list.today{box-shadow:0 0 0 2px var(--indigo), 0 6px 18px -8px color-mix(in srgb, var(--indigo) 45%, transparent)}.list.today .list-head{background:color-mix(in srgb, var(--indigo) var(--teinte), transparent);border-bottom-color:color-mix(in srgb, var(--indigo) 25%, transparent)}.list-head .count-sub{color:var(--encre-3);font-weight:400}.list-head .count-sub:before{content:"· "}.list-head.late h3{color:var(--baisse)}.trow{min-height:var(--row);cursor:pointer;border-bottom:1px solid var(--filet-doux);transition:background var(--t-fast) var(--ease-out);grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:8px;padding:2px 16px;display:grid}.trow:hover{background:var(--creux)}.trow.sub{padding-left:42px}.trow.selected{background:color-mix(in srgb, var(--indigo) var(--teinte), transparent)}.trow .meta{color:var(--encre-3);align-items:center;gap:12px;font-size:12px;display:flex}.trow .meta .count-ico{font-family:var(--mono);font-variant-numeric:tabular-nums;align-items:center;gap:3px;font-size:11px;display:inline-flex}.trow .title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.trow.done .title{color:var(--encre-3);text-decoration:line-through;-webkit-text-decoration-color:var(--estompe);text-decoration-color:var(--estompe)}.due{text-align:right;min-width:48px}.due.late{color:var(--baisse);font-weight:600}.addrow{align-items:center;gap:8px;padding:4px 16px 2px;display:flex}.addrow .input{height:28px}.ring{--rc:var(--c-slate);border:1.75px solid var(--rc);cursor:pointer;width:16px;height:16px;transition:transform var(--t-fast) var(--ease-out), background var(--t-base) var(--ease-out);background:0 0;border-radius:50%;flex:none;padding:0;position:relative}.ring:after{content:"";background:var(--rc);transform:scale(var(--fill,0));transition:transform var(--t-base) var(--ease-out);border-radius:50%;position:absolute;inset:2px}.ring:hover:after{transform:scale(calc(var(--fill,0) + .25))}.ring:active{transform:scale(.9)}.ring.done{background:var(--rc)}.ring.done:after{content:"✓";color:#fff;background:0 0;place-items:center;font-size:9.5px;font-weight:800;display:grid;inset:0;transform:none}.ring.square{border-radius:4px;width:14px;height:14px}.ring.square:after{border-radius:2px}.prio{white-space:nowrap;align-items:center;font-size:11.5px;font-weight:600;display:inline-flex}.prio[data-p="1"]{color:var(--baisse)}.prio[data-p="2"]{color:var(--or)}.board{grid-auto-columns:minmax(260px,1fr);grid-auto-flow:column;align-items:start;gap:12px;min-height:100%;display:grid}.col{background:var(--creux);min-height:140px;transition:background var(--t-fast) var(--ease-out), box-shadow var(--t-fast);border-radius:12px;padding:6px}.col.over{background:color-mix(in srgb, var(--indigo) var(--teinte), var(--creux));box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--indigo) 40%, transparent)}.col-head{align-items:center;gap:6px;padding:6px 8px 8px;display:flex}.col-head .count-sub{color:var(--encre-3);font-weight:400}.col-head .count-sub:before{content:"· "}.tcard{background:var(--carte);box-shadow:var(--anneau);cursor:grab;transition:box-shadow var(--t-fast) var(--ease-out), opacity var(--t-fast), transform var(--t-fast) var(--ease-out);border-radius:9px;gap:6px;margin-bottom:6px;padding:10px 11px;display:grid}.tcard:hover{box-shadow:var(--anneau), 0 4px 12px #17131f0f}.tcard.dragging{opacity:.45}.tcard .tcard-sec{color:var(--encre-3);font-size:11.5px}.tcard .foot{color:var(--encre-3);align-items:center;gap:10px;font-size:11.5px;display:flex}.tcard .foot .num{font-size:11px}.drawer-root{display:contents}.drawer-scrim{background:var(--voile);z-index:50;animation:fade-in var(--t-base) var(--ease-out) both;position:fixed;inset:0}.drawer{z-index:51;background:var(--carte);width:min(620px,100vw);box-shadow:var(--ombre-haute);animation:drawer-in .24s var(--ease-out) both;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0}.drawer-ghost{pointer-events:none}.drawer-ghost .drawer-scrim{animation:fade-out var(--t-exit) var(--ease-out) both}.drawer-ghost .drawer{animation:drawer-out var(--t-exit) var(--ease-io) both}.drawer-head{box-shadow:0 1px 0 var(--filet-doux);align-items:center;gap:8px;padding:10px 14px;display:flex}.drawer-head .crumb{color:var(--encre-3);font-size:12px}.drawer-body{flex:1;padding:14px 20px 32px;overflow:auto}.drawer-title{resize:none;width:100%;transition:background var(--t-fast);background:0 0;border:0;border-radius:8px;margin:0 -6px;padding:4px 6px;font-size:18px;font-weight:650;line-height:1.3}.drawer-title:hover{background:var(--creux)}.drawer-title:focus{background:var(--creux);outline:none}.props{grid-template-columns:112px 1fr;align-items:center;gap:2px 12px;margin:12px 0 16px;display:grid}.props>label{color:var(--encre-3);font-size:12px}.props .select,.props .input{height:28px;box-shadow:none;background:0 0;padding:0 6px}.props .select:hover,.props .input:hover{background:var(--creux)}.props .select:focus,.props .input:focus{background:var(--carte);box-shadow:inset 0 0 0 1px var(--indigo)}.section-title{align-items:center;gap:6px;margin:20px 0 6px;font-size:12.5px;font-weight:650;display:flex}.section-title .muted.small:before{content:"· "}.subtask{min-height:30px;transition:background var(--t-fast);border-radius:8px;align-items:center;gap:8px;padding:0 4px;display:flex}.subtask:hover{background:var(--creux)}.files{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;display:grid}.file{background:var(--carte);box-shadow:var(--anneau);border-radius:9px;gap:4px;padding:6px;font-size:11.5px;text-decoration:none;display:grid;position:relative}.file img{object-fit:cover;background:var(--creux);border-radius:5px;width:100%;height:78px}.file .ext{background:var(--creux);height:78px;color:var(--encre-3);font-family:var(--mono);border-radius:5px;place-items:center;font-weight:600;display:grid}.file .x{background:var(--carte);position:absolute;top:2px;right:2px}.comment{grid-template-columns:30px 1fr;gap:10px;padding:9px 0;display:grid}.comment .body{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:2px}.composer{background:var(--creux);box-shadow:inset 0 0 0 1px var(--filet-doux);transition:box-shadow var(--t-fast), background var(--t-fast);border-radius:12px;margin-top:10px;padding:8px}.composer:focus-within{background:var(--carte);box-shadow:inset 0 0 0 1px var(--indigo), 0 0 0 3px color-mix(in srgb, var(--indigo) var(--teinte), transparent)}.composer textarea{resize:none;background:0 0;border:0;outline:none;width:100%;min-height:56px}.drop{outline:2px dashed var(--indigo);outline-offset:4px}.overview{grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);align-items:start;gap:16px;display:grid}@media (width<=1100px){.overview{grid-template-columns:1fr}}.card-head{border-bottom:1px solid var(--filet-doux);align-items:center;gap:6px;padding:11px 16px;display:flex}.card-head h2{align-items:center;gap:7px;font-size:12.5px;font-weight:600;display:flex}.ptable{border-collapse:collapse;width:100%}.ptable th{text-align:left;color:var(--encre-3);border-bottom:1px solid var(--filet-doux);white-space:nowrap;padding:11px 14px 9px;font-size:11.5px;font-weight:600}.ptable td{vertical-align:middle;border-bottom:1px solid var(--filet-doux);padding:10px 14px}.ptable tbody tr:last-child td{border-bottom:0}.ptable tbody tr{cursor:pointer;transition:background var(--t-fast) var(--ease-out)}.ptable tbody tr:hover{background:var(--creux)}.ptable tbody tr:last-child td:first-child{border-bottom-left-radius:12px}.ptable tbody tr:last-child td:last-child{border-bottom-right-radius:12px}.ptable .num-cell{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:12px}.bar{background:var(--creux);border-radius:99px;min-width:80px;height:5px;position:relative;overflow:hidden}.bar>i{background:var(--bc,var(--indigo));border-radius:99px;position:absolute;inset:0 auto 0 0}.upcoming{padding:2px 0 6px;display:grid}.upcoming .day{color:var(--encre-2);padding:10px 16px 3px;font-size:12px;font-weight:650}.upcoming .day.late{color:var(--baisse)}.upcoming .item{cursor:pointer;transition:background var(--t-fast) var(--ease-out);border-radius:8px;align-items:center;gap:10px;margin:0 4px;padding:6px 12px;display:flex}.upcoming .item:hover{background:var(--creux)}.upcoming .item .proj{color:var(--encre-3);max-width:130px;font-size:11.5px}.diamond{border-radius:1.5px;flex:none;width:8px;height:8px;transform:rotate(45deg)}.cal{background:var(--filet-doux);box-shadow:var(--anneau);border-radius:12px;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.cal .dow{color:var(--encre-3);background:var(--carte);padding:8px 10px;font-size:11.5px}.cal .cell{background:var(--carte);flex-direction:column;gap:3px;min-width:0;min-height:108px;padding:6px;display:flex}.cal .cell.out{background:color-mix(in srgb, var(--creux) 55%, var(--carte))}.cal .cell.out .num{color:var(--estompe)}.cal .num{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--encre-2);padding:0 2px 2px;font-size:11.5px;font-weight:500}.cal .cell.today .num{color:var(--sur-primaire);background:var(--indigo);border-radius:99px;place-items:center;width:22px;height:20px;padding:0;display:grid}.cal .ev{cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:color-mix(in srgb, var(--evc) var(--teinte), var(--carte));transition:background var(--t-fast);border-radius:5px;align-items:center;gap:5px;padding:2px 6px;font-size:11.5px;display:flex;overflow:hidden}.cal .ev:hover{background:color-mix(in srgb, var(--evc) 22%, var(--carte))}.cal .ev.done{opacity:.55;text-decoration:line-through}@media (width<=860px){.cal .cell{min-height:72px}.cal .ev span{display:none}}.settings{grid-template-columns:200px minmax(0,760px);gap:24px;display:grid}@media (width<=860px){.settings{grid-template-columns:1fr}}.settings nav{align-content:start;gap:1px;display:grid}.panel{background:var(--carte);box-shadow:var(--anneau);border-radius:12px;padding:16px 18px}.panel+.panel{margin-top:12px}.panel h2{align-items:center;gap:7px;margin-bottom:3px;font-size:12.5px;font-weight:600;display:flex}.panel h2:before{content:"";background:var(--c,var(--indigo));border-radius:2px;flex:none;width:7px;height:7px}.panel .lead{color:var(--encre-3);max-width:64ch;margin-bottom:14px}.grid2{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=600px){.grid2{grid-template-columns:1fr}}.code{font-family:var(--mono);background:var(--creux);white-space:pre-wrap;word-break:break-all;border-radius:8px;padding:10px 12px;font-size:11.5px}.secret{background:color-mix(in srgb, var(--indigo) var(--teinte), var(--carte))}.swatches{flex-wrap:wrap;gap:6px;display:flex}.swatch{cursor:pointer;width:22px;height:22px;transition:transform var(--t-fast) var(--ease-out), box-shadow var(--t-fast);border:0;border-radius:6px}.swatch:active{transform:scale(.9)}.swatch[aria-pressed=true]{box-shadow:0 0 0 2px var(--carte), 0 0 0 3.5px var(--encre)}.utable{border-collapse:collapse;width:100%}.utable td,.utable th{text-align:left;border-bottom:1px solid var(--filet-doux);padding:8px}.utable tbody tr:last-child td{border-bottom:0}.utable tbody tr{transition:background var(--t-fast)}.utable tbody tr:hover{background:var(--creux)}.utable th{color:var(--encre-3);font-size:11.5px;font-weight:600}.login{background:var(--papier);place-items:center;min-height:100%;padding:24px;display:grid}.login form{gap:14px;width:min(360px,100%);padding:24px;display:grid}.login .brand{margin:0 0 6px;padding:0}.toast{z-index:80;background:var(--encre);color:var(--papier);box-shadow:var(--ombre-haute);animation:toast-in .22s var(--ease-out) both;border-radius:9px;padding:9px 14px;font-weight:500;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.toast.err{background:var(--baisse);color:#fff}.toast.leaving{animation:toast-out var(--t-exit) var(--ease-io) both}.menu{z-index:60;background:var(--carte);min-width:200px;box-shadow:var(--ombre-haute);transform-origin:0 0;animation:pop-in var(--t-fast) var(--ease-out) both;border-radius:10px;padding:4px;position:absolute}.menu button{cursor:pointer;text-align:left;width:100%;height:30px;transition:background var(--t-fast);background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;padding:0 8px;display:flex}.menu button:hover{background:var(--creux)}.modal-scrim{z-index:70;background:var(--voile);animation:fade-in var(--t-base) var(--ease-out) both;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:var(--carte);width:min(460px,100%);box-shadow:var(--ombre-haute);animation:pop-in var(--t-base) var(--ease-out) both;border-radius:14px;gap:14px;padding:18px;display:grid}.modal-ghost{pointer-events:none;animation:fade-out var(--t-exit) var(--ease-out) both}.modal-ghost .modal{animation:pop-out var(--t-exit) var(--ease-io) both}.gantt-tools{background:var(--papier);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 22px;display:flex}.gantt-tools .select{width:auto;max-width:180px;height:28px}.gantt-tools label{color:var(--encre-2);align-items:center;gap:6px;font-size:12px;display:inline-flex}.gantt-foot{box-shadow:0 -1px 0 var(--filet-doux)}.gantt{background:var(--carte);overscroll-behavior:contain;min-height:0;box-shadow:0 -1px 0 var(--filet-doux);flex:1;position:relative;overflow:auto}.gantt-grid{display:grid;position:relative}.g-corner,.g-label,.g-ghead{z-index:3;background:var(--carte);box-shadow:inset -1px 0 0 var(--filet);position:sticky;left:0}.g-corner{z-index:5;color:var(--encre-3);box-shadow:inset -1px 0 0 var(--filet), inset 0 -1px 0 var(--filet);align-items:flex-end;padding:0 12px 8px;font-size:11.5px;display:flex;top:0}.g-head{z-index:4;background:var(--carte);box-shadow:inset 0 -1px 0 var(--filet);position:sticky;top:0}.g-months,.g-days{position:relative}.g-months{height:26px}.g-days{height:24px}.g-month{box-shadow:inset 1px 0 0 var(--filet-doux);white-space:nowrap;padding:6px 8px;font-size:12px;font-weight:650;position:absolute;top:0;bottom:0;overflow:hidden}.g-day{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--encre-3);place-items:center;font-size:10.5px;display:grid;position:absolute;top:0;bottom:0}.g-day.we{color:var(--estompe)}.g-day.today{color:var(--indigo);font-weight:600}.g-ms{width:10px;height:10px;box-shadow:0 0 0 2px var(--carte);z-index:2;cursor:default;border-radius:2px;position:absolute;bottom:-6px;transform:translate(-50%)rotate(45deg)}.g-ghead{background:var(--creux);align-items:center;gap:8px;height:32px;padding:0 12px;font-weight:650;display:flex}.g-ghead .muted{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:11px;font-weight:500}.g-gtrack{background:var(--creux);height:32px;position:relative}.g-label{height:var(--row);cursor:pointer;min-width:0;transition:background var(--t-fast);align-items:center;gap:8px;padding:0 10px 0 14px;display:flex}.g-label:hover{background:var(--creux)}.g-label .t{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.g-label.done .t{color:var(--encre-3);text-decoration:line-through}.g-track{height:var(--row);position:relative}.g-track.unscheduled{cursor:copy}.g-track.unscheduled:hover{background:color-mix(in srgb, var(--indigo) 5%, transparent)}.g-bg{pointer-events:none;position:absolute;inset:0}.g-today{background:var(--indigo);z-index:2;pointer-events:none;width:1.5px;position:absolute;top:0;bottom:0;transform:translate(-.75px)}.g-today:before{content:"";background:var(--indigo);border-radius:50%;width:7px;height:7px;margin-left:-2.75px;display:block;position:sticky;top:46px}.g-msline{border-left:1px dashed var(--msc);opacity:.5;z-index:1;pointer-events:none;width:0;position:absolute;top:0;bottom:0}.g-bar{--bc:var(--c-blue);height:calc(var(--row) - 14px);z-index:2;background:color-mix(in srgb, var(--bc) 16%, var(--carte));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--bc) 30%, transparent);color:var(--bc);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;transition:background var(--t-fast), box-shadow var(--t-fast);border-radius:6px;align-items:center;font-size:11.5px;font-weight:600;display:flex;position:absolute;top:7px}.g-bar:hover{background:color-mix(in srgb, var(--bc) 24%, var(--carte))}.g-bar.dragging{cursor:grabbing;box-shadow:var(--ombre-haute);z-index:6}.g-bar.done{background:color-mix(in srgb, var(--bc) 10%, var(--carte));opacity:.75}.g-bar.late{box-shadow:inset 0 0 0 1.5px var(--baisse)}.g-bar.dragging.late{box-shadow:inset 0 0 0 1.5px var(--baisse), var(--ombre-haute)}.g-bar.point{height:12px;top:calc((var(--row) - 12px) / 2);background:var(--bc);border-radius:3px;transform:translate(-6px)rotate(45deg);width:12px!important}.g-bar .lbl{white-space:nowrap;text-overflow:ellipsis;pointer-events:none;padding:0 8px;overflow:hidden}.g-bar .lbl-out{white-space:nowrap;color:var(--encre-2);pointer-events:none;font-weight:500;position:absolute;left:calc(100% + 6px)}.g-bar.point .lbl-out{top:-2px;left:16px;transform:rotate(-45deg)}.g-handle{cursor:ew-resize;width:8px;position:absolute;top:0;bottom:0}.g-handle.l{left:-3px}.g-handle.r{right:-3px}.g-deps{pointer-events:none;z-index:1;position:absolute;inset:0;overflow:visible}.g-deps path{fill:none;stroke:var(--encre-3);stroke-width:1.25px;opacity:.6}.g-tip{z-index:90;pointer-events:none;background:var(--encre);color:var(--papier);box-shadow:var(--ombre-haute);border-radius:8px;max-width:320px;padding:6px 9px;font-size:11.5px;position:fixed}.g-legend{color:var(--encre-3);flex-wrap:wrap;align-items:center;gap:12px;font-size:11.5px;display:flex}.g-legend span{align-items:center;gap:5px;display:inline-flex}.skel{background:var(--creux);animation:skel 1.1s var(--ease-io) infinite alternate;border-radius:6px;display:block}.skel-row{height:var(--row);align-items:center;gap:12px;padding:0 16px;display:flex}.skel-block{background:var(--carte);box-shadow:var(--anneau);border-radius:12px;padding:8px 0}@keyframes skel{0%{opacity:.55}to{opacity:1}}@keyframes enter{0%{opacity:0;transform:translateY(4px)}}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}@keyframes pop-in{0%{opacity:0;transform:scale(.95)}}@keyframes pop-out{to{opacity:0;transform:scale(.95)}}@keyframes drawer-in{0%{opacity:0;transform:translate(24px)}}@keyframes drawer-out{to{opacity:0;transform:translate(24px)}}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,10px)}}@keyframes toast-out{to{opacity:0;transform:translate(-50%,8px)}}@keyframes pulse{0%{background:color-mix(in srgb, var(--indigo) 18%, transparent);box-shadow:0 0 0 0 color-mix(in srgb, var(--indigo) 30%, transparent)}to{background:0 0;box-shadow:0 0 0 6px #0000}}.page>*,.topbar,.gantt-tools,.list>*,.upcoming>*,.ptable tbody tr,.col>.tcard,.settings .panel{animation:enter var(--t-base) var(--ease-out) both}.list>:nth-child(2),.upcoming>:nth-child(2),.ptable tbody tr:nth-child(2),.col>.tcard:nth-child(3){animation-delay:30ms}.list>:nth-child(3),.upcoming>:nth-child(3),.ptable tbody tr:nth-child(3),.col>.tcard:nth-child(4){animation-delay:60ms}.list>:nth-child(4),.upcoming>:nth-child(4),.ptable tbody tr:nth-child(4),.col>.tcard:nth-child(5){animation-delay:90ms}.list>:nth-child(5),.upcoming>:nth-child(5),.ptable tbody tr:nth-child(5),.col>.tcard:nth-child(6){animation-delay:.12s}.list>:nth-child(6),.upcoming>:nth-child(6),.ptable tbody tr:nth-child(6),.col>.tcard:nth-child(7){animation-delay:.15s}.list>:nth-child(7),.upcoming>:nth-child(7),.ptable tbody tr:nth-child(7){animation-delay:.18s}.list>:nth-child(n+8),.upcoming>:nth-child(n+8),.ptable tbody tr:nth-child(n+8){animation-delay:.21s}.page>.list:nth-child(2){animation-delay:40ms}.page>.list:nth-child(n+3){animation-delay:80ms}.overview>.card:nth-child(2){animation:enter var(--t-base) var(--ease-out) 40ms both}.trow.pulse,.tcard.pulse,.subtask.pulse{animation:pulse .9s var(--ease-out) both}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.history{margin:4px 0 0;padding:0;font-size:12.5px;list-style:none}.history li{border-bottom:1px solid var(--filet-doux);justify-content:space-between;align-items:center;gap:10px;padding:5px 0;display:flex}.history li:last-child{border-bottom:0}.history li .btn{opacity:.7;flex:none}.history li:hover .btn,.history li .btn:focus-visible{opacity:1}
