:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#111;background:#f5f5f5;--line: #d8d8d8;--ink-soft: #666666;--green: #111111;--blue: #265d9c;--amber: #b76b00;--red: #b42318;--panel: #ffffff;--shadow: 0 12px 28px rgba(0, 0, 0, .08)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input{font:inherit}button{border:1px solid var(--line);background:#fff;color:#17201b;min-height:38px;border-radius:7px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}button:hover:not(:disabled){border-color:#91aaa0}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--green);color:#fff;border-color:var(--green)}button.secondary{background:#f0f0f0;color:var(--ink);border-color:#ddd}button.ghost{background:#f8f8f8}button.danger{color:var(--red)}.icon-only{width:38px;padding:0}input{width:100%;border:1px solid var(--line);border-radius:7px;min-height:38px;padding:0 10px;background:#fff}.app-shell{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.sidebar{background:#111;color:#eee;padding:20px 14px;display:flex;flex-direction:column;gap:24px}.brand{display:flex;gap:12px;align-items:center;padding:4px 6px}.brand-mark{width:42px;height:42px;border-radius:7px;display:grid;place-items:center;background:transparent;padding:2px}.brand-mark img{width:100%;height:100%;object-fit:contain}.brand h1{font-size:18px;line-height:1.1;margin:0}.brand span{display:block;color:#aaa;font-size:12px;margin-top:4px;overflow-wrap:anywhere}.brand .icon-only{margin-left:auto;background:transparent;border-color:#333;color:#ccc}nav{display:grid;gap:6px}.nav-item{justify-content:flex-start;color:#ccc;background:transparent;border-color:transparent;width:100%}.nav-item.active{background:#f0f0f0;color:#111}.content{min-width:0;padding:18px 22px 28px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.week-selector,.user-chip,.summary-strip{display:flex;align-items:center;gap:10px}.week-selector{flex-wrap:wrap}.week-selector input{width:154px}.week-selector span,.user-chip span,.user-chip strong{font-size:13px;color:var(--ink-soft)}.user-chip{padding:8px 10px;background:#fff;border:1px solid var(--line);border-radius:7px}.work-surface{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);overflow:hidden}.section-head{padding:16px 18px;display:flex;justify-content:space-between;gap:16px;align-items:center;border-bottom:1px solid var(--line)}.section-head h2{margin:0;font-size:19px}.section-head p{margin:4px 0 0;color:var(--ink-soft);font-size:13px}.error-banner{padding:12px 18px;color:var(--red);background:#fff5f5;border-bottom:1px solid #e4a39e;font-size:13px}.filter-bar{display:flex;flex-wrap:wrap;gap:10px;padding:12px 18px;border-bottom:1px solid var(--line)}.filter-bar select{padding:6px 10px;border:1px solid var(--line);border-radius:6px;background:#fff;font-size:13px}.summary-strip{background:#f2f2f2;border:1px solid var(--line);border-radius:7px;padding:8px 12px}.summary-strip div{min-width:82px}.summary-strip span{display:block;color:var(--ink-soft);font-size:12px}.summary-strip strong{font-size:18px}.days-stack{display:grid}.day-band{border-bottom:1px solid var(--line);padding:14px 16px}.day-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.day-head strong{display:block;font-size:15px}.day-head span{color:var(--ink-soft);font-size:12px}.day-total{min-width:76px;text-align:right;font-weight:800}.day-total.ok{color:var(--green)}.day-total.warn{color:var(--amber)}.day-total.review{color:var(--red)}.entry-grid{display:grid;gap:8px}.entry-row{display:grid;grid-template-columns:minmax(220px,1.5fr) 90px minmax(180px,1fr) minmax(160px,1fr) 38px;gap:8px;align-items:center}.hours-input{text-align:right}.day-actions,.action-bar{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.action-bar{justify-content:flex-end;padding:14px 16px;margin-top:0}.project-search{position:relative;display:flex;align-items:center}.project-search>svg{position:absolute;left:10px;color:var(--ink-soft);pointer-events:none}.project-search input{padding-left:34px}.project-results{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:20;background:#fff;border:1px solid var(--line);border-radius:7px;box-shadow:var(--shadow);max-height:260px;overflow:auto}.project-results button{width:100%;border:0;border-radius:0;min-height:38px;justify-content:flex-start;align-items:flex-start;flex-direction:column;gap:2px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--line);font-size:13px}th{color:var(--ink-soft);background:#f8f8f8;font-weight:700}.project-list{display:grid}.project-item{display:flex;justify-content:space-between;gap:14px;padding:13px 16px;border-bottom:1px solid var(--line)}.project-item span{display:block;color:var(--ink-soft);font-size:13px;margin-top:3px}.project-item.inactive{opacity:.58}.settings-panel{padding:18px}.settings-panel h2{margin-top:0}dl{display:grid;grid-template-columns:150px 1fr;gap:8px 14px}dt{color:var(--ink-soft)}dd{margin:0;font-weight:700}.center-state{min-height:100vh;display:grid;place-items:center;align-content:center;gap:10px;color:var(--ink-soft)}.login-view{padding:20px}.login-form{width:min(360px,100%);padding:28px 26px;display:grid;gap:14px;justify-items:center;text-align:center}.login-form h2{margin:0}.login-form p{margin:0;color:var(--ink-soft);font-size:13px}.login-form label{width:100%;display:grid;gap:6px;text-align:left;font-size:13px;color:var(--ink-soft)}.username-input{position:relative;display:flex;align-items:center}.username-input input{padding-right:76px}.username-suffix{position:absolute;right:10px;color:var(--ink-soft);font-size:13px;pointer-events:none}.login-form button.primary{width:100%}.login-error{display:flex;align-items:center;gap:8px;color:var(--red);font-size:13px}.login-success{display:flex;align-items:center;gap:8px;color:var(--green);font-size:13px}.link-button{background:none;border:none;padding:0;text-decoration:underline;color:var(--ink-soft);font-size:13px;min-height:auto}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.toast{position:fixed;right:18px;bottom:18px;max-width:min(420px,calc(100vw - 36px));display:flex;gap:10px;align-items:center;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;padding:12px 14px}.toast.success{border-color:#94c7ab}.toast.error{border-color:#e4a39e}.mobile-header{display:none}@media(max-width:980px){.app-shell{grid-template-columns:1fr}.mobile-header{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:40;background:#111;padding:8px 12px;gap:10px}.mobile-brand{display:flex;align-items:center;gap:8px;flex:1;color:#eee;font-size:15px;font-weight:600}.mobile-brand .brand-mark{width:30px;height:30px}.mobile-menu-btn,.mobile-logout-btn{background:transparent;border-color:#333;color:#ccc;width:36px;height:36px}.mobile-menu-btn:hover,.mobile-logout-btn:hover{border-color:#666}.nav-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;background:#00000073}.sidebar{position:fixed;top:0;left:0;bottom:0;z-index:50;width:260px;transform:translate(-100%);transition:transform .22s ease;overflow-y:auto;padding:20px 14px}.sidebar--open{transform:translate(0);box-shadow:4px 0 24px #00000059}.brand{display:flex}nav{display:grid;gap:6px;overflow:visible}.nav-item{min-width:unset}.topbar{align-items:stretch;flex-direction:column}.entry-row{grid-template-columns:1fr 82px}.entry-row input:nth-of-type(2),.entry-row input:nth-of-type(3){grid-column:1 / -1}}@media(max-width:560px){.content{padding:12px}.section-head{align-items:flex-start;flex-direction:column}.action-bar button,.day-actions button{flex:1 1 160px}dl{grid-template-columns:1fr}}.pm-cards{display:grid;gap:16px;padding:18px}.pm-card{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff}.pm-card-head{display:flex;justify-content:space-between;align-items:flex-start;padding:14px 16px 10px;border-bottom:1px solid var(--line)}.pm-card-head>div>strong{display:block;font-size:15px}.pm-card-head>div>span{display:block;color:var(--ink-soft);font-size:12px;margin-top:2px}.pm-progress{font-size:13px;font-weight:700;color:var(--blue);white-space:nowrap;padding-top:2px}.pm-activities{padding:10px 16px;display:grid;gap:6px}.pm-activity-row{display:flex;align-items:center;gap:10px;font-size:13px}.pm-activity-row.done span{text-decoration:line-through;color:var(--ink-soft)}.pm-toggle{width:22px;height:22px;min-height:22px;padding:0;border-radius:4px;flex-shrink:0}.pm-add-activity{display:flex;gap:8px;padding:8px 16px}.pm-add-activity input{flex:1}.pm-notes{padding:6px 16px 14px}.pm-notes textarea{width:100%;border:1px solid var(--line);border-radius:6px;padding:8px 10px;font:inherit;font-size:13px;resize:vertical;min-height:64px}.task-create-bar{padding:12px 18px;border-bottom:1px solid var(--line)}.task-columns{display:grid;grid-template-columns:repeat(3,1fr)}.task-column{padding:14px 16px;border-right:1px solid var(--line);min-height:120px}.task-column:last-child{border-right:0}.task-col-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.task-col-head strong{font-size:14px}.task-col-head span{font-size:12px;color:var(--ink-soft);background:#f0f0f0;border-radius:10px;padding:1px 7px}.task-item{border:1px solid var(--line);border-radius:7px;padding:10px 12px;margin-bottom:8px;background:#fff;display:grid;gap:4px}.task-title{font-size:14px;font-weight:600}.task-project{font-size:12px;color:var(--blue)}.task-assignee{font-size:12px;color:var(--ink-soft)}.task-status-select{font-size:12px;border:1px solid var(--line);border-radius:5px;padding:2px 6px;background:#fff;width:fit-content;margin-top:2px}.task-status-done .task-title{text-decoration:line-through;color:var(--ink-soft)}@media(max-width:980px){.task-columns{grid-template-columns:1fr}.task-column{border-right:0;border-bottom:1px solid var(--line)}.task-column:last-child{border-bottom:0}.pm-cards{padding:12px}}.pm-card-actions{display:flex;align-items:center;gap:10px}.pm-minuta-btn{display:flex;align-items:center;gap:5px;font-size:12px;padding:4px 10px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink);cursor:pointer}.pm-minuta-btn:hover{background:var(--line)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:800;display:flex;align-items:center;justify-content:center}.modal-box{background:var(--surface);border-radius:10px;padding:24px;width:100%;max-width:420px;box-shadow:0 8px 32px #0000002e}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.modal-header h3{font-size:16px;font-weight:600;margin:0}.modal-form{display:flex;flex-direction:column;gap:14px}.modal-form label{display:flex;flex-direction:column;gap:5px;font-size:13px;color:var(--muted)}.modal-form label span{font-weight:500}.modal-form input{border:1px solid var(--line);border-radius:6px;padding:8px 10px;font-size:14px;background:#fff;color:var(--ink)}.modal-form input:focus{outline:none;border-color:var(--accent)}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.minuta-project-list{display:flex;flex-direction:column;gap:10px;max-width:520px}.minuta-project-pick{display:flex;align-items:center;gap:14px;padding:14px 18px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer;text-align:left;color:var(--ink)}.minuta-project-pick:hover{border-color:var(--green);background:#f6faf8}.minuta-project-pick div{display:flex;flex-direction:column;gap:2px}.minuta-project-pick strong{font-size:14px;font-weight:600}.minuta-project-pick span{font-size:12px;color:var(--muted)}.minuta-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#fff;z-index:900;display:flex;flex-direction:column;overflow:auto}.minuta-toolbar{position:sticky;top:0;display:flex;align-items:center;gap:12px;padding:10px 20px;background:#fff;border-bottom:1px solid #e5e7eb;z-index:10;flex-shrink:0}.minuta-close-btn{display:flex;align-items:center;gap:6px;font-size:13px;padding:5px 12px;border:1px solid #d1d5db;border-radius:6px;background:#fff;cursor:pointer}.minuta-close-btn:hover{background:#f3f4f6}.minuta-toolbar-title{flex:1;font-weight:600;font-size:14px}.minuta-badge{font-size:11px;font-weight:600;padding:3px 10px;border-radius:20px;letter-spacing:.02em}.minuta-badge--open{background:#dcfce7;color:#15803d}.minuta-badge--closed{background:#fee2e2;color:#b91c1c}.minuta-page{padding:20px 24px;overflow-x:auto;min-width:0}.mn-header-block{border:1px solid #bbb;margin-bottom:0}.mn-header-row{display:flex}.mn-code{background:#c0504d;color:#fff;font-weight:700;padding:8px 12px;min-width:90px;text-align:center;font-size:13px;flex-shrink:0}.mn-project-name-cell{background:#943634;color:#fff;font-weight:700;padding:8px 12px;flex:1;font-size:13px}.mn-meta-row{display:grid;grid-template-columns:90px 1fr 90px 1fr;border-top:1px solid #bbb}.mn-label-cell{background:#a64040;color:#fff;font-weight:600;font-size:10px;text-transform:uppercase;letter-spacing:.03em;padding:6px 8px;display:flex;align-items:center}.mn-label-cell--mid{border-left:1px solid #bbb}.mn-meta-row .mn-input{border-right:1px solid #bbb}.mn-meta-row .mn-input:last-child{border-right:none}.mn-week-body{display:flex;border:1px solid #bbb;border-top:none;margin-bottom:8px}.mn-week-body--two .mn-semana-col{flex:1}.mn-semana-col{border-right:1px solid #bbb;min-width:0}.mn-semana-col:last-child{border-right:none}.mn-semana-col--ro{background:#fafafa}.mn-semana-label{background:#595959;color:#fff;font-weight:600;font-size:11px;text-align:center;padding:5px}.mn-resumen-block{padding:10px;border-bottom:1px solid #e5e7eb}.mn-block-title{font-size:10px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}.mn-empty-msg{font-size:12px;color:#9ca3af;margin:4px 0}.mn-comment{background:#f3f4f6;border-radius:6px;padding:7px 10px;margin-bottom:6px}.mn-comment-header{display:flex;align-items:baseline;gap:8px;margin-bottom:3px}.mn-comment-author{font-size:12px;font-weight:700;color:#374151}.mn-comment-ts{font-size:10px;color:#9ca3af}.mn-comment-text{margin:0;font-size:12px;color:#111;white-space:pre-wrap;line-height:1.5}.mn-comment-compose{display:flex;gap:6px;margin-top:8px;align-items:flex-start}.mn-comment-compose textarea{flex:1;font-size:12px;font-family:inherit;padding:7px 9px;border:1px solid #d1d5db;border-radius:6px;resize:none;min-height:52px}.mn-comment-compose button{padding:7px 10px;flex-shrink:0}.mn-act-block{padding:10px}.mn-act-header-row{display:grid;grid-template-columns:1fr 100px 28px 110px;gap:4px;font-size:10px;font-weight:700;color:#6b7280;text-transform:uppercase;padding:0 4px;margin-bottom:4px}.mn-act-row{display:grid;grid-template-columns:1fr 100px 28px 110px;gap:4px;align-items:center;padding:2px 0;border-bottom:1px solid #f3f4f6}.mn-act-row:last-child{border-bottom:none}.mn-act-done .mn-act-text,.mn-act-done .mn-act-input{text-decoration:line-through;color:#9ca3af}.mn-act-text{font-size:12px;padding:4px;color:#111;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mn-act-fecha-txt{color:#6b7280;font-size:11px}.mn-act-input{box-sizing:border-box}.mn-check{width:15px;height:15px;cursor:pointer;justify-self:center}.mn-add-act{display:flex;gap:6px;margin-top:8px}.mn-add-act input{flex:1}.mn-input{width:100%;border:none;outline:none;background:transparent;font-size:12px;padding:5px 7px;color:#111;box-sizing:border-box;font-family:inherit}.mn-date-input{font-size:11px}.mn-milestone-table{border-collapse:collapse;width:100%;min-width:700px;font-size:12px;font-family:inherit;margin-top:0}.mn-milestone-table td{border:1px solid #bbb;padding:0;vertical-align:middle;text-align:center}.mn-label{background:#a64040;color:#fff;font-weight:600;font-size:10px;text-transform:uppercase;letter-spacing:.03em;text-align:center;padding:5px 6px;white-space:nowrap}.mn-milestone-label{background:#595959;color:#fff;font-size:10px;font-weight:600;padding:4px 5px;white-space:normal;line-height:1.3}@media print{.no-print{display:none!important}.minuta-overlay{position:static;overflow:visible}.minuta-page{padding:0}}@media(max-width:860px){.mn-week-body--two{flex-direction:column}.mn-semana-col{border-right:none;border-bottom:1px solid #bbb}.mn-semana-col:last-child{border-bottom:none}.mn-milestone-table{font-size:10px}}
