:root{font-family:-apple-system,BlinkMacSystemFont,'Helvetica Neue','Segoe UI',sans-serif;color:#242923;background:#f5f5f2;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--ink:#242923;--muted:#858a83;--line:#e9eae5;--green:#4e6855;--green-soft:#edf1eb;--paper:#fff;--serif:-apple-system,BlinkMacSystemFont,'Helvetica Neue','Segoe UI',sans-serif}
*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:244px;padding:30px 18px 20px;background:#fbfbf9;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:3}.brand{display:flex;align-items:center;gap:11px;padding:0 13px;color:var(--ink);font:800 15px var(--serif);letter-spacing:.14em;text-decoration:none}.brand-mark{width:30px;height:30px;border-radius:10px;background:#344b3c;color:#fff;display:grid;place-items:center;font:700 15px var(--serif);letter-spacing:0}.brand-light{font-weight:500;color:#868c84}.nav-label{margin:54px 13px 12px;color:#a4a79f;font-size:9px;letter-spacing:.13em;font-weight:700}.side-nav{display:grid;gap:5px}.nav-item{height:44px;display:flex;align-items:center;gap:12px;padding:0 13px;border-radius:10px;text-decoration:none;color:#777e76;font-size:13px;font-weight:500;transition:background .18s,color .18s}.nav-item:hover{background:#f2f3ef;color:var(--ink)}.nav-item.active{background:#eef1ec;color:#38513e;font-weight:600}.nav-icon{width:17px;height:17px;display:inline-flex;align-items:center;justify-content:center}.nav-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.sidebar-bottom{margin-top:auto;padding:14px 11px 2px;border-top:1px solid var(--line);display:flex;align-items:center;gap:8px;color:#81877f;font-size:11px}.privacy-dot{width:7px;height:7px;border-radius:50%;background:#7b9a7e}.sidebar-version{margin-left:auto;color:#afb2ac;font-size:8px;letter-spacing:.1em;font-weight:700}.main-area{margin-left:244px;min-height:100vh}.topbar{height:70px;display:flex;justify-content:space-between;align-items:center;padding:0 56px;border-bottom:1px solid var(--line);background:rgba(251,251,249,.65)}.breadcrumbs{display:flex;gap:10px;align-items:center;color:#989d95;font-size:12px}.crumb-divider{color:#d1d3cd}.breadcrumbs strong{color:#4b514a;font-weight:600}.profile-button{display:flex;align-items:center;gap:9px;padding:4px 0;border:0;background:none;color:#444a43;font:500 12px inherit;cursor:pointer}.profile-avatar{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#e8eae4;color:#55624f;font-size:10px;font-weight:700}.profile-button svg{width:13px;height:13px;fill:none;stroke:#969b93;stroke-width:1.4}.page-content{width:min(1080px,100%);padding:47px 56px 60px;margin:0 auto}.greeting-row{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:31px}.eyebrow{font-size:10px;letter-spacing:.12em;color:#92978f;font-weight:700;text-transform:uppercase}.greeting-row h1{margin:9px 0 0;font:600 clamp(27px,3vw,35px)/1.15 var(--serif);letter-spacing:-.045em;color:#242923}.greeting-row h1 span{color:#788174;font-weight:500}.date-chip{color:#7c8279;font-size:11px;padding-bottom:5px}.section-kicker{margin:0 0 12px;color:#979c94;font-size:9px;letter-spacing:.13em;font-weight:700}.overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.card{background:var(--paper);border:1px solid #eceee9;border-radius:15px;box-shadow:0 3px 14px rgba(38,48,37,.025)}.overview-card{padding:21px 22px 17px;min-height:251px}.card-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.heading-left{display:flex;align-items:center;gap:10px}.heading-icon{width:29px;height:29px;border-radius:9px;background:#f1f3ef;color:#60715e;display:grid;place-items:center}.heading-icon svg{width:15px;height:15px;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;fill:none}.card-title{margin:0;font:600 13px var(--serif);letter-spacing:-.01em}.count-pill{border-radius:20px;background:#f1f3ef;padding:5px 9px;color:#596a57;font-size:10px;font-weight:600}.task-list,.event-list,.obligation-list{list-style:none;margin:0;padding:0}.task-item{min-height:43px;display:flex;align-items:center;gap:11px;border-top:1px solid #f1f2ee;color:#4e544d;font-size:11px}.task-check{appearance:none;width:15px;height:15px;flex:0 0 15px;margin:0;border:1px solid #cdd2ca;border-radius:5px;cursor:pointer;display:grid;place-items:center;transition:.15s}.task-check:checked{background:#526d58;border-color:#526d58}.task-check:checked:after{content:'✓';color:white;font-size:10px}.task-item.done .task-text{color:#a4a9a1;text-decoration:line-through}.task-time{margin-left:auto;color:#9ba097;font-size:10px}.text-link{display:inline-flex;align-items:center;gap:5px;margin-top:11px;color:#526b56;text-decoration:none;font-size:10px;font-weight:600}.text-link:hover{text-decoration:underline}.event-item{display:grid;grid-template-columns:49px 1fr;gap:10px;padding:12px 0;border-top:1px solid #f1f2ee}.event-time{padding-top:1px;color:#6d7969;font:600 10px var(--serif)}.event-name{font-size:11px;color:#434941;font-weight:600}.event-meta{margin-top:4px;color:#989d95;font-size:10px}.event-dot{width:6px;height:6px;display:inline-block;border-radius:50%;background:#7d987d;margin-right:6px;vertical-align:1px}.attention-section{margin-top:29px}.attention-card{padding:18px 22px 15px}.obligation-row{display:grid;grid-template-columns:1fr auto 17px;align-items:center;gap:14px;padding:12px 0;border-top:1px solid #f1f2ee}.obligation-name{font-size:11px;color:#454b44;font-weight:600}.obligation-category{display:block;margin-top:3px;color:#9a9f97;font-size:9px;font-weight:400}.due-label{font-size:10px;color:#8a8f87}.due-label.soon{color:#a87548}.due-label.today{color:#a45648}.row-arrow{color:#a4aaa1;font-size:16px}.assistant-card{margin-top:28px;position:relative;overflow:hidden;padding:22px 25px 21px;background:#344a3b;border:1px solid #344a3b;color:white;box-shadow:0 9px 24px rgba(44,66,49,.12)}.assistant-card:after{content:'';position:absolute;width:255px;height:255px;border:1px solid rgba(255,255,255,.07);border-radius:50%;right:56px;top:-178px;box-shadow:0 0 0 28px rgba(255,255,255,.018),0 0 0 57px rgba(255,255,255,.016);pointer-events:none}.assistant-top{display:flex;align-items:center;gap:11px;position:relative;z-index:1}.sparkle{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.12);color:#e7eddf;font-size:17px}.assistant-label{margin:0;color:#e8eee5;font:600 14px var(--serif);letter-spacing:-.02em}.assistant-caption{margin:4px 0 0;color:#b9c5b8;font-size:10px}.assistant-input-wrap{margin-top:18px;position:relative;z-index:1;display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:5px 6px 5px 14px}.assistant-input{width:100%;border:0;outline:0;background:transparent;color:white;font:400 11px inherit;padding:9px 0}.assistant-input::placeholder{color:#c0cabc}.assistant-send{width:31px;height:31px;flex:0 0 31px;border:0;border-radius:8px;background:#e8ece4;color:#405743;display:grid;place-items:center;cursor:pointer}.assistant-send svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.assistant-note{position:relative;z-index:1;margin:9px 0 0;color:#b3c0b1;font-size:9px}.mobile-nav{display:none}.empty-state{padding:25px 0;text-align:center;color:#9ba097;font-size:11px}.section-page{min-height:320px;padding:28px}.section-page h2{margin:0 0 8px;font:600 19px var(--serif)}.section-page p{color:var(--muted);font-size:12px}.toast{position:fixed;bottom:24px;right:28px;padding:12px 16px;border-radius:10px;background:#273a2d;color:white;font-size:12px;box-shadow:0 8px 25px #1b281e22;z-index:10}
@media(min-width:1400px){.page-content{padding-top:57px}.overview-card{min-height:270px}}
@media(max-width:1050px){.sidebar{width:210px}.main-area{margin-left:210px}.topbar{padding:0 34px}.page-content{padding:38px 34px 50px}}
@media(max-width:760px){body{background:#f5f5f2}.sidebar{display:none}.main-area{margin:0;min-height:100vh;padding-bottom:78px}.topbar{height:58px;padding:0 20px;background:#f7f7f4;border-bottom-color:#ebede7}.breadcrumbs{display:none}.profile-name{display:none}.profile-button{gap:0}.profile-avatar{width:31px;height:31px}.page-content{padding:27px 19px 32px}.greeting-row{display:block;margin-bottom:25px}.greeting-row h1{font-size:29px;margin-top:7px}.date-chip{display:block;padding:0;margin-top:9px;font-size:10px}.overview-grid{grid-template-columns:1fr;gap:12px}.overview-card{min-height:0;padding:18px 18px 15px}.section-kicker{margin-bottom:10px}.task-item{min-height:42px}.event-item{padding:12px 0}.attention-section{margin-top:24px}.attention-card{padding:16px 18px 13px}.assistant-card{margin-top:23px;padding:20px 19px 18px}.assistant-card:after{right:-5px}.assistant-caption{max-width:240px;line-height:1.5}.mobile-nav{position:fixed;display:grid;grid-template-columns:repeat(4,1fr);align-items:stretch;inset:auto 0 0;height:68px;padding:5px 8px max(7px,env(safe-area-inset-bottom));border-top:1px solid #e7e9e3;background:rgba(251,251,249,.96);backdrop-filter:blur(18px);z-index:5}.mobile-nav .nav-item{height:52px;padding:5px 2px 3px;gap:4px;display:flex;flex-direction:column;justify-content:center;border-radius:9px;font-size:9px}.mobile-nav .nav-icon{width:19px;height:19px}.mobile-nav .nav-icon svg{width:18px;height:18px}.mobile-nav .nav-item.active{background:transparent;color:#47644d}.toast{left:16px;right:16px;bottom:82px;text-align:center}}
@media(max-width:380px){.page-content{padding-inline:15px}.overview-card{padding-inline:15px}.task-item,.obligation-name,.event-name{font-size:10px}.due-label{font-size:9px}}
.profile-button{font-family:inherit}.assistant-input{font-family:inherit}.event-dot.blue{background:#7c8fa4}.event-dot.amber{background:#bb9a6a}

.calendar-page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.calendar-page-heading h1{margin:9px 0 0;font:600 clamp(27px,3vw,35px)/1.15 var(--serif);letter-spacing:-.045em;color:#242923}.calendar-subtitle{margin:8px 0 0;color:#858b82;font-size:12px}.calendar-board{padding:19px 21px 16px;overflow:hidden}.calendar-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:17px}.calendar-period{display:flex;align-items:center;gap:8px}.calendar-period h2{min-width:180px;margin:0;text-align:center;text-transform:capitalize;font:600 16px var(--serif);color:#30372f}.calendar-period .icon-button{font-size:22px}.button-secondary{height:34px;padding:0 13px;border:1px solid #e3e7e0;border-radius:9px;background:#fff;color:#5b6658;font:600 11px inherit;cursor:pointer}.calendar-today{margin-left:5px}.calendar-view-switch{display:flex;gap:3px;padding:3px;border-radius:10px;background:#f1f3ef}.calendar-view-switch button{border:0;border-radius:7px;padding:7px 11px;background:transparent;color:#82887f;font:500 10px inherit;cursor:pointer}.calendar-view-switch button.selected{background:#fff;color:#3c5541;box-shadow:0 1px 4px #202b2010}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid #eceee9;border-bottom:0;border-radius:10px 10px 0 0;background:#fafbf9}.calendar-weekdays span{padding:10px 8px;text-align:center;color:#92988f;font-size:9px;font-weight:700;letter-spacing:.04em}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-left:1px solid #eceee9;border-top:1px solid #eceee9}.calendar-day{position:relative;min-width:0;min-height:120px;padding:8px 7px;border-right:1px solid #eceee9;border-bottom:1px solid #eceee9;background:#fff}.month-grid .calendar-day:nth-child(7){border-top-right-radius:0}.calendar-day.outside-month{background:#fafbf9}.calendar-day.outside-month .calendar-day-label{color:#b5bab2}.calendar-day.is-today{background:#f5f8f3}.calendar-day.is-selected{box-shadow:inset 0 0 0 1px #829480}.calendar-day-label{display:flex;align-items:center;gap:7px;margin:0 0 7px;padding:0;border:0;background:none;color:#5b635a;font:600 11px inherit;cursor:pointer}.calendar-day.is-today .calendar-day-label>span{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#405a45;color:#fff}.calendar-day-label small{color:#9ca198;font-size:9px;font-weight:400}.calendar-day-entries{display:grid;align-content:start;gap:4px}.calendar-entry{display:flex;align-items:center;justify-content:space-between;gap:4px;width:100%;min-width:0;padding:5px 6px;border:0;border-radius:5px;text-align:left;font:500 9px inherit;cursor:pointer}.calendar-entry-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-entry small{flex:none;font-size:8px;opacity:.82}.calendar-event{background:#edf2ed;color:#4c6651}.calendar-event.trabajo{background:#eef1f6;color:#596d8a}.calendar-event.salud{background:#f8efeb;color:#986f5e}.calendar-event.familia{background:#f5f1e7;color:#89754e}.calendar-event.otros{background:#f0eff4;color:#716984}.calendar-obligation{background:#fbf2e8;color:#9a6c3f}.calendar-no-items{padding:6px;color:#a0a59d;font-size:10px}.calendar-legend{display:flex;align-items:center;gap:17px;padding-top:13px;color:#81877f;font-size:9px}.calendar-legend span{display:flex;align-items:center;gap:6px}.legend-dot{width:7px;height:7px;border-radius:50%;background:#6f8a70}.legend-obligation{background:#c3915c}.calendar-legend small{margin-left:auto;color:#a0a59d}.week-grid .calendar-day{min-height:270px}.day-grid{grid-template-columns:minmax(0,1fr)}.day-grid .calendar-day{min-height:340px}.day-grid .calendar-entry{max-width:460px;padding:10px 12px;font-size:11px}.calendar-form{margin-bottom:17px;padding:22px}.calendar-form-heading{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.calendar-form-heading h2{margin:0;font:600 18px var(--serif)}.calendar-all-day{display:flex;align-items:center;gap:8px;margin:5px 0 13px;color:#60675f;font-size:11px}.calendar-all-day input{accent-color:#526d58}.calendar-time-fields.is-hidden{display:none}.calendar-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:13px}.calendar-form-actions .delete-calendar-event{margin-right:auto;color:#a05d50;border-color:#eededb}.event-item.event-today{margin-inline:-9px;padding-inline:9px;border-radius:8px;background:#f5f8f3}.today-event-badge{display:inline-block;margin-left:7px;padding:3px 6px;border-radius:8px;background:#e5ece2;color:#4f694f;font-size:8px;font-weight:700;vertical-align:1px}.event-dot.category-personal{background:#78947a}.event-dot.category-trabajo{background:#788ca7}.event-dot.category-salud{background:#b9826c}.event-dot.category-familia{background:#ae9564}.event-dot.category-otros{background:#9388a8}
@media(max-width:760px){.calendar-page-heading{align-items:flex-start}.calendar-page-heading .button-primary{padding:0 11px;font-size:10px;white-space:nowrap}.calendar-board{padding:13px 10px 12px;margin-inline:-3px}.calendar-toolbar{align-items:flex-start;flex-direction:column}.calendar-period{width:100%;justify-content:center}.calendar-period h2{min-width:150px;font-size:14px}.calendar-view-switch{align-self:center}.calendar-weekdays span{padding:8px 2px;font-size:8px}.calendar-day{min-height:88px;padding:6px 3px}.month-grid .calendar-day{min-height:82px}.calendar-day-label{justify-content:center;margin-bottom:5px;font-size:9px}.calendar-day-label small,.calendar-entry small{display:none}.calendar-entry{padding:4px 3px;font-size:8px}.calendar-entry-title{width:100%}.calendar-day-entries{gap:3px}.week-grid .calendar-day{min-height:155px;padding-inline:4px}.week-grid .calendar-day-label{flex-direction:column;gap:3px}.week-grid .calendar-day-label small{display:block}.calendar-legend{flex-wrap:wrap;gap:9px 14px}.calendar-legend small{width:100%;margin:0}.day-grid .calendar-day{min-height:360px;padding:11px}.day-grid .calendar-day-label{justify-content:flex-start;font-size:13px}.day-grid .calendar-day-label small{display:block}.day-grid .calendar-entry small{display:block}.calendar-form{padding:17px}.event-item.event-today{margin-inline:-6px;padding-inline:6px}}
.button-secondary,.calendar-view-switch button,.calendar-day-label,.calendar-entry{font-family:inherit}.button-secondary{font-size:11px;font-weight:600}.calendar-view-switch button{font-size:10px}.calendar-day-label{font-size:11px;font-weight:600}.calendar-entry{font-size:9px;font-weight:500}
.calendar-back-button{display:inline-flex;align-items:center;gap:7px;min-height:34px;margin:0 0 14px;padding:0 12px;border:1px solid #e5e8e2;border-radius:9px;background:#fff;color:#596b57;font:500 11px inherit;cursor:pointer}.calendar-back-button:hover{background:#f4f6f2;border-color:#d7dfd4}.calendar-detail-view{display:grid;gap:0;max-width:760px}.calendar-detail-card{padding:25px 27px}.calendar-detail-card h2{margin:8px 0 0;color:#30372f;font:600 23px/1.3 var(--serif);letter-spacing:-.035em}.calendar-detail-description{margin:10px 0 0;color:#777f75;font-size:12px;line-height:1.65;white-space:pre-wrap}.calendar-detail-description.muted{color:#a0a59d}.calendar-detail-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:22px 0}.calendar-detail-fields>div{min-width:0;padding:12px 13px;border:1px solid #eceee9;border-radius:10px;background:#fafbf9}.calendar-detail-fields dt{margin-bottom:6px;color:#9a9f97;font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.calendar-detail-fields dd{margin:0;color:#4a5149;font-size:11px;font-weight:600;overflow-wrap:anywhere}.calendar-occurrence-id{font-size:9px!important;color:#838a80!important}.calendar-category-chip{display:inline-flex;padding:4px 8px;border-radius:20px;background:#edf2ed;color:#526c56;font-size:9px}.calendar-category-chip.trabajo{background:#eef1f6;color:#596d8a}.calendar-category-chip.salud{background:#f8efeb;color:#986f5e}.calendar-category-chip.familia{background:#f5f1e7;color:#89754e}.calendar-category-chip.otros{background:#f0eff4;color:#716984}.calendar-detail-documents{margin-top:20px;padding-top:17px;border-top:1px solid #eceee9}.calendar-detail-documents h3{margin:0 0 13px;color:#4c554b;font:600 13px var(--serif)}.calendar-detail-documents .obligation-documents{grid-column:auto;margin:0;padding-top:10px}.calendar-detail-documents .obligation-document-group{flex-wrap:wrap}.calendar-discard-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px;background:rgba(28,36,29,.38);backdrop-filter:blur(4px)}.calendar-discard-dialog{width:min(420px,100%);padding:25px;border:1px solid #e7eae4;border-radius:16px;background:#fbfbf9;box-shadow:0 22px 70px rgba(21,33,23,.24)}.calendar-discard-dialog h2{margin:0;color:#30372f;font:600 19px var(--serif)}.calendar-discard-dialog p{margin:9px 0 20px;color:#81877f;font-size:11px;line-height:1.6}.calendar-discard-dialog>div{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}.calendar-discard-dialog .discard-confirm{background:#344a3b}
.calendar-back-button{font-family:inherit;font-size:11px;font-weight:500}
.calendar-obligation.is-completed{background:#f0f3ee;color:#718071}.calendar-obligation.is-completed .calendar-entry-title{text-decoration:line-through;text-decoration-color:#b4beb1}
@media(max-width:760px){.calendar-detail-view{max-width:none}.calendar-detail-card{padding:20px 17px}.calendar-detail-card h2{font-size:20px}.calendar-detail-fields{gap:8px}.calendar-detail-fields>div{padding:10px}.calendar-detail-documents .obligation-document-group{gap:5px}.calendar-discard-dialog{padding:21px 18px}.calendar-discard-dialog>div{display:grid;grid-template-columns:1fr}.calendar-discard-dialog button{width:100%;min-height:39px}}
.calendar-event,.calendar-category-preview,.dashboard-category-label{font-family:inherit}.calendar-event{font-size:10px;font-weight:650;line-height:1.35;padding:6px 7px}.calendar-entry-title{font-weight:650;line-height:1.3;white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.calendar-entry small{font-size:9px;font-weight:700;opacity:1}.calendar-day-label{font-size:12px;font-weight:700;color:#414a41}.calendar-day-label small{color:#70796f;font-size:10px;font-weight:500}.calendar-weekdays span{font-size:10px;color:#70786f}.calendar-event.personal{background:#e3f0e5;color:#285b34}.calendar-event.trabajo{background:#e5ebf8;color:#304d83}.calendar-event.salud{background:#f8e6e1;color:#873c30}.calendar-event.familia{background:#f5edcf;color:#6e551e}.calendar-event.deporte{background:#dff0f1;color:#205e66}.calendar-event.festejos{background:#f6e3ec;color:#8a3159}.calendar-event.otros{background:#ece8f5;color:#5f4681}.event-dot.category-personal,.legend-category-personal{background:#40814d}.event-dot.category-trabajo,.legend-category-trabajo{background:#5270b2}.event-dot.category-salud,.legend-category-salud{background:#b45b49}.event-dot.category-familia,.legend-category-familia{background:#a48635}.event-dot.category-deporte,.legend-category-deporte{background:#2f858b}.event-dot.category-festejos,.legend-category-festejos{background:#bd4c7e}.event-dot.category-otros,.legend-category-otros{background:#7961a4}.calendar-category-chip.personal,.calendar-category-preview.personal,.dashboard-category-label.personal{background:#e3f0e5;color:#285b34}.calendar-category-chip.trabajo,.calendar-category-preview.trabajo,.dashboard-category-label.trabajo{background:#e5ebf8;color:#304d83}.calendar-category-chip.salud,.calendar-category-preview.salud,.dashboard-category-label.salud{background:#f8e6e1;color:#873c30}.calendar-category-chip.familia,.calendar-category-preview.familia,.dashboard-category-label.familia{background:#f5edcf;color:#6e551e}.calendar-category-chip.deporte,.calendar-category-preview.deporte,.dashboard-category-label.deporte{background:#dff0f1;color:#205e66}.calendar-category-chip.festejos,.calendar-category-preview.festejos,.dashboard-category-label.festejos{background:#f6e3ec;color:#8a3159}.calendar-category-chip.otros,.calendar-category-preview.otros,.dashboard-category-label.otros{background:#ece8f5;color:#5f4681}.calendar-category-control{display:flex;align-items:center;gap:7px}.calendar-category-control select{min-width:0;flex:1}.calendar-category-preview,.dashboard-category-label{display:inline-flex;align-items:center;min-height:21px;padding:3px 8px;border-radius:20px;font-size:9px;font-weight:700;white-space:nowrap}.dashboard-event-row{display:block;padding:0}.dashboard-event-open{width:100%;display:grid;grid-template-columns:60px minmax(0,1fr);align-items:start;gap:10px;padding:11px 5px;border:0;background:transparent;text-align:left;cursor:pointer}.dashboard-event-open:hover .event-name{color:#263d2b}.dashboard-event-main{min-width:0}.dashboard-event-open .event-time{color:#4f654c;font-size:11px;font-weight:700;white-space:nowrap}.dashboard-event-open .event-name{display:block;color:#343c34;font-size:12px;font-weight:700;line-height:1.35}.dashboard-event-open .event-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:5px;color:#6e786d;font-size:10px;font-weight:500}.today-event-badge{margin-left:7px;padding:3px 7px;background:#dfeadd;color:#385d3b;font-size:9px}.calendar-category-legend{font-size:9px}.calendar-category-legend .legend-dot{width:8px;height:8px}
.calendar-category-preview.familia,.calendar-category-preview.festejos{max-width:170px;overflow:hidden;text-overflow:ellipsis}.calendar-legend{flex-wrap:wrap;gap:9px 14px}.calendar-legend small{width:100%;margin:0}
@media(max-width:760px){.calendar-event{font-size:9px;padding:5px 4px}.calendar-entry-title{font-weight:650;-webkit-line-clamp:2}.calendar-entry small{font-size:8px}.calendar-day-label{font-size:11px}.calendar-weekdays span{font-size:9px}.month-grid .calendar-day{min-height:87px}.month-grid .calendar-entry small{display:none}.month-grid .calendar-entry{line-height:1.25}.week-grid .calendar-day{min-height:165px}.week-grid .calendar-day-label small{font-size:9px}.day-grid .calendar-entry{font-size:11px;padding:10px}.dashboard-event-open{grid-template-columns:55px minmax(0,1fr);gap:8px;padding:11px 2px}.dashboard-event-open .event-name{font-size:11px}.dashboard-event-open .event-time{font-size:10px}.dashboard-event-open .event-meta{font-size:9px}.calendar-category-preview{font-size:8px;padding-inline:6px}}
.calendar-category-control{font-family:inherit}
@media(max-width:760px){.calendar-category-control{align-items:flex-start;flex-direction:column}.calendar-category-control select{width:100%}}
.dashboard-personal-layout{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);align-items:start;gap:17px}.dashboard-assistant-rail .assistant-card{margin-top:0}.personal-space-column{display:grid;gap:12px;min-width:0}.personal-space-heading{margin:0 0 1px;color:#858d82;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.personal-space-column .overview-card{min-height:0;padding:18px 19px 15px}.personal-space-column .personal-space-card{padding:17px 19px 14px}.personal-space-column .card-heading{margin-bottom:12px}.personal-space-column .event-item{padding-block:8px}.personal-space-column .obligation-row{padding-block:9px}.calendar-event{background:var(--category-tint,#ece8f5)!important;color:var(--category-ink,#4d4164)!important;border-left:2px solid var(--category-color,#7961A4)!important}.calendar-category-chip,.calendar-category-preview,.dashboard-category-label{background:var(--category-tint,#ece8f5)!important;color:var(--category-ink,#4d4164)!important;border:1px solid var(--category-color,#7961A4)}.calendar-category-preview{font-weight:700}.calendar-category-legend .legend-dot{flex:0 0 8px}.calendar-heading-actions{display:flex;align-items:center;gap:8px}.category-settings{margin:0 0 18px;padding:20px 22px}.category-settings-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}.category-settings-heading .section-kicker{margin:0 0 5px}.category-settings-heading h2{margin:0;color:#30372f;font:600 17px var(--serif)}.category-settings-heading p{margin:5px 0 0;color:#838a81;font-size:10px}.category-settings-list{display:grid;gap:7px}.category-settings-row{display:grid;grid-template-columns:minmax(130px,1fr) minmax(110px,150px) auto;align-items:end;gap:10px;padding:9px 0;border-top:1px solid #eef0eb}.category-settings-row label,.category-settings-add label{display:grid;gap:5px;color:#777f75;font-size:9px;font-weight:600}.category-settings-row input[type=text],.category-settings-add input[type=text]{width:100%;min-height:34px;padding:0 9px;border:1px solid #e3e7e0;border-radius:8px;background:#fff;color:#454d44;font:500 11px inherit}.category-color-control{display:flex;align-items:center;gap:8px;min-height:34px}.category-settings input[type=color]{width:36px;height:32px;padding:3px;border:1px solid #e1e5df;border-radius:8px;background:#fff;cursor:pointer}.category-color-control code{color:#81877f;font-size:9px}.category-settings-row .button-secondary{height:32px}.category-settings-add{display:grid;grid-template-columns:minmax(140px,1fr) auto auto;align-items:end;gap:10px;margin-top:13px;padding-top:13px;border-top:1px solid #e9ece6}.category-settings-add .category-color-field{max-width:110px}.category-settings-add .button-primary{min-height:34px;padding-inline:12px;font-size:10px}
.category-settings-row input[type=text],.category-settings-add input[type=text]{font-family:inherit;font-size:11px;font-weight:500}
@media(max-width:760px){.dashboard-personal-layout{grid-template-columns:1fr;gap:22px}.dashboard-assistant-rail{order:2}.personal-space-column{order:1}.category-settings{padding:16px 14px}.category-settings-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.category-settings-row>label:first-child{grid-column:1/-1}.category-settings-row .button-secondary{grid-column:2;grid-row:2}.category-settings-row .category-color-field{grid-column:1;grid-row:2}.category-settings-add{grid-template-columns:minmax(0,1fr) auto;gap:8px}.category-settings-add>label:first-child{grid-column:1/-1}.category-settings-add .button-primary{grid-column:2;grid-row:2}.category-settings-add .category-color-field{grid-column:1;grid-row:2}.calendar-heading-actions{gap:6px}.calendar-heading-actions .button-primary,.calendar-heading-actions .button-secondary{padding-inline:9px;font-size:9px}}
@media(max-width:390px){.calendar-category-control{align-items:flex-start;flex-direction:column}.calendar-category-control select{width:100%}.calendar-category-preview{min-height:19px}.month-grid .calendar-entry{padding:4px 3px;font-size:8px}.month-grid .calendar-day{min-height:80px}}
.dashboard-assistant-full{width:100%;margin:0 0 27px}.dashboard-three-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:15px}.dashboard-column-card{display:flex;flex-direction:column;min-width:0;min-height:285px;padding:19px 19px 16px}.dashboard-column-card .card-heading{min-height:31px;margin-bottom:12px}.dashboard-column-card .task-list,.dashboard-column-card .obligation-list,.dashboard-column-card .event-list{flex:1;min-width:0}.dashboard-column-card .text-link{margin-top:12px}.dashboard-column-card .event-item{padding-block:8px}.obligation-heading-icon{background:#f9e7e5;color:#aa3d38}.obligation-row{display:block;padding:0}.obligation-row-open{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto 17px;align-items:center;gap:14px;padding:11px 5px;border:0;border-top:1px solid #f1f2ee;background:transparent;text-align:left;cursor:pointer}.obligation-row-open:hover{background:#fff8f7}.obligation-row-open .obligation-name{color:#963b36}.obligation-row-open .due-label,.obligation-row-open .row-arrow{color:#b9413c!important}.obligation-row-open .due-label.overdue,.obligation-row-open .due-label.today,.due-label.overdue,.due-label.today{color:#a9312d!important}.calendar-obligation,.calendar-obligation.is-completed{background:#fbe9e7!important;color:#922f2b!important;border-left:2px solid #c34540!important}.calendar-obligation small{color:#9b3d38;font-weight:700}.legend-obligation{background:#c34540!important}.calendar-obligation-detail-card{border-top:3px solid #c34540}.calendar-obligation-detail-card h2{color:#963b36}.obligation-detail-status{display:inline-flex;align-items:center;min-height:22px;padding:3px 8px;border-radius:20px;background:#fbe9e7;color:#932f2b;font-size:10px;font-weight:700}.obligation-status-mark,.obligation-status-mark.paid,.obligation-status-mark.late{border-color:#c85b55;background:#fbe9e7;color:#a63833}.obligation-main h3{color:#963b36}.obligation-due,.obligation-due.overdue,.paid-label,.button-paid{color:#a23833}.button-paid{border-color:#efd4d1;background:#fbefed}.button-paid:hover{border-color:#d9a6a1;background:#f8e4e1}.obligation-item{border-left:3px solid #c34540}.obligation-item.is-overdue,.obligation-item.is-complete{border-left-color:#c34540}.calendar-event-detail-title{padding-left:12px;border-left:4px solid var(--category-color);color:var(--category-ink)!important}.calendar-heading-actions .button-secondary.is-selected{border-color:#344a3b;background:#344a3b;color:#fff;box-shadow:0 2px 7px #1d322222}.events-page-list{display:grid;gap:9px}.events-page-item{width:100%;display:grid;grid-template-columns:minmax(120px, .7fr) minmax(0,1fr) 18px;align-items:center;gap:14px;padding:15px 17px;border:1px solid #eceee9;text-align:left;cursor:pointer}.events-page-item:hover{border-color:#dce5da;background:#fbfcfa}.events-page-date{color:#596b57;font-size:11px;font-weight:650}.events-page-date small{display:block;margin-top:4px;color:#848c82;font-size:10px;font-weight:500}.events-page-main{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.events-page-main strong{overflow:hidden;color:#343c34;font:600 13px var(--serif);text-overflow:ellipsis}.events-page-item .row-arrow{color:#9aa197;font-size:17px}.section-return-button{margin-bottom:15px}.category-settings .icon-button{flex:0 0 30px}
@media(max-width:900px){.dashboard-column-card{padding-inline:15px}.dashboard-three-columns{gap:11px}.dashboard-column-card .task-item,.dashboard-column-card .obligation-name,.dashboard-column-card .event-name{font-size:10px}.obligation-row-open{grid-template-columns:minmax(0,1fr) auto 13px;gap:7px;padding-inline:2px}.events-page-item{grid-template-columns:minmax(100px,.7fr) minmax(0,1fr) 16px;gap:9px;padding:13px}}
@media(max-width:760px){.mobile-nav .nav-item{font-size:8px;gap:3px;padding-inline:0}.mobile-nav .nav-icon svg{width:17px;height:17px}.dashboard-assistant-full{margin-bottom:24px}.dashboard-three-columns{grid-template-columns:1fr;gap:12px}.dashboard-column-card{min-height:0;padding:18px}.dashboard-column-card .card-heading{margin-bottom:10px}.dashboard-column-card .text-link{margin-top:9px}.events-page-item{grid-template-columns:minmax(92px,.7fr) minmax(0,1fr) 14px;padding:12px 11px;gap:8px}.events-page-main{align-items:flex-start;flex-direction:column;gap:6px}.events-page-main strong{font-size:12px}.obligation-row-open{grid-template-columns:minmax(0,1fr) auto 14px}.calendar-obligation-detail-card{border-top-width:2px}}

/* Sección Tareas */
.tasks-page{max-width:880px;margin:0 auto}.tasks-page-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:28px}.tasks-page-heading h1{margin:8px 0 0;font:600 clamp(28px,3vw,35px)/1.1 var(--serif);letter-spacing:-.045em}.tasks-subtitle{margin:9px 0 0;color:#888e86;font-size:12px}.button-primary,.button-quiet{min-height:39px;padding:0 15px;border-radius:10px;font:600 11px inherit;cursor:pointer;transition:background .16s,transform .16s}.button-primary{border:1px solid #344a3b;background:#344a3b;color:#fff;box-shadow:0 3px 8px rgba(44,66,49,.1)}.button-primary:hover{background:#405a47}.button-primary:active,.button-quiet:active{transform:translateY(1px)}.button-primary span{font-size:15px;margin-right:5px;vertical-align:-1px}.create-task-button{white-space:nowrap}.task-view-tabs{display:flex;gap:22px;border-bottom:1px solid var(--line);margin-bottom:14px}.task-view-tab{position:relative;display:flex;align-items:center;gap:8px;min-height:42px;padding:0 2px;border:0;background:transparent;color:#8b9189;font:500 11px inherit;cursor:pointer}.task-view-tab.selected{color:#405a47;font-weight:600}.task-view-tab.selected:after{content:'';position:absolute;right:0;bottom:-1px;left:0;height:2px;border-radius:2px;background:#526d58}.task-view-tab span{min-width:19px;padding:3px 5px;border-radius:10px;background:#eff1ed;color:#7b8379;text-align:center;font-size:9px}.managed-task-list{display:grid;gap:9px}.managed-task{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:start;gap:13px;padding:17px 18px;box-shadow:0 2px 10px rgba(38,48,37,.02)}.managed-task-check{position:relative;width:20px;height:20px;margin-top:1px;cursor:pointer}.managed-task-check input{position:absolute;width:1px;height:1px;opacity:0}.custom-check{width:19px;height:19px;display:block;border:1px solid #cbd1c8;border-radius:6px;background:#fff;transition:.15s}.managed-task-check input:checked+.custom-check{border-color:#526d58;background:#526d58}.managed-task-check input:checked+.custom-check:after{content:'✓';display:block;color:white;text-align:center;font-size:12px;line-height:17px}.managed-task-check input:focus-visible+.custom-check{outline:3px solid #b9c9ba;outline-offset:2px}.managed-task-main{min-width:0}.managed-task-main h3{margin:0;color:#333a33;font:600 13px/1.45 var(--serif);overflow-wrap:anywhere}.managed-task-description{margin:5px 0 0;color:#858b83;font-size:11px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.task-meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:11px}.task-category,.priority-badge{display:inline-flex;align-items:center;min-height:21px;padding:0 8px;border-radius:20px;background:#f2f3f0;color:#747b72;font-size:9px}.priority-badge:before{content:'';width:5px;height:5px;margin-right:5px;border-radius:50%;background:#84917e}.priority-alta{background:#f7eeeb;color:#a46153}.priority-alta:before{background:#ba7262}.priority-media{background:#f5f1e9;color:#9a8057}.priority-media:before{background:#b69a68}.priority-baja{background:#edf2ec;color:#627b64}.priority-baja:before{background:#7c997c}.task-due{color:#92988f;font-size:9px}.task-actions{display:flex;gap:3px}.icon-button{width:30px;height:30px;display:grid;place-items:center;border:0;border-radius:8px;background:transparent;color:#92988f;font:500 17px inherit;cursor:pointer}.icon-button:hover{background:#f1f3ef;color:#435846}.delete-action:hover{background:#f8efed;color:#a25f50}.managed-task.is-complete .managed-task-main h3{color:#9ba198;text-decoration:line-through}.managed-task.is-complete{background:#fcfcfb}.task-list-empty{padding:35px 18px;text-align:center}.empty-check{width:33px;height:33px;display:grid;place-items:center;margin:0 auto 12px;border-radius:11px;background:#edf2ec;color:#58745c;font-size:16px}.task-list-empty h2{margin:0;color:#485047;font:600 14px var(--serif)}.task-list-empty p{margin:6px 0 0;color:#959b93;font-size:11px}.task-form{display:grid;grid-template-columns:1fr;gap:15px;padding:20px 21px;margin:0 0 22px}.task-form-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:1px}.task-form-heading .section-kicker{margin:0 0 5px}.task-form-heading h2{margin:0;font:600 16px var(--serif)}.form-field{display:grid;gap:7px;color:#626a60;font-size:10px;font-weight:600}.form-field small{color:#a0a59e;font-weight:400}.form-field input,.form-field textarea,.form-field select{width:100%;min-height:39px;padding:9px 11px;border:1px solid #e5e8e2;border-radius:9px;background:#fcfcfb;color:#343a33;font:400 11px inherit;outline:0}.form-field textarea{min-height:73px;resize:vertical;line-height:1.5}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:#9aab98;box-shadow:0 0 0 3px rgba(113,143,112,.12)}.form-field input::placeholder,.form-field textarea::placeholder{color:#adb2aa}.form-fields-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.task-form-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:2px}.button-quiet{border:1px solid #e7e9e4;background:#fff;color:#727970}.button-quiet:hover{background:#f5f6f3}
@media(max-width:760px){.tasks-page-heading{align-items:flex-start;margin-bottom:24px}.tasks-page-heading h1{font-size:29px}.tasks-subtitle{max-width:220px;line-height:1.5}.create-task-button{min-height:37px;padding:0 11px;font-size:10px}.task-view-tabs{gap:19px}.managed-task{grid-template-columns:22px minmax(0,1fr) auto;gap:9px;padding:15px 13px}.managed-task-main h3{font-size:12px}.task-actions{gap:0}.icon-button{width:27px;height:29px}.task-form{padding:17px 15px;gap:13px}.form-fields-row{grid-template-columns:1fr 1fr}.form-field:last-child{grid-column:1/-1}.task-meta{gap:6px}.task-due{width:100%;padding-left:2px}.task-list-empty{padding:30px 14px}}
@media(max-width:390px){.tasks-page-heading{gap:8px}.tasks-subtitle{font-size:10px}.create-task-button{padding:0 9px}.managed-task{padding-inline:10px;gap:7px}.task-actions .icon-button{width:24px}.form-fields-row{grid-template-columns:1fr}.form-field:last-child{grid-column:auto}}
.button-primary,.button-quiet,.task-view-tab,.icon-button,.form-field input,.form-field textarea,.form-field select{font-family:inherit}
.profile-button{font-size:12px;font-weight:500}.assistant-input{font-size:11px;font-weight:400}.button-primary,.button-quiet{font-size:11px;font-weight:600}.task-view-tab{font-size:11px;font-weight:500}.icon-button{font-size:17px;font-weight:500}.form-field input,.form-field textarea,.form-field select{font-size:11px;font-weight:400}

/* Sección Obligaciones */
.obligations-page{max-width:900px;margin:0 auto}.obligations-page-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:27px}.obligations-page-heading h1{margin:8px 0 0;font:600 clamp(28px,3vw,35px)/1.1 var(--serif);letter-spacing:-.045em}.obligations-subtitle{margin:9px 0 0;color:#888e86;font-size:12px}.create-obligation-button{white-space:nowrap}.obligation-view-tabs{display:flex;gap:19px;overflow-x:auto;border-bottom:1px solid var(--line);margin-bottom:14px;scrollbar-width:none}.obligation-view-tabs::-webkit-scrollbar{display:none}.obligation-view-tab{position:relative;display:flex;align-items:center;gap:7px;flex:0 0 auto;min-height:43px;padding:0 2px;border:0;background:transparent;color:#8b9189;font:500 11px inherit;cursor:pointer}.obligation-view-tab.selected{color:#405a47;font-weight:600}.obligation-view-tab.selected:after{content:'';position:absolute;right:0;bottom:-1px;left:0;height:2px;border-radius:2px;background:#526d58}.obligation-view-tab span{min-width:19px;padding:3px 5px;border-radius:10px;background:#eff1ed;color:#7b8379;text-align:center;font-size:9px}.obligation-items{display:grid;gap:9px}.obligation-item{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:start;gap:12px;padding:17px 17px 16px;box-shadow:0 2px 10px rgba(38,48,37,.02)}.obligation-status-mark{width:19px;height:19px;display:grid;place-items:center;margin-top:1px;border:1px solid #cbd1c8;border-radius:6px;color:#7e8b7b;font-size:13px;line-height:1}.obligation-status-mark.paid{border-color:#66836a;background:#edf2ec;color:#527456}.obligation-status-mark.late{border-color:#d5b1a7;background:#f8efed;color:#a35e4e;font-weight:700}.obligation-main{min-width:0}.obligation-main h3{margin:0;color:#333a33;font:600 13px/1.45 var(--serif);overflow-wrap:anywhere}.obligation-description{margin:5px 0 0;color:#858b83;font-size:11px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.obligation-meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:11px}.recurrence-badge,.obligation-amount{display:inline-flex;align-items:center;min-height:21px;padding:0 8px;border-radius:20px;background:#f2f3f0;color:#747b72;font-size:9px}.obligation-amount{background:#f5f1e9;color:#8d7957;font-variant-numeric:tabular-nums}.obligation-due{color:#858d82;font-size:9px}.obligation-due.overdue{color:#a35e4e;font-weight:600}.obligation-actions{display:flex;align-items:center;gap:2px}.button-paid{min-height:30px;padding:0 10px;margin-right:2px;border:1px solid #dfe6dc;border-radius:8px;background:#f4f6f2;color:#536b54;font:600 9px inherit;white-space:nowrap;cursor:pointer}.button-paid:hover{border-color:#b9c8b7;background:#edf2ec}.paid-label{padding:0 6px;color:#67806a;font-size:9px;font-weight:600;white-space:nowrap}.obligation-item.is-overdue{border-color:#ebdfdb}.obligation-item.is-complete{background:#fcfcfb}.obligation-item.is-complete .obligation-main h3{color:#929990}.obligation-form{display:grid;grid-template-columns:1fr;gap:15px;padding:20px 21px;margin:0 0 22px}.obligation-form-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:1px}.obligation-form-heading .section-kicker{margin:0 0 5px}.obligation-form-heading h2{margin:0;font:600 16px var(--serif)}.obligation-form-fields{grid-template-columns:1fr 1fr}.obligation-form-fields .form-field:nth-child(n+3){grid-column:auto}.obligation-form-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:2px}
@media(max-width:760px){.obligations-page-heading{align-items:flex-start;margin-bottom:23px}.obligations-page-heading h1{font-size:29px}.obligations-subtitle{max-width:230px;line-height:1.5}.create-obligation-button{min-height:37px;padding:0 10px;font-size:10px}.obligation-view-tabs{gap:16px}.obligation-view-tab{font-size:10px}.obligation-item{grid-template-columns:20px minmax(0,1fr);gap:9px;padding:15px 13px}.obligation-main h3{font-size:12px}.obligation-actions{grid-column:2;justify-content:flex-end;margin-top:1px}.obligation-form{padding:17px 15px;gap:13px}.obligation-form-fields{grid-template-columns:1fr 1fr}.obligation-meta{gap:6px}.obligation-due{width:100%;padding-left:2px}.button-paid{min-height:32px}.obligation-items .task-list-empty{padding:30px 14px}}
@media(max-width:390px){.obligations-page-heading{gap:8px}.obligations-subtitle{font-size:10px}.create-obligation-button{padding:0 8px}.obligation-item{padding-inline:10px}.obligation-actions{gap:0}.obligation-actions .icon-button{width:25px}.obligation-form-fields{grid-template-columns:1fr}.obligation-form-fields .form-field:nth-child(n+3){grid-column:auto}}

/* Las obligaciones conservan su identidad roja en todas las vistas. */
.obligation-item,.obligation-item.is-overdue,.obligation-item.is-complete{border-left:3px solid #c34540!important}
.obligation-main h3,.obligation-item.is-complete .obligation-main h3{color:#963b36!important}
.obligation-due,.obligation-due.overdue,.paid-label,.recurrence-badge,.obligation-amount{color:#a23833!important}
.recurrence-badge,.obligation-amount{background:#fbe9e7!important}
.obligation-status-mark,.obligation-status-mark.paid,.obligation-status-mark.late{border-color:#c85b55!important;background:#fbe9e7!important;color:#a63833!important}
.calendar-obligation,.calendar-obligation.is-completed{background:#fbe9e7!important;color:#922f2b!important;border-left:2px solid #c34540!important}
.calendar-obligation .calendar-entry-title,.calendar-obligation small{color:#922f2b!important}
.obligation-detail-status{background:#fbe9e7!important;color:#932f2b!important}
.obligation-meta .task-category,.obligation-category{background:#fbe9e7!important;color:#a23833!important}

/* Acento azul propio para las tareas, independiente de las categorías de eventos. */
.task-heading-icon{background:#e8f1fa!important;color:#356b9e!important}
.dashboard-tasks-card .count-pill{background:#e8f1fa;color:#356b9e}
.dashboard-tasks-card .task-item{border-top-color:#e5edf5;color:#315c83}
.dashboard-tasks-card .task-text{color:#315c83;font-weight:600}
.dashboard-tasks-card .task-time{color:#6483a1}
.dashboard-tasks-card .task-check{border-color:#91b4d2}
.dashboard-tasks-card .task-check:checked{background:#3d78ad;border-color:#3d78ad}
.dashboard-tasks-card .text-link{color:#356b9e}
.managed-task{border-left:3px solid #79a6ce!important}
.managed-task-main h3,.managed-task.is-complete .managed-task-main h3{color:#315c83!important}
.managed-task.is-complete .managed-task-main h3{opacity:.68}
.managed-task-description{color:#6d8297}
.managed-task-check input:checked+.custom-check{border-color:#3d78ad!important;background:#3d78ad!important}
.managed-task-check input:focus-visible+.custom-check{outline-color:#a8c8e5!important}
.managed-task .task-category,.managed-task .priority-badge{background:#e8f1fa!important;color:#356b9e!important}
.managed-task .priority-badge:before{background:#4c83b4!important}
.managed-task .task-due{color:#527da4!important}
.managed-task .task-actions .icon-button{color:#527da4}
.tasks-page .empty-check{background:#e8f1fa;color:#356b9e}
.task-form{border-left:3px solid #79a6ce}
.task-form-heading h2{color:#315c83}
.task-form .form-field input:focus,.task-form .form-field textarea:focus,.task-form .form-field select:focus{border-color:#78a6d0;box-shadow:0 0 0 3px rgba(72,125,174,.13)}
.tasks-page .task-view-tab.selected{color:#356b9e}
.tasks-page .task-view-tab.selected:after{background:#4b83b7}
.categories-back-row{margin:-8px 0 14px}
.categories-back-button{min-height:35px;padding:0 12px;border:1px solid #e3e8e1;border-radius:9px;background:#fff;color:#5a6858;font:600 11px inherit;cursor:pointer}
.categories-back-button:hover{background:#f5f7f3;border-color:#d5dfd2}
.categories-page .calendar-heading-actions .button-secondary.is-selected,.categories-page .calendar-page-heading>.button-secondary.is-selected{border-color:#344a3b;background:#344a3b;color:#fff}

/* Revisión diaria: agrupación clara, colores coherentes y acciones accesibles. */
.daily-review-callout{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 18px;margin:0 0 21px;border-color:#e7ebe4;background:#fbfcfa}
.daily-review-callout-copy{display:flex;align-items:center;gap:11px;min-width:0}
.daily-review-callout-copy strong{color:#39483b;font:600 13px var(--serif)}
.daily-review-callout-copy p{margin:4px 0 0;color:#7b8479;font-size:10px;line-height:1.5}
.daily-review-mark{width:29px;height:29px;display:grid;place-items:center;flex:0 0 29px;border-radius:9px;background:#edf2ec;color:#537456;font-size:14px;font-weight:700}
.daily-review-callout .button-secondary{flex:0 0 auto}
.daily-review-page{max-width:880px;margin:0 auto}
.daily-review-page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}
.daily-review-page-heading h1{margin:8px 0 0;color:#272d27;font:600 clamp(27px,3vw,34px)/1.15 var(--serif);letter-spacing:-.04em}
.daily-review-page-heading p{margin:8px 0 0;color:#858d83;font-size:11px;line-height:1.55}
.daily-review-total{margin:0 0 16px;color:#727b70;font-size:10px;font-weight:650}
.daily-review-group{display:grid;gap:9px;margin:22px 0}
.daily-review-group>h2{display:flex;align-items:center;gap:8px;margin:0 0 2px;color:#434b42;font:600 15px var(--serif)}
.daily-review-group>h2 span{display:inline-grid;min-width:20px;height:20px;place-items:center;border-radius:10px;background:#f0f2ee;color:#70796e;font:600 9px inherit}
.daily-review-item{padding:17px 18px;border-left:3px solid #bac3b8;min-width:0}
.daily-review-item-heading{display:flex;align-items:flex-start;gap:11px;min-width:0}
.review-kind-icon{width:30px;height:30px;display:grid;place-items:center;flex:0 0 30px;border-radius:9px;background:#f1f3ef;color:#697568;font-size:15px;font-weight:700}
.daily-review-item-heading>div{min-width:0;flex:1}
.review-kind-label{color:#8c9489;font-size:8px;font-weight:700;letter-spacing:.1em}
.daily-review-item h3{margin:4px 0 0;color:#364036;font:600 14px/1.35 var(--serif);overflow-wrap:anywhere}
.daily-review-item-heading p{margin:5px 0 0;color:#798276;font-size:10px}
.daily-review-description{margin:9px 0 0 41px;color:#80887d;font-size:10px;line-height:1.55;white-space:pre-wrap}
.daily-review-actions{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:13px 0 0 41px}
.daily-review-actions button,.review-date-form button{min-height:32px;padding:0 10px;font-size:9px}
.review-delete-button{border:1px solid #ead8d5;border-radius:8px;background:#fff;color:#a44b44;font:600 9px inherit;cursor:pointer}
.review-delete-button:hover{background:#fbefed}
.review-task{border-left-color:#79a6ce}
.review-task .review-kind-icon{background:#e8f1fa;color:#356b9e}
.review-task .review-kind-label,.review-task .daily-review-item-heading p{color:#527da4}
.review-task .daily-review-item-heading h3{color:#315c83}
.review-task-primary{background:#3d78ad;box-shadow:0 3px 8px rgba(61,120,173,.14)}
.review-obligation{border-left-color:#c34540}
.review-obligation .review-kind-icon{background:#fbe9e7;color:#a23833}
.review-obligation .review-kind-label,.review-obligation .daily-review-item-heading h3,.review-obligation .daily-review-item-heading p{color:#963b36}
.review-document-summary{margin:10px 0 0 41px;color:#a23833;font-size:9px}
.review-obligation-primary{background:#b9413c;box-shadow:0 3px 8px rgba(185,65,60,.13)}
.review-event{border-left-color:var(--category-color,#7961A4)}
.review-event .review-kind-icon{background:var(--category-tint,#ece8f5);color:var(--category-ink,#5f4681);border:1px solid var(--category-color,#7961A4)}
.review-event .review-kind-label,.review-event .daily-review-item-heading p{color:var(--category-ink,#5f4681)}
.review-event .daily-review-item-heading h3{color:#343c34}
.review-event-primary{background:#344a3b}
.review-date-form{display:flex;align-items:flex-end;flex-wrap:wrap;gap:8px;margin:13px 0 0 41px;padding:11px;border:1px solid #e8ece6;border-radius:10px;background:#fafbf9}
.review-date-form label{display:grid;gap:5px;color:#727b70;font-size:9px;font-weight:600}
.review-date-form input{min-height:32px;padding:0 8px;border:1px solid #e0e5dd;border-radius:7px;background:#fff;color:#3f493e;font:500 10px inherit}
.review-task .review-date-form input:focus{outline:2px solid #c7dced;border-color:#79a6ce}
.review-event-date-form{margin-top:11px}
.review-document-summary{line-height:1.5}
.daily-review-empty{padding:38px 20px;text-align:center}
.daily-review-empty .daily-review-mark{margin:0 auto 11px}
.daily-review-empty h2{margin:0;color:#3f493e;font:600 16px var(--serif)}
.daily-review-empty p{max-width:430px;margin:7px auto 0;color:#858d83;font-size:10px;line-height:1.6}
.event-review-history{margin:18px 0 0;padding-top:14px;border-top:1px solid #eceee9}
.event-review-history h3{margin:0 0 8px;color:#667064;font:600 11px var(--serif)}
.event-review-history ul{display:grid;gap:6px;margin:0;padding:0;list-style:none}
.event-review-history li{display:flex;justify-content:space-between;gap:10px;color:#606b5e;font-size:9px}
.event-review-history small{color:#959c92;font-size:8px}
.event-review-status{display:inline-flex;align-items:center;align-self:flex-start;padding:3px 7px;border-radius:20px;background:#f1f2ef;color:#657061;font-size:8px;font-weight:700;white-space:nowrap}
.event-review-status.is-completed{background:#edf2ec;color:#537456}
.event-review-status.is-cancelled{background:#fbe9e7;color:#a23833}
.calendar-event.is-completed{opacity:.75}
.calendar-event.is-cancelled{opacity:.62}
.calendar-event.is-cancelled .calendar-entry-title{text-decoration:line-through;text-decoration-thickness:1px}
@media(max-width:760px){.daily-review-callout{align-items:flex-start;padding:13px 14px;margin-bottom:18px}.daily-review-callout-copy{gap:9px}.daily-review-callout-copy p{font-size:9px}.daily-review-callout .button-secondary{min-height:33px;padding-inline:9px;font-size:9px}.daily-review-page-heading{display:grid;grid-template-columns:1fr;gap:13px;margin-bottom:18px}.daily-review-page-heading>button{justify-self:start}.daily-review-item{padding:15px 13px}.daily-review-actions,.review-date-form,.daily-review-description,.review-document-summary{margin-left:0}.daily-review-actions{gap:6px}.daily-review-actions button{padding-inline:8px}.review-date-form{align-items:stretch}.review-date-form label{flex:1;min-width:120px}.review-date-form button{flex:1}.event-review-history li{align-items:flex-start;flex-direction:column;gap:2px}}
@media(max-width:390px){.daily-review-callout{gap:8px;padding:12px}.daily-review-callout .button-secondary{white-space:nowrap}.daily-review-callout-copy strong{font-size:12px}.daily-review-callout-copy p{font-size:8px}.daily-review-item h3{font-size:13px}.daily-review-actions button{min-height:34px}}

/* Acceso prioritario al resumen y guardado explícito de borradores de revisión. */
.daily-review-callout{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 21px;margin:0 0 23px;border:1px solid #2d4939;border-radius:15px;background:#2d4939;color:#fff;box-shadow:0 9px 25px rgba(34,67,45,.13)}
.daily-review-callout.has-pending{border-color:#2d4939;background:#2d4939}
.daily-review-callout.is-clear{border-color:#dce6dc;background:#f2f6f0;color:#3d5741;box-shadow:none}
.daily-review-callout-copy{display:flex;align-items:center;gap:13px;min-width:0}
.daily-review-callout-copy strong{display:block;color:#fff;font:600 16px var(--serif);letter-spacing:-.015em}
.daily-review-callout-copy p{margin:4px 0 0;color:#d6e1d6;font-size:11px;font-weight:500}
.daily-review-callout.is-clear .daily-review-callout-copy strong{color:#3d5741}
.daily-review-callout.is-clear .daily-review-callout-copy p{color:#788879}
.daily-review-mark{width:38px;height:38px;flex-basis:38px;border-radius:12px;background:rgba(255,255,255,.13);color:#f3f7ef;font-size:18px}
.daily-review-callout.is-clear .daily-review-mark{background:#e2ece0;color:#527456}
.daily-review-counts{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.daily-review-counts span{padding:4px 8px;border:1px solid rgba(255,255,255,.18);border-radius:20px;background:rgba(255,255,255,.08);color:#e1e9df;font-size:9px;font-weight:600}
.daily-review-callout.is-clear .daily-review-counts span{border-color:#dce6dc;background:#fff;color:#788879}
.daily-review-open-button{min-height:39px;display:inline-flex;align-items:center;justify-content:center;gap:9px;flex:0 0 auto;padding:0 15px;border:1px solid #edf2eb;border-radius:9px;background:#f8faf6;color:#344a3b;font:600 10px inherit;cursor:pointer;transition:background .15s,border-color .15s}
.daily-review-open-button:hover{border-color:#dce7d8;background:#eaf1e7}
.daily-review-callout.is-clear .daily-review-open-button{border-color:#d8e2d5;background:#fff;color:#456348}
.daily-review-callout.is-clear .daily-review-open-button:hover{background:#e8f0e6}
.review-editor-form{display:grid;gap:11px;margin:13px 0 0 41px;padding:14px;border:1px solid #e8ece6;border-radius:11px;background:#fafbf9}
.review-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}
.review-editor-heading h4{margin:0;color:#414b40;font:600 12px var(--serif)}
.review-unsaved-state{color:#899187;font-size:9px;font-weight:600}
.review-unsaved-state.is-dirty{color:#a56820}
.review-editor-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.review-editor-form .form-field{min-width:0;gap:5px;font-size:9px}
.review-editor-form .form-field input,.review-editor-form .form-field textarea,.review-editor-form .form-field select{min-height:34px;padding:7px 9px;font-size:10px}
.review-editor-form .form-field textarea{min-height:54px}
.review-editor-form .form-field input:focus,.review-editor-form .form-field textarea:focus,.review-editor-form .form-field select:focus{border-color:#83a98b;box-shadow:0 0 0 3px rgba(89,131,94,.12)}
.review-editor-actions{display:flex;justify-content:flex-end;gap:7px;padding-top:2px}
.review-editor-actions button{min-height:34px;padding:0 11px;font-size:9px}
.review-all-day{display:flex;align-items:center;gap:7px;min-height:34px;color:#626a60;font-size:9px;font-weight:600}
.review-all-day input{accent-color:#466b4c}
.review-confirm-backdrop{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:20px;background:rgba(28,36,29,.4);backdrop-filter:blur(4px)}
.review-confirm-dialog{width:min(410px,100%);padding:23px;border:1px solid #e7eae4;border-radius:15px;background:#fbfbf9;box-shadow:0 22px 70px rgba(21,33,23,.24)}
.review-confirm-dialog h2{margin:0;color:#30372f;font:600 18px var(--serif)}
.review-confirm-dialog p{margin:8px 0 18px;color:#81877f;font-size:10px;line-height:1.6}
.review-confirm-dialog>div{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}
.review-confirm-dialog button{min-height:36px;padding:0 12px;font-size:9px}
@media(max-width:760px){.daily-review-callout{align-items:flex-start;gap:12px;padding:15px;margin-bottom:19px}.daily-review-callout-copy{gap:10px}.daily-review-callout-copy strong{font-size:14px}.daily-review-callout-copy p{max-width:240px;font-size:10px;line-height:1.45}.daily-review-mark{width:34px;height:34px;flex-basis:34px}.daily-review-open-button{min-height:36px;padding-inline:10px;font-size:9px;white-space:nowrap}.daily-review-counts{gap:4px}.daily-review-counts span{padding:4px 6px;font-size:8px}.review-editor-form{margin-left:0;padding:12px}.review-editor-fields{grid-template-columns:1fr 1fr}.review-confirm-dialog{padding:20px 17px}.review-confirm-dialog>div{display:grid;grid-template-columns:1fr}.review-confirm-dialog button{width:100%}}
@media(max-width:390px){.daily-review-callout{flex-wrap:wrap}.daily-review-callout-copy{flex:1}.daily-review-open-button{width:100%}.review-editor-fields{grid-template-columns:1fr}.review-editor-actions{display:grid;grid-template-columns:1fr 1fr}.review-editor-actions button{width:100%}}
.obligation-view-tab,.button-paid{font-family:inherit}.obligation-view-tab{font-size:11px;font-weight:500}.button-paid{font-size:9px;font-weight:600}

/* Adjuntos e historial documental por vencimiento */
.obligation-documents{grid-column:2/-1;display:grid;gap:8px;padding-top:11px;margin-top:2px;border-top:1px solid #f0f1ed}.obligation-document-group{display:flex;align-items:center;gap:9px;min-height:27px}.document-kind-label{width:92px;color:#737a71;font-size:9px;font-weight:600}.document-history-button,.document-add-button,.document-picker-option,.document-picker-cancel{min-height:28px;padding:0 9px;border:1px solid #e5e8e2;border-radius:8px;background:#fff;color:#777f75;font:500 9px inherit;cursor:pointer}.document-history-button:hover,.document-add-button:hover,.document-picker-option:hover{border-color:#cbd6c8;background:#f8faf7;color:#48604b}.document-history-button.has-documents{color:#506950;background:#f1f4ef;border-color:#e1e8de}.document-add-button{color:#516b55}.document-picker{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:9px 10px;border-radius:10px;background:#f7f8f5}.document-picker-title{margin-right:5px;color:#687166;font-size:9px;font-weight:600}.document-picker-option{background:#fff}.document-picker-cancel{border-color:transparent;background:transparent;color:#999f97}.document-file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.document-status-message{margin:12px 0 0;padding:10px 12px;border:1px solid #e4e8e1;border-radius:9px;background:#f6f8f4;color:#64715f;font-size:10px}.document-modal-backdrop{position:fixed;inset:0;z-index:30;display:flex;align-items:center;justify-content:center;padding:22px;background:rgba(26,34,27,.43);backdrop-filter:blur(5px)}.payment-modal{position:relative;width:min(450px,100%);padding:29px 28px 24px;border:1px solid #e8ebe5;border-radius:18px;background:#fbfbf9;box-shadow:0 22px 70px rgba(21,33,23,.24)}.modal-close{position:absolute;top:15px;right:16px}.payment-modal h2{margin:7px 0 0;color:#30372f;font:600 22px var(--serif);letter-spacing:-.035em}.payment-modal-name{margin:7px 0 0;color:#748071;font-size:12px}.payment-modal-copy{margin:18px 0 12px;color:#81877f;font-size:11px;line-height:1.6}.payment-receipt-state{min-height:38px;padding:10px 11px;border:1px solid #e7eae4;border-radius:9px;background:#fff;color:#828980;font-size:10px;line-height:1.5}.document-ready{color:#557258}.document-error{color:#a55347}.payment-add-receipt{margin-top:11px}.payment-modal .document-picker{margin-top:9px}.payment-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:23px;padding-top:14px;border-top:1px solid #eceee9}.button-primary:disabled{opacity:.52;cursor:not-allowed;box-shadow:none}.document-viewer{width:min(1120px,100%);height:min(760px,90vh);display:flex;flex-direction:column;overflow:hidden;border:1px solid #e8ebe5;border-radius:17px;background:#fbfbf9;box-shadow:0 22px 70px rgba(21,33,23,.24)}.document-viewer-header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 21px;border-bottom:1px solid #e9ebe6}.document-viewer-header .section-kicker{margin-bottom:5px}.document-viewer-header h2{margin:0;color:#333a33;font:600 15px var(--serif)}.document-viewer-body{display:grid;grid-template-columns:minmax(230px,310px) minmax(0,1fr);flex:1;min-height:0}.document-version-list{overflow-y:auto;padding:12px;border-right:1px solid #e9ebe6}.document-version{display:flex;align-items:center;gap:5px;padding:8px;border:1px solid transparent;border-radius:10px}.document-version.selected{border-color:#e2e8df;background:#f3f6f1}.document-version-open{min-width:0;flex:1;display:grid;gap:4px;padding:3px;border:0;background:transparent;text-align:left;cursor:pointer}.document-version-open strong{color:#52654f;font-size:9px}.document-version-open span{overflow:hidden;color:#474e46;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.document-version-open small{color:#999f97;font-size:8px}.document-version-delete{padding:5px 6px;border:0;border-radius:6px;background:transparent;color:#a16a5c;font:500 9px inherit;cursor:pointer}.document-version-delete:hover{background:#f8efed}.document-preview{position:relative;display:flex;flex-direction:column;min-width:0;min-height:0;background:#f1f2ef}.document-preview-toolbar{min-height:40px;display:flex;align-items:center;gap:8px;padding:5px 11px;border-bottom:1px solid #e4e6e1;background:#fbfbf9}.document-preview-toolbar>span{flex:1;overflow:hidden;color:#687066;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.document-preview-toolbar button{width:28px;height:27px;border:1px solid #e2e5df;border-radius:7px;background:#fff;color:#626d60;font-size:12px;cursor:pointer}.document-download{padding:7px 9px;border-radius:7px;background:#edf2eb;color:#536d55;font-size:9px;font-weight:600;text-decoration:none}.document-preview-image{flex:1;display:flex;align-items:center;justify-content:center;overflow:auto;padding:20px}.document-preview-image img{max-width:100%;max-height:100%;object-fit:contain;transform-origin:center;transition:transform .15s}.document-preview-pdf{flex:1;width:100%;min-height:0;border:0;background:#fff}.document-preview-empty{display:grid;flex:1;place-items:center;padding:25px;color:#949a92;font-size:11px;text-align:center}.archived-label{color:#8c8070}.restore-obligation{min-height:29px;padding:0 8px;font-size:9px}
.document-picker-option,.document-picker-cancel,.document-history-button,.document-add-button,.document-version-delete{font-family:inherit;font-size:9px;font-weight:500}
@media(max-width:760px){.obligation-documents{grid-column:1/-1;padding-top:10px}.obligation-document-group{gap:6px}.document-kind-label{width:77px;font-size:8px}.document-history-button,.document-add-button{min-height:30px;padding-inline:8px}.document-picker{gap:5px;padding:8px}.document-picker-title{width:100%;margin-bottom:2px}.document-modal-backdrop{align-items:flex-end;padding:0}.payment-modal{width:100%;padding:27px 20px max(18px,env(safe-area-inset-bottom));border-radius:18px 18px 0 0}.document-viewer{width:100%;height:100%;max-height:100%;border-radius:0}.document-viewer-header{padding:14px 15px}.document-viewer-header h2{font-size:13px}.document-viewer-body{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.document-version-list{display:flex;gap:7px;overflow-x:auto;padding:8px;border-right:0;border-bottom:1px solid #e9ebe6}.document-version{min-width:220px;padding:6px}.document-preview-toolbar{gap:5px;padding-inline:7px}.document-preview-toolbar>span{font-size:8px}.document-preview-image{padding:12px}.obligation-actions .restore-obligation{font-size:8px;padding-inline:6px}}

/* Renovación visual LIFE OS: identidad cromática, agenda y adaptación móvil */
:root{--ink:#15243a;--muted:#60718a;--line:#dce5ef;--green:#0b8553;--green-soft:#e2f6eb;--paper:#fff;--brand-blue:#2474db;--brand-red:#dc4b48;--brand-violet:#6853c6;--canvas:#edf3f9}
body{background:radial-gradient(ellipse at 84% 0%,#e3efff 0,transparent 38%),var(--canvas);color:var(--ink)}
.sidebar{background:linear-gradient(180deg,#fff 0%,#f4f8ff 100%);border-color:#dbe5f0;box-shadow:5px 0 24px #243b5a0a}
.brand-mark{background:linear-gradient(145deg,#16a66b,#087949);box-shadow:0 5px 12px #07834c33}
.nav-item{color:#536681}.nav-item:hover{background:#e8f1ff;color:#205cb0}.nav-item.active{background:linear-gradient(100deg,#e4efff,#f0f5ff);color:#175cb2;box-shadow:inset 3px 0 #397ee6}
.main-area{background:transparent}.topbar{background:#f9fbfff0;border-color:#dae4ef;backdrop-filter:blur(14px)}.breadcrumbs strong{color:#28415f}.profile-avatar{background:linear-gradient(140deg,#cde4ff,#e3dbff);color:#3c53a0}
.page-content{max-width:1240px}.greeting-row{margin-bottom:25px}.greeting-row h1{color:#182944;font-size:clamp(30px,3.3vw,40px);letter-spacing:-.05em}.greeting-row h1 span{color:#2474db;font-weight:650}.eyebrow{color:#587395}.section-kicker{color:#637b99}
.card{border-color:#dfe8f1;border-radius:18px;box-shadow:0 8px 26px #2949690b}.overview-card{background:linear-gradient(155deg,#fff,#f8fbff)}.dashboard-column-card{border-top:3px solid #4d93ee}.dashboard-column-card:nth-child(2){border-top-color:#e55852;background:linear-gradient(150deg,#fff,#fff8f7)}.dashboard-column-card:nth-child(3){border-top-color:#7559d9;background:linear-gradient(150deg,#fff,#faf8ff)}
.task-heading-icon{background:#e4f0ff!important;color:#216cc8!important}.obligation-heading-icon{background:#ffebe9!important;color:#cb3e3a!important}.heading-icon{background:#eee9ff;color:#6853c6}.count-pill{background:#e7f0ff;color:#235da4}.dashboard-column-card:nth-child(2) .count-pill{background:#ffebe8;color:#b63a36}.dashboard-column-card:nth-child(3) .count-pill{background:#eeeaff;color:#624dc0}
.task-item{border-color:#dbe9fa;color:#245b96}.task-check{border-color:#8bb7eb}.task-check:checked{background:#2675dc;border-color:#2675dc}.task-time{color:#4d79a8}.task-text{font-weight:600}.obligation-row-open{border-color:#f6ddda}.obligation-row-open .obligation-name{color:#a93232}.event-item{border-color:#e5e0fa}.event-time{color:#5b50ae}.event-name{color:#352f61}
.button-primary{border-color:#08794b;background:linear-gradient(135deg,#16a465,#08794b);box-shadow:0 5px 14px #07834c30}.button-primary:hover{background:linear-gradient(135deg,#128d59,#076d43)}.button-quiet,.button-secondary{border-color:#d9e3ef;color:#3f5d7d;background:#fff}.button-quiet:hover,.button-secondary:hover{background:#edf5ff;border-color:#b7d0ee}.text-link{color:#176bc8}
.daily-review-callout,.daily-review-callout.has-pending{position:relative;overflow:hidden;padding:25px 28px;border:1px solid #087244;border-radius:21px;background:linear-gradient(120deg,#07834e,#0da867 58%,#20b974);box-shadow:0 15px 32px #08774732}.daily-review-callout:after{content:'';position:absolute;width:260px;height:260px;right:8%;top:-185px;border:1px solid #ffffff30;border-radius:50%;box-shadow:0 0 0 25px #ffffff0b,0 0 0 52px #ffffff0b;pointer-events:none}.daily-review-callout-copy strong{font-size:21px}.daily-review-callout-copy p{color:#e4fff0;font-size:13px}.daily-review-mark{width:48px;height:48px;flex-basis:48px;border:1px solid #ffffff35;background:#ffffff22;font-size:22px}.daily-review-counts span{padding:6px 10px;border-color:#ffffff45;background:#ffffff17;color:#fff;font-size:11px}.daily-review-open-button{position:relative;z-index:1;min-height:46px;padding-inline:19px;border:0;border-radius:12px;background:#fff;color:#087749;font-size:12px;font-weight:750;box-shadow:0 5px 15px #00462428}.daily-review-callout.is-clear{background:linear-gradient(125deg,#dff6e7,#edfbf2);border-color:#bde8cb}.daily-review-callout.is-clear .daily-review-callout-copy strong{color:#147144}.daily-review-callout.is-clear .daily-review-callout-copy p{color:#487d60}
.assistant-card{margin-top:24px;border:1px solid #244d90;border-radius:20px;background:linear-gradient(115deg,#213e73,#315eb1 60%,#6546bd);box-shadow:0 12px 30px #283c7833}.assistant-label{color:#fff}.assistant-caption{color:#dce8ff}.assistant-send{background:#fff;color:#2356a2}.assistant-note{color:#b9cff6}
.dashboard-three-columns{gap:17px}.dashboard-column-card{min-height:310px;padding:21px}.dashboard-support-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:16px;margin-top:20px}.today-agenda-card,.dashboard-summary-card{padding:21px 23px}.today-agenda-card header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.today-agenda-card h2,.dashboard-summary-card h2,.dashboard-quick-actions h2{margin:2px 0 0;color:#1d3150;font:700 17px/1.3 var(--serif)}.dashboard-small-link{border:0;background:transparent;color:#176bc8;font:650 11px inherit;text-decoration:none;white-space:nowrap;cursor:pointer}.today-agenda-list{display:grid;gap:7px}.today-agenda-row{width:100%;display:grid;grid-template-columns:82px minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px 12px;border:1px solid #dfe8f1;border-left:4px solid var(--category-color,#dc4b48);border-radius:11px;background:var(--category-tint,#ffebe9);color:var(--category-ink,#932f2b);text-align:left;cursor:pointer}.today-agenda-row.agenda-obligation{--category-color:#dc4b48;--category-tint:#ffebe9;--category-ink:#a93232}.today-agenda-row time{font-size:10px;font-weight:750}.today-agenda-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700}.today-agenda-row small{font-size:9px;font-weight:650}.today-agenda-empty{margin:0;padding:12px;border-radius:10px;background:#f3f7fc;color:#7b8ca2;font-size:11px}.dashboard-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:15px}.dashboard-stat{display:grid;gap:5px;min-height:85px;align-content:center;padding:12px;border:1px solid #dfe8f1;border-radius:13px;background:#f7faff}.dashboard-stat strong{font-size:25px;line-height:1;color:#2474db}.dashboard-stat span{color:#62758e;font-size:10px;line-height:1.3}.dashboard-stat.obligation-stat{background:#fff6f5;border-color:#f5dedb}.dashboard-stat.obligation-stat strong{color:#d8423f}.dashboard-stat.event-stat{background:#f7f4ff;border-color:#e5defb}.dashboard-stat.event-stat strong{color:#7058ca}.dashboard-quick-actions{display:flex;align-items:center;justify-content:space-between;gap:17px;margin:17px 0 3px;padding:16px 19px;border:1px solid #dce6f0;border-radius:16px;background:linear-gradient(100deg,#fff,#f4f8ff)}.dashboard-quick-actions .section-kicker{margin-bottom:5px}.quick-action-list{display:flex;flex-wrap:wrap;gap:8px}.quick-action-list button{min-height:40px;padding:0 13px;border:1px solid #ccdbec;border-radius:11px;background:#fff;color:#315675;font:650 11px inherit;cursor:pointer;box-shadow:0 3px 9px #25466b0b}.quick-action-list button:hover{border-color:#8bb4e5;background:#edf5ff;color:#155cae}
.calendar-page-heading h1{color:#192c47}.calendar-subtitle{color:#647b96}.calendar-board{padding:21px;border-color:#dce6f0;border-radius:19px;background:#fff;box-shadow:0 10px 30px #29496910}.calendar-toolbar{margin-bottom:19px}.calendar-period h2{color:#1c3354;font-size:18px}.calendar-today{border-color:#b7d2ef;background:#edf5ff;color:#1e62ad}.calendar-view-switch{gap:3px;background:#eaf0f7;border-radius:12px}.calendar-view-switch button{min-height:35px;padding:7px 13px;color:#61758d;font-size:11px;font-weight:650}.calendar-view-switch button.selected{background:#fff;color:#185da8;box-shadow:0 3px 9px #23415f20}.calendar-weekdays{border-color:#dce6f0;background:#f3f7fc}.calendar-weekdays span{color:#526c8b;font-size:10px}.calendar-grid{border-color:#dce6f0}.calendar-day{min-height:128px;border-color:#dce6f0;background:#fff}.calendar-day.outside-month{background:#f7f9fc}.calendar-day.is-today{background:#eef8f1}.calendar-day.is-today .calendar-day-label>span{background:#11834f;box-shadow:0 3px 8px #11834f35}.calendar-day.is-selected{box-shadow:inset 0 0 0 2px #4389dc}.calendar-day-label{color:#304963;font-size:12px;font-weight:750}.calendar-day-label small{color:#72849a;font-size:10px}.calendar-day-entries{gap:5px}.calendar-entry{min-height:25px;padding:5px 7px;border-radius:7px;font-size:10px;font-weight:700;box-shadow:0 2px 4px #1d34520b}.calendar-event{background:var(--category-tint)!important;color:var(--category-ink)!important;border-left:3px solid var(--category-color)!important}.calendar-event small{font-size:9px;font-weight:750}.calendar-obligation,.calendar-obligation.is-completed{min-height:27px;background:#ffe9e7!important;color:#9d2c29!important;border-left:3px solid #df4541!important}.calendar-obligation small{color:#a6322f}.calendar-legend{gap:13px;padding-top:15px;color:#4f6680;font-size:10px}.legend-dot{width:10px;height:10px;box-shadow:0 1px 4px #1a2e4a22}.legend-obligation{background:#df4541!important}.week-grid .calendar-day{min-height:310px}.week-grid .calendar-event{min-height:calc(25px + 7px * var(--event-duration,1));align-items:flex-start;flex-direction:column;justify-content:center;gap:2px}.week-grid .calendar-event small{opacity:.9}.day-grid .calendar-day{min-height:430px}.day-grid .calendar-entry{max-width:650px;min-height:42px;padding:10px 13px;font-size:12px}.day-grid .calendar-obligation{min-height:42px}
.agenda-list{display:grid;gap:9px;padding-top:5px}.agenda-row{width:100%;display:grid;grid-template-columns:minmax(140px,.55fr) minmax(0,1fr) minmax(110px,.35fr) 16px;align-items:center;gap:13px;padding:13px 16px;border-left:4px solid var(--category-color,#df4541);text-align:left;cursor:pointer}.agenda-row:hover{transform:translateY(-1px);box-shadow:0 8px 19px #26476819}.agenda-row.agenda-event{background:var(--category-tint);color:var(--category-ink)}.agenda-row.agenda-obligation{border-left-color:#df4541;background:#fff0ee;color:#a3322e}.agenda-row time{color:#405b78;font-size:11px;font-weight:750}.agenda-row time small{display:block;margin-top:4px;color:#768ba2;font-size:10px;font-weight:550}.agenda-row-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:750}.agenda-category-chip{justify-self:start;padding:5px 9px;border-radius:20px;background:var(--category-tint);color:var(--category-ink);font-size:9px;font-weight:750}.agenda-obligation .agenda-category-chip{background:#ffddda;color:#a3322e}.agenda-empty{display:grid;gap:7px;place-items:center;padding:36px 18px;color:#334f6e;text-align:center}.agenda-empty span{color:#778aa0;font-size:11px}
.review-confirm-dialog{border-color:#ccdeed;background:#fff;box-shadow:0 28px 90px #0e284652}.review-confirm-dialog h2{color:#19334f}.review-confirm-dialog p{color:#60758c}.review-confirm-dialog>div{justify-content:space-between}.review-confirm-dialog button{min-height:42px;font-size:11px}
@media(max-width:1000px){.page-content{padding-inline:32px}.dashboard-three-columns{gap:12px}.dashboard-column-card{padding:16px}.dashboard-support-grid{grid-template-columns:1fr 1fr}.dashboard-quick-actions{align-items:flex-start;flex-direction:column}}
@media(max-width:760px){body{background:linear-gradient(180deg,#e8f1fc,#f3f7fb 45%,#edf3f9)}.topbar{height:58px;padding:0 17px}.main-area{margin-left:0;padding-bottom:calc(74px + env(safe-area-inset-bottom))}.page-content{padding:24px 15px 30px}.greeting-row{align-items:flex-start;gap:8px;margin-bottom:19px}.greeting-row h1{font-size:28px}.date-chip{max-width:118px;padding-top:8px;text-align:right;font-size:10px;line-height:1.4}.daily-review-callout{align-items:flex-start;flex-wrap:wrap;gap:13px;padding:19px;margin-bottom:19px}.daily-review-callout-copy{flex:1;gap:11px}.daily-review-callout-copy strong{font-size:18px}.daily-review-callout-copy p{font-size:11px}.daily-review-mark{width:40px;height:40px;flex-basis:40px}.daily-review-open-button{width:100%;min-height:46px;font-size:12px}.assistant-card{padding:18px;margin-top:19px}.dashboard-three-columns{grid-template-columns:1fr;gap:13px}.dashboard-column-card{min-height:0;padding:18px}.dashboard-column-card .task-item,.dashboard-column-card .obligation-name,.dashboard-column-card .event-name{font-size:12px}.dashboard-support-grid{grid-template-columns:1fr;gap:12px;margin-top:14px}.today-agenda-card,.dashboard-summary-card{padding:17px}.dashboard-stat{min-height:78px;padding:10px}.dashboard-stat strong{font-size:22px}.dashboard-stat span{font-size:9px}.dashboard-quick-actions{padding:16px;margin-top:13px}.quick-action-list{display:grid;grid-template-columns:1fr 1fr;width:100%}.quick-action-list button{min-height:46px;padding:0 9px;font-size:10px}.calendar-page-heading{align-items:flex-start;gap:12px}.calendar-page-heading h1{font-size:29px}.calendar-page-heading .button-primary{min-height:43px;padding-inline:12px;font-size:11px}.calendar-board{padding:13px 9px;margin-inline:-5px}.calendar-toolbar{gap:11px}.calendar-period h2{min-width:125px;font-size:13px}.calendar-view-switch{align-self:stretch;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%}.calendar-view-switch button{min-height:39px;padding:6px 3px;font-size:10px}.calendar-weekdays span{padding:9px 1px;font-size:9px}.calendar-day{min-height:96px;padding:6px 2px}.month-grid .calendar-day{min-height:89px}.calendar-day-label{font-size:10px}.calendar-day.is-today .calendar-day-label>span{width:25px;height:25px}.calendar-entry{min-height:23px;padding:4px 3px;font-size:8px}.calendar-entry-title{width:100%}.calendar-entry small{display:none}.week-grid{min-width:630px}.calendar-board:has(.week-grid){overflow-x:auto}.week-grid .calendar-day{min-height:210px;padding:6px 4px}.week-grid .calendar-day-label{flex-direction:column;gap:4px}.week-grid .calendar-event{min-height:calc(25px + 4px * var(--event-duration,1))}.day-grid .calendar-day{min-height:350px}.day-grid .calendar-day-label{justify-content:flex-start;font-size:14px}.day-grid .calendar-entry{max-width:none;min-height:46px;padding:11px;font-size:12px}.calendar-legend{gap:9px 12px;font-size:9px}.agenda-row{grid-template-columns:minmax(92px,.45fr) minmax(0,1fr) 13px;gap:8px;padding:12px 10px}.agenda-row .agenda-category-chip{display:none}.agenda-row-title{font-size:11px}.agenda-row time{font-size:9px}.agenda-row time small{font-size:9px}.mobile-nav{background:#fffF;border-top-color:#d9e4ef;box-shadow:0 -7px 22px #22395314;backdrop-filter:blur(16px)}.mobile-nav .nav-item{min-height:58px;font-size:9px;color:#647994}.mobile-nav .nav-item.active{background:#edf5ff;color:#176bc8}.mobile-nav .nav-icon svg{width:19px;height:19px}.review-confirm-dialog>div{display:grid;grid-template-columns:1fr}.review-confirm-dialog button{width:100%}}
@media(max-width:390px){.page-content{padding-inline:12px}.greeting-row h1{font-size:25px}.date-chip{font-size:9px}.daily-review-callout{padding:16px}.daily-review-counts span{font-size:9px}.dashboard-stat-grid{gap:6px}.dashboard-stat{padding:8px}.dashboard-stat strong{font-size:20px}.dashboard-stat span{font-size:8px}.quick-action-list{gap:6px}.quick-action-list button{font-size:9px}.calendar-page-heading .button-primary{font-size:10px;padding-inline:9px}.calendar-board{padding-inline:6px}.month-grid .calendar-day{min-height:79px}.calendar-entry{font-size:7px}.agenda-row{grid-template-columns:83px minmax(0,1fr) 12px}.calendar-period h2{min-width:105px}}

/* Calendar month/year picker: compact, touch-friendly and consistent with the glass theme. */
.calendar-period{position:relative}
.calendar-period-title{min-height:42px;min-width:180px;padding:6px 11px;border:1px solid #ffffff8c;border-radius:11px;background:rgba(255,248,237,.78);color:#19334f;font-family:inherit;font-size:16px;font-weight:750;line-height:1.2;text-align:center;text-transform:capitalize;cursor:pointer;box-shadow:0 3px 12px #132b3c1a;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.calendar-period-title:hover,.calendar-period-title:focus-visible{background:rgba(255,255,255,.94);outline:2px solid #288b60;outline-offset:2px}
.calendar-period-title span{margin-left:5px;color:#16724d;font-size:.8em}
.calendar-period-picker{position:absolute;z-index:30;top:calc(100% + 8px);left:50%;display:grid;width:min(340px,calc(100vw - 32px));grid-template-columns:1fr 1fr;gap:11px;padding:15px;border:1px solid #ffffffb8;border-radius:16px;background:rgba(247,250,250,.94);box-shadow:0 16px 44px #102b3b38;transform:translateX(-50%);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.calendar-period-picker label{display:grid;gap:6px;color:#29445e;font-size:12px;font-weight:750}
.calendar-period-picker select{width:100%;min-height:46px;padding:0 10px;border:1px solid #c6d7e3;border-radius:10px;background:#fff;color:#17334d;font-family:inherit;font-size:14px;font-weight:700}
.calendar-period-picker-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px;padding-top:3px}
.calendar-period-picker-actions button{min-height:44px;padding-inline:13px;font-size:12px}
@media(max-width:760px){.calendar-period{gap:5px}.calendar-period-title{min-width:0;max-width:min(48vw,220px);min-height:44px;padding-inline:7px;font-size:13px}.calendar-period-picker{top:calc(100% + 7px);width:min(340px,calc(100vw - 28px));padding:13px}.calendar-period-picker label{font-size:12px}.calendar-period-picker select{min-height:48px;font-size:14px}.calendar-period-picker-actions button{min-height:46px}}

/* LIFE OS Bali glass theme: local WebP landscapes, translucent usable surfaces */
body{background-color:#102c3b;background-size:cover;background-position:center top;background-attachment:fixed;color:#17283a}
body[data-page="dashboard"],body[data-page="daily-review"],body[data-page="assistant"]{background-image:linear-gradient(120deg,rgba(8,24,40,.48),rgba(15,40,52,.18) 52%,rgba(23,37,49,.34)),url("assets/landscapes/dashboard-sunset.webp")}
body[data-page="calendar"],body[data-page="categories"]{background-image:linear-gradient(115deg,rgba(8,32,39,.42),rgba(22,49,50,.22) 55%,rgba(15,35,47,.35)),url("assets/landscapes/calendar-rice-terraces.webp")}
body[data-page="tasks"]{background-image:linear-gradient(120deg,rgba(10,39,67,.44),rgba(20,61,82,.20) 55%,rgba(13,39,63,.35)),url("assets/landscapes/tasks-beach.webp")}
body[data-page="obligations"]{background-image:linear-gradient(120deg,rgba(28,32,30,.5),rgba(38,46,34,.22) 55%,rgba(31,31,29,.43)),url("assets/landscapes/obligations-jungle.webp")}
body[data-page="events"]{background-image:linear-gradient(120deg,rgba(39,26,54,.42),rgba(46,41,59,.16) 55%,rgba(17,39,52,.37)),url("assets/landscapes/events-coast.webp")}
.app-shell,.main-area{background:transparent}
.sidebar{background:linear-gradient(180deg,rgba(7,20,32,.86),rgba(11,27,34,.72));border-right:1px solid rgba(220,244,255,.18);box-shadow:10px 0 38px rgba(3,15,25,.26);backdrop-filter:blur(20px) saturate(145%);-webkit-backdrop-filter:blur(20px) saturate(145%)}
.brand{color:#f6fbff}.brand-light{color:#bdd0dc}.brand-mark{background:linear-gradient(145deg,#16c98a,#087c55);box-shadow:0 4px 16px rgba(14,209,141,.32)}.nav-label{color:#9eb4c0}.nav-item{color:#d8e4ea}.nav-item:hover{background:rgba(239,249,255,.1);color:#fff}.nav-item.active{background:linear-gradient(100deg,#08a55d,#13b96e);color:#fff;box-shadow:0 5px 16px rgba(5,147,79,.33)}.sidebar-bottom{border-color:rgba(220,244,255,.16);color:#c5d7e0}.sidebar-version{color:#9db2bd}
.topbar{background:rgba(11,27,39,.42);border-color:rgba(232,247,255,.18);backdrop-filter:blur(18px) saturate(145%);-webkit-backdrop-filter:blur(18px) saturate(145%)}.breadcrumbs{color:#d6e3e9}.crumb-divider{color:#aac0cb}.breadcrumbs strong,.profile-button{color:#fff}.profile-avatar{background:rgba(245,251,255,.2);color:#fff}.profile-button svg{stroke:#e3f1f7}
.page-content{max-width:1280px}.eyebrow,.section-kicker{color:#e3eff2;text-shadow:0 1px 8px rgba(3,22,32,.45)}.greeting-row h1,.calendar-page-heading h1,.tasks-page-heading h1,.obligations-page-heading h1,.daily-review-page-heading h1{color:#fff;text-shadow:0 2px 13px rgba(4,20,29,.55)}.greeting-row h1 span{color:#ffe79a}.date-chip{color:#fff;text-shadow:0 1px 8px rgba(3,22,32,.5)}
.page-content .card,.calendar-page .card,.events-page .card,.daily-review-page .card{border:1px solid rgba(255,255,255,.66);background:rgba(247,251,255,.78);box-shadow:0 12px 32px rgba(7,24,38,.19),inset 0 1px rgba(255,255,255,.54);backdrop-filter:blur(15px) saturate(145%);-webkit-backdrop-filter:blur(15px) saturate(145%)}
.dashboard-column-card{border-top-width:3px}.dashboard-column-card:nth-child(1){background:rgba(204,231,255,.83)}.dashboard-column-card:nth-child(2){background:rgba(255,220,218,.84)}.dashboard-column-card:nth-child(3){background:rgba(255,231,185,.84)}
.dashboard-column-card .card-title,.today-agenda-card h2,.dashboard-summary-card h2,.dashboard-quick-actions h2{color:#193453}.task-heading-icon{background:rgba(30,126,243,.16)!important;color:#086ad3!important}.obligation-heading-icon{background:rgba(226,51,59,.15)!important;color:#c32931!important}.dashboard-column-card:nth-child(3) .heading-icon{background:rgba(245,158,11,.2);color:#b86a00}.count-pill{background:rgba(37,129,225,.16);color:#0758aa}.dashboard-column-card:nth-child(2) .count-pill{background:rgba(225,52,58,.15);color:#a51f29}.dashboard-column-card:nth-child(3) .count-pill{background:rgba(245,158,11,.21);color:#985200}
.daily-review-callout,.daily-review-callout.has-pending{border:1px solid rgba(186,255,216,.82);background:linear-gradient(112deg,rgba(0,118,54,.95),rgba(0,151,67,.93) 58%,rgba(10,117,57,.95));box-shadow:0 14px 32px rgba(0,60,33,.35),inset 0 1px rgba(255,255,255,.45);backdrop-filter:blur(14px) saturate(145%);-webkit-backdrop-filter:blur(14px) saturate(145%)}.daily-review-callout-copy strong{font-size:21px}.daily-review-counts span{border-color:rgba(255,255,255,.36);background:rgba(255,255,255,.14);font-size:10px}.daily-review-open-button{background:rgba(250,255,251,.96);color:#075b32;box-shadow:0 5px 14px rgba(0,42,22,.2)}.daily-review-callout.is-clear{border-color:rgba(215,255,228,.8);background:linear-gradient(110deg,rgba(31,130,74,.9),rgba(33,159,90,.88));color:#fff}.daily-review-callout.is-clear .daily-review-callout-copy strong,.daily-review-callout.is-clear .daily-review-callout-copy p{color:#fff}.daily-review-callout.is-clear .daily-review-counts span{border-color:#ffffff50;background:#ffffff22;color:#fff}.daily-review-callout.is-clear .daily-review-mark{background:#ffffff23;color:#fff}
.assistant-card{border:1px solid rgba(255,255,255,.3);background:linear-gradient(115deg,rgba(20,44,94,.92),rgba(50,65,144,.88),rgba(85,45,128,.9));box-shadow:0 13px 30px rgba(12,18,53,.27);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.dashboard-support-grid .card,.dashboard-quick-actions{background:rgba(245,250,255,.78);border-color:rgba(255,255,255,.68);backdrop-filter:blur(15px) saturate(145%);-webkit-backdrop-filter:blur(15px) saturate(145%)}.today-agenda-row{border-color:rgba(255,255,255,.76);box-shadow:0 3px 12px rgba(24,40,63,.1)}.today-agenda-row.agenda-event{background:var(--category-tint);color:var(--category-ink)}.today-agenda-row.agenda-obligation{background:rgba(255,224,220,.92);color:#a5282e}.dashboard-stat{background:rgba(222,239,255,.8)}.dashboard-stat.obligation-stat{background:rgba(255,225,223,.84)}.dashboard-stat.event-stat{background:rgba(255,235,194,.84)}.quick-action-list button{background:rgba(255,255,255,.78);backdrop-filter:blur(7px)}
.button-primary{border-color:#07874e;background:linear-gradient(130deg,#12b96e,#07884e);box-shadow:0 5px 16px rgba(0,102,55,.3)}.button-primary:hover{background:linear-gradient(130deg,#08a65e,#067344)}.button-secondary,.button-quiet{border-color:rgba(255,255,255,.75);background:rgba(255,255,255,.78);color:#264662;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.button-secondary:hover,.button-quiet:hover{background:rgba(255,255,255,.94)}
.calendar-board{background:rgba(244,250,255,.73)!important;border-color:rgba(255,255,255,.72)!important;backdrop-filter:blur(18px) saturate(150%)!important;-webkit-backdrop-filter:blur(18px) saturate(150%)!important}.calendar-weekdays{background:rgba(223,237,248,.8);border-color:rgba(255,255,255,.8)}.calendar-weekdays span{color:#244767}.calendar-day{background:rgba(249,252,255,.62);border-color:rgba(255,255,255,.72)}.calendar-day.outside-month{background:rgba(219,233,244,.54)}.calendar-day.is-today{background:rgba(210,248,223,.76)}.calendar-day.is-selected{box-shadow:inset 0 0 0 2px #2282e7}.calendar-day-label{color:#183a5d;text-shadow:0 1px 2px #fff}.calendar-entry{box-shadow:0 3px 8px rgba(14,32,48,.14)}.calendar-event{background:var(--category-tint)!important;color:var(--category-ink)!important;border:1px solid rgba(255,255,255,.74)!important;border-left:4px solid var(--category-color)!important}.calendar-obligation,.calendar-obligation.is-completed{background:rgba(255,220,217,.96)!important;color:#a2212c!important;border:1px solid rgba(255,255,255,.72)!important;border-left:4px solid #e2323d!important}.calendar-legend{color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.6)}.calendar-legend small{color:#e0edf2}.calendar-entry-title{font-weight:750}
.calendar-detail-card,.task-form,.obligation-form,.calendar-form,.category-settings,.managed-task,.obligation-item,.daily-review-item,.events-page-item,.task-list-empty,.document-viewer,.payment-modal{background:rgba(248,252,255,.84)!important;border-color:rgba(255,255,255,.76)!important;box-shadow:0 14px 35px rgba(5,22,37,.21),inset 0 1px rgba(255,255,255,.72)!important;backdrop-filter:blur(17px) saturate(145%);-webkit-backdrop-filter:blur(17px) saturate(145%)}
.task-item,.obligation-row-open,.event-item{border-color:rgba(52,89,122,.14)}.managed-task{border-left:4px solid #2784ec}.managed-task-main h3{color:#104f91}.managed-task-description{color:#355d7b}.task-category{background:rgba(31,127,226,.14);color:#145c9f}.task-check:checked,.managed-task-check input:checked+.custom-check{background:#1879e3;border-color:#1879e3}.obligation-item{border-left:4px solid #df363e}.obligation-item.is-overdue{border-color:rgba(226,56,63,.35)}.obligation-main h3,.calendar-obligation-detail-card h2{color:#a3262d}.obligation-description{color:#77464b}.obligation-meta .task-category{background:rgba(224,54,61,.12);color:#a42b32}.event-item{background:rgba(255,255,255,.35)}.events-page-item{border-left:4px solid var(--category-color,#7057cc)}.events-page-main strong{color:#233b60}.dashboard-category-label,.calendar-category-chip{background:var(--category-tint);color:var(--category-ink);border:1px solid rgba(255,255,255,.68)}
.form-field input,.form-field textarea,.form-field select,.assistant-input-wrap{background:rgba(255,255,255,.89);border-color:rgba(89,126,159,.25);color:#173755}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:#3389e5;box-shadow:0 0 0 3px rgba(51,137,229,.2)}.form-field{color:#35536d}.task-view-tab,.obligation-view-tab{color:#dcebf2;text-shadow:0 1px 6px rgba(0,0,0,.45)}.task-view-tab.selected,.obligation-view-tab.selected{color:#fff}.task-view-tabs,.obligation-view-tabs{border-color:rgba(255,255,255,.45)}
.calendar-discard-backdrop,.review-confirm-backdrop{background:rgba(4,18,31,.62);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.calendar-discard-dialog,.review-confirm-dialog{border:1px solid rgba(255,255,255,.76);background:rgba(246,251,255,.91);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);box-shadow:0 26px 80px rgba(0,10,21,.42)}.calendar-discard-dialog h2,.review-confirm-dialog h2{color:#163653}.calendar-discard-dialog>div,.review-confirm-dialog>div{gap:9px}.calendar-discard-dialog button,.review-confirm-dialog button{min-height:43px;padding:0 13px;font-size:11px}
.document-modal-backdrop{background:linear-gradient(rgba(16,23,25,.3),rgba(11,23,32,.5)),url("assets/landscapes/obligations-jungle.webp") center/cover}.document-viewer{background:rgba(241,248,250,.9)!important;backdrop-filter:blur(22px) saturate(130%);-webkit-backdrop-filter:blur(22px) saturate(130%)}.document-preview{background:rgba(25,43,50,.12)}.document-preview-image{background:rgba(227,239,239,.72)}.document-preview-pdf{background:rgba(255,255,255,.94)}.payment-modal{background:rgba(250,253,255,.93)!important}
.toast{background:linear-gradient(120deg,#075e3a,#0b8a52);box-shadow:0 9px 25px rgba(0,30,18,.34)}
@media(max-width:760px){body{background-attachment:scroll;background-position:center top;background-size:auto 100vh}.page-content{padding-top:23px}.topbar{background:rgba(9,25,38,.55);border-color:rgba(255,255,255,.2)}.mobile-nav{background:rgba(8,23,34,.84);border-top-color:rgba(230,246,255,.22);backdrop-filter:blur(20px) saturate(145%);-webkit-backdrop-filter:blur(20px) saturate(145%)}.mobile-nav .nav-item{color:#d7e7ec}.mobile-nav .nav-item.active{background:rgba(17,178,102,.94);color:#fff}.greeting-row h1{color:#fff}.calendar-page-heading .button-primary{box-shadow:0 5px 15px rgba(0,70,37,.35)}.calendar-board{background:rgba(241,249,255,.8)!important}.calendar-day{background:rgba(250,253,255,.76)}.calendar-day.outside-month{background:rgba(226,238,246,.7)}.calendar-day.is-today{background:rgba(210,248,223,.9)}.calendar-legend{color:#fff}.calendar-detail-card,.task-form,.obligation-form,.calendar-form,.category-settings,.managed-task,.obligation-item,.daily-review-item,.events-page-item,.task-list-empty{background:rgba(249,252,255,.9)!important}.calendar-discard-dialog>div,.review-confirm-dialog>div{display:grid;grid-template-columns:1fr}.calendar-discard-dialog button,.review-confirm-dialog button{width:100%;min-height:47px}.today-agenda-row{grid-template-columns:68px minmax(0,1fr);gap:8px}.today-agenda-row small{grid-column:2}.dashboard-quick-actions{background:rgba(245,250,255,.88)}}
@media(prefers-reduced-transparency:reduce){.sidebar,.topbar,.page-content .card,.calendar-page .card,.events-page .card,.daily-review-page .card,.calendar-discard-dialog,.review-confirm-dialog{backdrop-filter:none;-webkit-backdrop-filter:none;background-color:rgba(248,252,255,.95)}}
.calendar-discard-dialog .discard-confirm{background:rgba(255,255,255,.9);color:#244563;border:1px solid rgba(99,132,163,.24)}

/* Renovación tropical: contraste alto, tipografía más cómoda y controles de categorías compartidas. */
:root{--task-blue:#1678e8;--obligation-red:#e43d4d;--event-orange:#f59b08}
body{font-size:15px}
.page-content{width:min(1360px,100%)}
.greeting-row h1,.calendar-page-heading h1,.tasks-page-heading h1,.obligations-page-heading h1,.daily-review-page-heading h1{font-weight:750;letter-spacing:-.035em}
.eyebrow,.section-kicker{font-size:12px;font-weight:800;letter-spacing:.11em}
.card-title,.dashboard-support-grid h2,.dashboard-quick-actions h2,.today-agenda-card h2,.dashboard-summary-card h2{font-weight:750}
.page-content .card,.calendar-page .card,.events-page .card,.daily-review-page .card{box-shadow:0 14px 36px rgba(4,21,35,.22),inset 0 1px rgba(255,255,255,.78);backdrop-filter:blur(18px) saturate(175%);-webkit-backdrop-filter:blur(18px) saturate(175%)}
.dashboard-column-card{border-top-width:5px}.dashboard-column-card:nth-child(1){border-top-color:#1980f2;background:rgba(195,226,255,.9)}.dashboard-column-card:nth-child(2){border-top-color:#ed4751;background:rgba(255,207,207,.9)}.dashboard-column-card:nth-child(3){border-top-color:#f5a10b;background:rgba(255,223,160,.91)}
.dashboard-column-card .card-title{font-size:19px}.dashboard-column-card .task-item,.dashboard-column-card .obligation-name,.dashboard-column-card .event-name{font-size:15px;font-weight:700}.dashboard-column-card .task-time,.dashboard-column-card .event-meta,.dashboard-column-card .obligation-category{font-size:13px;font-weight:650}.dashboard-column-card .count-pill{font-size:12px;font-weight:800}
.daily-review-callout,.daily-review-callout.has-pending{min-height:146px;padding:22px 27px;border:2px solid rgba(209,255,223,.9);border-radius:23px;background:linear-gradient(110deg,#007632 0%,#009b43 52%,#007b38 100%);box-shadow:0 18px 42px rgba(0,53,27,.4),inset 0 1px rgba(255,255,255,.52)}
.daily-review-callout-copy{gap:18px}.daily-review-mark{width:66px;height:66px;flex-basis:66px;border-radius:20px;background:rgba(255,255,255,.18);font-size:33px;box-shadow:inset 0 1px 8px #fff3}.daily-review-callout-copy strong{font-size:27px;font-weight:800}.daily-review-callout-copy p{font-size:15px;font-weight:650;color:#f2fff5}.daily-review-counts{gap:9px;margin-top:13px}.daily-review-counts span{min-width:105px;padding:9px 13px;border:1px solid #ffffff80;border-radius:13px;background:rgba(255,255,255,.16);color:#fff;font-size:14px;font-weight:800;text-align:center}.daily-review-counts .review-count-tasks{background:#147ff0;border-color:#90c8ff}.daily-review-counts .review-count-obligations{background:#e83e4b;border-color:#ffb8b9}.daily-review-counts .review-count-events{background:#f69a08;border-color:#ffe09c}.daily-review-open-button{min-height:53px;padding:0 24px;border:0;border-radius:28px;background:#fff;color:#075d32;font-size:16px;font-weight:800;box-shadow:0 6px 18px #00412350}
.daily-review-callout.is-clear{border-color:#99e3b5;background:linear-gradient(110deg,#078840,#14a957);color:#fff}.daily-review-callout.is-clear .daily-review-counts span{color:#fff}
.assistant-card{font-size:15px}.assistant-label{font-size:20px;font-weight:750}.assistant-caption,.assistant-note{font-size:13px}
.calendar-page-heading h1,.tasks-page-heading h1,.obligations-page-heading h1,.daily-review-page-heading h1{font-size:clamp(32px,3.4vw,42px)}
.calendar-toolbar h2,.calendar-period h2{font-size:18px;font-weight:750}.calendar-weekdays span{font-size:13px;font-weight:800}.calendar-day-label{font-size:14px;font-weight:800}.calendar-entry{min-height:28px;padding:6px 8px;font-size:12px;font-weight:750}.calendar-entry-title{font-weight:800}.calendar-entry small{font-size:11px;font-weight:750}.calendar-event{background:var(--category-color)!important;color:#fff!important;border:1px solid #ffffffb8!important;border-left:5px solid color-mix(in srgb,var(--category-color) 65%,#12263a)!important;text-shadow:0 1px 2px #16233c55}.calendar-event small{color:#fff}.calendar-obligation,.calendar-obligation.is-completed{background:#e83d4c!important;color:#fff!important;border-left:5px solid #a71f2d!important}.calendar-obligation small{color:#fff}.calendar-category-chip,.dashboard-category-label,.calendar-category-preview{font-size:12px;font-weight:800}
.calendar-legend{font-size:13px;font-weight:750}.calendar-category-legend .legend-dot{width:11px;height:11px;flex-basis:11px;border:1px solid #fff;box-shadow:0 1px 5px #0e253855}
.task-item,.managed-task-main h3,.obligation-main h3,.event-name,.events-page-main strong{font-size:16px;font-weight:750}.task-time,.task-meta,.obligation-meta,.events-page-date,.events-page-date small{font-size:13px;font-weight:650}.task-category,.priority-badge,.recurrence-badge,.obligation-amount,.obligation-due{font-size:12px;font-weight:750}.managed-task{border-left:5px solid var(--task-blue)}.obligation-item{border-left:5px solid var(--obligation-red)}.task-check,.custom-check{accent-color:var(--task-blue)}
.form-field,.form-field>span:first-child,.task-form-heading h2,.obligation-form-heading h2,.category-settings-heading h2,.calendar-form-heading h2{font-size:14px;font-weight:750}.form-field input,.form-field textarea,.form-field select{min-height:46px;font-size:15px;font-weight:600;color:#163651}.form-field textarea{min-height:100px}.button-primary,.button-secondary,.button-quiet,.button-paid,.text-link{font-size:14px;font-weight:750}.button-primary{min-height:46px}.icon-button{width:38px;height:38px;font-size:22px}
.calendar-detail-card h2,.calendar-obligation-detail-card h2,.daily-review-item h3{font-size:24px;font-weight:800}.calendar-detail-description,.obligation-description,.managed-task-description,.daily-review-description{font-size:15px;line-height:1.65;color:#294760}.calendar-detail-fields dt,.calendar-detail-fields dd,.calendar-detail-documents h3,.event-review-history h3{font-size:14px;font-weight:750}.daily-review-item-heading p,.review-document-summary,.event-review-history li{font-size:13px}.daily-review-actions button,.review-date-form button,.review-confirm-dialog button,.calendar-discard-dialog button{min-height:44px;font-size:13px;font-weight:750}
.category-settings{padding:26px}.category-settings-heading h2{font-size:26px}.category-settings-heading p{max-width:740px;color:#294760;font-size:14px;line-height:1.5;font-weight:600}.category-settings-list{gap:10px}.category-settings-row{grid-template-columns:20px minmax(170px,1fr) minmax(140px,180px) auto 40px;align-items:center;gap:13px;padding:12px 0;border-top-color:#a9c7dd80}.category-swatch{width:18px;height:18px;border:2px solid #fff;border-radius:50%;background:var(--category-swatch);box-shadow:0 0 0 1px #173a5650}.category-settings-row label,.category-settings-add label{color:#1c3f5a;font-size:13px;font-weight:750}.category-settings-row input[type=text],.category-settings-add input[type=text]{min-height:43px;font-size:14px;font-weight:650;color:#163651}.category-settings input[type=color]{width:44px;height:40px}.category-color-control code{font-size:12px;font-weight:750;color:#294760}.category-settings-row .button-secondary{height:42px;font-size:13px}.category-delete-button{color:#cf2e3d}.category-settings-add{grid-template-columns:minmax(180px,1fr) auto auto;gap:12px;padding-top:18px}.category-settings-add .button-primary{min-height:43px;font-size:13px}.category-confirm-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:20px;background:#071a2ccc;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.category-confirm-dialog{width:min(500px,100%);padding:26px;border:1px solid #ffffffc9;border-radius:20px;background:rgba(247,252,255,.96);box-shadow:0 26px 80px #00172966}.category-confirm-dialog h2{margin:0;color:#123955;font-size:22px;font-weight:800}.category-confirm-dialog p{color:#294760;font-size:15px;line-height:1.6;font-weight:600}.category-confirm-dialog .form-field select{width:100%}.category-confirm-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.button-danger{min-height:46px;padding:0 15px;border:0;border-radius:10px;background:#df3546;color:#fff;font:750 14px inherit;cursor:pointer}.button-danger:disabled{opacity:.5;cursor:not-allowed}
.nav-item[data-page="categories"].active{background:linear-gradient(100deg,#08a55d,#13b96e);color:#fff}.mobile-nav{grid-template-columns:repeat(5,minmax(0,1fr))}.mobile-nav .nav-item{font-size:11px;font-weight:750}
@media(max-width:760px){
  .page-content{padding:24px 15px 34px}.greeting-row h1{font-size:31px}.eyebrow,.section-kicker{font-size:11px}.daily-review-callout{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;padding:17px;border-radius:19px}.daily-review-callout-copy{align-items:flex-start;gap:12px}.daily-review-mark{width:49px;height:49px;flex-basis:49px;border-radius:15px;font-size:26px}.daily-review-callout-copy strong{font-size:22px}.daily-review-callout-copy p{font-size:14px}.daily-review-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.daily-review-counts span{min-width:0;padding:8px 4px;font-size:12px}.daily-review-open-button{width:100%;min-height:50px;font-size:15px}.dashboard-three-columns{grid-template-columns:1fr;gap:13px}.dashboard-column-card{min-height:0;padding:18px}.dashboard-column-card .card-title{font-size:20px}.dashboard-column-card .task-item,.dashboard-column-card .obligation-name,.dashboard-column-card .event-name{font-size:15px}.dashboard-support-grid h2,.dashboard-quick-actions h2{font-size:19px}.calendar-board{padding:12px 7px}.month-grid .calendar-day{min-height:91px}.calendar-day-label{font-size:12px}.calendar-entry{min-height:24px;padding:4px 3px;font-size:9px}.calendar-entry small{font-size:9px}.week-grid{min-width:650px}.calendar-board:has(.week-grid){overflow-x:auto}.day-grid .calendar-entry{font-size:14px}.calendar-legend{font-size:12px}.calendar-detail-card h2,.calendar-obligation-detail-card h2{font-size:22px}.form-field,.form-field>span:first-child{font-size:14px}.form-field input,.form-field textarea,.form-field select{min-height:48px;font-size:16px}.button-primary,.button-secondary,.button-quiet,.button-paid{min-height:46px;font-size:14px}.daily-review-item h3{font-size:20px}.daily-review-actions button{min-height:45px;font-size:13px}.category-settings{padding:19px 15px}.category-settings-heading h2{font-size:23px}.category-settings-heading p{font-size:14px}.category-settings-row{grid-template-columns:18px minmax(0,1fr) 40px;gap:8px}.category-settings-row>label:first-of-type{grid-column:2}.category-settings-row .category-color-field{grid-column:2;grid-row:2}.category-settings-row .button-secondary{grid-column:2;grid-row:3}.category-settings-row .category-delete-button{grid-column:3;grid-row:1}.category-settings-row .category-swatch{grid-column:1;grid-row:1}.category-settings-row input[type=text]{font-size:16px}.category-settings-add{grid-template-columns:minmax(0,1fr) 48px;gap:10px}.category-settings-add>label:first-child{grid-column:1/-1}.category-settings-add .category-color-field{grid-column:1;grid-row:2}.category-settings-add .button-primary{grid-column:2;grid-row:2;padding-inline:9px}.category-confirm-dialog{padding:22px 17px}.category-confirm-dialog h2{font-size:20px}.category-confirm-actions{display:grid;grid-template-columns:1fr}.category-confirm-actions button{width:100%;min-height:48px}.mobile-nav .nav-item{font-size:10px}.mobile-nav .nav-icon svg{width:19px;height:19px}
}
@media(max-width:380px){.mobile-nav{padding-inline:3px}.mobile-nav .nav-item{font-size:9px}.daily-review-counts span{font-size:10px}.month-grid .calendar-day{min-height:82px}.calendar-entry{font-size:8px}.page-content{padding-inline:12px}}

/* Documentos y tipografía ampliada para los controles secundarios. */
body[data-page="documents"]{background-image:linear-gradient(115deg,rgba(8,25,39,.45),rgba(31,49,52,.2) 55%,rgba(18,35,44,.38)),url("assets/landscapes/obligations-jungle.webp")}
.review-editor-form .form-field,.review-date-form label,.review-all-day{font-size:13px;font-weight:750}.review-editor-form .form-field input,.review-editor-form .form-field textarea,.review-editor-form .form-field select,.review-date-form input{min-height:43px;font-size:15px;font-weight:600}.review-editor-heading h4{font-size:16px;font-weight:800}.review-unsaved-state,.review-editor-actions button,.review-date-form button,.review-delete-button{font-size:12px;font-weight:750}.review-confirm-dialog p,.calendar-discard-dialog p{font-size:14px;line-height:1.6;font-weight:600}.review-confirm-dialog button,.calendar-discard-dialog button{font-size:13px;font-weight:750}
.document-viewer-header h2,.payment-modal h2{font-size:22px;font-weight:800}.payment-modal-name,.payment-modal-copy,.payment-receipt-state,.document-picker-title,.document-picker-option,.document-picker-cancel{font-size:14px;font-weight:650;line-height:1.5}.document-version-open strong{font-size:14px;font-weight:800}.document-version-open span,.document-version-open small,.document-version-delete,.document-preview-toolbar,.document-preview-empty,.document-download{font-size:13px;font-weight:650}.document-version-open small{line-height:1.45}.document-viewer{color:#163651}.document-modal-backdrop{z-index:70}
.documents-page{max-width:1120px;margin:0 auto}.documents-page h1{color:#fff;font-size:clamp(32px,3.4vw,42px);font-weight:800;text-shadow:0 2px 13px #04141f88}.document-library-upload{display:grid;grid-template-columns:minmax(180px,1fr) minmax(150px,.55fr) minmax(190px,.85fr) auto;align-items:end;gap:15px;padding:22px;margin-bottom:17px;border-top:5px solid #397db5}.document-library-upload h2{margin:0;color:#173b59;font-size:21px;font-weight:800}.document-library-upload p:not(.section-kicker){margin:5px 0 0;color:#36546e;font-size:14px;font-weight:600}.document-library-upload .section-kicker{margin:0 0 6px;color:#3776a8}.document-library-upload .form-field{gap:7px}.document-library-upload input[type=file]{min-height:45px;padding:8px;font-size:13px}.document-library-tools{display:grid;grid-template-columns:minmax(0,1fr) 210px auto;align-items:center;gap:12px;margin:0 0 13px}.document-library-search input,.document-library-filter select{width:100%;min-height:46px;padding:0 13px;border:1px solid #ffffffb8;border-radius:12px;background:rgba(248,252,255,.91);color:#173b59;font:650 14px inherit;box-shadow:0 5px 16px #08243c25}.document-library-count{color:#fff;text-align:right;font-size:14px;font-weight:800;text-shadow:0 1px 5px #10283d88}.document-library-list{display:grid;gap:11px}.document-library-item{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:15px;padding:17px;border-left:5px solid #387fb8}.document-type-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:#e0effc;color:#176bb4;font-size:18px;font-weight:900}.document-type-icon.is-invoice{background:#ffe4df;color:#be3c40}.document-type-icon.is-receipt{background:#ffefcf;color:#a76500}.document-library-main{min-width:0}.document-library-main h2{margin:0;color:#163b59;font-size:17px;font-weight:800;overflow-wrap:anywhere}.document-library-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:6px;color:#3e5c73;font-size:12px;font-weight:700}.document-library-category{display:inline-flex;padding:4px 9px;border-radius:18px;background:#dfedf8;color:#145d92;font-size:12px;font-weight:800}.document-owner{margin:6px 0 0;color:#36546e;font-size:13px;font-weight:600;line-height:1.45}.document-owner strong{color:#163b59;font-weight:800}.document-library-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:6px}.document-library-actions button{min-height:40px;padding:0 10px;font-size:12px}.document-library-delete{min-height:40px;padding:0 10px;border:1px solid #e4acb0;border-radius:9px;background:#fff3f3;color:#a92735;font:750 12px inherit;cursor:pointer}.documents-empty,.documents-loading{padding:32px;text-align:center;color:#204765;font-size:15px;font-weight:650}.documents-empty h2{margin:0;color:#173b59;font-size:21px;font-weight:800}.documents-empty p{font-size:14px;line-height:1.6}.document-library-error{color:#982c32;font-size:14px;font-weight:750}.library-document-viewer{width:min(1100px,96vw);height:min(88vh,850px)}.library-preview{display:flex;flex-direction:column;min-height:0}.library-preview .document-preview-toolbar{flex:0 0 auto}.library-preview .document-preview-image,.library-preview .document-preview-pdf{flex:1;min-height:0}.library-preview .document-preview-image img{max-height:calc(82vh - 130px)}.document-library-upload .button-primary{white-space:nowrap}
.mobile-nav{grid-template-columns:repeat(6,minmax(0,1fr))}.mobile-nav .nav-item[data-page="documents"].active,.mobile-nav .nav-item[data-page="categories"].active{background:rgba(17,178,102,.94);color:#fff}
@media(max-width:760px){
  .documents-page .calendar-page-heading{margin-bottom:17px}.document-library-upload{grid-template-columns:1fr 1fr;gap:12px;padding:17px}.document-library-upload>div{grid-column:1/-1}.document-library-upload .document-library-file{grid-column:1/-1}.document-library-upload .button-primary{grid-column:1/-1;width:100%;min-height:48px}.document-library-tools{grid-template-columns:minmax(0,1fr) 118px;gap:8px}.document-library-count{grid-column:1/-1;text-align:left;font-size:13px}.document-library-search input,.document-library-filter select{min-height:46px;font-size:14px}.document-library-item{grid-template-columns:42px minmax(0,1fr);gap:11px;padding:14px}.document-type-icon{width:41px;height:41px}.document-library-main h2{font-size:16px}.document-library-meta{font-size:12px}.document-owner{font-size:13px}.document-library-actions{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch}.document-library-actions button,.document-library-delete{min-height:46px;font-size:13px}.document-viewer-header h2,.payment-modal h2{font-size:19px}.document-version-open strong{font-size:14px}.document-version-open span,.document-version-open small,.document-version-delete,.document-preview-toolbar,.document-preview-empty{font-size:12px}.review-editor-form .form-field input,.review-editor-form .form-field textarea,.review-editor-form .form-field select,.review-date-form input{font-size:16px}.mobile-nav{padding-inline:3px}.mobile-nav .nav-item{min-height:56px;font-size:9px;gap:3px}.mobile-nav .nav-icon svg{width:18px;height:18px}.month-grid .calendar-day{min-height:90px}.calendar-entry{font-size:9px;line-height:1.2}.month-grid .calendar-entry{font-size:9px}.calendar-day-label{font-size:12px}.calendar-weekdays span{font-size:10px}
}
@media(max-width:370px){.mobile-nav .nav-item{font-size:8px}.mobile-nav .nav-icon svg{width:17px;height:17px}.document-library-tools{grid-template-columns:minmax(0,1fr) 105px}.document-library-upload{padding:14px}.document-library-item{padding:12px}.document-library-actions button,.document-library-delete{padding-inline:6px;font-size:12px}.calendar-entry,.month-grid .calendar-entry{font-size:8px}}
.button-danger{font-size:14px;font-weight:750;font-family:inherit}.document-library-search input,.document-library-filter select{font-size:14px;font-weight:650;font-family:inherit}.document-library-delete{font-size:12px;font-weight:750;font-family:inherit}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.daily-review-total,.daily-review-empty p,.daily-review-group>h2{font-size:14px;font-weight:700}.daily-review-group>h2 span{font-size:12px;font-weight:800}.review-kind-label{font-size:11px;font-weight:800}.event-review-status{font-size:12px;font-weight:800}.event-review-history small{font-size:12px;font-weight:650;color:#385970}.agenda-row-title{font-size:15px;font-weight:750}.agenda-row time,.agenda-row time small{font-size:13px;font-weight:700}.today-agenda-row,.dashboard-small-link{font-size:14px;font-weight:750}.dashboard-stat span,.today-agenda-empty,.task-empty{font-size:13px;font-weight:650}.toast{font-size:14px;font-weight:700}.calendar-no-items{font-size:12px;font-weight:650}

/* Revisión diaria: composición de referencia con bloques independientes. */
.daily-review-callout,.daily-review-callout.has-pending,.daily-review-callout.is-clear{position:relative;display:grid;grid-template-columns:66px minmax(170px,1fr) 1px auto auto;align-items:center;gap:18px;min-height:146px;margin:0 0 24px;padding:20px 24px;overflow:hidden;border:2px solid rgba(213,255,226,.88);border-radius:23px;background:linear-gradient(112deg,rgba(0,111,48,.94),rgba(0,151,61,.91) 55%,rgba(0,113,51,.94));color:#fff;box-shadow:0 18px 42px rgba(0,53,27,.36),inset 0 1px rgba(255,255,255,.45);backdrop-filter:blur(15px) saturate(160%);-webkit-backdrop-filter:blur(15px) saturate(160%)}
.daily-review-callout:after{content:"";position:absolute;width:230px;height:230px;right:27%;top:-170px;border:1px solid #ffffff38;border-radius:50%;box-shadow:0 0 0 27px #ffffff0d,0 0 0 54px #ffffff0b;pointer-events:none}
.daily-review-callout .daily-review-mark{position:relative;z-index:1;width:66px;height:72px;display:grid;place-items:center;flex:0 0 66px;border:1px solid #ffffff70;border-radius:19px;background:linear-gradient(150deg,#ffffff35,#ffffff17);color:#fff;box-shadow:0 5px 16px #003c2750,inset 0 1px #ffffff65}
.daily-review-callout .daily-review-mark svg{width:49px;height:49px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.daily-review-callout-copy{position:relative;z-index:1;display:grid;gap:6px;min-width:0}
.daily-review-callout-copy strong{display:block;color:#fff;font-size:27px;font-weight:850;letter-spacing:-.035em;line-height:1.1}
.daily-review-callout-copy p{max-width:330px;margin:0;color:#f0fff4;font-size:15px;font-weight:650;line-height:1.4}
.daily-review-divider{position:relative;z-index:1;width:1px;height:60px;background:#d5ffe38c}
.daily-review-counts{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(82px,1fr));gap:8px;margin:0}
.daily-review-counts>div{min-width:82px;min-height:86px;display:grid;grid-template-rows:20px 1fr auto;justify-items:center;align-items:center;gap:2px;padding:8px 7px;border:1px solid #ffffff9c;border-radius:17px;color:#fff;text-align:center;box-shadow:0 6px 15px #00361f42,inset 0 1px #ffffff65}
.daily-review-counts .review-count-tasks{background:linear-gradient(155deg,#168dff,#0869df);border-color:#92d0ff}
.daily-review-counts .review-count-obligations{background:linear-gradient(155deg,#ff5961,#dc283c);border-color:#ffc4c6}
.daily-review-counts .review-count-events{background:linear-gradient(155deg,#ffb321,#f18300);border-color:#ffe1a1}
.review-count-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.daily-review-counts strong{font-size:25px;font-weight:850;line-height:1}
.daily-review-counts>div>span:last-child{font-size:12px;font-weight:800;line-height:1.1}
.daily-review-open-button{position:relative;z-index:1;min-width:168px;min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:0 20px;border:1px solid #fff;border-radius:28px;background:#fff;color:#075d32;font-size:15px;font-weight:850;white-space:nowrap;box-shadow:0 6px 17px #003c2c55;cursor:pointer}
.daily-review-open-button:hover{background:#edfff3;transform:translateY(-1px)}
.daily-review-callout.is-clear{border-color:#bff5d0;background:linear-gradient(112deg,rgba(0,111,48,.94),rgba(0,151,61,.91) 55%,rgba(0,113,51,.94));color:#fff}
.daily-review-callout.is-clear .daily-review-callout-copy strong,.daily-review-callout.is-clear .daily-review-callout-copy p{color:#fff}
.mobile-more-toggle{font-family:inherit;border:0;background:transparent;cursor:pointer}
.mobile-more-menu{position:absolute;right:12px;bottom:calc(100% + 10px);z-index:20;width:min(280px,calc(100vw - 24px));display:grid;gap:5px;padding:9px;border:1px solid #ffffff9c;border-radius:17px;background:rgba(8,27,41,.94);box-shadow:0 16px 45px #00111c66;backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%)}
.mobile-more-item{min-height:48px;display:flex;align-items:center;gap:12px;padding:0 13px;border-radius:11px;color:#f3faff;text-decoration:none;font-size:14px;font-weight:750}
.mobile-more-item:hover,.mobile-more-item.active{background:#11a85f;color:#fff}
@media(min-width:761px) and (max-width:1100px){.daily-review-callout,.daily-review-callout.has-pending,.daily-review-callout.is-clear{grid-template-columns:56px minmax(0,1fr);gap:12px;padding:18px}.daily-review-divider{display:none}.daily-review-counts{grid-column:1/-1;width:100%}.daily-review-counts>div{min-height:74px}.daily-review-open-button{grid-column:1/-1;width:100%}}
@media(max-width:760px){
  .daily-review-callout,.daily-review-callout.has-pending,.daily-review-callout.is-clear{grid-template-columns:52px minmax(0,1fr);gap:12px;padding:16px;border-radius:20px;min-height:0;margin-bottom:20px}
  .daily-review-callout:after{right:-120px;top:-177px}
  .daily-review-callout .daily-review-mark{width:50px;height:55px;flex-basis:50px;border-radius:15px}
  .daily-review-callout .daily-review-mark svg{width:40px;height:40px}
  .daily-review-callout-copy{gap:5px}
  .daily-review-callout-copy strong{font-size:22px}
  .daily-review-callout-copy p{font-size:14px;line-height:1.35}
  .daily-review-divider{display:none}
  .daily-review-counts{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  .daily-review-counts>div{min-width:0;min-height:79px;padding:7px 3px;border-radius:14px}
  .daily-review-counts strong{font-size:23px}
  .daily-review-counts>div>span:last-child{font-size:12px}
  .daily-review-open-button{grid-column:1/-1;width:100%;min-height:49px;font-size:15px}
  .mobile-nav{grid-template-columns:repeat(6,minmax(0,1fr));overflow:visible}
  .mobile-nav .nav-item{min-width:0;padding-inline:1px;font-size:10px;font-weight:750}
  .mobile-nav .mobile-more-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}
  .mobile-more-item{min-height:50px;font-size:15px}
  .week-grid{min-width:0;grid-template-columns:minmax(0,1fr)}
  .calendar-board:has(.week-grid){overflow:visible}
  .week-grid .calendar-day{display:grid;grid-template-columns:minmax(94px,.32fr) minmax(0,1fr);align-items:start;gap:8px;min-height:0;padding:10px 8px}
  .week-grid .calendar-day-label{justify-content:flex-start;flex-direction:row;gap:7px;margin:0;font-size:13px}
  .week-grid .calendar-day-entries{grid-column:2;grid-row:1;grid-template-columns:minmax(0,1fr)}
  .week-grid .calendar-event{min-height:39px;align-items:flex-start;flex-direction:column;justify-content:center;gap:2px;white-space:normal}
  .week-grid .calendar-entry-title{white-space:normal}
  .week-grid .calendar-day .calendar-no-items{grid-column:2;grid-row:1}
  .calendar-board{max-width:100%;overflow:hidden}
  .calendar-day{min-width:0}
  .calendar-day-label{min-height:30px;min-width:28px}
  .month-grid .calendar-entry{min-height:24px;font-size:9px;line-height:1.15}
  .month-grid .calendar-entry-title{-webkit-line-clamp:2}
  .mobile-more-menu{bottom:calc(100% + 9px)}
}
@media(max-width:380px){.mobile-nav .nav-item{font-size:9px}.mobile-nav .nav-icon svg{width:18px;height:18px}.daily-review-callout{padding:13px}.daily-review-counts{gap:5px}.daily-review-counts>div{min-height:74px}.daily-review-counts>div>span:last-child{font-size:11px}.week-grid .calendar-day{grid-template-columns:88px minmax(0,1fr);gap:6px}.month-grid .calendar-entry{font-size:8px}}

/* Ajustes de uso táctil, ventanas y formularios en pantallas estrechas. */
@media(max-width:760px){
  html,body{max-width:100%;overflow-x:hidden}
  .app-shell,.main-shell,.page-content,.calendar-page,.tasks-page,.obligations-page,.documents-page,.events-page,.categories-page{min-width:0;max-width:100%}
  .mobile-nav{grid-template-columns:repeat(6,minmax(0,1fr));padding-bottom:max(4px,env(safe-area-inset-bottom));}
  .mobile-nav .nav-item{min-height:58px;min-width:0;touch-action:manipulation}
  .mobile-nav .nav-item>span:last-child{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .calendar-discard-backdrop,.review-unsaved-backdrop,.document-modal-backdrop{padding:calc(12px + env(safe-area-inset-top)) 12px calc(12px + env(safe-area-inset-bottom));overflow-y:auto;align-items:center}
  .calendar-discard-dialog,.review-unsaved-dialog{width:min(100%,480px);max-height:calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow-y:auto}
  .calendar-discard-dialog>div,.review-unsaved-dialog>div{display:grid;grid-template-columns:1fr;gap:9px}
  .calendar-discard-dialog button,.review-unsaved-dialog button{width:100%;min-height:49px}
  .document-viewer,.library-document-viewer,.payment-modal,.document-picker{width:min(100%,700px);max-width:100%;max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow:auto}
  .document-preview-image img{max-width:100%;height:auto;object-fit:contain}
  .document-library-upload{min-width:0}
  .document-camera-button{min-height:48px;touch-action:manipulation}
  .form-fields-row,.form-fields-row>*{min-width:0}
  .form-field input,.form-field textarea,.form-field select{max-width:100%;}
}
@media(max-width:370px){.calendar-entry,.month-grid .calendar-entry{font-size:9px}.mobile-nav .nav-item{font-size:9px}.mobile-nav .nav-icon svg{width:18px;height:18px}}

/* Identidad Bali al atardecer: cristal cálido, colores vivos y contraste alto. */
:root{
  --ink:#17344d;--muted:#4f667c;--line:rgba(255,255,255,.55);--paper:rgba(255,248,236,.68);
  --glass-warm:rgba(255,248,236,.69);--glass-blue:rgba(194,224,255,.78);
  --glass-coral:rgba(255,204,201,.78);--glass-gold:rgba(255,224,163,.82);
  --glass-teal:rgba(181,236,224,.77);--glass-purple:rgba(222,204,255,.76);
}
body,body[data-page="dashboard"],body[data-page="calendar"],body[data-page="events"],body[data-page="tasks"],body[data-page="obligations"],body[data-page="categories"],body[data-page="documents"],body[data-page="daily-review"],body[data-page="assistant"]{
  background-color:#273951;
  background-image:linear-gradient(110deg,rgba(255,152,111,.12),rgba(83,67,126,.04) 47%,rgba(12,35,52,.16)),url("assets/landscapes/bali-sunset-dashboard.webp");
  background-size:cover;background-position:center center;background-attachment:fixed;color:#17344d
}
.app-shell,.main-area{background:transparent}
.sidebar{background:linear-gradient(165deg,rgba(8,23,38,.88),rgba(7,29,38,.76) 57%,rgba(27,32,24,.78));border-right:1px solid rgba(255,255,255,.25);box-shadow:12px 0 40px rgba(13,20,37,.32);backdrop-filter:blur(22px) saturate(155%);-webkit-backdrop-filter:blur(22px) saturate(155%)}
.brand{color:#fff;text-shadow:0 1px 9px #06182777}.brand-light{color:#c4d7e4}.brand-mark{background:linear-gradient(145deg,#16d78b,#00874e);box-shadow:0 4px 19px rgba(12,217,132,.44)}
.nav-label{color:#c2d3de}.nav-item{color:#f1f7fb;font-weight:650}.nav-item:hover{background:rgba(255,255,255,.14);color:#fff}.nav-item.active{background:linear-gradient(110deg,#08a958,#13c877);color:#fff;box-shadow:0 5px 18px rgba(0,172,89,.42);font-weight:800}.sidebar-bottom{border-color:rgba(255,255,255,.22);color:#edf7fa}.sidebar-version{color:#c7d8de}
.topbar{background:rgba(19,39,56,.48);border-color:rgba(255,255,255,.28);backdrop-filter:blur(19px) saturate(150%);-webkit-backdrop-filter:blur(19px) saturate(150%)}.breadcrumbs,.crumb-divider{color:#f2f8fb}.breadcrumbs strong,.profile-button{color:#fff}.profile-avatar{background:rgba(255,255,255,.24);color:#fff;border:1px solid rgba(255,255,255,.48)}.profile-button svg{stroke:#fff}
.eyebrow,.section-kicker{color:#f8fcff;text-shadow:0 1px 8px rgba(4,24,36,.65)}.greeting-row h1,.calendar-page-heading h1,.tasks-page-heading h1,.obligations-page-heading h1,.daily-review-page-heading h1,.documents-page h1{color:#fff;text-shadow:0 2px 13px rgba(4,20,29,.68)}.greeting-row h1 span,.date-chip{color:#fff1cb;text-shadow:0 1px 7px rgba(4,20,29,.62)}
.page-content .card,.calendar-page .card,.events-page .card,.daily-review-page .card,.documents-page .card{
  border:1px solid rgba(255,255,255,.72);background:var(--glass-warm);color:#17344d;
  box-shadow:0 14px 34px rgba(10,27,45,.22),inset 0 1px rgba(255,255,255,.82);
  backdrop-filter:blur(16px) saturate(165%);-webkit-backdrop-filter:blur(16px) saturate(165%)
}
.dashboard-column-card{border-top-width:5px;border-radius:21px}.dashboard-column-card:nth-child(1){background:var(--glass-blue)}.dashboard-column-card:nth-child(2){background:var(--glass-coral)}.dashboard-column-card:nth-child(3){background:var(--glass-gold)}
.dashboard-column-card .card-title,.today-agenda-card h2,.dashboard-summary-card h2,.dashboard-quick-actions h2{color:#123752;font-weight:850}.dashboard-column-card .task-item,.dashboard-column-card .obligation-name,.dashboard-column-card .event-name{color:#173b56;font-weight:750}.dashboard-column-card .task-item,.dashboard-column-card .obligation-row-open,.dashboard-column-card .event-item{border-color:rgba(34,66,91,.18)}
.task-heading-icon{background:rgba(22,128,244,.2)!important;color:#0872df!important}.obligation-heading-icon{background:rgba(222,48,59,.2)!important;color:#c82132!important}.dashboard-column-card:nth-child(3) .heading-icon{background:rgba(255,160,13,.23);color:#a75e00}.count-pill{background:rgba(30,129,237,.2);color:#0758ad;font-weight:850}.dashboard-column-card:nth-child(2) .count-pill{background:rgba(223,47,56,.18);color:#9f202b}.dashboard-column-card:nth-child(3) .count-pill{background:rgba(245,158,11,.24);color:#925000}
.daily-review-callout,.daily-review-callout.has-pending,.daily-review-callout.is-clear{background:linear-gradient(112deg,rgba(0,112,48,.95),rgba(0,151,61,.91) 58%,rgba(0,103,48,.94));border:2px solid rgba(200,255,219,.9);box-shadow:0 17px 42px rgba(0,55,29,.4),inset 0 1px rgba(255,255,255,.55);backdrop-filter:blur(17px) saturate(175%);-webkit-backdrop-filter:blur(17px) saturate(175%)}
.assistant-card{background:linear-gradient(120deg,rgba(15,84,172,.82),rgba(53,66,153,.76) 55%,rgba(116,48,135,.8));border:1px solid rgba(255,255,255,.62);box-shadow:0 16px 38px rgba(12,18,53,.32);backdrop-filter:blur(17px) saturate(170%);-webkit-backdrop-filter:blur(17px) saturate(170%)}.assistant-label{color:#fff}.assistant-caption,.assistant-note{color:#eff5ff}.assistant-input-wrap{background:rgba(255,255,255,.19);border-color:rgba(255,255,255,.45)}.assistant-input{color:#fff}.assistant-input::placeholder{color:#edf3ff}.assistant-send{background:#fff;color:#0752a2}
.dashboard-support-grid .card,.dashboard-quick-actions{background:rgba(235,248,250,.72);border-color:rgba(255,255,255,.76);backdrop-filter:blur(17px) saturate(160%);-webkit-backdrop-filter:blur(17px) saturate(160%)}.today-agenda-row{border-color:rgba(255,255,255,.86);box-shadow:0 4px 14px rgba(20,43,64,.13)}.today-agenda-row.agenda-obligation{background:rgba(219,43,56,.88);color:#fff;font-weight:850}.dashboard-stat{background:rgba(178,220,255,.82)}.dashboard-stat.obligation-stat{background:rgba(255,185,184,.86)}.dashboard-stat.event-stat{background:rgba(255,213,129,.88)}.quick-action-list button{background:rgba(255,255,255,.77);backdrop-filter:blur(10px)}
.button-primary{border-color:#07874e;background:linear-gradient(130deg,#10bd6c,#07884e);box-shadow:0 6px 18px rgba(0,102,55,.32);font-weight:800}.button-primary:hover{background:linear-gradient(130deg,#08a65e,#067344)}.button-secondary,.button-quiet{border-color:rgba(255,255,255,.83);background:rgba(255,250,242,.82);color:#1e4a69;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-weight:750}.button-secondary:hover,.button-quiet:hover{background:rgba(255,255,255,.96)}
.calendar-board{background:rgba(252,235,214,.66)!important;border-color:rgba(255,255,255,.83)!important;box-shadow:0 17px 38px rgba(28,35,48,.24),inset 0 1px #fff!important;backdrop-filter:blur(19px) saturate(165%)!important;-webkit-backdrop-filter:blur(19px) saturate(165%)!important}.calendar-weekdays{background:rgba(255,242,225,.83);border-color:rgba(255,255,255,.9)}.calendar-weekdays span{color:#5d4260;font-weight:850}.calendar-day{background:rgba(255,249,238,.51);border-color:rgba(255,255,255,.75)}.calendar-day.outside-month{background:rgba(226,221,232,.4)}.calendar-day.is-today{background:rgba(196,244,212,.78)}.calendar-day.is-selected{box-shadow:inset 0 0 0 2px #1682ee}.calendar-day-label{color:#183a5d;font-weight:850;text-shadow:0 1px 2px #fff}.calendar-view-switch{background:rgba(111,82,105,.16)}.calendar-view-switch button{color:#564e66;font-weight:750}.calendar-view-switch button.selected{background:rgba(255,255,255,.91);color:#173b5a;box-shadow:0 2px 8px rgba(43,37,58,.17)}.calendar-period h2{color:#193b56;font-weight:850}
.calendar-event{background:var(--category-color)!important;color:#fff!important;border:1px solid rgba(255,255,255,.82)!important;border-left:5px solid color-mix(in srgb,var(--category-color) 66%,#10263b)!important;text-shadow:0 1px 2px rgba(15,30,48,.58)}.calendar-event small{color:#fff!important;font-weight:800}.calendar-obligation,.calendar-obligation.is-completed{background:#d92f42!important;color:#fff!important;border:1px solid rgba(255,255,255,.88)!important;border-left:5px solid #9f1426!important;text-shadow:0 1px 2px rgba(57,0,8,.5);font-weight:850!important}.calendar-obligation *,.calendar-obligation .calendar-entry-title,.calendar-obligation small{color:#fff!important;font-weight:850!important;text-shadow:0 1px 2px rgba(57,0,8,.5)}.agenda-obligation{background:rgba(211,39,53,.9)!important;border:1px solid rgba(255,255,255,.84)!important;color:#fff!important}.agenda-obligation *,.agenda-obligation small{color:#fff!important;font-weight:850!important;text-shadow:0 1px 2px rgba(57,0,8,.48)}
.calendar-detail-card,.task-form,.obligation-form,.calendar-form,.category-settings,.managed-task,.obligation-item,.daily-review-item,.events-page-item,.task-list-empty,.document-viewer,.payment-modal,.category-confirm-dialog{border:1px solid rgba(255,255,255,.8)!important;box-shadow:0 16px 38px rgba(9,29,47,.24),inset 0 1px rgba(255,255,255,.76)!important;backdrop-filter:blur(19px) saturate(160%);-webkit-backdrop-filter:blur(19px) saturate(160%)}
body[data-page="tasks"] .managed-task,body[data-page="tasks"] .task-form,body[data-page="tasks"] .task-list-empty,.task-review-group .daily-review-item{background:rgba(194,224,255,.78)!important;border-left:5px solid #1684f4!important}.managed-task-main h3,.task-review-group h3{color:#104f91;font-weight:850}.managed-task-description{color:#254f70}.task-category{background:rgba(26,121,224,.18);color:#09569d;font-weight:850}.task-check:checked,.managed-task-check input:checked+.custom-check{background:#1879e3;border-color:#1879e3}
body[data-page="obligations"] .obligation-item,body[data-page="obligations"] .obligation-form,.obligation-review-group .daily-review-item{background:rgba(255,199,196,.8)!important;border-left:5px solid #e33243!important}.obligation-main h3,.calendar-obligation-detail-card h2,.obligation-review-group h3{color:#a3262d;font-weight:850}.obligation-description{color:#713c43}.obligation-meta .task-category{background:rgba(224,54,61,.17);color:#a42b32}.obligation-detail-status{display:inline-flex;padding:5px 10px;border-radius:20px;background:#d92f42;color:#fff;font-weight:850}
body[data-page="events"] .events-page-item,.event-review-group .daily-review-item{background:rgba(255,225,168,.77);border-left:5px solid var(--category-color,#f5a10b)}.events-page-main strong{color:#3b3154;font-weight:850}.event-item{background:rgba(255,248,236,.42);border-color:rgba(255,255,255,.45)}.dashboard-category-label,.calendar-category-chip{border:1px solid rgba(255,255,255,.8);font-weight:850}
body[data-page="categories"] .category-settings{background:rgba(219,203,250,.76)!important;border-top:5px solid #8254cf!important}.category-settings-row{background:rgba(255,255,255,.55);border-color:rgba(255,255,255,.78)}.category-confirm-dialog{background:rgba(244,237,255,.93)!important}
body[data-page="documents"] .document-library-upload,body[data-page="documents"] .document-library-item{background:rgba(199,228,243,.78)!important;border-color:rgba(255,255,255,.83)}.document-library-upload{border-top:5px solid #277eb9}.document-library-item{border-left:5px solid #277eb9}.document-library-main h2,.document-library-upload h2{color:#173b59;font-weight:850}.document-library-meta,.document-owner{color:#294d69;font-weight:700}.document-version-list,.document-viewer-body,.library-preview{background:rgba(205,230,245,.4)}
.daily-review-group.task-review-group{--review-group-bg:rgba(57,143,234,.25)}.daily-review-group.obligation-review-group{--review-group-bg:rgba(225,54,64,.23)}.daily-review-group.event-review-group{--review-group-bg:rgba(245,162,16,.22)}.daily-review-group{padding:14px;border:1px solid rgba(255,255,255,.47);border-radius:20px;background:var(--review-group-bg,rgba(255,248,236,.28));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.form-field input,.form-field textarea,.form-field select,.assistant-input-wrap{background:rgba(255,251,244,.91);border-color:rgba(65,107,139,.34);color:#153b57}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:#3389e5;box-shadow:0 0 0 3px rgba(51,137,229,.21)}.form-field{color:#274b68}.form-field>span:first-child{font-weight:800}
.calendar-discard-backdrop,.review-confirm-backdrop,.category-confirm-backdrop,.document-modal-backdrop{background:rgba(8,22,36,.67);backdrop-filter:blur(11px);-webkit-backdrop-filter:blur(11px)}.calendar-discard-dialog,.review-confirm-dialog,.category-confirm-dialog,.document-viewer,.payment-modal{border:1px solid rgba(255,255,255,.85);background:rgba(249,244,236,.94);backdrop-filter:blur(23px) saturate(150%);-webkit-backdrop-filter:blur(23px) saturate(150%);box-shadow:0 26px 80px rgba(0,17,30,.43)}
.calendar-legend{color:#fff;text-shadow:0 1px 7px #112538}.calendar-legend small{color:#f5f7fa}
.mobile-nav{background:rgba(12,31,45,.88);border-top:1px solid rgba(255,255,255,.33);box-shadow:0 -8px 26px rgba(8,22,35,.27);backdrop-filter:blur(20px) saturate(155%);-webkit-backdrop-filter:blur(20px) saturate(155%)}.mobile-nav .nav-item{color:#edf5f9}.mobile-nav .nav-item.active{background:rgba(9,177,94,.93);color:#fff}
@media(max-width:760px){
  body,body[data-page]{background-attachment:scroll;background-position:center 38%;background-size:auto 100vh}
  .sidebar{display:none}.topbar{background:rgba(19,39,56,.62)}
  .page-content .card,.calendar-page .card,.events-page .card,.daily-review-page .card,.documents-page .card{backdrop-filter:blur(12px) saturate(155%);-webkit-backdrop-filter:blur(12px) saturate(155%)}
  .dashboard-column-card:nth-child(1){background:rgba(194,224,255,.82)}.dashboard-column-card:nth-child(2){background:rgba(255,204,201,.82)}.dashboard-column-card:nth-child(3){background:rgba(255,224,163,.84)}
  .daily-review-callout,.daily-review-callout.has-pending,.daily-review-callout.is-clear{background:linear-gradient(115deg,rgba(0,109,48,.96),rgba(0,149,60,.93) 58%,rgba(0,102,47,.96))}
  .calendar-board{background:rgba(252,235,214,.72)!important}.calendar-day{background:rgba(255,249,238,.58)}
  .calendar-obligation,.calendar-obligation.is-completed{background:#d92f42!important;color:#fff!important}
}
@media(prefers-reduced-transparency:reduce){.sidebar,.topbar,.page-content .card,.calendar-page .card,.events-page .card,.daily-review-page .card,.documents-page .card,.calendar-discard-dialog,.review-confirm-dialog{backdrop-filter:none;-webkit-backdrop-filter:none}}
body[data-page="calendar"] .calendar-detail-card:not(.calendar-obligation-detail-card),body[data-page="calendar"] .calendar-form,body[data-page="events"] .calendar-form{background:rgba(255,235,209,.77)!important}
body[data-page="calendar"] .calendar-obligation-detail-card,body[data-page="calendar"] .calendar-obligation-detail-card .obligation-form,body[data-page="calendar"] .obligation-form,body[data-page="calendar"] .calendar-detail-view .obligation-form{background:rgba(255,199,196,.82)!important}
.document-viewer,.payment-modal{background:rgba(215,238,247,.94)!important}.payment-modal{border-top:5px solid #e33343!important}.calendar-discard-dialog,.review-confirm-dialog{background:rgba(247,236,221,.96)!important}.calendar-detail-documents,.event-review-history{background:rgba(255,255,255,.35);border:1px solid rgba(255,255,255,.55);border-radius:15px;padding:14px}
.calendar-obligation-detail-card .obligation-detail-status{background:#d92f42;color:#fff}.review-document-summary,.document-version,.document-version-open{background:rgba(255,255,255,.44)}

/* Calendar quick-create menu and date-bound task markers. */
.calendar-create-menu-wrap{position:relative;z-index:70}
.calendar-create-page{max-width:900px;margin:0 auto}
.calendar-create-page-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.calendar-create-page-heading .calendar-back-button{min-height:46px;margin:0;border-color:#ffffffa8;background:rgba(247,250,250,.88);color:#17415d;font-size:14px;font-weight:750;box-shadow:0 4px 13px rgba(9,29,47,.17)}
.calendar-create-page .calendar-form,.calendar-create-page .task-form,.calendar-create-page .obligation-form{width:100%;margin-bottom:0;pointer-events:auto}
.calendar-create-page input[type="time"]{position:relative;z-index:1;pointer-events:auto;touch-action:manipulation}
.calendar-create-menu-dismiss{position:fixed;inset:0;z-index:0;width:100vw;height:100vh;padding:0;border:0;background:transparent;cursor:default}
.calendar-create-trigger{position:relative;z-index:2;white-space:nowrap}
.calendar-create-menu{position:absolute;z-index:2;top:calc(100% + 9px);right:0;display:grid;gap:5px;width:228px;padding:8px;border:1px solid rgba(255,255,255,.86);border-radius:15px;background:rgba(247,250,250,.95);box-shadow:0 16px 42px rgba(10,30,48,.34);backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%)}
.calendar-create-option{display:flex;align-items:center;gap:11px;min-height:48px;padding:0 12px;border:1px solid transparent;border-radius:10px;background:rgba(255,255,255,.62);color:#173b57;font-family:inherit;font-size:14px;font-weight:750;text-align:left;cursor:pointer}
.calendar-create-option:hover,.calendar-create-option:focus-visible{background:#fff;border-color:rgba(38,83,113,.22);outline:2px solid transparent}
.calendar-create-option span{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;font-size:16px;font-weight:900}
.create-event-option .event-option-icon{display:flex;gap:3px;background:#ffedd0}.event-option-icon i{width:6px;height:15px;border-radius:5px;background:#f5a10b}.event-option-icon i:nth-child(2){background:#14a89a}.event-option-icon i:nth-child(3){background:#8355d8}.create-task-option span{background:#d9ecff;color:#126ac4}.create-obligation-option span{background:#ffe0df;color:#bd2e39}
.calendar-task{background:#1879e3!important;color:#fff!important;border-left:5px solid #0c55ae!important;font-weight:850!important;box-shadow:0 3px 8px rgba(18,78,147,.24)!important}
.calendar-task small{color:#fff!important;font-weight:800}.calendar-task.is-completed .calendar-entry-title{text-decoration:line-through;opacity:.88}
.calendar-page .task-form{background:rgba(194,224,255,.86)!important;border-left:5px solid #1684f4!important}
.agenda-task{border-left-color:#1879e3!important;background:rgba(31,124,225,.92)!important;color:#fff!important}.agenda-task time,.agenda-task time small,.agenda-task .agenda-row-title,.agenda-task .agenda-category-chip,.agenda-task .row-arrow{color:#fff!important}.agenda-task .agenda-category-chip{background:rgba(255,255,255,.2)}
.legend-task{background:#1879e3!important}
@media(max-width:760px){.calendar-create-menu{right:0;width:min(228px,calc(100vw - 28px));padding:9px}.calendar-create-option{min-height:52px;font-size:15px}.calendar-create-menu-dismiss{height:100dvh}}
@media(max-width:760px){.calendar-create-page-heading{align-items:flex-start;flex-direction:column}.calendar-create-page-heading .calendar-back-button{min-height:48px}}
