:root{--bg-app: #F6F7FB;--bg-surface: #FFFFFF;--bg-sidebar: #FFFFFF;--bg-hover: #F0F2F7;--bg-selected: #E7EEFF;--border-subtle: #E4E7EE;--border-strong: #C9CED9;--text-primary: #1F2433;--text-secondary: #5B6275;--text-muted: #6B7185;--text-inverse: #FFFFFF;--accent-primary: #2F5BEA;--accent-primary-hover: #2449C4;--accent-fill: #2F5BEA;--accent-fill-hover: #2449C4;--accent-group: #E30613;--focus-ring: rgba(47, 91, 234, .4);--status-done: #00A35C;--status-progress: #FDAB3D;--status-blocked: #D83A52;--status-waiting: #9D50DD;--status-new: #3A7FE6;--status-empty: #C4C4C4;--status-neutral: #797E93;--status-text-dark: #1F2433;--div-renov: #E2641F;--div-renov-bg: #FCEBDD;--div-renov-fg: #A8440F;--div-roof: #EFA81B;--div-roof-bg: #FDF2D6;--div-roof-fg: #8A5A00;--div-energy: #2EA64A;--div-energy-bg: #DFF3E4;--div-energy-fg: #1C7333;--div-win: #1890C0;--div-win-bg: #DCEFF7;--div-win-fg: #0E6488;--div-multi-bg: #EEF0F5;--plat-ima: #7E5BEF;--plat-belfius: #0FA3B1;--font-family: "Poppins", system-ui, -apple-system, "Segoe UI", sans-serif;--fs-display: 1.625rem;--fs-h1: 1.25rem;--fs-h2: 1rem;--fs-body: .875rem;--fs-small: .75rem;--fs-label: .6875rem;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-8: 48px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-pill: 999px;--shadow-1: 0 1px 2px rgba(31, 36, 51, .06);--shadow-2: 0 4px 12px rgba(31, 36, 51, .1);--shadow-3: 0 12px 32px rgba(31, 36, 51, .16);--motion-fast: .12s ease-out;--motion-base: .2s ease-out;--row-h: 40px;--topbar-h: 56px;--sidebar-w: 240px;--drawer-w: 560px}@media (prefers-reduced-motion: reduce){:root{--motion-fast: 0ms;--motion-base: 0ms}}:root{--bg-column: #EEF0F5;--bg-comment: #FFF9E6;--border-comment: #F3E3B0;--overlay: rgba(31, 36, 51, .25);--logo-bg: transparent;--logo-pad: 0;color-scheme:light}:root[data-theme=dark]{color-scheme:dark;--bg-app: #181B34;--bg-surface: #292F4C;--bg-sidebar: #292F4C;--bg-hover: #30365A;--bg-selected: #2E3C78;--bg-column: #1F2340;--bg-comment: #3A3720;--border-comment: #5C5730;--border-subtle: #3B4166;--border-strong: #4E557D;--text-primary: #D5D8DF;--text-secondary: #AEB3C4;--text-muted: #A8AEC4;--accent-primary: #579BFC;--accent-primary-hover: #3D86F5;--accent-fill: #2A66D6;--accent-fill-hover: #255DC4;--focus-ring: rgba(87, 155, 252, .45);--div-renov-bg: #4A3222;--div-roof-bg: #4A3F1E;--div-energy-bg: #1E3F2B;--div-win-bg: #1D3A4A;--div-multi-bg: #33395C;--shadow-1: 0 1px 2px rgba(0, 0, 0, .3);--shadow-2: 0 4px 12px rgba(0, 0, 0, .4);--shadow-3: 0 12px 32px rgba(0, 0, 0, .5);--overlay: rgba(0, 0, 0, .45);--logo-bg: #F4F5F8;--logo-pad: 3px 6px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--font-family);font-size:var(--fs-body);line-height:20px;color:var(--text-primary);background:var(--bg-app);-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}input,select,textarea{font:inherit;color:inherit}a{color:var(--accent-primary);text-decoration:none}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}svg.i{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex:none}svg.i.s16{width:16px;height:16px}svg.i.s14{width:14px;height:14px}.num{font-variant-numeric:tabular-nums}.muted{color:var(--text-muted)}input::placeholder,textarea::placeholder{color:var(--text-muted);opacity:1}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.app{display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);height:100vh;height:100dvh;transition:grid-template-columns var(--motion-base)}.mini-only{display:none!important}.sidebar{background:var(--bg-sidebar);border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;min-height:0;z-index:40}.brand{display:flex;align-items:center;gap:10px;padding:18px 18px 14px}.brand-mark{width:26px;height:26px;border-radius:6px;background:#1f2433;position:relative;overflow:hidden;flex:none}.brand-mark span{position:absolute;left:0;width:9px;height:25%}.brand-mark span:nth-child(1){top:0;background:var(--div-renov)}.brand-mark span:nth-child(2){top:25%;background:var(--div-roof)}.brand-mark span:nth-child(3){top:50%;background:var(--div-energy)}.brand-mark span:nth-child(4){top:75%;background:var(--div-win)}.brand-mark:after{content:"";position:absolute;left:13px;top:7px;width:8px;height:12px;border:2.5px solid #fff;border-left:0;border-radius:0 5px 5px 0}.brand-name{font-weight:700;font-size:16px;letter-spacing:.02em}.brand-name em{font-style:normal;color:var(--text-muted);font-weight:500}.space-switch{margin:0 14px 12px;display:grid;grid-template-columns:1fr 1fr;background:var(--bg-app);border-radius:var(--radius-md);padding:3px;font-size:12px;font-weight:500}.space-switch div,.space-switch a{display:block;cursor:pointer;text-align:center;padding:5px 0;border-radius:6px;color:var(--text-muted)}.space-switch .on{background:var(--bg-surface);color:var(--text-primary);box-shadow:var(--shadow-1)}.space-switch .off small{font-size:10px;margin-left:4px}.btn-new{margin:0 14px 14px;height:36px;border-radius:var(--radius-sm);background:var(--accent-fill);color:#fff;font-weight:500;display:flex;align-items:center;justify-content:center;gap:6px}.btn-new:hover{background:var(--accent-fill-hover)}.nav{padding:0 8px;overflow:auto;flex:1}.nav-label{font-size:var(--fs-label);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);padding:14px 10px 6px}.nav a,.nav .soon,.nav .nav-btn{display:flex;align-items:center;gap:10px;height:36px;white-space:nowrap;font-size:13.5px;padding:0 10px;border-radius:6px;color:var(--text-secondary);font-weight:500;position:relative}.nav a:hover,.nav .nav-btn:hover{background:var(--bg-hover)}.nav a.active{background:var(--bg-selected);color:var(--accent-primary)}.nav a.active:before{content:"";position:absolute;left:-8px;top:6px;bottom:6px;width:3px;border-radius:0 3px 3px 0;background:var(--accent-primary)}.nav .count{margin-left:auto;font-size:11px;font-weight:600;min-width:22px;height:20px;padding:0 6px;border-radius:var(--radius-pill);background:var(--bg-app);color:var(--text-secondary);display:flex;align-items:center;justify-content:center}.nav .count.alert{background:var(--status-blocked);color:#fff}.nav .soon{color:var(--text-muted);opacity:.7;cursor:default;font-weight:400;height:32px}.nav .soon .lbl,.nav a .lbl,.nav .nav-btn .lbl{overflow:hidden;text-overflow:ellipsis;min-width:0}.nav .soon small{flex:none}.nav .soon small{margin-left:auto;font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--border-subtle);border-radius:var(--radius-pill);padding:0 6px}.side-foot{border-top:1px solid var(--border-subtle);padding:10px 10px 12px 14px;font-size:11px;color:var(--text-muted);display:flex;align-items:center;gap:8px;min-height:52px}.side-foot .sb-collapse{margin-left:auto}.sidebar-backdrop{display:none}.main{display:flex;flex-direction:column;min-width:0;min-height:0}.topbar{height:var(--topbar-h);flex:none;background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);display:grid;grid-template-columns:1fr minmax(240px,520px) 1fr;align-items:center;padding:0 var(--space-5);gap:var(--space-4);position:relative;z-index:30}.crumbs{font-size:13px;color:var(--text-muted);display:flex;gap:6px;align-items:center;min-width:0;white-space:nowrap}.crumbs b{color:var(--text-primary);font-weight:500;overflow:hidden;text-overflow:ellipsis}.menu-btn{display:inline-flex}.gsearch{position:relative}.gsearch .box{height:36px;border:1px solid var(--border-subtle);background:var(--bg-app);border-radius:var(--radius-md);display:flex;align-items:center;gap:8px;padding:0 12px;color:var(--text-muted);font-size:13px}.gsearch .box:focus-within{border-color:var(--accent-primary);background:var(--bg-surface)}.gsearch input{border:0;background:none;outline:none;flex:1;min-width:0;font-size:13px;color:var(--text-primary)}.gsearch kbd{font-family:inherit;font-size:11px;border:1px solid var(--border-strong);border-radius:4px;padding:0 6px;background:var(--bg-surface);color:var(--text-secondary)}.gsearch .results{position:absolute;top:42px;left:0;right:0;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-2);max-height:380px;overflow:auto;padding:6px}.gsearch .results button{width:100%;text-align:left;display:flex;flex-direction:column;padding:8px 10px;border-radius:6px}.gsearch .results button:hover,.gsearch .results button.hl{background:var(--bg-hover)}.gsearch .results b{font-weight:500;font-size:13.5px}.gsearch .results small{font-size:12px;color:var(--text-muted)}.top-right{display:flex;align-items:center;justify-content:flex-end;gap:6px}.icon-btn{width:36px;height:36px;border-radius:var(--radius-md);display:inline-flex;align-items:center;justify-content:center;color:var(--text-secondary);position:relative;flex:none}.icon-btn:hover{background:var(--bg-hover)}.lang{display:flex;border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden}.lang button{height:30px;padding:0 9px;font-size:12px;font-weight:600;color:var(--text-muted)}.lang button.on{background:var(--bg-selected);color:var(--accent-primary)}.usermenu{position:relative}.usermenu .pop{position:absolute;right:0;top:44px;min-width:240px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-2);padding:6px}.usermenu .pop .who{padding:8px 10px 10px;border-bottom:1px solid var(--border-subtle);margin-bottom:4px}.usermenu .pop .who b{display:block;font-weight:600}.usermenu .pop .who small{color:var(--text-muted);font-size:12px}.menu-item{width:100%;display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:6px;font-size:13px;text-align:left}.menu-item:hover{background:var(--bg-hover)}.content{flex:1;overflow:auto;padding:var(--space-5) var(--space-5) 80px;min-height:0}.page-head{display:flex;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-4);flex-wrap:wrap}.page-head h1{font-size:var(--fs-display);line-height:34px;font-weight:600}.page-head p{color:var(--text-secondary);font-size:13px;margin-top:2px}.page-head .right{margin-left:auto;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.btn{height:36px;padding:0 14px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;gap:6px;font-weight:500;font-size:13px;white-space:nowrap;transition:background var(--motion-fast)}.btn.primary{background:var(--accent-fill);color:#fff}.btn.primary:hover:not(:disabled){background:var(--accent-fill-hover)}.btn.ghost{color:var(--text-secondary);border:1px solid var(--border-subtle);background:var(--bg-surface)}.btn.ghost:hover{background:var(--bg-hover)}.btn.plain{color:var(--text-secondary);height:32px;padding:0 10px}.btn.plain:hover{background:var(--bg-hover)}.btn.danger{color:var(--status-blocked);border:1px solid var(--border-subtle);background:var(--bg-surface)}.btn.sm{height:30px;font-size:12px;padding:0 10px}.field{display:flex;flex-direction:column;gap:4px;min-width:0}.field>span{font-size:var(--fs-label);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.input,.field input,.field select,.field textarea{height:36px;border:1px solid var(--border-strong);border-radius:var(--radius-md);padding:0 10px;background:var(--bg-surface);font-size:13.5px;width:100%;outline:none}.field textarea{height:auto;min-height:80px;padding:8px 10px;resize:vertical;line-height:20px}.input:focus,.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--focus-ring)}.field.amount input{font-variant-numeric:tabular-nums;text-align:right}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.form-grid .full{grid-column:1 / -1}.form-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:var(--space-5)}.select-sm{height:32px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:0 8px;background:var(--bg-surface);font-size:12.5px;color:var(--text-secondary);max-width:200px}.views{display:flex;gap:2px;border-bottom:1px solid var(--border-subtle);margin-bottom:var(--space-4);overflow-x:auto}.views button{display:flex;align-items:center;gap:6px;padding:8px 12px 10px;font-size:13px;font-weight:500;color:var(--text-secondary);border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap}.views button.on{color:var(--text-primary);border-color:var(--accent-primary)}.views button .n{font-size:11px;font-weight:600;background:var(--bg-hover);border-radius:var(--radius-pill);padding:0 7px;color:var(--text-secondary)}.toolbar{display:flex;align-items:center;gap:6px;margin-bottom:var(--space-5);flex-wrap:wrap}.toolbar .sep{width:1px;height:20px;background:var(--border-subtle);margin:0 4px}.board-search{height:32px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);display:flex;align-items:center;gap:6px;padding:0 10px;color:var(--text-muted);background:var(--bg-surface)}.toolbar .board-search{width:240px}.board-search input{border:0;outline:none;flex:1;min-width:0;font-size:13px;background:none;color:var(--text-primary)}.toolbar .right{margin-left:auto;font-size:12px;color:var(--text-muted)}.chip{height:28px;padding:0 10px;border-radius:var(--radius-pill);background:var(--bg-selected);color:var(--accent-primary);font-size:12px;font-weight:500;display:inline-flex;align-items:center;gap:6px}.seg{display:inline-flex;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);overflow:hidden;background:var(--bg-surface)}.seg button{height:30px;padding:0 12px;font-size:12.5px;font-weight:500;color:var(--text-secondary)}.seg button.on{background:var(--bg-selected);color:var(--accent-primary)}.group{margin-bottom:var(--space-6);--gc: var(--status-neutral)}.group-title{display:flex;align-items:center;gap:8px;min-height:36px;margin-bottom:6px;cursor:pointer;-webkit-user-select:none;user-select:none}.group-title .chev{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;color:var(--gc);transition:transform var(--motion-fast)}.group-title .chev.closed{transform:rotate(-90deg)}.group-title h2{font-size:var(--fs-h2);font-weight:600;color:var(--gc)}.group-title .n{font-size:12px;color:var(--text-muted)}.group-title .gsum{margin-left:auto;font-size:12.5px;color:var(--text-secondary);font-variant-numeric:tabular-nums;font-weight:500}.table-wrap{background:var(--bg-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-1);border:1px solid var(--border-subtle);overflow-x:auto}.table-wrap.collapsed-g{border-left:6px solid var(--gc)}.row{display:grid;grid-template-columns:var(--cols);min-height:var(--row-h);border-bottom:1px solid var(--border-subtle);min-width:var(--row-min, 100%)}.row>div{display:flex;align-items:center;border-right:1px solid var(--border-subtle);min-width:0;padding:0 var(--space-3);overflow:hidden}.row>div:last-child{border-right:0}.row>.gbar{border-right:0;padding:0;background:var(--gc)}.row.head{min-height:36px;background:var(--bg-surface)}.row.head>div{font-size:var(--fs-label);line-height:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);justify-content:center;text-align:center}.row.head>div.left{justify-content:flex-start}.row.head>div.right,.row>div.amt{justify-content:flex-end}.row.head>div.sortable{cursor:pointer}.row.item{cursor:pointer}.row.item:hover{background:var(--bg-hover)}.row.item.sel{background:var(--bg-selected)}.row.item:last-child{border-bottom:0}.cell-c{justify-content:center}.el{display:flex;align-items:center;gap:10px;justify-content:space-between;min-width:0}.el .t{min-width:0;line-height:16px}.el .t b{display:block;font-weight:500;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.el .t small{display:block;font-size:12px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.el .t small .ref{color:var(--text-secondary);font-weight:500}.cell-txt{font-size:13px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.amt{font-variant-numeric:tabular-nums;font-weight:500;font-size:13.5px;white-space:nowrap}.amt.big{font-weight:600;color:var(--text-primary)}.amt.empty{color:var(--text-muted);font-weight:400}.dt{font-size:13px;color:var(--text-secondary);white-space:nowrap}.dt.late{color:var(--status-blocked);font-weight:500}.dt.today{color:var(--text-primary);font-weight:500}.src{gap:7px;font-size:12.5px;color:var(--text-secondary);position:relative;white-space:nowrap}.src.plat:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:0 2px 2px 0;background:var(--plat, transparent)}.row.add>div{color:var(--text-muted);font-size:13px;gap:6px}.row.add:hover{background:var(--bg-hover);cursor:pointer}.row.sum{background:var(--bg-surface);border-bottom:0}.row.sum>div{border-right:0}.battery{display:flex;height:22px;width:100%;border-radius:3px;overflow:hidden}.battery i{display:block;height:100%}.sumv{flex-direction:column;justify-content:center;align-items:flex-end!important;line-height:14px}.sumv b{font-variant-numeric:tabular-nums;font-size:13.5px;font-weight:600}.sumv small{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.group-collapsed{display:flex;align-items:center;gap:10px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-left:6px solid var(--gc);border-radius:var(--radius-md);min-height:44px;padding:0 14px;color:var(--text-secondary);font-size:13px;cursor:pointer}.group-collapsed b{color:var(--gc);font-weight:600;font-size:15px}.group-collapsed .gsum{margin-left:auto;font-variant-numeric:tabular-nums}.legend{display:flex;gap:16px;align-items:center;font-size:12px;color:var(--text-secondary);margin-top:var(--space-5);flex-wrap:wrap}.legend span{display:flex;align-items:center;gap:6px}.legend i{width:12px;height:12px;border-radius:3px;display:block}.legend .lbl{font-weight:600;color:var(--text-muted);text-transform:uppercase;font-size:11px;letter-spacing:.04em}.st{padding:2px!important;align-items:stretch!important;position:relative;overflow:visible!important}.status-cell{width:100%;min-height:34px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:12.5px;font-weight:500;border-radius:2px;position:relative;white-space:nowrap;padding:0 8px;overflow:hidden;text-overflow:ellipsis;transition:filter var(--motion-fast)}.status-cell.dark{color:var(--status-text-dark)}.status-cell.editable:hover:after{content:"";position:absolute;right:0;top:0;border-style:solid;border-width:0 9px 9px 0;border-color:transparent rgba(255,255,255,.6) transparent transparent}.status-cell.editable:hover{filter:brightness(.96)}.status-cell.inline{min-height:26px;border-radius:var(--radius-sm);display:inline-flex;width:auto;min-width:120px}.status-menu{position:fixed;z-index:100;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-2);padding:8px;display:grid;gap:6px;min-width:200px;max-height:70vh;overflow:auto}.status-menu button{height:32px;border-radius:var(--radius-sm);color:#fff;font-size:12.5px;font-weight:500;padding:0 10px;text-align:center}.status-menu button.dark{color:var(--status-text-dark)}.status-menu button.cur{box-shadow:0 0 0 2px var(--bg-surface),0 0 0 4px var(--accent-primary)}.pill{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px;border-radius:var(--radius-pill);font-size:11.5px;font-weight:600;white-space:nowrap}.pill .dot{width:8px;height:8px;border-radius:50%}.pill.soft{background:var(--bg-hover);color:var(--text-secondary)}.avs{display:inline-flex;align-items:center}.av{width:28px;height:28px;border-radius:50%;color:#fff;font-size:11px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--bg-surface);flex:none;text-transform:uppercase}.avs .av+.av{margin-left:-8px}.av.empty{background:var(--bg-hover);color:var(--text-muted);border:1.5px dashed var(--border-strong)}.av.sm{width:24px;height:24px;font-size:10px}.kanban{display:flex;gap:var(--space-4);overflow-x:auto;padding-bottom:var(--space-4);align-items:flex-start}.kcol{width:280px;flex:none;background:var(--bg-column);border-radius:var(--radius-md);display:flex;flex-direction:column;max-height:calc(100vh - 280px)}.kcol.over{outline:2px dashed var(--accent-primary)}.khead{border-radius:var(--radius-md) var(--radius-md) 0 0;color:#fff;padding:8px 12px;display:flex;align-items:center;gap:8px;font-weight:600;font-size:13px}.khead.dark{color:var(--status-text-dark)}.khead .n{margin-left:auto;font-size:11.5px;font-weight:500;opacity:.9;font-variant-numeric:tabular-nums}.kbody{padding:8px;display:flex;flex-direction:column;gap:8px;overflow-y:auto}.kcard{background:var(--bg-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-1);border:1px solid var(--border-subtle);padding:10px 12px;cursor:pointer;display:flex;flex-direction:column;gap:6px}.kcard:hover{border-color:var(--border-strong)}.kcard.dragging{opacity:.5;box-shadow:var(--shadow-2)}.kcard b{font-weight:500;font-size:13.5px;line-height:18px}.kcard .meta{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-muted)}.kcard .meta .amt{margin-left:auto;color:var(--text-primary)}.kmore{font-size:12px;color:var(--accent-primary);padding:4px;text-align:center}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);z-index:60;animation:fade var(--motion-base)}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(var(--drawer-w),100vw);background:var(--bg-surface);box-shadow:var(--shadow-3);z-index:61;display:flex;flex-direction:column;animation:slide var(--motion-base)}.drawer-head{padding:18px 20px 0;border-bottom:1px solid var(--border-subtle)}.drawer-head .top{display:flex;align-items:flex-start;gap:12px}.drawer-head h2{font-size:var(--fs-h1);line-height:28px;font-weight:600;flex:1;min-width:0;word-break:break-word}.drawer-head .sub{font-size:12.5px;color:var(--text-muted);margin-top:2px}.drawer-head .tabs{display:flex;gap:2px;margin-top:14px}.drawer-head .tabs button{padding:8px 12px 10px;font-size:13px;font-weight:500;color:var(--text-secondary);border-bottom:2px solid transparent;margin-bottom:-1px;display:flex;gap:6px;align-items:center}.drawer-head .tabs button.on{color:var(--text-primary);border-color:var(--accent-primary)}.drawer-head .tabs .n{font-size:11px;background:var(--bg-hover);border-radius:var(--radius-pill);padding:0 6px}.drawer-body{flex:1;overflow:auto;padding:20px}.drawer-foot{border-top:1px solid var(--border-subtle);padding:12px 20px;display:flex;gap:8px;justify-content:flex-end;align-items:center}.drawer-foot .hint{margin-right:auto;font-size:12px;color:var(--text-muted)}.section-title{font-size:var(--fs-label);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin:var(--space-5) 0 var(--space-3)}.fsec+.fsec .section-title{margin-top:var(--space-6)}.fsec .section-title{margin-top:0}@keyframes slide{0%{transform:translate(40px);opacity:0}to{transform:none;opacity:1}}@keyframes fade{0%{opacity:0}to{opacity:1}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);z-index:80;display:flex;align-items:flex-start;justify-content:center;padding:8vh 16px 16px;overflow:auto;animation:fade var(--motion-base)}.modal{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);width:min(640px,100%);padding:22px 24px}.modal h2{font-size:var(--fs-h1);font-weight:600;margin-bottom:var(--space-4);display:flex;align-items:center}.modal h2 .icon-btn{margin-left:auto}.journal{display:flex;flex-direction:column;gap:14px}.jitem{display:flex;gap:10px}.jitem .body{flex:1;min-width:0}.jitem .meta{font-size:12px;color:var(--text-muted)}.jitem .meta b{color:var(--text-primary);font-weight:500}.jitem .txt{font-size:13.5px;white-space:pre-wrap;word-break:break-word;margin-top:2px}.jitem.comment .txt{background:var(--bg-comment);border:1px solid var(--border-comment);border-radius:var(--radius-md);padding:8px 10px}.comment-box{display:flex;flex-direction:column;gap:8px;margin-bottom:var(--space-5)}.comment-box textarea{min-height:64px;border:1px solid var(--border-strong);border-radius:var(--radius-md);padding:8px 10px;outline:none;resize:vertical}.comment-box textarea:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--focus-ring)}.list{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-1)}.litem{display:flex;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid var(--border-subtle);cursor:pointer;min-height:52px}.litem:last-child{border-bottom:0}.litem:hover{background:var(--bg-hover)}.litem .t{flex:1;min-width:0;line-height:17px}.litem .t b{display:block;font-weight:500;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.litem .t small{display:block;font-size:12px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.litem .side{flex:none;text-align:right;font-size:12.5px}.bar-left{width:4px;align-self:stretch;border-radius:2px;flex:none}.hello{margin-bottom:var(--space-5)}.hello h1{font-size:var(--fs-display);line-height:34px;font-weight:600}.hello p{color:var(--text-secondary);font-size:13px}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4);margin-bottom:var(--space-6)}.kpi{color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-1);padding:16px 18px;text-align:left;display:flex;flex-direction:column;gap:4px;border-top:4px solid var(--kc, var(--accent-primary));transition:border-color var(--motion-fast)}.kpi:hover{border-color:var(--border-strong);border-top-color:var(--kc, var(--accent-primary))}.kpi[aria-pressed=true]{box-shadow:var(--shadow-1),inset 0 0 0 1px var(--kc, var(--accent-primary))}.kpi .lbl{font-size:var(--fs-label);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.kpi .val{font-size:30px;line-height:38px;font-weight:600;font-variant-numeric:tabular-nums}.kpi .sub{font-size:13px;color:var(--text-secondary);font-variant-numeric:tabular-nums}.kpi .sub b{color:var(--text-primary);font-weight:600}.dash-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5)}.panel h3{font-size:var(--fs-h2);font-weight:600;margin-bottom:var(--space-3);display:flex;align-items:center;gap:8px}.panel h3 .n{font-size:12px;color:var(--text-muted);font-weight:500}.panel h3 a,.panel h3 .link{margin-left:auto;font-size:12.5px;font-weight:500;color:var(--accent-primary)}.panel+.panel{margin-top:0}.panel.span2{grid-column:1 / -1}.grav{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:500;white-space:nowrap}.grav i{width:12px;height:12px;border-radius:50%;display:block;flex:none}.state{text-align:center;padding:var(--space-8) var(--space-4);color:var(--text-secondary);font-size:13.5px}.state .btn{margin-top:var(--space-4)}.state.small{padding:var(--space-5) var(--space-4);font-size:13px;color:var(--text-muted)}.state.error{color:var(--status-blocked)}.spinner{width:22px;height:22px;border:2.5px solid var(--border-subtle);border-top-color:var(--accent-primary);border-radius:50%;animation:spin .8s linear infinite;display:inline-block;vertical-align:middle}.spinner.sm{width:14px;height:14px;border-width:2px}@keyframes spin{to{transform:rotate(360deg)}}.banner{border-radius:var(--radius-md);padding:10px 14px;font-size:13px;margin-bottom:var(--space-4);display:flex;gap:10px;align-items:center}.banner.warn{background:#fff4e0;color:#7a4b00;border:1px solid #F7D9A3}.banner.err{background:#fdecef;color:#9e1f33;border:1px solid #F5C2CB}.banner.info{background:var(--bg-selected);color:var(--accent-primary-hover);border:1px solid #C9D6FB}.banner .btn{margin-left:auto}.banner .grow{flex:1;min-width:0}.toasts{position:fixed;bottom:22px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:8px;z-index:120;align-items:center;pointer-events:none}.toast{background:var(--text-primary);color:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-3);padding:10px 16px;font-size:13px;pointer-events:auto;max-width:90vw;animation:fade var(--motion-base)}.toast.error{background:#9e1f33}.demo-badge{display:inline-block;white-space:nowrap;background:var(--status-progress);color:var(--status-text-dark);font-size:11px;font-weight:600;padding:4px 10px;border-radius:var(--radius-pill);letter-spacing:.04em;text-transform:uppercase}.auth-page{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:var(--bg-app)}.auth-card{width:min(420px,100%);background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-2);border:1px solid var(--border-subtle);padding:36px 32px 28px}.auth-card .logo{display:block;width:240px;max-width:100%;height:auto;margin:0 auto 8px}.auth-card h1{font-size:var(--fs-h1);font-weight:600;text-align:center}.auth-card .lead{color:var(--text-secondary);text-align:center;font-size:13px;margin:4px 0 24px}.auth-card form{display:flex;flex-direction:column;gap:var(--space-4)}.auth-card .btn.primary{height:42px;font-size:14px}.auth-card .links{display:flex;justify-content:space-between;font-size:13px;margin-top:4px}.auth-card .foot{margin-top:26px;text-align:center;font-size:11.5px;color:var(--text-muted)}.divbar{display:flex;height:4px;border-radius:2px;overflow:hidden;margin-top:10px}.divbar i{flex:1}@media (max-width: 1100px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}.topbar{grid-template-columns:auto minmax(160px,1fr) auto}}.menu-prefs{display:none;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px 8px;border-bottom:1px solid var(--border-subtle);margin-bottom:4px}@media (max-width: 900px){.app{grid-template-columns:minmax(0,1fr)}.sidebar{position:fixed;top:0;bottom:0;left:0;width:272px;transform:translate(-100%);transition:transform var(--motion-base);box-shadow:var(--shadow-3)}.app.menu-open .sidebar{transform:none}.app.menu-open .sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);z-index:39}.menu-btn{display:inline-flex}.topbar{grid-template-columns:auto minmax(0,1fr) auto}.crumbs{flex:none}.crumbs .crumb-txt{display:none}.topbar{padding:0 var(--space-3);gap:var(--space-2)}.content{padding:var(--space-4) var(--space-3) 80px}.dash-cols{grid-template-columns:minmax(0,1fr)}.toolbar .board-search{width:100%}.gsearch kbd{display:none}}@media (max-width: 600px){.kpis{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:var(--space-2)}.kpi{padding:12px}.kpi .val{font-size:24px;line-height:30px}.form-grid{grid-template-columns:minmax(0,1fr)}.lang button{padding:0 6px}.page-head h1{font-size:22px;line-height:30px}.page-head .right{margin-left:0;width:100%}.usermenu .uname,.crumbs b{display:none}.top-right>.lang,.top-right>.theme-btn{display:none}.menu-prefs{display:flex}.litem{flex-wrap:wrap;row-gap:6px}.litem .t{flex-basis:calc(100% - 24px)}.litem .bar-left{align-self:stretch}.top-right{gap:2px}.drawer-body{padding:16px}.modal{padding:18px 16px}}.brand-logo,.div-logo{display:inline-block;width:auto;background:var(--logo-bg);padding:var(--logo-pad);border-radius:var(--radius-sm);box-sizing:content-box;vertical-align:middle}.div-logos{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap}.div-filter{display:inline-flex;gap:4px;align-items:center;flex-wrap:wrap}.div-filter button{height:32px;padding:0 10px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-surface);display:inline-flex;align-items:center}.div-filter button.on{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--focus-ring)}.div-filter button.txt{font-size:12.5px;color:var(--text-secondary);font-weight:500}.type-cell{display:flex;flex-direction:column;gap:3px;min-width:0;align-items:flex-start}.type-cell .cell-txt{max-width:100%}[data-theme=dark] .banner.warn{background:#4a3a1a;color:#f5d9a0;border-color:#6b5528}[data-theme=dark] .banner.err{background:#4a1f2a;color:#f5b5c0;border-color:#6b2b3a}[data-theme=dark] .banner.info{color:#bfd6ff;border-color:#3b4e8c}[data-theme=dark] .toast{background:#0f1226}[data-theme=dark] .av.empty{background:var(--bg-hover)}[data-theme=dark] .status-cell.editable:hover:after{border-color:transparent rgba(255,255,255,.4) transparent transparent}[data-theme=dark] .auth-page{background:var(--bg-app)}.todo{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-1);overflow:hidden}.todo-add{display:flex;align-items:center;gap:8px;padding:0 14px;height:46px;border-bottom:1px solid var(--border-subtle);color:var(--text-muted)}.todo-add input{flex:1;border:0;outline:none;background:none;font-size:14px;min-width:0;color:var(--text-primary)}.todo-row{display:flex;align-items:center;gap:10px;padding:0 10px 0 4px;min-height:46px;border-bottom:1px solid var(--border-subtle);transition:opacity var(--motion-base),transform var(--motion-base),background var(--motion-fast)}.todo-row:last-child{border-bottom:0}.todo-row:hover{background:var(--bg-hover)}.todo-row.dragging{background:var(--bg-selected)}.todo-row.leaving{opacity:.35;transform:translate(8px)}.todo-row .grip{width:16px;color:var(--text-muted);cursor:grab;display:flex;opacity:0;flex:none}.todo-row:hover .grip{opacity:1}.todo-check{width:20px;height:20px;border:2px solid var(--border-strong);border-radius:6px;flex:none;position:relative;transition:background var(--motion-fast),border-color var(--motion-fast),transform var(--motion-fast)}.todo-check:hover{border-color:var(--status-done)}.todo-check.on{background:var(--status-done);border-color:var(--status-done);transform:scale(1.08)}.todo-check.on:after{content:"";position:absolute;left:5px;top:1px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.todo-main{flex:1;min-width:0;display:flex;flex-direction:column;padding:6px 0}.todo-title{font-size:14px;line-height:19px;word-break:break-word}.todo-row.done .todo-title{text-decoration:line-through;color:var(--text-muted)}.todo-client{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--accent-primary);align-self:flex-start;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.todo-date{font-size:12.5px;color:var(--text-secondary);white-space:nowrap;font-variant-numeric:tabular-nums}.todo-date.late{color:var(--status-blocked);font-weight:600}.todo-date.today{color:var(--text-primary);font-weight:600}.todo-tools{display:flex;align-items:center;position:relative;opacity:.55}.todo-row:hover .todo-tools,.todo-tools:focus-within{opacity:1}.todo-date-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none;right:0;bottom:0}.icon-btn.sm{width:28px;height:28px;border-radius:6px}.rem-btn.on{color:var(--accent-primary);opacity:1}.todo.compact .todo-row{min-height:40px}.rem-pop{position:fixed;z-index:100;width:260px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-2);padding:6px}.rem-pop .rem-h{font-size:var(--fs-label);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);padding:8px 10px 4px}.rem-pop .rem-cur{font-size:12px;color:var(--accent-primary);padding:0 10px 4px}.rem-pop .rem-custom{display:flex;gap:6px;padding:4px 10px 8px}.rem-pop .rem-custom .input{height:30px;font-size:12.5px;padding:0 6px}.rem-pop a.menu-item{color:var(--text-primary)}.menu-item.danger{color:var(--status-blocked)}.bell-tag{display:inline-flex;align-items:center;gap:4px;color:var(--accent-primary);font-size:12px;font-weight:500}.with-mic{position:relative;width:100%}.with-mic input{padding-right:40px}.with-mic textarea{padding-right:40px;width:100%}.with-mic .mic-btn{position:absolute;right:4px;top:4px}.mic-btn{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--text-muted);flex:none;position:relative;transition:color var(--motion-fast),background var(--motion-fast)}.mic-btn:hover{color:var(--accent-primary);background:var(--bg-hover)}.mic-btn.on{color:#fff;background:var(--status-blocked)}.mic-btn.on:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;border:2px solid var(--status-blocked);animation:pulse 1.2s ease-out infinite}@keyframes pulse{0%{transform:scale(.85);opacity:.9}to{transform:scale(1.35);opacity:0}}.comment-box .with-mic textarea{min-height:64px}.assistant-fab{position:fixed;right:22px;bottom:22px;z-index:70;width:56px;height:56px;border-radius:50%;background:var(--accent-fill);color:#fff;box-shadow:var(--shadow-3);display:flex;align-items:center;justify-content:center;transition:transform var(--motion-fast),background var(--motion-fast)}.assistant-fab:hover{background:var(--accent-fill-hover);transform:scale(1.05)}.assistant-panel{position:fixed;right:22px;bottom:22px;z-index:75;width:min(380px,calc(100vw - 24px));height:min(560px,calc(100dvh - 90px));background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);display:flex;flex-direction:column;animation:fade var(--motion-base)}.assistant-panel header{display:flex;align-items:center;gap:8px;padding:12px 12px 12px 16px;border-bottom:1px solid var(--border-subtle)}.assistant-panel header b{flex:1;font-weight:600}.ai-dot{width:26px;height:26px;border-radius:8px;background:var(--text-primary);color:var(--bg-surface);display:flex;align-items:center;justify-content:center}.assistant-msgs{flex:1;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:10px}.bubble{max-width:85%;padding:9px 12px;border-radius:14px;font-size:13.5px;line-height:19px;white-space:pre-wrap}.bubble.bot{background:var(--bg-hover);align-self:flex-start;border-bottom-left-radius:4px}.bubble.me{background:var(--accent-fill);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}.assistant-examples{display:flex;flex-direction:column;gap:6px;margin-top:4px}.assistant-examples small{font-size:var(--fs-label);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.assistant-examples button{text-align:left;font-size:13px;padding:7px 10px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--accent-primary)}.assistant-examples button:hover{background:var(--bg-hover)}.assistant-input{display:flex;gap:6px;align-items:center;padding:10px 12px;border-top:1px solid var(--border-subtle)}.assistant-input input{flex:1;min-width:0;height:40px;border:1px solid var(--border-strong);border-radius:var(--radius-pill);padding:0 14px;background:var(--bg-surface);outline:none}.assistant-input input:focus{border-color:var(--accent-primary)}.mic-big{width:40px;height:40px;border-radius:50%;background:var(--bg-hover);color:var(--accent-primary);display:flex;align-items:center;justify-content:center;position:relative;flex:none}.mic-big.on{background:var(--status-blocked);color:#fff}.mic-big.on:before{content:"";position:absolute;top:-5px;right:-5px;bottom:-5px;left:-5px;border-radius:50%;border:2px solid var(--status-blocked);animation:pulse 1.2s ease-out infinite}.assistant-note{font-size:11px;color:var(--text-muted);padding:0 14px 10px}@media (max-width: 600px){.assistant-fab{right:14px;bottom:14px;width:52px;height:52px}.assistant-panel{right:12px;bottom:12px}}.auth-card .logo{width:300px}.auth-card .logo-bar{width:300px;max-width:100%;margin:12px auto 26px;height:5px}.with-eye{position:relative}.with-eye input{padding-right:42px}.with-eye .eye{position:absolute;right:4px;top:4px;width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.with-eye .eye:hover{background:var(--bg-hover);color:var(--text-primary)}.auth-card .foot{font-size:10.5px;letter-spacing:.04em}@media (max-width: 600px){.auth-card{padding:28px 20px 22px}.auth-card .logo,.auth-card .logo-bar{width:240px}}.switch{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.switch input{position:absolute;opacity:0;width:1px;height:1px}.switch .track{width:34px;height:20px;border-radius:999px;background:var(--border-strong);position:relative;transition:background var(--motion-fast);flex:none}.switch .track:after{content:"";position:absolute;left:3px;top:3px;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform var(--motion-fast)}.switch input:checked+.track{background:var(--accent-primary)}.switch input:checked+.track:after{transform:translate(14px)}.switch input:focus-visible+.track{outline:2px solid var(--focus-ring)}.total-card{display:flex;flex-direction:column;align-items:flex-end;padding:4px 14px;border-right:1px solid var(--border-subtle);margin-right:6px}.total-card span{font-size:var(--fs-label);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.total-card b{font-size:20px;line-height:26px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--status-blocked)}.content{padding-bottom:110px}.foot-logos{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-bottom:8px}.action-card{margin-top:8px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-left:3px solid var(--status-done);border-radius:var(--radius-md);padding:8px 10px;color:var(--text-primary);display:flex;flex-direction:column;gap:6px}.action-card b{font-weight:500;font-size:13px}.action-card .acts{display:flex;gap:6px}.action-card.undone{border-left-color:var(--status-neutral);opacity:.75}.hotkey-dictation{position:fixed;top:64px;left:50%;transform:translate(-50%);z-index:130;background:var(--text-primary);color:var(--bg-surface);border-radius:var(--radius-pill);padding:6px 14px 6px 8px;font-size:12.5px;display:flex;align-items:center;gap:8px;box-shadow:var(--shadow-2)}.board-search .mic-btn,.todo-add .mic-btn,.gsearch .mic-btn,.assistant-input .mic-btn{width:26px;height:26px}.row .todo-client{align-self:center}.mchart{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:6px;height:220px;align-items:end}.mbar{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;min-width:0}.mbar .b{width:70%;max-width:34px;background:color-mix(in srgb,var(--status-done) 45%,transparent);border-radius:4px 4px 0 0;transition:height var(--motion-base)}.mbar.cur .b{background:var(--status-done)}.mbar .v{font-size:10px;color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap;margin-bottom:4px;min-height:14px}.mbar .k{font-size:10px;color:var(--text-muted);margin-top:6px;white-space:nowrap}.mbar.cur .k{color:var(--text-primary);font-weight:600}.rank{width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;background:var(--bg-hover);color:var(--text-secondary);flex:none}.rank.r1{background:var(--status-done);color:#fff}.rank.r2{background:var(--status-new);color:#fff}.rank.r3{background:var(--status-progress);color:var(--status-text-dark)}.drawer-head .tabs{overflow-x:auto}@media (max-width: 600px){.mbar .v{display:none}.mchart{gap:2px}}.edge-hover{position:fixed;left:0;top:0;bottom:0;width:8px;z-index:45}.sidebar{transition:transform var(--motion-base),width var(--motion-base);overflow:hidden}@media (min-width: 901px){.app.sb-mini{grid-template-columns:64px minmax(0,1fr)}.app.sb-mini .sidebar .lbl,.app.sb-mini .sidebar .full-only,.app.sb-mini .space-switch,.app.sb-mini .nav-label,.app.sb-mini .nav .soon small{display:none!important}.app.sb-mini .mini-only{display:block!important}.app.sb-mini .brand-name{display:none}.app.sb-mini .brand{justify-content:center;padding:18px 0 14px}.app.sb-mini .nav{padding:0 8px}.app.sb-mini .nav a,.app.sb-mini .nav .soon,.app.sb-mini .nav .nav-btn{justify-content:center;padding:0}.app.sb-mini .nav .count{position:absolute;top:2px;right:2px;min-width:18px;height:16px;font-size:10px;padding:0 4px;margin:0}.app.sb-mini .nav-sep{display:block}.app.sb-mini .side-foot{justify-content:center;padding:10px 0 12px}.app.sb-mini .side-foot .sb-collapse{margin:0}.app.sb-hidden{grid-template-columns:minmax(0,1fr)}.app.sb-hidden .sidebar{position:fixed;top:0;bottom:0;left:0;width:var(--sidebar-w);transform:translate(-100%)}.app.sb-hidden.sb-peek .sidebar{transform:none;box-shadow:var(--shadow-3);z-index:50}}@media (max-width: 900px){.edge-hover,.side-foot .sb-collapse{display:none}}.av{position:relative}.av .pres{position:absolute;right:-3px;bottom:-3px;width:10px;height:10px;border-radius:50%;border:2px solid var(--bg-surface)}.av.sm .pres{width:9px;height:9px;right:-3px;bottom:-3px}.pres.en_ligne{background:var(--status-done)}.pres.absent{background:var(--status-progress)}.pres.hors_ligne{background:var(--status-empty)}.avs .av{overflow:visible}.top-badge{position:absolute;top:3px;right:2px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--status-blocked);color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid var(--bg-surface)}.chat-panel{position:fixed;top:var(--topbar-h);right:0;bottom:0;width:min(400px,100vw);background:var(--bg-surface);border-left:1px solid var(--border-subtle);box-shadow:var(--shadow-3);z-index:62;display:flex;flex-direction:column;animation:slide var(--motion-base)}.chat-panel>header{display:flex;align-items:center;gap:8px;padding:10px 10px 10px 14px;border-bottom:1px solid var(--border-subtle);min-height:52px}.chat-panel>header b{flex:1;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-list{flex:1;overflow:auto;padding:14px}.chat-list .section-title{margin:6px 0 10px}.chat-newgroup{flex:1;overflow:auto;padding:16px}.team-row{display:flex;gap:6px;overflow-x:auto;padding-bottom:14px;margin-bottom:8px}.team-chip{display:flex;flex-direction:column;align-items:center;gap:4px;width:64px;flex:none;padding:6px 2px;border-radius:var(--radius-md);font-size:11.5px;color:var(--text-secondary)}.team-chip:hover{background:var(--bg-hover)}.team-chip .av{width:36px;height:36px;font-size:12px}.team-chip span{max-width:60px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.litem.conv.unread b{font-weight:700}.litem.conv.unread small{color:var(--text-primary)}.litem .badge{display:inline-flex;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--accent-fill);color:#fff;font-size:10.5px;font-weight:700;align-items:center;justify-content:center;margin-top:3px}.conv-ico{width:24px;height:24px;border-radius:6px;display:flex;align-items:center;justify-content:center;flex:none;color:#fff;background:var(--status-waiting)}.conv-ico.dossier{background:var(--div-renov)}.thread{flex:1;display:flex;flex-direction:column;min-height:0}.thread.v-embedded{height:min(560px,calc(100dvh - 260px));border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.thread-msgs{flex:1;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:8px}.day-sep{text-align:center;margin:8px 0;font-size:11px;color:var(--text-muted)}.day-sep span{background:var(--bg-hover);padding:2px 10px;border-radius:999px}.cmsg{display:flex;gap:8px;align-items:flex-end}.cmsg.mine{justify-content:flex-end}.cbody{max-width:78%;display:flex;flex-direction:column}.cmsg.mine .cbody{align-items:flex-end}.cauthor{font-size:11px;color:var(--text-muted);margin:0 0 2px 4px}.cbubble{background:var(--bg-hover);padding:8px 12px;border-radius:14px 14px 14px 4px;font-size:13.5px;line-height:19px;white-space:pre-wrap;word-break:break-word}.cmsg.mine .cbubble{background:var(--accent-fill);color:#fff;border-bottom-left-radius:14px;border-bottom-right-radius:4px}.cbubble.retracted{font-style:italic;opacity:.7}.ctime{font-size:10.5px;color:var(--text-muted);margin:2px 4px 0}.typing{font-size:12px;color:var(--text-muted);font-style:italic;padding-left:4px}.thread-input{display:flex;gap:8px;align-items:flex-end;padding:10px 12px;border-top:1px solid var(--border-subtle)}.thread-input .with-mic{flex:1}.thread-input textarea{width:100%;min-height:40px;max-height:140px;border:1px solid var(--border-strong);border-radius:18px;padding:9px 40px 9px 14px;resize:none;outline:none;background:var(--bg-surface);font-size:13.5px;line-height:20px}.thread-input textarea:focus{border-color:var(--accent-primary)}.thread-input .btn{height:40px;width:40px;padding:0;border-radius:50%}@media (max-width: 600px){.chat-panel{top:0;width:100vw;z-index:85}}@media (min-width: 901px){.assistant-fab.shifted,.assistant-panel.shifted{right:86px}}@media (max-width: 600px){.assistant-fab.shifted{display:none}}.chat-dock{position:fixed;left:20px;bottom:0;z-index:66;pointer-events:none;transition:left var(--motion-base)}@media (min-width: 901px){.app.sb-open .chat-dock{left:calc(var(--sidebar-w) + 20px)}.app.sb-mini .chat-dock{left:84px}}.chat-launcher,.chat-head,.chat-window,.launcher-panel,.chat-preview{pointer-events:auto}.chat-launcher{position:absolute;left:0;bottom:22px;width:56px;height:56px;border-radius:50%;background:var(--accent-fill);color:#fff;box-shadow:var(--shadow-3);display:flex;align-items:center;justify-content:center;transition:background var(--motion-fast),transform var(--motion-fast)}.app:has(.messages-page) .chat-dock{display:none}body:has(.messages-page.has-active) .jv-fab{bottom:92px}.chat-launcher:hover{background:var(--accent-fill-hover);transform:scale(1.05)}.chat-launcher .cb-badge{top:-3px;right:-3px}.chat-launcher.pulse{animation:halo 1.2s ease-out infinite}.chat-launcher.shake{animation-name:shake,halo;animation-duration:.6s,1.2s;animation-iteration-count:1,infinite;animation-timing-function:ease-in-out,ease-out}.chat-launcher.shake:not(.pulse){animation:none}@keyframes halo{0%{box-shadow:var(--shadow-3),0 0 #2f5beaa6}70%{box-shadow:var(--shadow-3),0 0 0 18px #2f5bea00}to{box-shadow:var(--shadow-3),0 0 #2f5bea00}}@keyframes shake{0%,to{transform:rotate(0)}20%{transform:rotate(-14deg)}40%{transform:rotate(12deg)}60%{transform:rotate(-8deg)}80%{transform:rotate(5deg)}}.chat-preview{position:absolute;left:66px;bottom:28px;display:flex;align-items:center;gap:8px;max-width:280px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:22px;padding:6px 14px 6px 6px;box-shadow:var(--shadow-2);text-align:left;animation:fade var(--motion-base)}.chat-preview span{min-width:0;line-height:15px}.chat-preview b{display:block;font-size:12.5px;font-weight:600}.chat-preview small{display:block;font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.launcher-panel{position:absolute;left:0;bottom:90px;width:320px;height:min(520px,calc(100dvh - 160px));background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);display:flex;flex-direction:column;transform-origin:bottom left;animation:grow var(--motion-base);overflow:hidden}@keyframes grow{0%{transform:scale(.85) translateY(10px);opacity:0}to{transform:none;opacity:1}}.launcher-panel>header{display:flex;align-items:center;gap:4px;padding:12px 8px 8px 16px}.launcher-panel>header b{flex:1;font-size:18px;font-weight:600}.lp-search{margin:0 12px 8px;height:36px;display:flex;align-items:center;gap:8px;padding:0 10px;background:var(--bg-hover);border-radius:18px;color:var(--text-muted)}.lp-search input{flex:1;min-width:0;border:0;background:none;outline:none;font-size:13px;color:var(--text-primary)}.lp-body{flex:1;overflow:auto;padding:4px 8px 8px}.lp-body .section-title{margin:6px 8px}.lp-row{display:flex;align-items:center;gap:10px;width:100%;padding:7px 8px;border-radius:10px;text-align:left}.lp-row:hover{background:var(--bg-hover)}.lp-row .av{width:38px;height:38px;font-size:12.5px}.lp-row .av .pres{width:12px;height:12px}.lp-row .t{flex:1;min-width:0;line-height:17px}.lp-row .t b{display:block;font-weight:500;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lp-row .t small{display:block;font-size:12px;color:var(--text-muted)}.lp-row .t small.en_ligne{color:var(--status-done);font-weight:500}.lp-row.unread .t b{font-weight:700}.launcher-panel footer{border-top:1px solid var(--border-subtle);padding:6px 10px;display:flex;justify-content:center}.cb-badge{position:absolute;top:-2px;right:2px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--status-blocked);color:#fff;font-size:10.5px;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid var(--bg-surface)}.cb-badge.static{position:static;border:0}.conv-ico.big{width:38px;height:38px;border-radius:50%}.chat-heads{position:absolute;left:2px;bottom:92px;display:flex;flex-direction:column-reverse;gap:10px}.chat-windows{position:absolute;left:72px;bottom:0;display:flex;flex-direction:row;gap:12px;align-items:flex-end}.chat-window{width:330px;height:450px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-bottom:0;border-radius:12px 12px 0 0;box-shadow:var(--shadow-3);display:flex;flex-direction:column;overflow:hidden;animation:rise var(--motion-base)}.chat-window>header{display:flex;align-items:center;gap:8px;padding:8px 6px 8px 10px;border-bottom:1px solid var(--border-subtle);cursor:pointer}.chat-window.blink>header{animation:blinkhead .8s ease-in-out 2}.cw-title{flex:1;min-width:0;line-height:15px}.cw-title b{display:block;font-size:13.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cw-title small{font-size:11px;color:var(--text-muted)}.chat-head{position:relative;width:52px;height:52px}.chat-head .ch-open{width:52px;height:52px;border-radius:50%;box-shadow:var(--shadow-2);display:flex;align-items:center;justify-content:center;background:var(--bg-surface)}.chat-head .ch-open .av{width:48px;height:48px;font-size:15px}.chat-head .ch-open .conv-ico.big{width:48px;height:48px}.chat-head .ch-close{position:absolute;top:-4px;left:-4px;width:20px;height:20px;border-radius:50%;background:var(--bg-surface);border:1px solid var(--border-subtle);color:var(--text-muted);display:none;align-items:center;justify-content:center}.chat-head:hover .ch-close{display:flex}.chat-head .cb-badge{top:-2px;right:-2px}.chat-head.blink .ch-open{animation:pop .5s ease-in-out 3}@keyframes rise{0%{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}@keyframes pop{0%,to{transform:scale(1)}50%{transform:scale(1.12);box-shadow:0 0 0 4px var(--focus-ring)}}@keyframes blinkhead{0%,to{background:transparent}50%{background:var(--bg-selected)}}@media (prefers-reduced-motion: reduce){.chat-launcher,.chat-launcher.pulse,.chat-launcher.shake,.chat-head .ch-open,.chat-window,.chat-window>header,.launcher-panel,.chat-preview,.typing-dots i,.mic-btn.on:before,.mic-big.on:before{animation:none!important}}.thread.v-window .thread-msgs{padding:10px;gap:2px}.thread.v-page{flex:1;min-height:0}.cmsg{gap:6px;margin-top:1px}.cmsg.last{margin-bottom:8px}.av-spacer{width:24px;flex:none}.cbubble{border-radius:18px}.cmsg:not(.mine) .cbubble{border-bottom-left-radius:18px}.cmsg:not(.mine).last .cbubble{border-bottom-left-radius:4px}.cmsg.mine .cbubble{border-bottom-right-radius:18px}.cmsg.mine.last .cbubble{border-bottom-right-radius:4px}.cbubble.only-img{padding:3px;background:transparent!important}.cimg{display:block;max-width:220px;max-height:220px;border-radius:14px;margin-bottom:2px}.cbubble span{display:block}.ctime{display:none}.cmsg:hover .ctime{display:block}.cseen{font-size:10.5px;color:var(--text-muted);margin:2px 4px 0;text-align:right}.typing-row{align-items:center;margin-top:4px}.typing-dots{background:var(--bg-hover);border-radius:18px;padding:10px 12px;display:flex;gap:4px}.typing-dots i{width:7px;height:7px;border-radius:50%;background:var(--text-muted);animation:dot 1.2s infinite ease-in-out}.typing-dots i:nth-child(2){animation-delay:.15s}.typing-dots i:nth-child(3){animation-delay:.3s}@keyframes dot{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-4px);opacity:1}}.composer{display:flex;align-items:flex-end;gap:4px;padding:8px;border-top:1px solid var(--border-subtle)}.composer-field{flex:1;min-width:0;display:flex;align-items:flex-end;background:var(--bg-hover);border-radius:20px;padding:2px 4px 2px 12px;position:relative}.composer-field textarea{flex:1;min-width:0;border:0;outline:none;background:transparent;resize:none;font-size:13.5px;line-height:20px;padding:7px 0;max-height:120px;color:var(--text-primary)}.composer-field .icon-btn,.composer-field .mic-btn{flex:none;margin-bottom:2px}.send-btn{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--accent-primary);flex:none}.send-btn:hover:not(:disabled){background:var(--bg-hover)}.send-btn:disabled{color:var(--text-muted)}.emoji-pop{position:absolute;bottom:44px;right:0;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-2);padding:6px;display:grid;grid-template-columns:repeat(6,32px);gap:2px;z-index:5}.emoji-pop button{width:32px;height:32px;border-radius:6px;font-size:18px}.emoji-pop button:hover{background:var(--bg-hover)}.messages-page{display:grid;grid-template-columns:340px minmax(0,1fr);gap:0;height:calc(100dvh - var(--topbar-h) - 48px);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-1);margin-bottom:-60px}.mp-list{border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;padding:14px;min-height:0}.mp-head{display:flex;align-items:center;margin-bottom:10px}.mp-head h1{font-size:22px;font-weight:600;flex:1}.mp-convs{flex:1;overflow:auto;display:flex;flex-direction:column;gap:2px}.mp-conv{display:flex;align-items:center;gap:10px;padding:8px;border-radius:10px;text-align:left}.mp-conv:hover{background:var(--bg-hover)}.mp-conv.on{background:var(--bg-selected)}.mp-conv .av{width:38px;height:38px;font-size:12.5px}.mp-conv .t{flex:1;min-width:0;line-height:17px}.mp-conv .t b{display:block;font-weight:500;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mp-conv .t small{display:block;font-size:12px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mp-conv.unread .t b,.mp-conv.unread .t small{font-weight:700;color:var(--text-primary)}.mp-conv .side{display:flex;flex-direction:column;align-items:flex-end;font-size:11px;color:var(--text-muted)}.mp-thread{display:flex;flex-direction:column;min-height:0;min-width:0}.mp-thread-head{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--border-subtle)}.mp-thread-head .av{width:38px;height:38px}.mp-back{display:none}@media (max-width: 900px){.chat-dock{left:14px}.launcher-panel{position:fixed;inset:auto 8px 86px 8px;width:auto}.chat-window{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100dvh;border-radius:0;z-index:90}.chat-windows .chat-window:not(:first-child){display:none}.messages-page{grid-template-columns:minmax(0,1fr);height:calc(100dvh - var(--topbar-h) - 32px)}.messages-page.has-active .mp-list{display:none}.messages-page:not(.has-active) .mp-thread{display:none}.mp-back{display:inline-flex}}.demo-roles{padding:8px 10px 10px;border-bottom:1px solid var(--border-subtle);margin-bottom:4px;display:flex;flex-direction:column;gap:6px}.demo-roles>span{font-size:var(--fs-label);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.demo-roles .seg button{padding:0 8px;font-size:12px}.usermenu .pop{min-width:300px}.idea-quick{display:flex;align-items:center;gap:10px;background:var(--bg-surface);border:2px solid var(--border-subtle);border-radius:16px;padding:8px 8px 8px 18px;box-shadow:var(--shadow-1);color:#e9b800;transition:border-color var(--motion-fast)}.idea-quick:focus-within{border-color:var(--accent-primary)}.idea-quick input{flex:1;min-width:0;border:0;outline:none;background:none;font-size:20px;line-height:30px;height:44px;color:var(--text-primary)}.idea-quick input::placeholder{color:var(--text-muted)}.idea-hint{font-size:12px;margin:6px 4px 18px;display:flex;align-items:center;gap:4px;flex-wrap:wrap}.idea-wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px;align-items:start}.postit{position:relative;background:var(--pi-bg);color:var(--status-text-dark);border-radius:4px 4px 14px;border-top:6px solid var(--pi-edge);padding:12px 14px 10px;box-shadow:0 2px 6px #1f24331f;cursor:pointer;display:flex;flex-direction:column;gap:8px;transition:transform var(--motion-fast),box-shadow var(--motion-fast);min-height:150px}.postit:nth-child(3n+1){transform:rotate(-.6deg)}.postit:nth-child(3n+2){transform:rotate(.5deg)}.postit:hover{transform:rotate(0) translateY(-2px);box-shadow:0 8px 18px #1f24332e}.postit.pinned{box-shadow:0 0 0 2px var(--pi-edge),0 4px 12px #1f243329}.pi-top{display:flex;align-items:center;gap:6px;font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#1f2433a6}.pi-pin{color:var(--status-blocked);margin-left:auto}.pi-priv{margin-left:auto;background:#1f243314;border-radius:999px;padding:1px 7px;letter-spacing:.02em}.pi-pin+.pi-priv{margin-left:4px}.postit h3{font-size:15px;line-height:20px;font-weight:600}.postit p{font-size:13px;line-height:18px;color:#1f2433cc;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.pi-img{width:100%;max-height:140px;object-fit:cover;border-radius:6px}.pi-tags{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.pi-tags .div-logo{background:#ffffffbf;padding:2px 5px;border-radius:4px}.pi-tag{font-size:11.5px;color:#1f2433b3;font-weight:500}.pi-foot{display:flex;align-items:center;gap:8px;margin-top:auto;padding-top:4px}.pi-foot .av{border-color:var(--pi-bg)}.pi-date{font-size:11px;color:#1f243399}.pi-st{margin-left:auto;font-size:10.5px;font-weight:600;padding:2px 8px;border-radius:999px;white-space:nowrap}.pi-vote{display:inline-flex;align-items:center;gap:4px;height:26px;min-width:32px;padding:0 8px;border-radius:999px;background:#fff9;color:#1f2433bf;font-size:12px;font-weight:600;justify-content:center}.pi-vote.on{background:var(--accent-fill);color:#fff}.kanban .postit{transform:none;min-height:0}.btn.voted{border-color:var(--accent-primary);color:var(--accent-primary)}.pj-zone{border:1.5px dashed var(--border-strong);border-radius:var(--radius-md);padding:10px;outline:none}.pj-zone:focus{border-color:var(--accent-primary)}.pj-list{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:6px}.pj-item{display:flex;align-items:center;gap:4px;background:var(--bg-hover);border-radius:var(--radius-md);padding:4px}.pj-item img{width:72px;height:72px;object-fit:cover;border-radius:6px;display:block}.pj-link{display:inline-flex;align-items:center;gap:4px;font-size:12.5px;padding:0 6px}[data-theme=dark] .postit{box-shadow:0 2px 8px #0006}body:has(.drawer) .assistant-fab{display:none}.toast{display:flex;align-items:center;gap:14px}.toast-action{color:#8db4ff;font-weight:600;font-size:13px;padding:2px 4px;border-radius:4px}.toast-action:hover{background:#ffffff1a}.row-actions{justify-content:flex-end;gap:0;padding:0 4px!important}.row-actions .trash{opacity:0;transition:opacity var(--motion-fast)}.row.item:hover .row-actions .trash,.row-actions .trash:focus-visible{opacity:1}.icon-btn.trash:hover{color:var(--status-blocked)}.row-menu{position:fixed;z-index:100;min-width:180px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-2);padding:6px}.row.item{position:relative}.swipe-btn{position:absolute;right:0;top:0;bottom:0;width:110px;background:var(--status-blocked);color:#fff;font-weight:600;font-size:13px;z-index:2;animation:fade var(--motion-fast)}.bulk-bar{position:fixed;left:50%;transform:translate(-50%);bottom:22px;z-index:64;background:var(--text-primary);color:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);display:flex;align-items:center;gap:6px;padding:6px 8px 6px 14px;font-size:13px;white-space:nowrap}.bulk-bar button{height:34px;padding:0 12px;border-radius:8px;display:flex;align-items:center;gap:6px;color:inherit}.bulk-bar button:hover{background:#ffffff1a}.bulk-bar button.danger{background:var(--status-blocked);color:#fff}.todo-row .sel-box{width:16px;height:16px;flex:none;margin-left:2px}.todo-row .trash{opacity:0}.todo-row:hover .trash,.todo-row .trash:focus-visible{opacity:1}.todo-row{position:relative}.todo-row.swiped .swipe-btn{display:block}@media (hover: none){.row-actions .trash,.todo-row .trash{opacity:.7}}.sb-trash{position:relative;margin-left:auto;color:var(--text-secondary)}.sb-trash.active{background:var(--bg-selected);color:var(--accent-primary)}.side-foot .sb-trash+.sb-collapse{margin-left:0}.trash-count{position:absolute;top:-3px;right:-4px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--status-neutral);color:#fff;font-size:9.5px;font-weight:700;display:flex;align-items:center;justify-content:center}.trash-list .litem{gap:14px}.trash-head{font-size:var(--fs-label);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);min-height:40px;cursor:default;background:var(--bg-surface)}.trash-head:hover{background:var(--bg-surface)}.th-type{width:92px;flex:none}.th-by{width:130px;flex:none;display:flex;align-items:center;gap:6px;font-size:12.5px}.th-left{width:160px;flex:none;font-size:12.5px;color:var(--text-secondary)}.th-left.late{color:var(--status-blocked);font-weight:600}.th-act{width:170px;flex:none;display:flex;justify-content:flex-end;gap:4px}.litem.sel{background:var(--bg-selected)}.icon-btn.trash-inline:hover{color:var(--status-blocked)}@media (min-width: 901px){.app.sb-mini .side-foot{flex-direction:column;gap:6px}.app.sb-mini .sb-trash{margin:0}}@media (max-width: 700px){.th-by,.th-left{display:none}.th-act{width:auto}.trash-list .litem{flex-wrap:wrap}}.side-foot .demo-badge{font-size:10px;padding:3px 8px;letter-spacing:.02em}.side-foot{gap:4px;padding-right:6px}.nav .nav-btn{width:100%;border:0;background:none;cursor:pointer;font-family:inherit;text-align:left}.bonne-humeur{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:var(--space-4);margin-bottom:var(--space-6)}.bonne-humeur.seul{grid-template-columns:minmax(0,1fr)}.bonne-humeur .panel{padding:16px 18px;display:flex;flex-direction:column;gap:8px}.bh-tete{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:30px}.bh-genre{font-size:var(--fs-label);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);border-left:3px solid var(--accent-primary);padding-left:8px}.bh-genre.g-anecdote{border-color:#f59e0b}.bh-genre.g-blague{border-color:#00a35c}.bh-genre.g-esprit{border-color:#d83a52}.bh-genre.g-meteo{border-color:#0ea5e9}.bh-texte{font-size:16px;line-height:1.5;color:var(--text-primary);margin:0}.bh-source{font-size:12px;color:var(--text-secondary);margin:0;font-style:italic}.bh-now{display:flex;align-items:center;gap:12px;color:var(--text-primary)}.bh-temp{font-size:30px;line-height:1;font-weight:600;font-variant-numeric:tabular-nums}.bh-ciel{display:flex;flex-direction:column;font-size:13px}.bh-ciel small{color:var(--text-muted);font-size:12px}.bh-jours{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.bh-jour{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-size:12px;font-variant-numeric:tabular-nums}.bh-jour small{color:var(--text-muted);font-size:11px}.bh-jour.risque{border-color:var(--status-blocked)}.bh-alerte{display:flex;align-items:center;gap:6px;margin:0;font-size:12px;color:var(--status-blocked)}.bh-ok{margin:0;font-size:12px;color:var(--status-done)}@media (max-width: 900px){.bonne-humeur{grid-template-columns:minmax(0,1fr)}}.nav-sec{margin-bottom:2px}.nav-sec-head{display:flex;align-items:center;gap:6px;width:100%;height:28px;margin-top:8px;padding:0 8px;border:0;background:none;cursor:pointer;font-family:inherit;font-size:var(--fs-label);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);border-radius:6px;text-align:left}.nav-sec-head:hover{background:var(--bg-hover);color:var(--text-secondary)}.nav-sec-head.static{cursor:default}.nav-sec-head.static:hover{background:none;color:var(--text-muted)}.nav-sec-head .lbl{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-sec-head .count{margin-left:auto}.nav-sec.fav .nav-sec-head .i{color:var(--status-progress)}.nav-row{position:relative}.nav-row:hover>a{padding-right:30px!important}.nav-star{position:absolute;right:4px;top:7px;width:22px;height:22px;border-radius:5px;border:0;background:none;color:var(--text-muted);display:flex;align-items:center;justify-content:center;opacity:0;cursor:pointer;transition:opacity var(--motion-fast)}.nav-row:hover .nav-star,.nav-star:focus-visible{opacity:1}.nav-star:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-star.on{color:var(--status-progress)}.nav-star.on svg{fill:currentColor}.nav-row>a .count{margin-right:0}.nav-row:hover>a .count{visibility:hidden}.nav-sep{display:none;height:1px;background:var(--border-subtle);margin:8px 10px}@media (min-width: 901px){.app.sb-mini .nav-sec-head{display:none}.app.sb-mini .nav-row>a{padding-right:0!important}.app.sb-mini .nav-row:hover>a .count{visibility:visible}}.gsearch .results{max-height:min(70vh,520px)}.gsearch .results .gs-group{font-size:var(--fs-label);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);padding:10px 10px 4px}.gsearch .results button.gs-hit{flex-direction:row;align-items:center;gap:10px}.gsearch .results .gs-hit>.i{color:var(--text-muted);flex:none}.gsearch .results .gs-txt{display:flex;flex-direction:column;min-width:0;flex:1}.gsearch .results .gs-txt b,.gsearch .results .gs-txt small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gsearch .results .gs-hit kbd{margin-left:auto}.gsearch .results .gs-foot{border-top:1px solid var(--border-subtle);margin-top:6px;padding:8px 10px 4px;font-size:11.5px;color:var(--text-muted)}.sv-bar{display:flex;align-items:flex-end;gap:var(--space-3);border-bottom:1px solid var(--border-subtle);margin-bottom:var(--space-4)}.sv-bar .views.sv-tabs{border-bottom:0;margin-bottom:0;flex:1;min-width:0}.sv-tabs button{position:relative}.sv-tabs .sv-shared{color:var(--text-muted)}.sv-tabs .sv-more{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:4px;color:var(--text-muted);margin-left:2px;opacity:0}.sv-tabs button:hover .sv-more,.sv-tabs button.on .sv-more{opacity:1}.sv-tabs .sv-more:hover{background:var(--bg-hover);color:var(--text-primary)}.sv-tabs .sv-add{color:var(--accent-primary)}.sv-right{display:flex;align-items:center;gap:8px;padding-bottom:6px;flex:none}.sv-dirty{font-size:12px;color:var(--text-muted);font-style:italic}.check-line{display:flex;align-items:center;gap:8px;font-size:13px;padding:4px 0;cursor:pointer;color:var(--text-primary)}.check-line input{width:16px;height:16px;accent-color:var(--accent-primary)}.bo{position:relative;display:inline-block;vertical-align:middle}.btn.on{border-color:var(--accent-primary)!important;color:var(--accent-primary)!important;background:var(--bg-selected)!important}.btn .n{font-size:11px;font-weight:600;background:var(--bg-hover);border-radius:var(--radius-pill);padding:0 6px;margin-left:2px}.bo-pop{position:absolute;right:0;top:36px;z-index:60;width:280px;max-height:70vh;overflow:auto;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-2);padding:10px 12px;text-align:left}.bo-sec+.bo-sec{border-top:1px solid var(--border-subtle);margin-top:10px;padding-top:10px}.bo-title{display:flex;align-items:center;gap:6px;font-size:var(--fs-label);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.bo-row{display:flex;gap:6px}.bo .select-sm{max-width:none;width:100%}.select-sm.on{border-color:var(--accent-primary);color:var(--accent-primary);background:var(--bg-selected)}.select-sm.full{max-width:none;width:100%}.toolbar .right{display:inline-flex;align-items:center;gap:6px}.cf-cell{width:100%;height:100%;min-height:32px;display:flex;align-items:center;gap:6px;padding:0 8px;border:1px solid transparent;border-radius:4px;background:none;font:inherit;font-size:13px;color:var(--text-primary);text-align:left;cursor:text;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cf-cell:hover{border-color:var(--border-strong);background:var(--bg-surface)}.cf-cell.num{justify-content:flex-end;font-variant-numeric:tabular-nums}.cf-edit{width:100%;padding:2px}.cf-edit input,.cf-edit select{width:100%;height:30px;font-size:13px}.cf-list{margin-bottom:var(--space-4)}.cf-options{display:flex;flex-direction:column;gap:6px;margin:4px 0 12px}.cf-opt{display:grid;grid-template-columns:12px minmax(0,1fr) 170px 30px;gap:8px;align-items:center}.cf-opt>i{width:12px;height:12px;border-radius:3px}.cf-opt input{width:100%}.na{display:inline-flex;align-items:center;gap:6px;max-width:100%;font-size:12.5px;line-height:1.2;min-width:0}.na-when{flex:none;display:inline-flex;align-items:center;gap:3px;font-weight:600;font-variant-numeric:tabular-nums;padding:2px 7px;border-radius:var(--radius-pill);background:var(--bg-hover);color:var(--text-secondary)}.na-what{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary);min-width:0}.na-retard .na-when{background:var(--status-blocked);color:#fff}.na-aujourdhui .na-when{background:var(--status-progress);color:var(--status-text-dark)}.na-planifiee .na-when{background:color-mix(in srgb,var(--status-done) 16%,var(--bg-surface));color:var(--status-done)}.na-missing{color:var(--status-blocked);font-weight:600}.na-closed{color:var(--text-muted)}.kcard .na{margin-top:6px}.na-quick{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}.na-quick .chip{height:24px;border:0;cursor:pointer;font-family:inherit}.na-box{border-left:3px solid var(--accent-primary);padding-left:12px}.na-box.missing{border-left-color:var(--status-blocked)}.section-title .req{color:var(--status-blocked)}.fsec .banner{margin-bottom:var(--space-3)}.chips-edit{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.chips-edit .chip button{border:0;background:none;color:inherit;display:inline-flex;cursor:pointer;padding:0}.chips-edit .select-sm{max-width:190px}input.readonly{background:var(--bg-hover)!important;color:var(--text-secondary)!important;cursor:not-allowed}.hint{display:block;font-size:12px;color:var(--text-muted);margin-top:4px}.hint.full{grid-column:1 / -1}.btn.danger-txt{color:var(--status-blocked);margin-right:auto}.drawer-foot .btn.danger-txt+.hint{margin-right:0}.cd{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;padding:3px 9px;border-radius:var(--radius-pill);background:var(--bg-hover);color:var(--text-secondary);white-space:nowrap;font-variant-numeric:tabular-nums}.cd b{font-weight:600;color:var(--text-primary)}.cd-step{color:var(--text-muted)}.cd-bientot{background:var(--status-progress);color:var(--status-text-dark)}.cd-bientot b,.cd-bientot .cd-step{color:var(--status-text-dark)}.cd-depasse{background:var(--status-blocked);color:#fff}.cd-depasse b,.cd-depasse .cd-step{color:#fff}.cd-none{background:none;color:var(--text-muted)}.cd-def{font-weight:700}.btn.blocked{color:var(--status-blocked);border-color:color-mix(in srgb,var(--status-blocked) 45%,var(--border-subtle))}.pill.ok{background:color-mix(in srgb,var(--status-done) 16%,var(--bg-surface));color:var(--status-done)}.banner.ok{background:color-mix(in srgb,var(--status-done) 12%,var(--bg-surface));color:var(--status-done);border:1px solid color-mix(in srgb,var(--status-done) 35%,var(--border-subtle))}.banner>div b{display:block;margin-bottom:2px}.kv{display:grid;grid-template-columns:160px minmax(0,1fr);gap:6px 12px;font-size:13px;margin:12px 0}.kv dt{color:var(--text-muted)}.mission-box{border:1px solid var(--border-subtle);border-left:4px solid var(--plat);border-radius:var(--radius-md);padding:12px 14px;margin-bottom:var(--space-5)}.mission-box .section-title{display:flex;align-items:center;gap:8px;margin-top:0}.mission-box .section-title .right{margin-left:auto;text-transform:none;letter-spacing:0;font-weight:500}.plat-dot{width:10px;height:10px;border-radius:3px;background:var(--plat)}.mission-actions{display:flex;justify-content:flex-end;margin-top:10px}.views button .n.alert{background:var(--status-blocked);color:#fff}.panel-lead{font-size:12.5px;color:var(--text-muted);margin:-6px 0 10px}.panel-foot{font-size:12px;margin-top:8px}.panel h3 .n.alert{background:var(--status-blocked);color:#fff;border-radius:var(--radius-pill);padding:0 7px}.litem.relance{position:relative}.litem.relance .bar-left{background:var(--status-neutral)}.litem.relance.r-retard .bar-left,.litem.relance.r-manquante .bar-left{background:var(--status-blocked)}.litem.relance.r-aujourdhui .bar-left{background:var(--status-progress)}.litem.relance.r-devis .bar-left{background:var(--status-waiting)}.relance-why{display:flex;flex-direction:column;align-items:flex-end;gap:4px;min-width:0;max-width:260px}.why{font-size:11.5px;font-weight:600}.why-retard,.why-manquante{color:var(--status-blocked)}.why-aujourdhui{color:var(--text-secondary)}.why-devis{color:var(--status-waiting)}.why-silence{color:var(--text-muted)}.dir-block h3 .i{color:var(--accent-group)}.dir-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.dir-card{border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:12px 14px;min-width:0;background:var(--bg-surface)}.dir-card .list{border:0}.dir-card .litem{padding:8px 4px;min-height:44px}.dir-h{display:flex;align-items:baseline;gap:8px;font-size:13px;font-weight:600;margin-bottom:10px}.dir-h b{margin-left:auto;font-size:15px}.dir-h b.late{color:var(--status-blocked)}.dir-bar{display:grid;grid-template-columns:150px minmax(0,1fr) 120px;gap:10px;align-items:center;padding:5px 0;color:inherit;font-size:12.5px}a.dir-bar:hover .dir-lbl{color:var(--accent-primary)}.dir-lbl{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.dir-lbl small{color:var(--text-muted);font-variant-numeric:tabular-nums}.dir-track{height:10px;border-radius:var(--radius-pill);background:var(--bg-hover);overflow:hidden}.dir-track i{display:block;height:100%;border-radius:var(--radius-pill)}.dir-val{text-align:right;font-weight:600;font-variant-numeric:tabular-nums}.cimg-ph{display:inline-flex;width:120px;height:80px;align-items:center;justify-content:center;background:var(--bg-hover);border-radius:8px}.cfile{display:inline-flex;align-items:center;gap:6px;text-decoration:underline}@media (max-width: 900px){.sv-bar{flex-direction:column;align-items:stretch;gap:4px}.sv-right{justify-content:flex-end;flex-wrap:wrap}.dir-grid{grid-template-columns:minmax(0,1fr)}.dir-bar{grid-template-columns:110px minmax(0,1fr) 100px}.relance-why{display:none}.litem.relance{flex-wrap:wrap}.relance-st{display:none}.bo-pop{right:auto;left:0}.cf-opt{grid-template-columns:12px minmax(0,1fr) 120px 30px}}.drawer-head .tabs{overflow-x:auto;scrollbar-width:thin}.drawer-head .tabs button{white-space:nowrap;flex:none}.linked-head{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-bottom:14px;flex-wrap:wrap;font-size:13px}.nav-sec[class*=" s-"] .nav-sec-head{color:var(--sec)}.nav-sec[class*=" s-"] .nav-sec-head:hover{color:var(--sec);background:color-mix(in srgb,var(--sec) 10%,transparent)}.nav-sec[class*=" s-"] .nav-sec-head:before{content:"";width:3px;height:14px;border-radius:2px;background:var(--sec);flex:none}.nav-sec .nav-chev{transition:transform .22s ease}.nav-sec.closed .nav-chev{transform:rotate(-90deg)}.nav-sec-body{display:grid;grid-template-rows:1fr;opacity:1;transition:grid-template-rows .26s ease,opacity .2s ease}.nav-sec.closed .nav-sec-body{grid-template-rows:0fr;opacity:0}.nav-sec-inner{min-height:0;overflow:hidden}.nav-sec[class*=" s-"] .nav-sec-inner{border-left:2px solid color-mix(in srgb,var(--sec) 35%,transparent);margin-left:12px;padding-left:4px}.nav-sec[class*=" s-"] .nav-row>a .i{color:var(--sec)}.nav-sec[class*=" s-"] .nav-row>a.active{background:color-mix(in srgb,var(--sec) 16%,transparent);color:var(--text-primary);box-shadow:inset 3px 0 0 var(--sec)}.nav-sec:not(.closed) .nav-sec-inner .nav-row{animation:navEntree .28s ease both}.nav-sec:not(.closed) .nav-sec-inner .nav-row:nth-child(2){animation-delay:.02s}.nav-sec:not(.closed) .nav-sec-inner .nav-row:nth-child(3){animation-delay:.04s}.nav-sec:not(.closed) .nav-sec-inner .nav-row:nth-child(4){animation-delay:.06s}.nav-sec:not(.closed) .nav-sec-inner .nav-row:nth-child(n+5){animation-delay:.08s}@keyframes navEntree{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:none}}@media (min-width: 0){.app.sb-mini .nav-sec[class*=" s-"] .nav-sec-inner{border-left:0;margin-left:0;padding-left:0}}@media (prefers-reduced-motion: reduce){.nav-sec-body,.nav-sec .nav-chev{transition:none}.nav-sec:not(.closed) .nav-sec-inner .nav-row{animation:none}}.pt-root{overflow-x:clip;min-height:100vh;min-height:100dvh;background:var(--bg-app);color:var(--text-primary);font-family:var(--font-family);font-size:15px;line-height:1.5;display:flex;flex-direction:column}.pt-root h1,.pt-root h2,.pt-root h3,.pt-root h4{margin:0;font-weight:600;letter-spacing:-.01em}.pt-root p{margin:var(--space-2) 0}.pt-top{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:10px var(--space-4);background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);padding-top:max(10px,env(safe-area-inset-top))}.pt-logo{height:26px}.pt-top-actions{display:flex;align-items:center;gap:4px;flex:0 0 auto}.pt-top{padding-left:12px;padding-right:12px}.pt-langs{display:inline-flex;border:1px solid var(--border-subtle);border-radius:var(--radius-pill);overflow:hidden}.pt-langs button{min-width:36px;height:34px;font-size:12px;font-weight:600;color:var(--text-secondary);background:transparent}.pt-langs button.on{background:var(--accent-fill);color:var(--text-inverse)}.pt-icon{width:34px;height:34px;flex:0 0 auto;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--text-secondary);background:transparent}.pt-icon:hover{background:var(--bg-hover)}.pt-demo{background:var(--bg-comment);border-bottom:1px solid var(--border-comment);color:var(--text-secondary);font-size:12.5px;text-align:center;padding:6px var(--space-4)}.pt-hero{padding:var(--space-5) var(--space-4) var(--space-3);max-width:1080px;width:100%;margin:0 auto;box-sizing:border-box}.pt-hello{color:var(--text-secondary);font-size:14px;margin-bottom:2px}.pt-hero h1{font-size:26px;line-height:1.2}.pt-rule{width:44px;height:3px;background:var(--accent-group);border-radius:2px;margin:10px 0 6px}.pt-hero p{color:var(--text-secondary);font-size:14px;max-width:640px}.pt-todo{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}.pt-todo button{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border-radius:var(--radius-pill);background:var(--bg-surface);border:1px solid var(--status-progress);color:var(--text-primary);font-size:13px;font-weight:500}.pt-tabs{position:sticky;top:55px;z-index:15;display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;padding:6px var(--space-4);background:var(--bg-app);border-bottom:1px solid var(--border-subtle);max-width:1080px;width:100%;margin:0 auto;box-sizing:border-box}.pt-tabs::-webkit-scrollbar{display:none}.pt-tabs button{flex:0 0 auto;height:38px;padding:0 14px;border-radius:var(--radius-pill);font-size:14px;font-weight:500;color:var(--text-secondary);background:transparent;display:inline-flex;align-items:center;gap:6px}.pt-tabs button.on{background:var(--bg-surface);color:var(--text-primary);box-shadow:var(--shadow-1);border:1px solid var(--border-subtle)}.pt-badge{min-width:20px;height:20px;padding:0 6px;border-radius:var(--radius-pill);background:var(--accent-group);color:var(--text-inverse);font-size:11px;font-weight:600;display:inline-flex;align-items:center;justify-content:center}.pt-main{flex:1;width:100%;max-width:1080px;margin:0 auto;padding:var(--space-4);box-sizing:border-box}.pt-stack{display:flex;flex-direction:column;gap:var(--space-3)}.pt-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-1)}.pt-card h3{font-size:16px;margin-bottom:var(--space-2)}.pt-card.attention{border-color:var(--status-progress);box-shadow:0 0 0 1px var(--status-progress) inset,var(--shadow-1)}.pt-card[data-div=renov]{border-top:4px solid var(--div-renov)}.pt-card[data-div=roof]{border-top:4px solid var(--div-roof)}.pt-card[data-div=energy]{border-top:4px solid var(--div-energy)}.pt-card[data-div=win]{border-top:4px solid var(--div-win)}.pt-muted{color:var(--text-muted);font-size:13px}.pt-small{font-size:12px;color:var(--text-muted)}.pt-strong{font-weight:600}.pt-label{font-size:12px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.pt-mono{font-variant-numeric:tabular-nums}.pt-row{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center}.pt-section-title{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.pt-section-title h2{font-size:18px}.pt-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-4);color:var(--text-secondary)}.pt-spinner{width:28px;height:28px;border-radius:50%;border:3px solid var(--border-subtle);border-top-color:var(--accent-primary);animation:pt-spin .9s linear infinite}@keyframes pt-spin{to{transform:rotate(360deg)}}.pt-error{max-width:460px;margin:var(--space-6) auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--space-2);color:var(--text-secondary)}.pt-error h2{color:var(--text-primary);font-size:20px}.pt-btn{height:44px;padding:0 18px;border-radius:var(--radius-md);font-weight:600;font-size:14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;cursor:pointer}.pt-btn.primary{background:var(--accent-fill);color:var(--text-inverse)}.pt-btn.primary:hover:not(:disabled){background:var(--accent-fill-hover)}.pt-btn.primary:disabled{opacity:.45;cursor:not-allowed}.pt-btn.ghost{background:var(--bg-surface);border:1px solid var(--border-strong);color:var(--text-primary)}.pt-btn.sm{height:34px;padding:0 12px;font-size:13px}.pt-btn.block{width:100%;margin-top:var(--space-2)}.pt-link{display:inline-flex;align-items:center;gap:4px;color:var(--accent-primary);font-weight:500;font-size:14px;padding:6px 0;background:none}.pt-back{display:inline-flex;align-items:center;gap:4px;color:var(--text-secondary);font-size:14px;padding:4px 0 var(--space-3);background:none}.pt-pill{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:var(--radius-pill);font-size:12px;font-weight:600;color:var(--text-inverse);white-space:nowrap}.pt-pill.done{background:var(--status-done)}.pt-pill.progress{background:var(--status-progress);color:var(--status-text-dark)}.pt-pill.new{background:var(--status-new)}.pt-pill.waiting{background:var(--status-waiting)}.pt-pill.blocked{background:var(--status-blocked)}.pt-pill.neutral{background:var(--status-empty);color:var(--status-text-dark)}.pt-tag{display:inline-block;margin-left:6px;padding:0 6px;border-radius:var(--radius-sm);background:var(--bg-column);color:var(--text-secondary);font-size:11px;font-weight:600}.pt-dossier-meta{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:6px}.pt-ref{font-size:12.5px;color:var(--text-muted);font-weight:500;font-variant-numeric:tabular-nums}.pt-dossier-meta .pt-pill{margin-left:auto}.pt-immeuble{font-size:12.5px;font-weight:600;color:var(--accent-primary);text-transform:uppercase;letter-spacing:.03em}.pt-dossier-head h2,.pt-devis h2{font-size:18px;line-height:1.3;margin:2px 0}.pt-progress{margin-top:var(--space-4)}.pt-progress-top{display:flex;justify-content:space-between;align-items:baseline;font-size:14px;color:var(--text-secondary)}.pt-progress-top strong{font-size:28px;color:var(--text-primary);font-weight:700}.pt-bar{height:10px;border-radius:var(--radius-pill);background:var(--bg-column);overflow:hidden;margin:6px 0}.pt-bar.small{height:6px;margin:var(--space-3) 0 6px}.pt-bar span{display:block;height:100%;background:var(--status-done);border-radius:inherit;transition:width var(--motion-base)}.pt-referent{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--border-subtle)}.pt-avatar{width:38px;height:38px;border-radius:50%;background:var(--bg-selected);color:var(--accent-primary);font-weight:700;display:inline-flex;align-items:center;justify-content:center;font-size:14px;flex:0 0 auto}.pt-rdv{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.pt-rdv li{display:flex;gap:var(--space-3);align-items:center;padding:var(--space-2);border-radius:var(--radius-md);background:var(--bg-app)}.pt-date-box{flex:0 0 auto;min-width:82px;text-align:center;border-radius:var(--radius-md);background:var(--bg-surface);border:1px solid var(--border-subtle);padding:6px 8px;display:flex;flex-direction:column}.pt-date-box span{font-size:12px;color:var(--text-muted);text-transform:capitalize}.pt-date-box strong{font-size:14px}.pt-info{padding:var(--space-2) 0;border-bottom:1px solid var(--border-subtle)}.pt-info:last-child{border-bottom:0}.pt-steps{list-style:none;margin:0;padding:0;position:relative}.pt-steps li{display:flex;gap:var(--space-3);padding:0 0 var(--space-4);position:relative}.pt-steps li:not(:last-child):before{content:"";position:absolute;left:13px;top:28px;bottom:0;width:2px;background:var(--border-subtle)}.pt-steps li.terminee:not(:last-child):before{background:var(--status-done)}.pt-step-dot{flex:0 0 auto;width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;background:var(--bg-column);color:var(--text-secondary);position:relative;z-index:1}.pt-steps li.terminee .pt-step-dot{background:var(--status-done);color:var(--text-inverse)}.pt-steps li.en_cours .pt-step-dot{background:var(--status-progress);color:var(--status-text-dark)}.pt-steps li.bloquee .pt-step-dot{background:var(--status-waiting);color:var(--text-inverse)}.pt-photos{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-2)}.pt-photos button,.pt-photos a{position:relative;padding:0;border-radius:var(--radius-md);overflow:hidden;aspect-ratio:4 / 3;background:var(--bg-column)}.pt-photos img{width:100%;height:100%;object-fit:cover;display:block}.pt-photos span{position:absolute;left:6px;bottom:6px;background:var(--overlay);color:var(--text-inverse);font-size:11px;padding:1px 6px;border-radius:var(--radius-sm)}.pt-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:var(--overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-4);color:var(--text-inverse)}.pt-lightbox img{max-width:100%;max-height:80vh;border-radius:var(--radius-md);box-shadow:var(--shadow-3)}.pt-lightbox .pt-icon{position:absolute;top:var(--space-4);right:var(--space-4);color:var(--text-inverse);background:var(--overlay)}.pt-grid{display:grid;grid-template-columns:1fr;gap:var(--space-3)}.pt-dossier-card{text-align:left;width:100%;cursor:pointer;color:inherit;font:inherit;transition:box-shadow var(--motion-fast),transform var(--motion-fast)}.pt-dossier-card:hover{box-shadow:var(--shadow-2)}.pt-dossier-foot{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;font-size:13px;color:var(--text-secondary)}.pt-dossier-foot span{display:inline-flex;align-items:center;gap:4px}.pt-totaux{margin-top:var(--space-3);display:flex;flex-direction:column;gap:2px;font-size:14px}.pt-totaux>div{display:flex;justify-content:space-between;gap:var(--space-3);font-variant-numeric:tabular-nums}.pt-totaux .grand{font-size:18px;font-weight:700;padding-top:6px;margin-top:4px;border-top:1px solid var(--text-primary)}.pt-tva-note{justify-content:flex-start!important}.pt-devis-detail{margin-top:var(--space-2);font-size:14px}.pt-devis-detail h4{font-size:13px;margin-top:var(--space-3);color:var(--text-secondary)}.pt-table{width:100%;border-collapse:collapse;font-size:13px;margin-top:var(--space-2)}.pt-table th{text-align:left;font-weight:600;font-size:12px;color:var(--text-secondary);border-bottom:1px solid var(--text-primary);padding:6px 4px}.pt-table td{border-bottom:1px solid var(--border-subtle);padding:8px 4px;vertical-align:top}.pt-table .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.pt-table tr.section td{font-weight:700;padding-top:var(--space-3);border-bottom:1px solid var(--text-primary)}.pt-table tr.option td{color:var(--text-secondary);font-style:italic}.pt-mini-ech{list-style:none;padding:0;margin:var(--space-3) 0 0;font-size:13px}.pt-mini-ech li{display:flex;justify-content:space-between;padding:4px 0;border-bottom:1px dashed var(--border-subtle);font-variant-numeric:tabular-nums}.pt-signed{display:flex;align-items:center;gap:8px;margin-top:var(--space-3);padding:10px 12px;border-radius:var(--radius-md);background:var(--div-energy-bg);color:var(--text-primary);font-size:14px;font-weight:500}.pt-signed svg{color:var(--status-done);flex:0 0 auto}.pt-form{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border-subtle)}.pt-field{display:flex;flex-direction:column;gap:4px;margin:var(--space-3) 0;font-size:13px;color:var(--text-secondary);font-weight:500}.pt-field input,.pt-field textarea,.pt-field select{width:100%;box-sizing:border-box;min-height:46px;padding:10px 12px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-primary);font:inherit;font-size:16px}.pt-field textarea{min-height:90px;resize:vertical}.pt-field input:focus,.pt-field textarea:focus,.pt-field select:focus{outline:2px solid var(--focus-ring);border-color:var(--accent-primary)}.pt-check{display:flex;gap:10px;align-items:flex-start;margin:var(--space-2) 0;font-size:14px;color:var(--text-primary);cursor:pointer}.pt-check input{width:22px;height:22px;flex:0 0 auto;margin-top:1px;accent-color:var(--accent-primary)}.pt-msg{padding:10px 12px;border-radius:var(--radius-md);font-size:14px;margin:var(--space-2) 0}.pt-msg.ok{background:var(--div-energy-bg);color:var(--text-primary)}.pt-msg.ko{background:var(--div-renov-bg);color:var(--text-primary);border:1px solid var(--status-blocked)}.pt-seg{display:inline-flex;border:1px solid var(--border-strong);border-radius:var(--radius-md);overflow:hidden}.pt-seg button{height:44px;padding:0 14px;font-size:14px;color:var(--text-secondary);background:var(--bg-surface)}.pt-seg button.on{background:var(--accent-fill);color:var(--text-inverse)}.pt-seg button.on.urgente{background:var(--status-blocked)}.pt-form-grid{display:grid;grid-template-columns:1fr;column-gap:var(--space-3)}.pt-docs{list-style:none;margin:0;padding:0}.pt-docs li{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--border-subtle)}.pt-docs li:last-child{border-bottom:0}.pt-docs li>div{flex:1;min-width:0}.pt-doc-ico{width:38px;height:38px;border-radius:var(--radius-md);background:var(--bg-selected);color:var(--accent-primary);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.pt-pay-sum{margin:var(--space-3) 0}.pt-echs{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.pt-ech{border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-3)}.pt-ech.a_payer,.pt-ech.partiel{border-color:var(--status-progress)}.pt-ech-top{display:flex;justify-content:space-between;gap:var(--space-3);align-items:flex-start}.pt-ech-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.pt-amount{font-weight:700;font-size:16px;font-variant-numeric:tabular-nums;white-space:nowrap}.pt-virement{margin-top:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--bg-app)}.pt-virement dl{display:grid;grid-template-columns:1fr;gap:0;margin:var(--space-2) 0 0;font-size:15px}.pt-virement dt{color:var(--text-muted);font-size:12px;margin-top:8px}.pt-virement dd{margin:0;display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;overflow-wrap:anywhere}.pt-virement dd.strong{font-weight:700}.pt-copy{white-space:nowrap;flex:0 0 auto;display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 8px;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--accent-primary);font-size:12px;font-weight:500}.pt-thread{display:flex;flex-direction:column;gap:var(--space-2);margin:var(--space-2) 0;max-height:52vh;overflow-y:auto}.pt-bubble{max-width:85%;padding:8px 12px;border-radius:16px;font-size:14px}.pt-bubble.client{align-self:flex-end;background:var(--accent-fill);color:var(--text-inverse);border-bottom-right-radius:4px}.pt-bubble.equipe{align-self:flex-start;background:var(--bg-column);border-bottom-left-radius:4px}.pt-bubble-head{font-size:11.5px;font-weight:600;opacity:.85}.pt-bubble-text{white-space:pre-wrap}.pt-bubble-time{font-size:11px;opacity:.7;text-align:right}.pt-footer{margin-top:var(--space-6);padding:var(--space-5) var(--space-4) max(var(--space-5),env(safe-area-inset-bottom));background:var(--bg-surface);border-top:1px solid var(--border-subtle);text-align:center;font-size:13px;color:var(--text-secondary);display:flex;flex-direction:column;gap:6px;align-items:center}.pt-divs{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:center;margin-bottom:var(--space-2)}.pt-contact{display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:center}.pt-contact a{display:inline-flex;align-items:center;gap:6px;color:var(--accent-primary);text-decoration:none;font-weight:500}.pt-footer .pt-small{max-width:560px}@media (min-width: 760px){.pt-logo{height:30px}.pt-virement dl{grid-template-columns:auto 1fr;column-gap:var(--space-4)}.pt-virement dd{margin-top:8px;justify-content:flex-start}.pt-hero{padding-top:var(--space-6)}.pt-hero h1{font-size:30px}.pt-grid{grid-template-columns:repeat(2,1fr)}.pt-photos{grid-template-columns:repeat(3,1fr)}.pt-form-grid{grid-template-columns:1fr 1fr}.pt-form-grid .full{grid-column:1 / -1}.pt-btn.block{width:auto}}@media (min-width: 1100px){.pt-grid{grid-template-columns:repeat(3,1fr)}}.pp-root{display:flex;flex-direction:column;gap:var(--space-3);font-size:var(--fs-body)}.pp-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap}.pp-head h3{margin:0;font-size:var(--fs-h2)}.pp-head p{margin:2px 0 0;font-size:var(--fs-small);max-width:520px}.pp-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.pp-acces{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface)}.pp-acces.revoque,.pp-acces.expire{opacity:.75}.pp-acces-top{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);cursor:pointer}.pp-acces-top:hover{background:var(--bg-hover);border-radius:var(--radius-md)}.pp-acces-main{flex:1;min-width:0}.pp-dot{width:10px;height:10px;border-radius:50%;flex:0 0 auto;background:var(--status-empty)}.pp-dot.actif{background:var(--status-done)}.pp-dot.revoque{background:var(--status-blocked)}.pp-strong{font-weight:600}.pp-small{font-size:var(--fs-small)}.pp-tag{display:inline-block;margin-left:6px;padding:0 6px;border-radius:var(--radius-sm);background:var(--bg-column);color:var(--text-secondary);font-size:var(--fs-label);font-weight:600;vertical-align:middle}.pp-badge{display:inline-block;margin-left:6px;padding:0 7px;border-radius:var(--radius-pill);background:var(--accent-group);color:var(--text-inverse);font-size:var(--fs-label);font-weight:600;vertical-align:middle}.pp-detail{padding:0 var(--space-3) var(--space-3);border-top:1px solid var(--border-subtle)}.pp-cols{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);padding-top:var(--space-3)}@media (max-width: 640px){.pp-cols{grid-template-columns:1fr}}.pp-label{font-size:var(--fs-label);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600;margin-bottom:6px}.pp-perim{list-style:none;padding:0;margin:0 0 var(--space-3);display:flex;flex-direction:column;gap:4px;font-size:var(--fs-small)}.pp-perim li{display:flex;gap:6px;align-items:center}.pp-toggles{display:flex;flex-direction:column;gap:4px}.pp-toggle{display:flex;gap:8px;align-items:center;font-size:var(--fs-small);cursor:pointer}.pp-toggle input{accent-color:var(--accent-primary);width:16px;height:16px}.pp-actions{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap}.pp-actions.end{justify-content:flex-end;margin-top:var(--space-4)}.pp-block{margin-top:var(--space-3)}.pp-thread{display:flex;flex-direction:column;gap:6px;max-height:260px;overflow-y:auto;margin-bottom:var(--space-2)}.pp-msg{padding:6px 10px;border-radius:var(--radius-md);max-width:85%;font-size:var(--fs-small)}.pp-msg.client{background:var(--bg-column);align-self:flex-start}.pp-msg.client.unread{border-left:3px solid var(--accent-group)}.pp-msg.equipe{background:var(--bg-selected);align-self:flex-end}.pp-reply .pp-actions{justify-content:space-between;margin-top:6px}.pp-reply textarea{width:100%;box-sizing:border-box}.pp-demandes{list-style:none;padding:0;margin:0}.pp-demandes li{display:flex;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--border-subtle)}.pp-table{width:100%;border-collapse:collapse;font-size:var(--fs-small)}.pp-table td{padding:6px 4px;border-bottom:1px solid var(--border-subtle);vertical-align:top}.pp-table .num{white-space:nowrap;font-variant-numeric:tabular-nums}.pp-table tr.warn td:first-child{border-left:3px solid var(--status-blocked);padding-left:6px}.pp-form{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2) var(--space-3)}@media (max-width: 640px){.pp-form{grid-template-columns:1fr}}.pp-field{display:flex;flex-direction:column;gap:4px;font-size:var(--fs-small);color:var(--text-secondary)}.pp-field.full{grid-column:1 / -1}.pp-field input:not([type=checkbox]),.pp-field select,.pp-field textarea{width:100%;box-sizing:border-box}.pp-field input[type=checkbox]{width:16px;height:16px;flex:0 0 auto;margin:0}.pp-choix label>span:first-of-type{flex:1}.pp-seg{display:inline-flex;flex-wrap:wrap;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);overflow:hidden}.pp-seg button{padding:6px 10px;font-size:var(--fs-small);color:var(--text-secondary);background:var(--bg-surface)}.pp-seg button.on{background:var(--accent-fill);color:var(--text-inverse)}.pp-choix{list-style:none;padding:0;margin:4px 0 0;display:flex;flex-direction:column;gap:6px}.pp-choix label{display:flex;gap:6px;align-items:center;color:var(--text-primary);cursor:pointer}.pp-choix .with-mic,.pp-choix input[type=text],.pp-choix>li>input{margin:4px 0 0 24px}.pp-warn{display:flex;gap:8px;align-items:flex-start;padding:10px 12px;border-radius:var(--radius-md);background:var(--bg-comment);border:1px solid var(--border-comment);font-size:var(--fs-small);margin-top:0}.pp-url{display:flex;gap:var(--space-2);align-items:center;padding:8px 10px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--bg-app);margin-bottom:var(--space-3)}.pp-url code{flex:1;min-width:0;overflow-wrap:anywhere;font-size:var(--fs-small)}.pp-apercu{min-height:100vh;background:var(--bg-app);padding:var(--space-5);box-sizing:border-box;font-family:var(--font-family);color:var(--text-primary)}.pp-apercu-card{max-width:760px;margin:0 auto;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-2)}.pp-apercu-title{font-weight:600;font-size:var(--fs-h1);margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-subtle)}.pp-root textarea,.pp-root input:not([type=checkbox]),.pp-root select{padding:8px 10px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);font:inherit;font-size:var(--fs-body);min-height:36px}.pp-root textarea{line-height:1.5;resize:vertical}.pp-root textarea:focus,.pp-root input:focus,.pp-root select:focus{outline:2px solid var(--focus-ring);border-color:var(--accent-primary)}.jv-orb{--lvl: 0;position:relative;border-radius:50%;display:grid;place-items:center;flex:none;color:#fff;background:transparent;padding:0;cursor:pointer}.jv-orb:focus-visible{outline:none;box-shadow:0 0 0 3px var(--focus-ring)}.jv-core{position:relative;z-index:2;width:100%;height:100%;border-radius:50%;display:grid;place-items:center;background:var(--accent-fill);box-shadow:var(--shadow-3);transition:background var(--motion-fast),transform var(--motion-fast);transform:scale(calc(1 + var(--lvl) * .06))}.jv-orb:hover .jv-core{background:var(--accent-fill-hover)}.jv-ring,.jv-halo{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;pointer-events:none;z-index:1}.jv-ring{border:2px solid var(--accent-primary);opacity:0;transform:scale(1);transition:opacity var(--motion-base)}.jv-halo{background:var(--accent-primary);opacity:0;filter:blur(10px);transition:opacity var(--motion-base)}.jv-orb:not([data-state=idle]):not([data-state=closed]) .jv-ring{opacity:calc(.25 + var(--lvl) * .6);transform:scale(calc(1.12 + var(--lvl) * .42))}.jv-orb:not([data-state=idle]):not([data-state=closed]) .jv-halo{opacity:calc(.12 + var(--lvl) * .38);transform:scale(calc(1 + var(--lvl) * .5))}.jv-orb[data-state=speaking] .jv-core{background:var(--accent-fill-hover)}.jv-orb[data-state=speaking] .jv-halo{opacity:calc(.25 + var(--lvl) * .55);filter:blur(14px)}.jv-orb[data-state=listening] .jv-ring{border-style:solid;border-width:1.5px}.jv-orb[data-state=error] .jv-core{background:var(--status-blocked)}.jv-arc{width:42%;height:42%;border-radius:50%;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;animation:spin 1s linear infinite}.jv-fab{position:fixed;right:22px;bottom:22px;z-index:70}@media (min-width: 901px){.jv-fab.shifted,.assistant-panel.shifted{right:86px}}@media (max-width: 600px){.jv-fab{right:14px;bottom:14px}.jv-fab.shifted{display:none}}@media (min-width: 901px){body:has(.drawer) .jv-fab{right:calc(min(var(--drawer-w),100vw) + 22px)}}@media (max-width: 900px){body:has(.drawer) .jv-fab{display:none}}.assistant-panel.jv{height:min(640px,calc(100dvh - 90px))}.jv-head{display:flex;align-items:center;gap:8px}.jv-head .jv-title{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.15}.jv-head .jv-title b{font-weight:600}.jv-mode{font-size:11px;color:var(--text-muted);font-weight:500;display:inline-flex;align-items:center;gap:5px}.jv-mode:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--status-neutral)}.jv-mode[data-mode=ia]:before{background:var(--status-done)}.jv-mode[data-mode=demo]:before{background:var(--status-progress)}.jv-mode[data-mode=base]:before{background:var(--status-waiting)}.jv-stage{display:flex;flex-direction:column;align-items:center;gap:18px;padding:22px 12px 10px;overflow:hidden;border-bottom:1px solid var(--border-subtle)}.jv-stage .jv-state{font-size:12.5px;color:var(--text-secondary);min-height:18px;text-align:center}.jv-stage-actions{display:flex;gap:6px}.bubble.note{background:transparent;border:1px dashed var(--border-strong);color:var(--text-secondary);font-size:12.5px}.bubble.card-only{padding:0;background:transparent;max-width:92%}.bubble.card-only .action-card{margin-top:0}.bubble.me.voice:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.6;margin-right:6px;vertical-align:middle}.jv-settings{padding:12px 14px;border-bottom:1px solid var(--border-subtle);display:grid;gap:10px;font-size:13px;background:var(--bg-column)}.jv-settings label{display:grid;gap:4px}.jv-settings label.row{display:flex;align-items:center;gap:8px}.jv-settings input[type=text],.jv-settings input[type=number],.jv-settings select{height:32px;border:1px solid var(--border-strong);border-radius:var(--radius-md);padding:0 10px;background:var(--bg-surface);color:var(--text-primary);font:inherit}.jv-settings small{color:var(--text-muted);font-size:11.5px;line-height:15px}.jv-budget{display:flex;align-items:center;gap:8px;padding:0 14px 10px;font-size:11px;color:var(--text-muted)}.jv-budget .bar{flex:1;height:4px;border-radius:2px;background:var(--bg-hover);overflow:hidden}.jv-budget .bar i{display:block;height:100%;background:var(--status-done);border-radius:2px}.jv-budget .bar i.warn{background:var(--status-waiting)}.jv-budget .bar i.full{background:var(--status-blocked)}@media (prefers-reduced-motion: reduce){.jv-ring,.jv-halo,.jv-core{transition:none!important;transform:none!important}.jv-arc{animation:none}}.jv-fab.jv-ecoute{box-shadow:0 0 0 3px color-mix(in srgb,#2ea043 55%,transparent)}
