:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;--purple:#271B67;--orange:#EF5F18;--white:#FFFFFF;--bg:#f6f6fa;--panel:#fff;--subtle:#f0eff8;--ink:#242238;--muted:#737286;--border:#e4e2ec;--accent:#271B67;--accentInk:#fff;--orangeSoft:#fff0e9;--shadow:0 8px 24px #271b670b;color-scheme:light}
body.theme-dark{--bg:#202327;--panel:#272E35;--subtle:#303840;--ink:#FFFFFF;--muted:#b6c0cc;--border:#39424d;--accent:#EF5F18;--accentInk:#fff;--orangeSoft:#46372f;--shadow:none;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-size:14px;overflow-x:hidden}button,select,input,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.4;cursor:not-allowed}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p{margin-top:0}h1{letter-spacing:-.04em;font-size:clamp(27px,3.5vw,38px);margin-bottom:9px;line-height:1.1}h2{letter-spacing:-.025em}h3{letter-spacing:-.025em}small,.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.shell{display:flex;min-height:100dvh}.sidebar{position:fixed;left:0;top:0;bottom:0;width:244px;background:var(--panel);border-right:1px solid var(--border);padding:26px 15px 16px;display:flex;flex-direction:column;z-index:40}.brand{display:flex;align-items:center;gap:10px;font-size:21px;font-weight:850;letter-spacing:-1.1px;padding:3px 9px 28px;white-space:nowrap}.brand em{font-style:normal;color:var(--orange);margin-left:5px}.brand-mark{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--purple);color:#fff;font-size:23px}.side-caption,.eyebrow{color:var(--muted);font-size:10px;letter-spacing:.13em;font-weight:800}.side-caption{padding:12px 14px}.navigation{display:grid;gap:5px}.nav-item,.nav-sub{display:flex;align-items:center;gap:12px;border:0;background:transparent;color:var(--muted);border-radius:12px;font-weight:700;text-align:left;padding:12px 13px;min-height:46px;width:100%}.nav-icon{font-size:23px;line-height:18px;min-width:24px;text-align:center;font-weight:400}.nav-item.active{background:var(--accent);color:var(--accentInk)}.nav-item:not(.active):hover,.nav-sub:hover{background:var(--subtle);color:var(--ink)}.side-bottom{margin-top:auto;display:grid;gap:11px;border-top:1px solid var(--border);padding-top:13px}.support-side{display:flex;gap:10px;align-items:center;padding:13px;background:var(--subtle);border-radius:12px}.support-side>span:first-child{color:var(--orange);font-size:22px}.support-side div{flex:1;min-width:0}.support-side b,.support-side small{display:block}.support-side b{font-size:12px}.support-side small{font-size:10px;margin-top:3px}.copyright{font-size:10px;color:var(--muted);padding:4px 7px}.workspace{margin-left:244px;width:calc(100% - 244px);min-width:0}.topbar{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--panel);border-bottom:1px solid var(--border);padding:14px 28px;z-index:20;min-height:75px}.topbar-left,.topbar-right{display:flex;gap:9px;align-items:center;min-width:0}.topbar-right{justify-content:flex-end}.project-select-wrap{max-width:260px;min-width:0}.project-select-wrap select{font-weight:750;border:0;background:var(--subtle);border-radius:11px;height:43px}.mobile-brand{display:none}.save-indicator{color:var(--muted);font-size:11px;white-space:nowrap;margin-right:7px}.save-indicator.error{color:#ef7163}.save-indicator.good{color:var(--muted)}.main{max-width:1540px;margin:0 auto;padding:30px 32px 96px;min-height:70vh}.btn,.icon-button,.chip-button{border:1px solid var(--border);background:var(--panel);color:var(--ink);border-radius:11px;padding:11px 15px;min-height:43px;font-weight:750;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-align:center}.icon-button{width:43px;flex:0 0 43px;padding:0;font-size:18px}.btn-primary{background:var(--purple);border-color:var(--purple);color:#fff}.theme-dark .btn-primary{background:var(--orange);border-color:var(--orange)}.btn-accent{background:var(--orange);border-color:var(--orange);color:#fff}.btn-danger{color:#df5555}.btn:hover,.icon-button:hover,.chip-button:hover{filter:brightness(.97)}.btn-small{padding:7px 11px;min-height:33px;font-size:12px}.btn-quiet{background:transparent}.btn-wrap{display:flex;flex-wrap:wrap;gap:8px}.page-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:24px}.page-head p{color:var(--muted);line-height:1.55;margin-bottom:0}.page-action{flex:0 0 auto}.welcome{display:flex;gap:26px;align-items:stretch;justify-content:space-between;border-radius:21px;background:var(--purple);color:#fff;padding:30px 32px;overflow:hidden;position:relative;min-height:190px}.welcome:before{content:"";position:absolute;width:290px;height:290px;border-radius:50%;border:45px solid #ffffff10;right:-60px;top:-130px}.welcome:after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;background:#ef5f1870;right:70px;bottom:-120px}.welcome>*{position:relative;z-index:1}.welcome p{color:#e3dcff;max-width:540px;line-height:1.65;margin:10px 0 0}.welcome h1{color:#fff}.welcome .btn{background:#fff;color:var(--purple);border-color:#fff;align-self:flex-end;white-space:nowrap}.theme-dark .welcome{background:#303440;border:1px solid #474457}.theme-dark .welcome h1{color:#fff}.theme-dark .welcome .btn{background:var(--orange);border-color:var(--orange);color:#fff}.quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-top:18px}.quick-button{text-align:left;padding:19px;background:var(--panel);border:1px solid var(--border);border-radius:15px;display:flex;align-items:flex-start;gap:12px;transition:transform .14s,border-color .14s;min-width:0}.quick-button:hover{transform:translateY(-2px);border-color:var(--orange)}.quick-symbol{background:var(--orangeSoft);color:var(--orange);min-width:38px;height:38px;border-radius:11px;display:grid;place-items:center;font-size:21px}.quick-button strong,.quick-button small{display:block}.quick-button strong{font-size:14px}.quick-button small{line-height:1.5;font-size:11px;margin-top:4px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:28px 0 13px}.section-head h2{font-size:19px;margin:0}.grid{display:grid;gap:14px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:21px;min-width:0;overflow-wrap:anywhere;box-shadow:var(--shadow)}.stat-name{font-size:12px;color:var(--muted);font-weight:650}.stat-value{font-size:clamp(24px,3vw,31px);font-weight:850;letter-spacing:-.04em;margin:8px 0 2px}.stat-desc{font-size:11px;color:var(--muted)}.card-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:9px}.card-heading h3{margin:0;font-size:16px}.card-sub{margin:6px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.row-card{display:flex;align-items:center;gap:11px;border-bottom:1px solid var(--border);padding:12px 0;min-width:0}.row-card:last-child{border-bottom:0}.row-content{flex:1;min-width:0}.row-title{font-weight:700;display:block;overflow-wrap:anywhere}.row-meta{font-size:11px;color:var(--muted);margin-top:5px;line-height:1.5}.date-square{background:var(--subtle);border-radius:11px;display:grid;place-items:center;width:51px;min-width:51px;height:49px;line-height:1.1;text-align:center;font-weight:800;font-size:18px}.date-square small{font-size:10px;font-weight:750;text-transform:uppercase}.empty{padding:42px 20px;text-align:center;color:var(--muted);border:1px dashed var(--border);border-radius:15px;background:var(--panel);line-height:1.6}.empty strong{display:block;color:var(--ink);font-size:16px;margin-bottom:5px}.badge{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:5px 9px;background:var(--subtle);color:var(--muted);font-size:11px;font-weight:750;line-height:1.15}.badge.orange{background:var(--orangeSoft);color:var(--orange)}.badge.good{background:#2aa5731b;color:#30a373}.badge.warn{background:#f6ba4924;color:#d09921}.badge.bad{background:#f2606220;color:#ef6868}.meter{height:8px;border-radius:90px;background:var(--subtle);overflow:hidden}.meter>i{display:block;height:100%;background:var(--orange);border-radius:inherit}.toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin:0 0 15px}.filter-wrap{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.filter-wrap input,.filter-wrap select{max-width:220px}.segmented{display:flex;gap:3px;background:var(--subtle);padding:4px;border-radius:11px;max-width:100%;overflow:auto}.segmented button{background:transparent;border:0;border-radius:8px;padding:8px 13px;color:var(--muted);font-weight:750;white-space:nowrap}.segmented button.active{background:var(--panel);color:var(--ink);box-shadow:0 1px 5px #00000010}.record-card{cursor:default}.record-card h3{margin:9px 0;font-size:17px;overflow-wrap:anywhere}.record-card .record-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-top:14px}.record-details{margin:12px 0;line-height:1.5}.record-tags{display:flex;flex-wrap:wrap;gap:5px}.small-uppercase{font-size:10px;letter-spacing:.11em;color:var(--muted);font-weight:850}.calendar-shell{background:var(--panel);border:1px solid var(--border);border-radius:17px;overflow:hidden}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.cal-dow{background:var(--subtle);text-align:center;padding:12px 4px;font-weight:750;font-size:11px;color:var(--muted)}.cal-day{border-top:1px solid var(--border);border-right:1px solid var(--border);min-height:127px;padding:7px;min-width:0;background:var(--panel)}.cal-day:nth-child(7n){border-right:0}.cal-day.off{opacity:.38}.cal-day.today{box-shadow:inset 0 0 0 2px var(--orange)}.cal-day-head{display:flex;align-items:center;justify-content:space-between;gap:6px}.cal-day-num{border:0;background:transparent;color:var(--ink);font-weight:750;padding:2px 4px;border-radius:7px}.cal-add{border:0;color:var(--muted);background:transparent;font-size:17px;opacity:0}.cal-day:hover .cal-add,.cal-add:focus-visible{opacity:1}.cal-event{display:block;width:100%;border:0;text-align:left;font-size:10.5px;line-height:1.25;border-radius:6px;background:var(--subtle);color:var(--ink);margin-top:5px;padding:6px;border-left:3px solid var(--purple);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-event.content{border-left-color:var(--orange)}.cal-event.campaign{border-left-color:#8c73dc}.cal-event:hover{filter:brightness(.93)}.cal-more{font-size:10px;color:var(--muted);margin-top:5px}.list-date{font-weight:850;color:var(--muted);margin-top:17px;font-size:12px}.board{display:grid;grid-template-columns:repeat(4,minmax(225px,1fr));gap:12px;overflow-x:auto;padding-bottom:10px}.board-col{background:var(--subtle);border:1px solid var(--border);border-radius:15px;padding:13px;min-height:300px}.board-title{display:flex;justify-content:space-between;font-weight:850;margin-bottom:14px}.board-card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:12px;margin-bottom:9px}.board-card p{font-weight:750;margin-bottom:7px}.table-scroll{overflow:auto}.report-table{border-collapse:collapse;width:100%;min-width:600px}.report-table th,.report-table td{padding:13px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle}.report-table th{color:var(--muted);font-size:11px}.report-table td{font-size:12px}.report-table tr:last-child td{border:0}input,select,textarea{background:var(--panel);color:var(--ink);border:1px solid var(--border);padding:11px 12px;min-height:43px;border-radius:11px;outline:0;width:100%;min-width:0}input:focus,select:focus,textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px #ef5f1826}textarea{resize:vertical;min-height:92px;line-height:1.5}input[type=checkbox]{width:17px;min-height:17px;height:17px;accent-color:var(--orange)}label{font-size:12px;font-weight:730;display:block;margin-bottom:6px}.field{min-width:0}.field small{display:block;margin-top:6px;font-size:11px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.span-2{grid-column:1/-1}.form-section{border-top:1px solid var(--border);margin-top:20px;padding-top:18px}.form-section h3{font-size:15px;margin:0 0 13px}.checks{display:flex;flex-wrap:wrap;gap:9px}.choice{display:inline-flex;align-items:center;gap:7px;background:var(--subtle);border:1px solid var(--border);padding:10px;border-radius:9px;font-weight:650;font-size:12px;margin:0}.choice input{margin:0}.modal-back{position:fixed;inset:0;background:#06050bba;z-index:100;display:grid;place-items:center;padding:18px}.modal-back[hidden]{display:none}.modal{width:min(790px,100%);max-height:min(94dvh,980px);background:var(--panel);border:1px solid var(--border);border-radius:19px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 72px #0006}.modal-header{padding:19px 23px 15px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border);flex:0 0 auto}.modal-header h2{font-size:22px;margin:5px 0 0}.modal-inner{padding:22px 23px 25px;overflow:auto;min-height:0}.modal-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--border);padding-top:18px;margin-top:22px}.modal-footer .btn-wrap{margin-left:auto}.subdued{background:var(--subtle);border-radius:12px;padding:13px;line-height:1.6;color:var(--muted);font-size:12px}.form-note{line-height:1.5;font-size:11px;color:var(--muted)}.advanced{border-top:1px solid var(--border);margin-top:19px;padding-top:14px}.advanced summary{cursor:pointer;font-weight:750;padding:5px 0;color:var(--ink)}.advanced>.form-grid{margin-top:16px}.goal-display{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;font-size:12px;color:var(--muted)}.goal-display b{color:var(--ink);font-size:17px}.toast{position:fixed;right:20px;bottom:22px;max-width:min(390px,calc(100vw - 24px));z-index:130;border-radius:12px;padding:13px 17px;background:#141b23;color:#fff;box-shadow:0 10px 30px #0004;line-height:1.45}.toast[hidden]{display:none}.mobile-nav,.mobile-add{display:none}.backup-banner{border:1px solid var(--border);background:var(--subtle);padding:13px 16px;border-radius:12px;font-size:12px;color:var(--muted);line-height:1.55}.tag{background:var(--orangeSoft);color:var(--orange);font-size:10px;border-radius:7px;padding:4px 7px;font-weight:700}.data-actions{display:flex;gap:9px;flex-wrap:wrap}.form-preview{border:1px solid var(--border);border-radius:12px;padding:12px;background:var(--subtle)}
@media(max-width:1100px){.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.save-indicator{max-width:130px;white-space:normal}.main{padding:24px 22px 95px}}
@media(max-width:760px){.sidebar{display:none}.workspace{margin:0;width:100%}.topbar{padding:10px 14px;min-height:66px}.topbar-left,.topbar-right{gap:5px}.mobile-brand{display:inline-block;white-space:nowrap;font-size:13px;font-weight:800;color:var(--orange)}.project-select-wrap{max-width:152px}.project-select-wrap select{font-size:12px;padding:10px 8px;height:41px}.save-indicator{display:none}.top-new{display:none}.main{padding:21px 14px calc(125px + env(safe-area-inset-bottom,0px))}.page-head{align-items:flex-start;gap:12px;flex-wrap:wrap}.page-head p{font-size:12px}.page-action{width:auto}.welcome{padding:23px 21px;min-height:0;display:block}.welcome .btn{margin-top:17px}.welcome h1{font-size:28px}.quick-grid{gap:9px}.quick-button{padding:13px;display:block}.quick-symbol{margin-bottom:10px}.quick-button strong{font-size:12px}.quick-button small{font-size:10px}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr 1fr}.card{padding:15px}.section-head h2{font-size:17px}.mobile-nav{position:fixed;bottom:0;left:0;right:0;background:var(--panel);border-top:1px solid var(--border);display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;padding:6px 5px calc(6px + env(safe-area-inset-bottom,0px));z-index:40}.mobile-nav button{border:0;background:transparent;color:var(--muted);border-radius:10px;padding:6px 0;font-size:10px;display:grid;justify-items:center;gap:5px;min-width:0}.mobile-nav button span{font-size:23px;line-height:22px}.mobile-nav button.active{color:var(--orange)}.mobile-add{display:grid;place-items:center;position:fixed;right:16px;bottom:calc(88px + env(safe-area-inset-bottom,0px));width:54px;height:54px;border:0;border-radius:17px;background:var(--orange);color:#fff;font-size:28px;z-index:39;box-shadow:0 9px 25px #ef5f1850}.modal-back{padding:0;align-items:end}.modal{border-radius:19px 19px 0 0;width:100%;max-height:96dvh}.modal-header{padding:15px 16px}.modal-inner{padding:17px 15px calc(22px + env(safe-area-inset-bottom,0px))}.form-grid{grid-template-columns:1fr;gap:13px}.span-2{grid-column:auto}.board{grid-template-columns:repeat(4,77vw)}.calendar-shell{overflow:auto}.cal-day{min-height:66px;padding:4px}.cal-add{display:none}.cal-dow{padding:9px 1px}.cal-event{display:none}.cal-day.has-events::after{content:'•';display:block;color:var(--orange);font-size:26px;line-height:14px;text-align:center}.modal-footer{flex-wrap:wrap}.modal-footer .btn-wrap{width:100%}.modal-footer .btn-wrap .btn{flex:1}}
@media(max-width:480px){.project-add{width:34px;flex-basis:34px}.project-select-wrap{max-width:135px}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr 1fr}.stat-value{font-size:23px}.calendar-shell{margin:0 -5px}.page-action .btn{min-height:39px;padding:9px}.record-card .record-footer .btn-wrap{width:100%}.record-card .record-footer .btn-wrap button{flex:1}.date-square{width:45px;min-width:45px}.page-head h1{font-size:29px}}
@media print{.sidebar,.topbar,.mobile-nav,.mobile-add,.page-action,.toolbar button,.btn{display:none!important}.workspace{margin:0;width:100%}.main{padding:10px}.card{break-inside:avoid}}

/* Pulido móvil: paneles principales a una columna; métricas conservan 2. */
@media(max-width:760px){
 .grid-2,.grid-3{grid-template-columns:minmax(0,1fr)}
 .grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
 .topbar .save-indicator{display:inline-block;font-size:0;max-width:18px;min-width:12px;margin:0 1px;color:#70cd93}
 .topbar .save-indicator::before{content:'●';font-size:12px;line-height:1}
 .topbar .save-indicator.error{color:#f36e70}
 .topbar .project-select-wrap{max-width:130px}
 .welcome{margin-bottom:0}
 .stat-name,.stat-desc{overflow-wrap:anywhere}
}

.file-ref{display:inline-flex;align-items:center;gap:4px;background:var(--subtle);padding:3px;border-radius:11px;min-width:0}.file-ref a{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-ref .btn-danger{padding:5px 10px;min-height:32px}

.ui-icon{display:inline-block;vertical-align:middle;width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.mobile-nav .ui-icon{width:22px;height:22px}.quick-symbol .ui-icon{width:23px;height:23px}

/* ===== Agilitic Planner 1.1 · UX interactiva (octubre 2026) ===== */
[hidden]{display:none!important}
.money-field{font-variant-numeric:tabular-nums;font-weight:750;letter-spacing:.01em}
.other-field{margin-top:10px;padding:11px;border:1px solid var(--border);background:var(--subtle);border-radius:11px}
.other-field label{margin-bottom:7px}
.hint-text{font-size:12px;color:var(--muted);line-height:1.5;margin:4px 0 11px}
#tagSelectorContainer,#draftChecklist{min-width:0}
.tag-palette,.detail-tag-row{display:flex;flex-wrap:wrap;gap:7px;margin:9px 0}
.tag-choice{background:color-mix(in srgb,var(--tag-color) 11%,var(--panel));border:1px solid color-mix(in srgb,var(--tag-color) 40%,var(--border));color:var(--ink);padding:8px 12px;border-radius:999px;font-size:12px;font-weight:730;line-height:1.2;min-height:35px;white-space:normal;overflow-wrap:anywhere}
.tag-choice.picked{background:color-mix(in srgb,var(--tag-color) 24%,var(--panel));border-color:var(--tag-color);box-shadow:inset 0 0 0 1px var(--tag-color)}
.tag-choice:focus-visible,.board-card:focus-visible{outline:2px solid var(--orange);outline-offset:2px}
.tag-colored{--tag-color:#EF5F18;background:color-mix(in srgb,var(--tag-color) 13%,var(--panel));color:var(--ink);border:1px solid color-mix(in srgb,var(--tag-color) 45%,var(--border));max-width:100%;overflow-wrap:anywhere}
.tag-colored:before{content:'';display:inline-block;background:var(--tag-color);width:7px;height:7px;margin-right:5px;border-radius:50%}
.new-tag-line{display:grid;grid-template-columns:minmax(0,1fr) 48px auto;gap:8px;align-items:center;margin-top:12px}
.new-tag-line input[type=color],.catalog-tag-row input[type=color]{width:48px;min-width:48px;padding:4px;cursor:pointer;height:43px}
.new-tag-line .btn{white-space:nowrap}
.catalog-tag-row{display:grid;grid-template-columns:minmax(0,1fr) 48px auto auto;gap:8px;margin:8px 0;align-items:center}
.checklist-items,.detail-check-list{display:grid;gap:8px;margin:12px 0}
.checklist-edit-row{display:flex;align-items:center;gap:10px;border:1px solid var(--border);background:var(--subtle);border-radius:11px;padding:7px 9px}
.checklist-edit-row .btn{flex:0 0 auto}
.checklist-line,.detail-check-row{display:flex;align-items:center;gap:10px;min-width:0;margin:0;cursor:pointer;line-height:1.45}
.checklist-line{flex:1}
.checklist-line input,.detail-check-row input{flex:0 0 18px;width:18px;height:18px;min-height:18px;margin:0;accent-color:var(--orange)}
.checklist-line span,.detail-check-row span{overflow-wrap:anywhere;min-width:0}
.checklist-line span.checked,.detail-check-row span.checked{text-decoration:line-through;color:var(--muted)}
.checklist-add-line,.detail-check-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;margin:12px 0 5px}
.checklist-add-line .btn,.detail-check-add .btn{white-space:nowrap}
.check-mini{display:inline-flex;align-items:center;font-size:11px;padding:4px 7px;color:var(--muted);background:var(--subtle);border-radius:8px;font-weight:700}
.row-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}
.board-card[data-detail]{cursor:pointer;transition:border-color .15s,transform .15s}
.board-card[data-detail]:hover{border-color:var(--orange);transform:translateY(-1px)}
.board-card .record-tags{display:flex;gap:4px;flex-wrap:wrap}
.detail-overview{padding:0 0 14px}
.detail-kind{display:inline-flex;gap:7px;align-items:center;font-size:11px;letter-spacing:.08em;font-weight:850;text-transform:uppercase;color:var(--orange);margin-bottom:10px}
.detail-status-row{display:flex;gap:9px 12px;align-items:center;flex-wrap:wrap;font-size:12px;color:var(--muted)}
.detail-desc{font-size:14px;line-height:1.7;overflow-wrap:anywhere;margin:15px 0 9px}
.detail-check-section{border-top:1px solid var(--border);padding:19px 0 4px;margin-top:9px}
.detail-check-head{display:flex;gap:10px;justify-content:space-between;align-items:center;margin-bottom:11px}
.detail-check-head h3{margin:0 0 4px;font-size:16px}
.detail-check-head small{font-size:12px}
.detail-check-list{margin-top:16px;gap:6px}
.detail-check-row{background:var(--subtle);border:1px solid var(--border);padding:12px;border-radius:10px;font-size:13px}
.detail-check-row:hover{border-color:var(--orange)}
.detail-text-block{border-top:1px solid var(--border);padding:15px 0 4px;min-width:0}
.detail-text-block h4{margin:0 0 8px;font-size:12px;color:var(--muted)}
.detail-text-block p{margin:0 0 8px;line-height:1.65;overflow-wrap:anywhere;white-space:normal}
.detail-attachments{display:flex;flex-wrap:wrap;gap:8px}
.detail-actions{border-top:1px solid var(--border);display:flex;align-items:end;justify-content:space-between;gap:13px;padding-top:19px;margin-top:15px}
.detail-status-select{flex:1;max-width:230px;color:var(--muted);font-size:11px}
.detail-status-select select{color:var(--ink);margin-top:5px;font-size:13px}
@media(max-width:760px){
  .new-tag-line{grid-template-columns:minmax(0,1fr) 46px}
  .new-tag-line .btn{grid-column:1/-1;width:100%}
  .catalog-tag-row{grid-template-columns:minmax(0,1fr) 48px auto;gap:6px}
  .catalog-tag-row .btn-danger{grid-column:3/4}
  .checklist-add-line,.detail-check-add{grid-template-columns:minmax(0,1fr)}
  .checklist-add-line .btn,.detail-check-add .btn{width:100%}
  .detail-actions{flex-direction:column;align-items:stretch}
  .detail-status-select{width:100%;max-width:none}
  .detail-actions .btn{width:100%}
  .row-card{flex-wrap:wrap}
  .row-card>.btn{margin-left:auto}
  .row-card>.badge{max-width:100%}
  .modal-inner{overflow-x:hidden}
  #recordForm,.modal-inner,.detail-check-section{min-width:0}
}

.mobile-settings{display:none}
@media(max-width:760px){.mobile-settings{display:inline-flex}.topbar-right .icon-button{width:38px;flex:0 0 38px;min-height:40px}.topbar-right{gap:5px}}
@media(max-width:375px){.topbar-right .icon-button{width:34px;flex-basis:34px}.project-select-wrap{max-width:105px!important}}

/* ===== Agilitic Planner 1.2 · fechas, navegación y tablero ===== */
.btn-edit,.btn.btn-edit{background:#EF5F18!important;border:1px solid #EF5F18!important;color:#fff!important;font-weight:850;box-shadow:0 3px 12px #ef5f1838}
.btn-edit:hover,.btn.btn-edit:hover{background:#D84E0C!important;border-color:#D84E0C!important;transform:translateY(-1px)}
.btn-details{border-color:color-mix(in srgb,var(--orange) 42%,var(--border));font-weight:750}
.modal-header{justify-content:flex-start}.modal-header>div{flex:1;min-width:0}.modal-header h2{overflow-wrap:anywhere}.modal-back-button{flex:0 0 auto;border-color:var(--border);font-size:20px!important;font-weight:800;padding:0}
.back-to-campaign{display:inline-flex;align-items:center;gap:6px;border:1px solid color-mix(in srgb,var(--orange) 48%,var(--border));border-radius:10px;padding:9px 12px;background:var(--orangeSoft);color:var(--ink);font-size:12px;font-weight:800;margin:0 0 16px;max-width:100%;text-align:left;overflow-wrap:anywhere}
.back-to-campaign:hover{border-color:var(--orange)}
.campaign-first{background:color-mix(in srgb,var(--purple) 8%,var(--panel));border:1px solid color-mix(in srgb,var(--purple) 24%,var(--border));border-radius:15px;padding:17px;margin-bottom:18px}
.theme-dark .campaign-first{background:#302E3D;border-color:#4C475E}
.campaign-first-kicker{font-size:10px;color:var(--orange);font-weight:850;letter-spacing:.09em;margin-bottom:5px}
.campaign-first h3{font-size:16px;margin:0 0 6px}.campaign-first>.field{margin-top:12px}.campaign-first select{max-width:100%}
.tag-palette{align-items:center}.tag-palette .tag-choice{margin-right:0}.tag-delete{background:transparent;color:var(--muted);border:1px solid var(--border);border-radius:50%;width:29px;height:29px;min-width:29px;padding:0;line-height:1;font-size:12px;font-weight:800;margin-left:-3px;margin-right:10px;display:inline-grid;place-items:center}
.tag-delete:hover,.tag-delete:focus-visible{color:#fff;background:#d45052;border-color:#d45052}
.campaign-period{padding:11px 13px;margin:0 0 15px;border-radius:11px;background:var(--subtle);font-weight:750;font-size:12px;color:var(--ink)}
.cal-event.campaign-range{border-left:0!important;background:color-mix(in srgb,#271B67 21%,var(--panel));border-top:1px solid color-mix(in srgb,#271B67 52%,var(--border));border-bottom:1px solid color-mix(in srgb,#271B67 52%,var(--border));color:var(--ink);font-weight:800;position:relative}
.cal-event.campaign-range.start{border-radius:8px 1px 1px 8px;border-left:4px solid #EF5F18!important}
.cal-event.campaign-range.middle{border-radius:1px;margin-left:-7px;width:calc(100% + 14px);padding-left:9px}
.cal-event.campaign-range.end{border-radius:1px 8px 8px 1px;border-right:4px solid #EF5F18}
.cal-event.campaign-range.solo{border-radius:7px;border-left:4px solid #EF5F18!important}
.theme-dark .cal-event.campaign-range{background:#393354;border-color:#7064a6;color:#f7f3ff}
.campaign-agenda{margin-bottom:13px}.campaign-agenda h3{margin:0 0 10px;font-size:15px}.campaign-agenda-item{display:flex;align-items:center;gap:12px;justify-content:space-between;padding:12px 0;border-top:1px solid var(--border)}.campaign-agenda-item small{display:block;color:var(--muted);margin-top:5px}.campaign-agenda-item b{overflow-wrap:anywhere}
.board-col{display:flex;flex-direction:column;gap:0;transition:background .14s,border-color .14s}.board-col.drop-target{background:color-mix(in srgb,var(--orange) 13%,var(--subtle));border:2px dashed var(--orange)}
.board-title{align-items:center;gap:7px}.board-create{border:1px dashed color-mix(in srgb,var(--orange) 64%,var(--border));border-radius:10px;background:color-mix(in srgb,var(--orange) 8%,var(--panel));color:var(--ink);font-weight:800;font-size:12px;width:100%;padding:11px;margin:0 0 12px;text-align:left}.board-create:hover{border-style:solid;background:var(--orangeSoft)}
.board-card[draggable=true]{cursor:grab}.board-card.dragging{opacity:.42;transform:scale(.97);outline:2px dashed var(--orange)}
.board-card-head{display:flex;gap:9px;align-items:flex-start}.board-card-head p{flex:1;min-width:0;margin:3px 0 7px}.board-drag-handle{touch-action:none;cursor:grab;color:var(--muted);font-size:23px;line-height:1;flex:0 0 30px;height:33px;width:30px;background:var(--subtle);border:1px solid var(--border);border-radius:8px;display:grid;place-items:center}.board-drag-handle:hover{color:var(--orange);border-color:var(--orange)}
@media(max-width:760px){.cal-day.has-campaign{position:relative}.cal-day.has-campaign::before{content:'';position:absolute;bottom:3px;left:0;right:0;height:4px;background:#7765b6;border-radius:0;z-index:1}.cal-day.has-events.has-campaign::after{position:relative;font-size:20px;line-height:14px;z-index:2;transform:translateY(-8px)}.campaign-agenda-item{flex-wrap:wrap}.campaign-agenda-item .btn{margin-left:auto}.board{grid-template-columns:repeat(4,minmax(245px,82vw))}.modal-back-button{width:35px;min-width:35px}}
@media(max-width:380px){.campaign-first{padding:13px}.tag-palette .tag-choice{max-width:calc(100% - 54px)}.board{grid-template-columns:repeat(4,minmax(245px,85vw))}}

.support-side{border:1px solid var(--border);width:100%;text-align:left}.support-side:hover{filter:brightness(.98);border-color:var(--orange)}
.support-modal-ui{display:grid;gap:16px}.support-intro{display:flex;align-items:center;gap:14px;color:var(--muted);line-height:1.6}.support-heart{width:62px;height:62px;object-fit:contain;flex:0 0 62px}.support-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.support-card{border:1px solid var(--border);border-radius:16px;background:var(--subtle);padding:16px}.support-card h3{margin:0 0 12px;text-align:center;font-size:19px}.support-qr-wrap{background:#f5f6f8;border-radius:14px;padding:10px}.support-qr{display:block;width:100%;height:auto;border-radius:10px}.support-note{text-align:center;font-size:12px;color:var(--muted);margin:12px 0 8px}.support-key{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}.support-key strong{font-size:22px;letter-spacing:.02em}.support-foot{margin:0;color:var(--muted);font-size:12px}
@media(max-width:760px){.support-intro{align-items:flex-start}.support-grid{grid-template-columns:1fr}.support-heart{width:54px;height:54px;flex-basis:54px}}

/* Planner 1.4: presupuesto jerárquico e historial. */
.home-filter{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:22px 0 16px;padding:15px 18px;background:var(--panel);border:1px solid var(--border);border-radius:14px}
.home-filter label{margin:0;white-space:nowrap;color:var(--muted);font-weight:800}
.home-filter select{width:min(400px,100%);flex:1;min-width:190px}
.plan-progress{margin-bottom:18px}
.finance-card{margin:15px 0 4px}
.finance-card h3,.detail-finance h3{font-size:16px;margin-bottom:12px}
.finance-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0}
.finance-summary>span{display:flex;flex-direction:column;align-items:start;gap:6px;border-radius:11px;padding:13px;background:var(--subtle);color:var(--muted);font-size:11px;line-height:1.4;min-width:0}
.finance-summary>span b{font-size:clamp(14px,2vw,18px);color:var(--ink);overflow-wrap:anywhere}
.finance-summary>span.overspent b{color:#ee6f62}
.money-history-list{border:1px solid var(--border);border-radius:13px;overflow:hidden}
.money-history-item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border-bottom:1px solid var(--border);font-size:12px}
.money-history-item:last-child{border:0}
.money-history-item b{color:var(--ink);font-size:13px}
.money-history-item small{display:block;color:var(--muted);margin-top:5px;font-size:11px}
.money-history-item>span{color:var(--muted);white-space:nowrap}
.plan-campaign-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--border)}
.plan-campaign-row>div{min-width:0}
.plan-campaign-row b{overflow-wrap:anywhere}
.plan-campaign-row .btn{flex-shrink:0}
.detail-finance{border-top:1px solid var(--border);margin-top:15px;padding-top:18px}
.detail-finance h4{margin:20px 0 10px;font-size:14px}
.finance-note{padding:11px 13px;background:var(--subtle);border-radius:10px;font-size:12px;line-height:1.55;color:var(--muted)}
.detail-overview .detail-kind{display:flex;align-items:center;gap:8px;clear:both;margin-top:12px}
.detail-kind-check{width:25px;height:25px;display:inline-flex;align-items:center;justify-content:center;flex:none;border-radius:8px;background:var(--orangeSoft);color:var(--orange);font-size:16px;font-weight:900}
.detail-overview .back-to-campaign{display:block;width:fit-content;max-width:100%;margin-bottom:16px}
.goal-fields .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:760px){.finance-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.home-filter{align-items:stretch}.home-filter label{width:100%}.home-filter select{width:100%;flex:none}.goal-fields .form-grid{grid-template-columns:minmax(0,1fr)}.plan-campaign-row{align-items:flex-start;flex-wrap:wrap}.plan-campaign-row .btn{margin-left:auto}}
@media(max-width:360px){.finance-summary{grid-template-columns:minmax(0,1fr)}}

.finance-warning{padding:11px 13px;margin-top:12px;background:rgba(239,95,24,.12);border:1px solid rgba(239,95,24,.45);border-radius:10px;color:var(--ink);font-size:12px;line-height:1.5}

.plan-attach{margin:4px 0 15px}.plan-attach label{margin-bottom:7px}.plan-attach-controls{display:flex;gap:8px;align-items:center}.plan-attach-controls select{flex:1;min-width:0}.plan-attach-controls button{flex-shrink:0}@media(max-width:430px){.plan-attach-controls{flex-direction:column;align-items:stretch}}


/* Tutorial visual de Agilitic Planner (inspirado en el recorrido de Flow). */
.planner-tutorial-back{position:fixed;inset:0;z-index:300;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(5,7,13,.80);backdrop-filter:blur(7px)}
.planner-tutorial-dialog{position:relative;display:flex;flex-direction:column;width:min(980px,100%);max-height:calc(100dvh - 36px);overflow:hidden;border:1px solid #493b64;border-radius:22px;background:linear-gradient(155deg,#25272e,#202327);box-shadow:0 26px 90px #0009;color:#fff}
.planner-tutorial-close{position:absolute;top:14px;right:14px;z-index:2;display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid #ffffff29;border-radius:11px;background:#202327eb;color:#fff;font-size:18px;cursor:pointer}
.planner-tutorial-close:hover{background:#363b44}
.planner-tutorial-grid{display:grid;grid-template-columns:minmax(0,1.07fr) minmax(0,.93fr);gap:20px;overflow-y:auto;padding:22px 22px 0;min-height:0;align-items:start}
.planner-tutorial-visual{min-width:0;overflow:hidden;border-radius:16px;border:1px solid #633da78c;background:#110d24}
.planner-tutorial-image{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.planner-tutorial-copy{display:flex;flex-direction:column;gap:12px;min-width:0;padding:7px 25px 18px 2px}
.planner-tutorial-step{align-self:flex-start;border-radius:999px;padding:8px 13px;border:1px solid #ef5f1877;background:#ef5f1822;color:#ffaf80;font-size:12px;font-weight:800}
.planner-tutorial-copy h2{margin:0;color:#fff;font-size:clamp(23px,2.5vw,33px);line-height:1.17;letter-spacing:-.04em}
.planner-tutorial-copy p{margin:0;color:#d3d6df;line-height:1.62;font-size:13px}
.planner-tutorial-copy ul{display:grid;gap:9px;margin:0;padding-left:19px;color:#fff;font-size:13px;line-height:1.53}
.planner-tutorial-copy li::marker{color:#EF5F18}
.planner-tutorial-check{display:flex;align-items:flex-start;gap:9px;margin:4px 0 0;padding:11px 12px;border:1px solid #ffffff1d;background:#ffffff08;border-radius:11px;color:#e2dfec;line-height:1.4;font-size:12px;cursor:pointer}
.planner-tutorial-check input{flex:0 0 17px;min-height:17px;width:17px;height:17px;margin:0;accent-color:#EF5F18}
.planner-tutorial-copy .planner-tutorial-disclaimer{color:#a9a9bb;font-size:10px}
.planner-tutorial-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 22px 20px;margin-top:14px;border-top:1px solid #ffffff21;flex-wrap:wrap;flex-shrink:0;background:#202327}
.planner-tutorial-dots{display:flex;align-items:center;gap:8px}
.planner-tutorial-dots button{width:9px;height:9px;min-height:0;padding:0;border-radius:999px;border:0;background:#707086;transition:background .15s,width .15s}
.planner-tutorial-dots button.active{background:#EF5F18;width:24px}
.planner-tutorial-actions{display:flex;align-items:center;gap:9px}
.planner-tutorial-btn{border:1px solid #ffffff29;border-radius:10px;background:#292e36;color:#fff;min-height:42px;padding:10px 15px;font-size:12px;font-weight:800;white-space:nowrap}
.planner-tutorial-btn:disabled{opacity:.32;cursor:not-allowed}
.planner-tutorial-next{background:#EF5F18;border-color:#EF5F18;color:#fff}
.planner-tutorial-btn:not(:disabled):hover{filter:brightness(1.12)}
@media(max-width:720px){
  .planner-tutorial-back{padding:10px;align-items:center}
  .planner-tutorial-dialog{max-height:calc(100dvh - 20px);border-radius:17px}
  .planner-tutorial-grid{grid-template-columns:1fr;gap:12px;padding:13px 13px 0}
  .planner-tutorial-visual{border-radius:11px}
  .planner-tutorial-copy{gap:9px;padding:0 3px 5px}
  .planner-tutorial-copy h2{font-size:24px}
  .planner-tutorial-copy p,.planner-tutorial-copy ul{font-size:12px;line-height:1.48}
  .planner-tutorial-image{max-height:30vh;object-fit:cover}
  .planner-tutorial-footer{padding:12px 13px;gap:10px;margin-top:10px}
  .planner-tutorial-actions{margin-left:auto}
  .planner-tutorial-btn{padding:10px 12px;min-height:40px}
  .planner-tutorial-close{top:20px;right:20px}
}
@media(max-width:365px){.planner-tutorial-footer{flex-direction:column}.planner-tutorial-actions{width:100%;justify-content:space-between}.planner-tutorial-btn{flex:1}.planner-tutorial-copy h2{font-size:21px}}

/* Mi trabajo: contexto por plan y campaña */
.work-filter-panel{background:var(--panel);border:1px solid var(--border);border-radius:17px;padding:16px 18px;margin-bottom:18px;box-shadow:var(--shadow)}
.work-filter-heading,.work-filter-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.work-filter-heading{margin-bottom:13px}
.work-filter-heading strong{font-size:14px}
.work-filter-count{font-size:12px;font-weight:700;color:var(--muted)}
.work-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.work-filter-field{min-width:0}
.work-filter-field label{margin-bottom:6px;color:var(--muted)}
.work-filter-field input,.work-filter-field select{max-width:none;width:100%;min-width:0}
.work-filter-footer{margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}
.work-filter-current{display:flex;align-items:center;gap:8px;color:var(--ink);font-size:12px;font-weight:750;min-width:0;overflow-wrap:anywhere}
.work-filter-dot{flex:0 0 8px;height:8px;width:8px;border-radius:50%;background:var(--orange)}
.work-record-context{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px;font-size:10px}
.work-context-item{display:inline-flex;align-items:center;gap:5px;max-width:100%;padding:4px 8px;border-radius:7px;background:var(--subtle);border:1px solid var(--border);color:var(--muted);overflow-wrap:anywhere;line-height:1.3}
.work-context-item .ui-icon{width:13px;height:13px;flex-shrink:0;color:var(--orange)}
.work-list-record{padding-bottom:8px;border-bottom:1px solid var(--border)}
.work-list-record:last-child{border-bottom:0}
.work-list-record .row-card{border-bottom:0;padding-bottom:2px}
.work-list-record>.work-record-context{margin:0 0 4px 63px}
@media(max-width:1000px){.work-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.work-filter-panel{padding:13px}.work-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.work-filter-field select,.work-filter-field input{font-size:12px;padding:10px 8px}.work-filter-footer .segmented{width:100%;justify-content:center}.work-filter-footer .segmented button{flex:1}.work-list-record>.work-record-context{margin-left:0}}
