:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{box-sizing:border-box;width:100%;min-height:100svh}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}#app{box-sizing:border-box;text-align:left;width:100%;padding:24px}.app-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.app-header h1{margin:0;font-size:28px}.app-title{align-items:center;gap:10px;display:flex}.local-badge{white-space:nowrap;text-transform:uppercase;letter-spacing:.5px;color:var(--text);border:1px dashed var(--border);border-radius:999px;align-items:center;gap:4px;padding:3px 10px;font-size:11px;display:inline-flex}.app-header-actions{align-items:center;gap:10px;display:flex}.search-box{border:1px solid var(--border);color:var(--text);border-radius:6px;align-items:center;gap:6px;padding:0 10px;display:flex}.search-box input{min-width:160px;color:inherit;font:inherit;background:0 0;border:none;outline:none;padding:8px 0}.quick-add{gap:8px;display:flex}.quick-add input{border:1px solid var(--border);border-radius:6px;min-width:240px;padding:8px 12px}.quick-add button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;width:36px}.project-filter-bar{scrollbar-width:thin;flex-wrap:nowrap;gap:8px;margin-bottom:20px;padding-bottom:4px;display:flex;overflow-x:auto}.project-filter-bar .chip{flex-shrink:0}.chip{border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:6px 14px;font-size:14px;display:inline-flex}.chip-active{border-color:var(--chip-color,var(--accent));color:var(--chip-color,var(--accent));background:var(--accent-bg)}.kanban-board{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.kanban-column{background:var(--code-bg);border-radius:8px;min-height:400px;padding:12px}.kanban-column-over{outline:2px dashed var(--accent-border);outline-offset:-2px}.kanban-column-title{text-transform:uppercase;letter-spacing:.5px;color:var(--text);justify-content:space-between;align-items:center;margin:0 0 12px;font-size:14px;display:flex}.kanban-column-count{background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:1px 8px;font-size:12px}.kanban-empty{color:var(--text);opacity:.5;text-align:center;padding:24px 0;font-size:13px}.kanban-hidden{color:var(--text);opacity:.55;text-align:center;padding:20px 0;font-size:12px;font-style:italic}.kanban-column-body{flex-direction:column;gap:8px;display:flex}.task-card{background:var(--bg);border:1px solid var(--border);cursor:pointer;text-align:left;border-left:3px solid #999;border-radius:6px;padding:10px;transition:box-shadow .15s,transform .15s,border-color .15s}.task-card:hover{border-color:var(--accent-border);box-shadow:var(--shadow);transform:translateY(-1px)}.task-card-project{text-transform:uppercase;align-items:center;gap:5px;font-size:11px;font-weight:600;display:inline-flex}.task-card-title{color:var(--text-h);margin:4px 0;font-size:14px}.task-card-meta{flex-wrap:wrap;gap:6px;display:flex}.task-tag{background:var(--accent-bg);color:var(--accent);border-radius:4px;align-items:center;gap:3px;padding:2px 6px;font-size:11px;display:inline-flex}.task-tag-stack{background:var(--code-bg);color:var(--text-h)}.task-tag-assignee,.task-tag-subtasks{background:var(--code-bg);color:var(--text)}.modal-overlay{z-index:10;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.search-box,.quick-add input,.chip,.view-btn,.task-card{transition:border-color .15s,background .15s,box-shadow .15s,color .15s}.search-box:focus-within,.quick-add input:focus,.modal-field input:focus,.modal-field select:focus,.modal-field textarea:focus,.comment-add input:focus,.subtask-add input:focus{border-color:var(--accent);outline:none}.chip:hover,.view-btn:hover{border-color:var(--accent-border)}.quick-add button:hover,.comment-add button:hover,.btn-primary:hover{filter:brightness(1.08)}.btn-danger:hover{background:#e639461a}.calendar-nav button:hover{border-color:var(--accent-border);color:var(--accent)}.calendar-task:hover{filter:brightness(.97)}.modal{background:var(--bg);border:1px solid var(--border);text-align:left;width:480px;max-width:90vw;max-height:85vh;box-shadow:var(--shadow);border-radius:10px;padding:24px;position:relative;overflow-y:auto}.modal-close{cursor:pointer;color:var(--text);background:0 0;border:none;position:absolute;top:16px;right:16px}.modal-field{flex-direction:column;flex:1;gap:4px;margin-bottom:12px;font-size:13px;display:flex}.modal-field input,.modal-field select,.modal-field textarea{border:1px solid var(--border);font:inherit;border-radius:6px;padding:8px}.modal-field-row{gap:10px;display:flex}.modal-subtasks{border-top:1px solid var(--border);margin-top:4px;padding-top:12px}.modal-subtasks h4{margin:0 0 8px;font-size:13px}.subtask-row{align-items:center;gap:8px;margin-bottom:6px;font-size:13px;display:flex}.subtask-row select{font-size:11px}.subtask-row span{flex:1}.subtask-row button{cursor:pointer;color:var(--text);background:0 0;border:none}.subtask-add input{border:1px solid var(--border);border-radius:6px;flex:1;padding:6px 8px}.modal-thread{border-top:1px solid var(--border);margin-top:12px;padding-top:12px}.modal-thread h4{margin:0 0 8px;font-size:13px}.thread-empty{opacity:.6;margin:0 0 8px;font-size:12px}.thread-scroll{max-height:200px;margin-bottom:8px;padding-right:4px;overflow-y:auto}.thread-scroll-expanded{max-height:60vh}.thread-toggle{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0 0 8px;font-size:12px}.thread-toggle:hover{text-decoration:underline}.thread-count{background:var(--code-bg);min-width:16px;color:var(--text);text-align:center;border-radius:8px;padding:0 5px;font-size:11px;font-weight:600;display:inline-block}.comment{background:var(--code-bg);border-radius:6px;margin-bottom:8px;padding:8px 10px;font-size:13px}.comment-head{justify-content:space-between;align-items:baseline;margin-bottom:3px;display:flex}.comment-head span{opacity:.6;font-size:11px}.comment p{white-space:pre-wrap;margin:0}.comment-add{align-items:center;gap:8px;display:flex}.comment-add input{border:1px solid var(--border);font:inherit;border-radius:6px;flex:1;padding:8px}.comment-add button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;align-items:center;padding:8px 10px;display:flex}.activity-row{opacity:.85;justify-content:space-between;gap:10px;padding:3px 0;font-size:12px;display:flex}.activity-date{opacity:.6;white-space:nowrap}.modal-actions{justify-content:space-between;margin-top:16px;display:flex}.btn-primary,.btn-danger{cursor:pointer;border:none;border-radius:6px;padding:8px 16px;font-size:14px}.btn-primary{background:var(--accent);color:#fff}.btn-danger{color:#e63946;background:0 0}.auth-loading{min-height:60vh;color:var(--text);justify-content:center;align-items:center;display:flex}.login-screen{box-sizing:border-box;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{background:var(--bg);border:1px solid var(--border);text-align:left;border-radius:12px;flex-direction:column;gap:12px;width:320px;max-width:90vw;padding:28px;display:flex}.login-card h1{margin:0;font-size:22px}.login-card p{color:var(--text);opacity:.7;margin:0 0 4px;font-size:13px}.login-card input{border:1px solid var(--border);font:inherit;border-radius:6px;padding:10px 12px}.login-card button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:10px;font-size:14px}.login-card button:disabled{opacity:.6;cursor:default}.logout-btn{border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.login-toggle{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:4px;font-size:13px}.task-card{position:relative}.task-card-priority{border-radius:50%;width:8px;height:8px;position:absolute;top:9px;right:9px}.task-tag-due{background:var(--code-bg);color:var(--text)}.task-tag-due.due-ok{color:#16a34a;background:#16a34a22}.task-tag-due.due-soon{color:#b45309;background:#f59e0b22}.task-tag-due.due-overdue{color:#dc2626;background:#dc262622;font-weight:600}.task-tag-label{background:var(--accent-bg);color:var(--accent)}.view-switcher{gap:6px;margin-bottom:16px;display:flex}.view-btn{border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;display:inline-flex}.view-btn-active{background:var(--accent-bg);color:var(--accent);border-color:var(--accent-border)}.view-btn-toggle{margin-left:auto}.calendar-nav{justify-content:center;align-items:center;gap:16px;margin-bottom:12px;display:flex}.calendar-nav button{border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:6px;padding:4px 8px}.calendar-title{text-transform:capitalize;text-align:center;min-width:160px;font-size:15px;font-weight:600}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.calendar-weekday{text-align:center;opacity:.6;padding:4px 0;font-size:12px;font-weight:600}.calendar-cell{border:1px solid var(--border);border-radius:6px;flex-direction:column;gap:3px;min-height:92px;padding:4px;display:flex}.calendar-cell-empty{border:none}.calendar-cell-today{border-color:var(--accent)}.calendar-daynum{opacity:.7;font-size:12px}.calendar-task{border:none;border-left:3px solid var(--chip-color,var(--accent));background:var(--code-bg);cursor:pointer;color:var(--text);text-align:left;border-radius:4px;align-items:center;gap:4px;padding:2px 4px;font-size:11px;display:flex}.calendar-task-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-task-overdue{border-left-color:#e5484d}.dash-tiles{gap:12px;margin-bottom:20px;display:flex}.dash-tile{border:1px solid var(--border);border-radius:8px;flex-direction:column;flex:1;align-items:flex-start;gap:4px;padding:16px;display:flex}.dash-tile-warn{border-color:#e5484d}.dash-num{color:var(--text-h);font-size:28px;font-weight:700}.dash-label{opacity:.7;font-size:12px}.dash-cols{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;display:grid}.dash-section h4{align-items:center;gap:6px;margin:0 0 8px;font-size:13px;display:flex}.dash-row{width:100%;font:inherit;color:var(--text);border:none;border-bottom:1px solid var(--border);cursor:pointer;text-align:left;background:0 0;border-radius:4px;align-items:center;gap:8px;padding:5px 6px;font-size:13px;display:flex}.dash-row:hover{background:var(--code-bg)}.dash-row-active{background:var(--accent-bg);color:var(--accent)}.dash-drill{margin-top:20px}.dash-drill-title{text-overflow:ellipsis;white-space:nowrap;flex:1;align-items:center;gap:6px;display:flex;overflow:hidden}.dash-row span:not(.dash-dot){flex:1}.dash-dot{border-radius:50%;flex:none;width:8px;height:8px}.dash-overdue{margin-top:20px}.dash-overdue-row{width:100%;color:var(--text);cursor:pointer;border:none;border-bottom:1px solid var(--border);text-align:left;background:0 0;justify-content:space-between;gap:10px;padding:5px 0;font-size:13px;display:flex}.dash-overdue-date{color:#e5484d;white-space:nowrap}.week-view{align-items:flex-start;gap:16px;padding:16px;display:flex}.week-main{flex:1;min-width:0}.week-nav{align-items:center;gap:10px;margin-bottom:10px;display:flex}.week-nav button{color:var(--text);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:6px;padding:4px 8px}.week-title{color:var(--text-h);font-size:.9rem;font-weight:600}.week-grid{grid-template-columns:96px repeat(7,1fr);gap:4px;display:grid}.week-dayhead{text-align:center;color:var(--text);letter-spacing:.04em;padding:4px 0;font-size:.72rem;font-weight:700}.week-dayhead-today{color:var(--accent);border-bottom:2px solid var(--accent)}.week-slotlabel{color:var(--text);text-align:right;padding:8px 6px;font-size:.72rem;font-weight:700}.week-cell{background:var(--code-bg);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:4px;min-height:92px;padding:6px 6px 22px;display:flex;position:relative}.week-cell-over{outline:2px solid var(--accent);outline-offset:-2px}.week-cell-add{opacity:.3;cursor:pointer;color:var(--text);background:0 0;border:none;padding:2px;position:absolute;bottom:4px;right:4px}.week-cell:hover .week-cell-add{opacity:.9}.week-chip{text-align:left;background:var(--bg);width:100%;color:var(--text-h);border:1px solid var(--border);border-left:4px solid var(--chip-color,#999);cursor:grab;border-radius:6px;padding:5px 7px;font-size:.76rem;display:block;box-shadow:0 1px 2px #00000014}.week-chip-dragging{cursor:grabbing;box-shadow:0 6px 16px #00000040}.week-chip-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.25;display:-webkit-box;overflow:hidden}.week-chip-meta{align-items:center;gap:6px;margin-top:3px;display:flex}.week-chip-owner{border-radius:4px;padding:1px 5px;font-size:.62rem;font-weight:700}.week-chip-project{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.62rem;overflow:hidden}.week-fixed{text-align:left;color:var(--text-h);background:color-mix(in srgb, var(--chip-color,#999) 18%, var(--bg));border:none;border-left:3px solid var(--chip-color,#999);cursor:pointer;border-radius:4px;align-items:center;gap:4px;padding:3px 6px;font-size:.7rem;display:inline-flex}.week-chip-done{opacity:.55;cursor:pointer}.week-chip-done .week-chip-title{align-items:center;gap:3px;text-decoration:line-through;display:inline-flex}.hoy-hechas{margin-top:12px}.hoy-hechas h3{color:var(--text);opacity:.8;margin-bottom:4px;font-size:.78rem}.hoy-hecha{text-align:left;width:100%;color:var(--text);opacity:.6;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:4px 0;font-size:.82rem;display:flex}.hoy-hecha span{text-decoration:line-through}.hoy-hecha:hover{opacity:.9}.hoy-tarea-acciones{gap:2px;margin-left:auto;display:inline-flex}.hoy-tarea-acciones button{color:var(--text);opacity:.4;cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:3px;display:inline-flex}.hoy-tarea-acciones button:hover{opacity:1;background:color-mix(in srgb, var(--text) 10%, var(--bg))}.week-fixed-row{align-items:center;gap:2px;display:flex}.week-fixed-row .week-fixed{flex:1;min-width:0}.week-fixed-skip{color:var(--text);opacity:.4;cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:2px;display:inline-flex}.week-fixed-skip:hover{opacity:1;color:#dc2626;background:color-mix(in srgb, #dc2626 12%, var(--bg))}.week-habits{background:var(--code-bg);border:1px dashed var(--border);border-radius:8px;align-items:center;gap:4px;min-height:0;padding:4px 6px;display:flex}.week-habits-today{border-style:solid;border-color:var(--accent-border)}.week-habit{border:1px solid var(--border);cursor:pointer;background:var(--bg);width:24px;height:24px;color:var(--text);border-radius:50%;font-size:.65rem;font-weight:700}.week-habit:disabled{cursor:default;opacity:.55}.week-habit-hecho{color:#fff;background:#16a34a;border-color:#16a34a;opacity:1!important}.week-habit-no_hecho{background:var(--border);color:var(--text-h);text-decoration:line-through;opacity:1!important}.week-side{flex-direction:column;flex-shrink:0;gap:12px;width:300px;display:flex}.week-panel{background:var(--bg);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:6px;padding:10px;display:flex}.week-panel h3{text-transform:uppercase;letter-spacing:.05em;color:var(--text);margin:0 0 4px;font-size:.72rem}.week-panel-replan{background:color-mix(in srgb, #f59e0b 12%, var(--bg));border-color:#f59e0b}.week-replan-item{flex-direction:column;gap:2px;display:flex}.week-replan-when{color:#b45309;font-size:.68rem;font-style:italic}.week-group{border-top:1px solid var(--border);padding-top:4px}.week-group-head{cursor:pointer;width:100%;color:var(--text);background:0 0;border:none;align-items:center;gap:6px;padding:4px 0;display:flex}.week-caret{transition:transform .15s}.week-caret-open{transform:rotate(0)}.week-caret:not(.week-caret-open){transform:rotate(-90deg)}.week-group-count{background:var(--code-bg);border:1px solid var(--border);color:var(--text);border-radius:999px;margin-left:auto;padding:1px 7px;font-size:.68rem}.week-group-body{flex-direction:column;gap:4px;padding:2px 0 6px;display:flex}.week-group-closed{min-height:0;padding:0}.week-backlog-project{align-items:center;gap:5px;font-size:.74rem;font-weight:700;display:flex}.week-modal-backdrop{z-index:50;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.week-modal{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:8px;width:min(440px,92vw);max-height:76vh;padding:16px;display:flex;overflow:auto}.week-modal h3{color:var(--text-h);margin:0 0 6px;font-size:.85rem}.week-modal-empty{color:var(--text);font-size:.8rem}.week-picker-item{text-align:left;background:var(--bg);color:var(--text-h);border:1px solid var(--border);border-left:4px solid var(--chip-color,#999);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:8px;font-size:.82rem;display:flex}.week-picker-item:hover{background:var(--code-bg)}.week-field{color:var(--text);flex-direction:column;gap:3px;font-size:.72rem;display:flex}.week-field input,.week-field textarea,.week-field select{background:var(--code-bg);color:var(--text-h);border:1px solid var(--border);border-radius:6px;padding:7px 8px;font-family:inherit;font-size:.85rem}.week-field-row{gap:10px;display:flex}.week-field-row .week-field{flex:1}.week-modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:6px;display:flex}.hoy-view{flex-direction:column;gap:14px;max-width:560px;margin:0 auto;padding:20px 16px 40px;display:flex}.hoy-saludo{color:var(--text-h);margin:0;font-size:1.4rem}.hoy-fecha{color:var(--text);margin:-8px 0 0;font-size:.85rem}.hoy-sabado{background:color-mix(in srgb, #16a34a 10%, var(--bg));text-align:center;color:var(--text-h);border:1px solid #16a34a55;border-radius:12px;padding:24px;font-size:1rem}.hoy-atencion{background:color-mix(in srgb, #f59e0b 14%, var(--bg));cursor:pointer;color:var(--text-h);text-align:left;border:1px solid #f59e0b;border-radius:10px;align-items:center;gap:8px;padding:10px 12px;font-size:.85rem;display:flex}.hoy-fijos{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.hoy-fijo-nota{color:var(--text);margin:0 0 0 12px;font-size:.75rem}.hoy-franja h3{text-transform:uppercase;letter-spacing:.05em;color:var(--text);margin:0 0 6px;font-size:.72rem}.hoy-tarea{align-items:stretch;gap:8px;margin-bottom:6px;display:flex}.hoy-tarea-check{border:1px solid var(--border);background:var(--bg);cursor:pointer;color:#16a34a;border-radius:8px;width:36px}.hoy-tarea-check:hover{border-color:#16a34a}.hoy-tarea-body{text-align:left;background:var(--bg);color:var(--text-h);border:1px solid var(--border);border-left:4px solid var(--chip-color,#999);cursor:pointer;border-radius:8px;flex:1;align-items:center;gap:8px;padding:10px;font-size:.88rem;display:flex}.hoy-vacio{color:var(--text);font-size:.85rem}.hoy-link{color:var(--accent);cursor:pointer;font-size:inherit;background:0 0;border:none;padding:0}.hoy-habitos{background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:14px}.hoy-habitos h3{color:var(--text-h);margin:0 0 10px;font-size:.8rem}.hoy-habito{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:6px 0;display:flex}.hoy-habito:last-of-type{border-bottom:none}.hoy-habito-label{color:var(--text-h);font-size:.88rem}.hoy-habito-hecho{color:#16a34a}.hoy-habito-no_hecho{color:var(--text);text-decoration:line-through}.hoy-habito-botones{gap:6px;display:flex}.hoy-hbtn{border:1px solid var(--border);background:var(--bg);cursor:pointer;width:36px;height:30px;color:var(--text);border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.hoy-hbtn-si.hoy-hbtn-on{color:#fff;background:#16a34a;border-color:#16a34a}.hoy-hbtn-no.hoy-hbtn-on{background:var(--border);color:var(--text-h)}.hoy-habito-nota{color:var(--text);margin:10px 0 0;font-size:.72rem}.btn-secondary{background:var(--bg);color:var(--text-h);border:1px solid var(--border);cursor:pointer;border-radius:8px;padding:8px 12px;font-size:.85rem}.btn-secondary:hover{background:var(--code-bg)}@media (width<=860px){.week-view{flex-direction:column}.week-side{width:100%}.week-grid{grid-template-columns:64px repeat(7,minmax(92px,1fr));overflow-x:auto}}.week-chip,.week-picker-item{box-sizing:border-box;min-width:0;max-width:100%}.week-panel,.week-replan-item,.week-group-body{min-width:0}.week-panel-decisiones{background:color-mix(in srgb, #eab308 10%, var(--bg));border-color:#eab308}.hoy-decisiones{background:color-mix(in srgb, #eab308 12%, var(--bg));border:1px solid #eab308;border-radius:12px;padding:12px}.hoy-decisiones h3{color:var(--text-h);align-items:center;gap:6px;margin:0 0 8px;font-size:.78rem;display:flex}.hoy-decision{text-align:left;background:var(--bg);width:100%;color:var(--text-h);border:1px solid var(--border);cursor:pointer;border-left:4px solid #eab308;border-radius:8px;align-items:center;gap:8px;margin-bottom:6px;padding:9px;font-size:.85rem;display:flex}.hoy-decision-row{align-items:stretch;gap:6px;display:flex}.hoy-decision-row .hoy-decision{flex:1;min-width:0}.hoy-decision-traer{background:var(--bg);color:var(--text);border:1px solid var(--border);cursor:pointer;white-space:nowrap;border-radius:8px;flex-shrink:0;margin-bottom:6px;padding:0 10px;font-size:.75rem}.hoy-decision-traer:hover{color:var(--text-h);border-color:var(--accent-border)}.hoy-a1{background:color-mix(in srgb, #eab308 14%, var(--bg));border:2px solid #eab308;border-radius:12px;padding:12px}.hoy-a1 h3{color:var(--text-h);margin:0 0 8px;font-size:.82rem}.hoy-a1-hecha{opacity:.7;border-style:dashed}.hoy-a1-resiste{color:var(--text);margin:6px 0 0;font-size:.75rem;font-style:italic}.hoy-resto-atenuado{opacity:.55;transition:opacity .3s}.hoy-manana{background:var(--code-bg);border:1px solid var(--border);border-radius:12px;padding:12px}.hoy-manana h3{color:var(--text-h);align-items:center;gap:6px;margin:0 0 8px;font-size:.78rem;display:flex}.hoy-manana-star{color:var(--text);cursor:pointer;background:0 0;border:none;align-items:center;padding:4px;display:flex}.hoy-manana-star-on,.hoy-manana-star:hover{color:#eab308}.hoy-manana-quitar{color:var(--text);cursor:pointer;opacity:.6;background:0 0;border:none;align-items:center;padding:4px;display:flex}.hoy-manana-quitar:hover{opacity:1;color:var(--text-h)}.week-chip-miga{color:var(--text);opacity:.75;white-space:nowrap;text-overflow:ellipsis;font-size:.66rem;display:block;overflow:hidden}.hoy-miga{color:var(--text);opacity:.75;font-size:.7rem;display:block}.week-picker-texto{text-align:left;flex-direction:column;align-items:flex-start;min-width:0;display:flex}.week-picker-desc{color:var(--text);opacity:.8;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.7rem;font-weight:400;display:-webkit-box;overflow:hidden}.week-group-taller{opacity:.75;border-top:1px dashed var(--border);margin-top:8px;padding-top:6px}.modal-entrega-miga{background:var(--code-bg);border-left:3px solid var(--accent,#7c5cff);color:var(--text);border-radius:6px;margin:8px 0;padding:8px 10px;font-size:.8rem}.quick-add-hoy{color:var(--text);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;align-items:center;gap:4px;font-size:.75rem;display:flex}.quick-add-hoy input{accent-color:var(--accent,#7c5cff);cursor:pointer}.hoy-adelantar{width:100%;color:var(--text);border:1px dashed var(--border);cursor:pointer;background:0 0;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:10px;font-size:.85rem;display:flex}.hoy-adelantar:hover{color:var(--text-h);border-color:var(--accent-border)}.week-dayhead-finde{opacity:.75;font-style:italic}.quick-add select{background:var(--code-bg);color:var(--text-h);border:1px solid var(--border);font:inherit;border-radius:6px;max-width:130px;padding:0 6px;font-size:.8rem}.week-main{overflow-x:auto}.week-grid{min-width:860px}.hoy-habitos-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.hoy-habitos-head h3{margin:0}.hoy-habitos-edit{border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:8px;padding:4px 10px;font-size:.75rem}.hoy-habitos-edit:hover{color:var(--text-h);border-color:var(--accent-border)}.hoy-habito-hora{color:var(--text);font-size:.78rem}.hoy-habito-quitar{border:1px solid var(--border);background:var(--bg);color:#dc2626;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;width:34px;height:30px;display:inline-flex}.hoy-habito-quitar:disabled{color:var(--text);cursor:default;opacity:.6}.hoy-habito-nuevo{gap:6px;margin-top:10px;display:flex}.hoy-habito-nuevo input{border:1px solid var(--border);background:var(--code-bg);color:var(--text-h);font:inherit;border-radius:8px;flex:1;padding:8px;font-size:.85rem}.hoy-habito-nuevo-hora{max-width:110px;flex:none!important}.hoy-habito-nuevo .btn-primary{padding:0 12px}.local-badge-demo{color:#b45309;border-color:#f59e0b}
