:root{--ink:#173b32;--ink-deep:#0e2b24;--muted:#6e7f79;--line:#dfe8e4;--paper:#fff;--canvas:#f5f7f4;--sage:#e4f0e9;--mint:#cbf06c;--mint-hover:#bce256;--planned-action-completed:#a9d8b5;--planned-action-completed-border:#3f8d60;--orange:#e98b5f;--orange-soft:#fff0e9;--blue:#6d8fee;--blue-soft:#eef2ff;--shadow:0 18px 55px #12382e14}*{box-sizing:border-box}html{background:var(--canvas);min-height:100%}body{min-height:100vh;color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased;margin:0;font-family:Instrument Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}.brand{color:var(--ink-deep);letter-spacing:-.04em;align-items:center;gap:10px;font-size:22px;font-weight:700;text-decoration:none;display:inline-flex}.brand--light{color:#fff}.brand-mark{width:36px;height:36px;color:var(--ink-deep);background:var(--mint);border-radius:11px;place-items:center;display:grid}.brand-mark svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:26px}.eyebrow{color:#71877f;letter-spacing:.13em;text-transform:uppercase;margin-bottom:7px;font-size:11px;font-weight:700;display:block}.eyebrow--light{color:#b4d0c7}.btn{cursor:pointer;border:0;border-radius:12px;justify-content:center;align-items:center;gap:9px;min-height:46px;padding:0 20px;font-weight:700;transition:transform .18s,background .18s,border-color .18s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px}.btn--primary{color:var(--ink-deep);background:var(--mint)}.btn--primary:hover{background:var(--mint-hover)}.btn--outline{border:1px solid var(--line);background:#fff;min-height:42px}.btn--outline:hover{background:#f9fbfa;border-color:#b5c8c0}.btn--icon{border:1px solid var(--line);background:#fff;width:42px;min-height:42px;padding:0}.btn--icon:hover{background:#f9fbfa;border-color:#b5c8c0}.btn--wide{width:100%}.btn--small{min-height:40px;font-size:13px}.field{flex-direction:column;gap:7px;display:flex}.field>span{color:#40574f;font-size:13px;font-weight:650}.field em{color:#91a09b;font-size:11px;font-style:normal;font-weight:500}.field input,.field textarea,.field select{width:100%;color:var(--ink-deep);background:#fff;border:1px solid #d8e2de;border-radius:11px;outline:0;transition:border .18s,box-shadow .18s}.field input,.field select{min-height:47px;padding:0 14px}.field textarea{resize:vertical;padding:12px 14px}.field input::placeholder,.field textarea::placeholder{color:#a5b1ad}.field input:focus,.field textarea:focus,.field select:focus{border-color:#8da99d;box-shadow:0 0 0 4px #7c9e8f1c}.field-error{color:#bf563e;font-size:12px}.field--compact{gap:5px}.field--compact input{min-height:40px}.field--compact textarea{min-height:70px}.calendar-page{width:min(1480px,100%);height:calc(100vh - 76px);margin:0 auto;padding:42px clamp(28px,4vw,62px) 24px;overflow:hidden}.calendar-heading{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:28px;display:flex}.calendar-heading h1{color:var(--ink-deep);letter-spacing:-.055em;margin:0;font-size:clamp(34px,3.2vw,47px);line-height:1}.calendar-heading p{color:var(--muted);margin:11px 0 0;font-size:15px}.calendar-metrics{flex-direction:column;gap:13px;display:flex}.calendar-metrics article{border:1px solid var(--line);background:#fff;border-radius:16px;align-items:center;gap:13px;min-height:92px;padding:17px;display:flex;box-shadow:0 8px 22px #173b3209}.calendar-metrics strong{color:var(--ink-deep);letter-spacing:-.04em;font-size:25px;line-height:1;display:block}.calendar-metrics article span:not(.metric-icon){color:#7d8d87;margin-top:5px;font-size:10px;font-weight:650;display:block}.metric-icon{border-radius:11px;flex:0 0 35px;place-items:center;width:35px;height:35px;font-weight:800;display:grid}.metric-icon--action{color:#486ece;background:#edf1ff}.metric-icon--project{color:#5d776c;background:#edf4ef}.metric-icon--late{color:#bf513e;background:#fff0ec}.calendar-grid{grid-template-columns:minmax(260px,.58fr) minmax(480px,1.4fr) minmax(180px,.38fr);align-items:start;gap:22px;display:grid}.calendar-column{gap:22px;display:grid}.calendar-controls{border:1px solid var(--line);background:#fff;border-radius:16px;gap:10px;padding:13px;display:grid;box-shadow:0 8px 22px #173b3209}.calendar-filter{flex-direction:column;gap:7px;display:flex}.calendar-filter>span{color:#40574f;font-size:13px;font-weight:650}.calendar-filter select{width:100%;min-height:47px;color:var(--ink-deep);background:#fff;border:1px solid #d8e2de;border-radius:11px;outline:0;padding:0 14px;font-size:16px;transition:border .18s,box-shadow .18s}.calendar-filter select:focus{border-color:#8da99d;box-shadow:0 0 0 4px #7c9e8f1c}.calendar-create-actions{grid-template-columns:1fr 1fr;gap:7px;padding-top:3px;display:grid}.calendar-create-actions .btn{min-height:38px;padding:0 8px;font-size:10px}.calendar-summary-card{border:1px solid var(--line);background:#fff;border-radius:19px;min-width:0;box-shadow:0 12px 32px #173b320a}.calendar-summary-card__heading{justify-content:space-between;align-items:flex-start;gap:12px;padding:22px 22px 15px;display:flex}.calendar-summary-card__heading h2,.calendar-toolbar h2{color:var(--ink-deep);letter-spacing:-.035em;margin:0;font-size:19px}.calendar-summary-card__heading .eyebrow,.calendar-toolbar .eyebrow{margin-bottom:5px;font-size:9px}.calendar-summary-card__heading>a{color:#58746a;padding-top:4px;font-size:11px;font-weight:700;text-decoration:none}.calendar-standard-select{width:100%;height:47px;min-height:47px;color:var(--ink-deep);font:inherit;background:#fff;border:1px solid #d8e2de;border-radius:11px;outline:0;padding:0 14px;font-size:16px;line-height:1.2;transition:border .18s,box-shadow .18s;display:block}.calendar-standard-select:focus{border-color:#8da99d;box-shadow:0 0 0 4px #7c9e8f1c}.health-page{width:min(1320px,100%);min-height:calc(100vh - 76px);margin:0 auto;padding:38px clamp(24px,4vw,58px)}.health-header{justify-content:space-between;align-items:end;gap:24px;margin-bottom:22px;display:flex}.health-header h1{color:var(--ink-deep);letter-spacing:-.06em;margin:0;font-size:clamp(34px,3.2vw,48px)}.health-header p{color:var(--muted);margin:10px 0 0}.health-metrics{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px;display:grid}.health-metrics article,.health-card{border:1px solid var(--line);background:#fff;border-radius:18px;box-shadow:0 10px 25px #173b3209}.health-metrics article{padding:17px 19px}.health-metrics span{color:#81918b;font-size:11px;font-weight:700;display:block}.health-metrics strong{color:var(--ink-deep);letter-spacing:-.04em;margin-top:7px;font-size:26px;display:block}.health-metrics .health-metrics__date{letter-spacing:-.02em;font-size:17px}.health-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.health-card{flex-direction:column;min-height:510px;display:flex;overflow:hidden}.health-card header{border-bottom:1px solid #edf2ef;justify-content:space-between;align-items:start;gap:12px;padding:20px 21px 15px;display:flex}.health-card h2{letter-spacing:-.04em;margin:0;font-size:21px}.health-card header small{color:#8a9993;font-size:11px}.health-list{flex:1;min-height:0;padding:7px 15px 15px;overflow:auto}.health-row{border-bottom:1px solid #edf2ef;justify-content:space-between;align-items:center;gap:18px;padding:13px 8px;display:flex}.health-row b{color:#26463c;text-transform:capitalize;text-overflow:ellipsis;white-space:nowrap;max-width:310px;font-size:13px;display:block;overflow:hidden}.health-row small{color:#87958f;margin-top:4px;font-size:10px;display:block}.health-row strong{color:#365b4d;text-align:right;max-width:40%;font-size:12px}.health-empty{color:#899791;padding:30px 8px;font-size:13px;line-height:1.55}.health-modal{width:min(690px,100vw - 34px)}.health-form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (width<=780px){.health-page{padding:25px 18px}.health-header{flex-direction:column;align-items:start}.health-metrics,.health-grid,.health-form-grid{grid-template-columns:1fr}.health-card{min-height:360px}.health-row b{max-width:190px}}.health-page{height:calc(100vh - 76px);min-height:0;padding-top:32px;padding-bottom:24px;overflow:hidden}.health-metrics{grid-template-columns:repeat(3,minmax(0,1fr)) auto}.health-metrics .btn{white-space:nowrap;min-height:100%}.health-grid{height:calc(100vh - 242px)}.health-card{min-height:0}@media (width<=780px){.health-page{height:auto;min-height:calc(100vh - 76px);overflow:visible}.health-grid{height:auto}}.health-dashboard{width:min(1360px,100%);min-height:calc(100vh - 76px);margin:0 auto;padding:34px clamp(24px,4vw,58px) 46px}.health-dashboard__heading{justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:23px;display:flex}.health-dashboard__heading h1{color:var(--ink-deep);letter-spacing:-.06em;margin:6px 0 0;font-size:clamp(33px,3.15vw,47px);line-height:1}.health-dashboard__heading p{max-width:650px;color:var(--muted);margin:12px 0 0;font-size:14px}.health-dashboard__heading .btn{white-space:nowrap;min-height:48px}.health-overview{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-bottom:17px;display:grid}.health-overview article,.health-panel,.health-highlights{border:1px solid var(--line);background:#fff;border-radius:18px;box-shadow:0 10px 25px #173b3209}.health-overview article{min-height:104px;padding:16px 18px}.health-overview span{color:#81918b;letter-spacing:.03em;font-size:10px;font-weight:750;display:block}.health-overview strong{color:var(--ink-deep);letter-spacing:-.045em;margin:7px 0 4px;font-size:25px;line-height:1;display:block}.health-overview small{color:#82928b;text-overflow:ellipsis;white-space:nowrap;font-size:10px;display:block;overflow:hidden}.health-overview__date{letter-spacing:-.035em!important;font-size:20px!important}.health-dashboard-grid{grid-template-columns:minmax(0,1.45fr) minmax(270px,.55fr);gap:17px;margin-bottom:17px;display:grid}.health-panel{min-width:0;overflow:hidden}.health-panel__header{border-bottom:1px solid #edf2ef;justify-content:space-between;align-items:flex-start;gap:16px;padding:19px 21px 15px;display:flex}.health-panel__header h2,.health-section-title h2{color:var(--ink-deep);letter-spacing:-.045em;margin:5px 0 0;font-size:20px}.health-panel__header small,.health-section-title small{color:#8a9993;font-size:10px}.health-trend-controls{grid-template-columns:minmax(155px,1fr) 92px;gap:7px;display:grid}.health-trend-controls .calendar-standard-select{height:36px;min-height:36px;padding:0 9px;font-size:10px}.health-trend{min-height:265px;padding:18px 21px 16px}.health-trend__summary{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px;display:grid}.health-trend__summary span{color:#82928b;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:700;display:block;overflow:hidden}.health-trend__summary strong{color:#274b40;letter-spacing:-.04em;text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:18px;display:block;overflow:hidden}.health-trend__summary strong.is-positive{color:#36785b}.health-trend__summary strong.is-negative{color:#ba503f}.health-trend__chart{background:repeating-linear-gradient(#0000 0 43px,#edf3f0 44px);border-bottom:1px solid #dce8e2;align-items:flex-end;gap:2px;height:135px;padding:7px 3px 0;display:flex}.health-trend__bar{cursor:default;flex:1 1 0;align-items:stretch;min-width:2px;min-height:7px;display:flex}.health-trend__bar i{background:#85ae98;border-radius:4px 4px 1px 1px;width:100%;transition:background .15s,transform .15s}.health-trend__bar:hover i{background:var(--mint-hover);transform-origin:bottom;transform:scaleY(1.03)}.health-trend__axis{color:#92a099;justify-content:space-between;margin-top:8px;font-size:9px;font-weight:700;display:flex}.health-panel--activity{flex-direction:column;min-height:322px;display:flex}.health-activity-list{background:#edf2ef;border:1px solid #edf2ef;border-radius:11px;grid-template-columns:1fr 1fr;gap:1px;margin:12px 14px 0;display:grid;overflow:hidden}.health-activity-list div{background:#fff;min-height:73px;padding:13px}.health-activity-list span{color:#82928b;font-size:9px;font-weight:700;display:block}.health-activity-list strong{color:#274b40;letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap;margin-top:6px;font-size:14px;display:block;overflow:hidden}.health-panel__note{color:#899790;margin:auto 20px 18px;font-size:10px;line-height:1.45}.health-highlights-section{margin-bottom:17px}.health-section-title{justify-content:space-between;align-items:flex-end;gap:15px;margin:0 3px 11px;display:flex}.health-highlights{grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:0;display:grid;overflow:hidden}.health-highlights article{border-right:1px solid #edf2ef;min-height:106px;padding:17px}.health-highlights article:last-child{border-right:0}.health-highlights span{color:#61796e;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:750;display:block;overflow:hidden}.health-highlights strong{color:var(--ink-deep);letter-spacing:-.04em;text-overflow:ellipsis;white-space:nowrap;margin:8px 0 5px;font-size:19px;display:block;overflow:hidden}.health-highlights small{color:#8a9993;font-size:9px}.health-history-grid{grid-template-columns:1fr 1fr;gap:17px;display:grid}.health-panel--scroll{flex-direction:column;height:365px;display:flex}.health-panel--scroll .health-list{flex:1;min-height:0;padding:7px 15px 15px;overflow:auto}.health-panel--scroll .health-row{border-bottom:1px solid #edf2ef;justify-content:space-between;align-items:center;gap:18px;padding:13px 8px;display:flex}.health-panel--scroll .health-row b{color:#26463c;text-transform:capitalize;text-overflow:ellipsis;white-space:nowrap;max-width:310px;font-size:13px;display:block;overflow:hidden}.health-panel--scroll .health-row small{color:#87958f;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:10px;display:block;overflow:hidden}.health-panel--scroll .health-row strong{color:#365b4d;text-align:right;max-width:40%;font-size:12px}.health-text-button{color:#527166;cursor:pointer;background:0 0;border:0;font-size:11px;font-weight:750}.health-text-button:hover{color:var(--ink-deep);text-decoration:underline}.health-dashboard .health-empty{color:#899791;padding:30px 8px;font-size:12px;line-height:1.55}@media (width<=980px){.health-overview{grid-template-columns:repeat(2,1fr)}.health-dashboard-grid{grid-template-columns:1fr}.health-panel--activity{min-height:280px}.health-highlights article:nth-child(n){border-bottom:1px solid #edf2ef}.health-highlights article:last-child{border-bottom:0}}@media (width<=680px){.health-dashboard{padding:25px 18px 35px}.health-dashboard__heading{flex-direction:column;align-items:flex-start}.health-dashboard__heading .btn{width:100%}.health-overview,.health-history-grid{grid-template-columns:1fr}.health-trend-controls{grid-template-columns:1fr 92px;width:100%}.health-panel__header{flex-direction:column}.health-highlights{grid-template-columns:1fr 1fr}.health-highlights article:nth-child(2n){border-right:0}.health-section-title{flex-direction:column;align-items:flex-start}.health-panel--scroll{height:340px}}.health-trend-controls{grid-template-columns:minmax(155px,1fr) 92px 112px}.health-trend__chart--line{background:0 0;border-bottom:0;height:154px;padding:0;display:block}.health-trend__chart--line svg{width:100%;height:100%;display:block;overflow:visible}.health-trend__chart--line line{stroke:#edf2ef;stroke-width:1px}.health-trend__line{fill:none;stroke:#5d967c;stroke-width:3.5px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.health-trend__chart--line circle{fill:#c7f25a;stroke:#315f4e;stroke-width:2px;vector-effect:non-scaling-stroke}.health-activity-stack{flex-direction:column;align-self:stretch;gap:10px;display:flex}.health-activity-stack>.btn{min-height:48px}.health-dashboard-grid--primary .health-activity-stack .health-panel--activity{flex:1;min-height:0}@media (width<=680px){.health-trend-controls{grid-template-columns:1fr 92px 108px}}.health-dashboard-grid--primary{grid-template-columns:minmax(0,1.72fr) minmax(300px,.62fr);align-items:stretch}.health-dashboard-grid--primary .health-panel--trend{flex-direction:column;min-height:354px;display:flex}.health-dashboard-grid--primary .health-trend{flex:1;min-height:0}.health-dashboard-grid--primary .health-panel--activity{min-height:354px}.health-coverage{color:#84938d;border-top:1px solid #edf2ef;align-items:center;gap:0;min-height:46px;font-size:9px;display:flex}.health-coverage span{border-right:1px solid #edf2ef;padding:0 13px;line-height:1.4}.health-coverage span:last-child{border-right:0}.health-coverage b{color:#35594c;font-size:11px}.health-highlights-section{grid-template-columns:225px minmax(0,1fr);align-items:stretch;gap:14px;margin-bottom:17px;display:grid}.health-highlights-section .health-section-title{border:1px solid var(--line);background:#f5f8f6;border-radius:18px;flex-direction:column;justify-content:center;align-items:flex-start;margin:0;padding:16px 18px;display:flex}.health-highlights-section .health-section-title small{text-align:left;margin-top:7px;line-height:1.45}.health-highlights{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}.health-highlights article{min-height:87px;padding:14px 16px}.health-highlights strong{margin:6px 0 4px;font-size:17px}.health-history-grid .health-panel--scroll{height:calc(100vh - 586px);min-height:300px}.health-history-grid .health-panel__header{padding-top:17px;padding-bottom:13px}@media (width<=980px){.health-dashboard-grid--primary,.health-highlights-section{grid-template-columns:1fr}.health-highlights-section .health-section-title{flex-direction:row;justify-content:space-between;align-items:flex-end;display:flex}.health-highlights-section .health-section-title small{text-align:right;max-width:240px;margin:0}.health-history-grid .health-panel--scroll{height:365px}}@media (width<=680px){.health-dashboard-grid--primary .health-panel--trend,.health-dashboard-grid--primary .health-panel--activity{min-height:0}.health-coverage{grid-template-columns:1fr 1fr;padding:8px 0;display:grid}.health-coverage span{padding:5px 12px}.health-highlights-section .health-section-title{flex-direction:column;align-items:flex-start}.health-highlights-section .health-section-title small{text-align:left}.health-highlights{grid-template-columns:1fr 1fr}}.health-dashboard__toolbar{align-items:stretch;gap:12px;margin-bottom:17px;display:flex}.health-overview--toolbar{flex:1;grid-template-columns:repeat(8,minmax(0,1fr));gap:7px;min-width:0;margin:0;display:grid}.health-overview--toolbar article{min-width:0;min-height:89px;padding:13px 11px}.health-overview--toolbar span{text-overflow:ellipsis;min-height:25px;font-size:9px;line-height:1.25;overflow:hidden}.health-overview--toolbar strong{text-overflow:ellipsis;white-space:nowrap;margin:5px 0 3px;font-size:19px;overflow:hidden}.health-overview--toolbar strong em{color:#527166;letter-spacing:0;margin-left:3px;font-size:10px;font-style:normal;font-weight:700}.health-overview--toolbar small{text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.health-dashboard__toolbar>.btn{white-space:normal;min-width:146px;min-height:89px;padding:0 13px}@media (width<=980px){.health-dashboard__toolbar{flex-direction:column;align-items:stretch}.health-dashboard__toolbar>.btn{min-height:47px}.health-overview--toolbar{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (width<=680px){.health-overview--toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.health-dashboard__toolbar>.btn{width:100%}}.calendar-summary-button{color:#34574b;cursor:pointer;background:#f7faf8;border:1px solid #d8e2de;border-radius:11px;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:0 10px;font-size:11px;font-weight:750;transition:border .18s,background .18s;display:inline-flex}.calendar-summary-button:hover{background:#edf6f0;border-color:#a9c6b7}.calendar-summary-button:disabled{opacity:.52;cursor:not-allowed}.calendar-summary-button:disabled:hover{background:#f7faf8;border-color:#d8e2de}.calendar-summary-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:15px}.calendar-column{flex-direction:column;height:calc(100vh - 142px);min-height:0;display:flex}.pending-card{flex-direction:column;flex:1;min-height:0;display:flex}.pending-list{flex-direction:column;flex:1;min-height:0;padding:0 13px 13px;display:flex;overflow:auto}.pending-item{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:9px;padding:11px 9px;transition:background .16s;display:grid}.pending-item:hover{background:#f6f9f7}.pending-item__dot{border-radius:50%;width:7px;height:7px}.pending-item--action .pending-item__dot{background:#6686de}.pending-item strong{color:#2b4b41;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;display:block;overflow:hidden}.pending-item small{color:#889690;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:10px;display:block;overflow:hidden}.pending-item time{color:#80918a;font-size:10px;font-weight:700}.pending-item time.is-late{color:#c05240}.calendar-empty{color:#90a09a;margin:4px 10px 16px;font-size:12px;line-height:1.5}.origin-status-list{flex-direction:column;gap:4px;padding:0 22px 20px;display:flex}.origin-status{border-top:1px solid #edf2ef;padding:11px 0}.origin-status:first-child{border-top:0}.origin-status>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.origin-status strong{color:#365349;font-size:11px}.origin-status small{color:#87958f;margin-top:7px;font-size:10px;display:block}.project-status-list{border-top:1px solid #e8efeb;flex-direction:column;gap:3px;padding:12px 13px 14px;display:flex}.project-status-item{color:inherit;border-radius:9px;grid-template-columns:auto minmax(0,1fr);gap:4px 9px;padding:9px;text-decoration:none;transition:background .16s;display:grid}.project-status-item:hover{background:#f6f9f7}.project-status-item .status-label{grid-row:span 2;margin-top:2px;font-size:0}.project-status-item .status-label i{width:7px;height:7px}.project-status-item strong{color:#37564b;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.project-status-item small{color:#899791;text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.calendar-card{flex-direction:column;height:calc(100vh - 142px);min-height:0;display:flex;overflow:hidden}.calendar-toolbar{border-bottom:1px solid #e7eeea;justify-content:space-between;align-items:flex-end;gap:20px;padding:22px 24px 20px;display:flex}.calendar-toolbar__actions{align-items:center;gap:6px;display:flex}.calendar-switcher{background:#f0f4f1;border-radius:8px;margin-right:7px;padding:3px;display:flex}.calendar-switcher button,.calendar-arrow,.calendar-today{color:#789087;cursor:pointer;background:0 0;border:0;font-size:10px;font-weight:700}.calendar-switcher button{border-radius:6px;padding:6px 8px}.calendar-switcher button.is-active{color:var(--ink-deep);background:#fff;box-shadow:0 1px 4px #173b321f}.calendar-arrow{border:1px solid #dfe8e4;border-radius:7px;place-items:center;width:27px;height:27px;font-size:15px;display:grid}.calendar-today{padding:0 5px}.calendar{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar__weekday{color:#93a19c;letter-spacing:.07em;text-transform:uppercase;padding:11px 9px;font-size:9px;font-weight:750}.calendar-day{border-top:1px solid #edf2ef;border-right:1px solid #edf2ef;min-height:118px;padding:8px}.calendar-day:nth-child(7n){border-right:0}.calendar-day>time{color:#73857d;border-radius:50%;place-items:center;width:22px;height:22px;font-size:10px;font-weight:700;display:grid}.calendar-day.is-today>time{color:var(--ink-deep);background:var(--mint)}.calendar-day.is-outside{background:#fbfcfb}.calendar-day.is-outside>time{opacity:.42}.calendar-day__items{flex-direction:column;gap:4px;margin-top:5px;display:flex}.calendar-event{color:#496057;background:#f5f8f6;border-left:3px solid;border-radius:5px;padding:5px 6px;text-decoration:none;display:block;overflow:hidden}.calendar-event:hover{filter:brightness(.975)}.calendar-event>span{margin-right:3px;font-size:8px;font-weight:800}.calendar-event strong{font-size:9px;font-weight:750;display:inline}.calendar-event small{color:#7c8d86;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:8px;display:block;overflow:hidden}.calendar-event--planned{background:#fff4f1;border-color:#db6550}.calendar-event--action{background:#f0f3ff;border-color:#6686de}.calendar-event--completed{opacity:.63}.calendar--day{min-height:490px;display:block}.calendar--day .calendar-day{border:0;min-height:490px;padding:18px}.calendar--day .calendar-day>time{width:auto;height:auto;color:var(--ink-deep);background:0 0;border-radius:0;justify-content:flex-start;padding:0;font-size:14px}.calendar--day .calendar-day__items{gap:8px;margin-top:18px}.calendar--day .calendar-event{padding:11px 12px}.calendar--day .calendar-event>span,.calendar--day .calendar-event strong{font-size:12px}.calendar--day .calendar-event small{font-size:10px}.calendar-empty{color:#91a09a;font-size:12px}.calendar-legend{color:#80908a;border-top:1px solid #edf2ef;align-items:center;gap:15px;padding:14px 20px;font-size:10px;display:flex}.calendar-legend span{align-items:center;gap:5px;display:inline-flex}.calendar-legend i{border-radius:3px;width:8px;height:8px}.calendar-legend .calendar-event--planned{background:#db6550}.calendar-legend .calendar-event--action{background:#6686de}.calendar-legend .calendar-event--pending{background:#607d72}.calendar-legend .calendar-event--completed{background:#c9d5cf}.guest-body{background:#eef2ef}.auth-shell{grid-template-columns:minmax(380px,.92fr) 1.08fr;min-height:100vh;display:grid}.auth-story{color:#fff;background:var(--ink-deep);flex-direction:column;padding:52px 7vw 48px 5vw;display:flex;position:relative;overflow:hidden}.auth-story:before{content:"";border:1px solid #cbf06c26;border-radius:50%;width:580px;height:580px;position:absolute;bottom:-18%;right:-25%;box-shadow:0 0 0 80px #cbf06c06,0 0 0 160px #cbf06c05}.auth-story:after{background:var(--mint);content:"";border-radius:50%;width:10px;height:10px;position:absolute;top:25%;right:10%;box-shadow:-110px 170px 0 -2px #cbf06cbf,75px 260px 0 1px #cbf06c80}.auth-story__content{z-index:1;max-width:560px;margin:auto 0;position:relative}.auth-story h1{letter-spacing:-.055em;max-width:540px;margin:0;font-size:clamp(42px,4.5vw,68px);line-height:.99}.auth-story__content p{color:#bdd0ca;max-width:460px;margin:25px 0 0;font-size:17px;line-height:1.65}.auth-quote{z-index:1;color:#b9cdc6;align-items:center;gap:12px;font-size:13px;display:flex;position:relative}.pulse-dot{background:var(--mint);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 5px #cbf06c1f}.auth-panel{background:#fafcfb;flex-direction:column;justify-content:center;align-items:center;padding:48px 6vw 24px;display:flex}.auth-card{width:min(100%,430px)}.auth-heading{margin-bottom:30px}.auth-heading h2{color:var(--ink-deep);letter-spacing:-.04em;margin:0 0 10px;font-size:35px}.auth-heading p{color:var(--muted);margin:0;line-height:1.5}.auth-form{flex-direction:column;gap:18px;display:flex}.checkbox-row{color:#5c6e67;cursor:pointer;align-items:center;gap:9px;font-size:13px;display:flex}.checkbox-row input{width:16px;height:16px;accent-color:var(--ink)}.auth-switch{color:var(--muted);text-align:center;margin:24px 0 0;font-size:14px}.auth-switch a{color:var(--ink);font-weight:700}.auth-footer{color:#9ba8a3;margin:auto 0 0;padding-top:40px;font-size:12px}.mobile-brand{display:none}.app-shell{min-height:100vh}.desktop-only-message{display:none}.topbar{z-index:40;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff2;justify-content:space-between;align-items:center;height:76px;padding:0 30px;display:flex;position:sticky;top:0}.topbar__actions{align-items:center;gap:17px;display:flex}.app-nav{border:1px solid var(--line);background:#f8faf9;border-radius:11px;align-items:center;gap:4px;margin-left:auto;margin-right:32px;padding:4px;display:flex}.app-nav a{color:#71817b;border-radius:7px;padding:7px 12px;font-size:12px;font-weight:700;text-decoration:none;transition:all .18s}.app-nav a:hover{color:var(--ink)}.app-nav .app-nav__active{color:var(--ink-deep);background:#fff;box-shadow:0 2px 7px #173b3214}.user-chip{align-items:center;gap:10px;display:flex}.user-chip--link{color:inherit;text-decoration:none}.user-chip--link:hover .user-chip__text strong{color:#4f7165}.profile-page{background:var(--canvas);min-height:100vh}.profile-content{width:min(920px,100% - 56px);margin:0 auto;padding:58px 0 72px}.profile-heading{margin-bottom:30px}.profile-heading h1{color:var(--ink-deep);letter-spacing:-.05em;margin:0;font-size:38px}.profile-heading p{color:var(--muted);margin:10px 0 0;font-size:15px}.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.profile-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:27px;box-shadow:0 12px 32px #173b320a}.profile-card__heading{margin-bottom:22px}.profile-card__heading .eyebrow{margin-bottom:6px}.profile-card h2{color:var(--ink-deep);letter-spacing:-.04em;margin:0;font-size:21px}.profile-card__actions{justify-content:flex-end;margin-top:5px;display:flex}.profile-success{color:#356c4c;background:#eaf6ee;border-radius:9px;margin:-7px 0 18px;padding:10px 12px;font-size:12px;font-weight:650}.field small{color:#85948e;font-size:11px}.user-avatar{color:#fff;background:var(--ink);border-radius:11px;place-items:center;width:36px;height:36px;font-size:13px;font-weight:700;display:grid}.user-chip__text{flex-direction:column;display:flex}.user-chip__text strong{color:var(--ink-deep);font-size:13px}.user-chip__text small{color:#8a9994;font-size:10px}.icon-button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.icon-button:hover{background:#f3f7f5}.icon-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px}.workspace{grid-template-columns:345px minmax(0,1fr);min-height:calc(100vh - 76px);display:grid}.project-sidebar{border-right:1px solid var(--line);background:#f9fbf9;flex-direction:column;height:calc(100vh - 76px);padding:27px 22px 20px;display:flex;position:sticky;top:76px}.sidebar-heading{justify-content:space-between;align-items:center;padding:0 4px 18px;display:flex}.sidebar-heading h1{color:var(--ink-deep);letter-spacing:-.04em;margin:0;font-size:26px}.add-button{width:39px;height:39px;color:var(--ink-deep);background:var(--mint);cursor:pointer;border:0;border-radius:12px;place-items:center;padding:0;display:grid}.add-button svg{fill:none;stroke:currentColor;stroke-width:2.3px;stroke-linecap:round;width:20px;height:20px}.add-button:hover{background:var(--mint-hover)}.search-box{border:1px solid var(--line);background:#fff;border-radius:11px;align-items:center;gap:9px;height:42px;padding:0 12px;display:flex}.search-box svg{fill:none;stroke:#82928d;stroke-width:1.8px;width:17px}.search-box input{min-width:0;color:var(--ink);background:0 0;border:0;outline:0;flex:1;font-size:13px}.search-box input::placeholder{color:#a1aca8}.project-filters{flex-direction:column;gap:8px;display:flex}.origin-filter{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:center;gap:8px;height:38px;padding:0 11px;display:flex}.origin-filter svg{fill:none;stroke:#82928d;stroke-width:1.8px;stroke-linecap:round;flex:0 0 16px;width:16px}.origin-filter select{color:#60736b;cursor:pointer;background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:12px}.list-label{color:#7d8c87;letter-spacing:.11em;text-transform:uppercase;justify-content:space-between;padding:22px 5px 10px;font-size:10px;font-weight:700;display:flex}.project-list{scrollbar-width:thin;flex-direction:column;flex:1;gap:7px;min-height:0;padding-right:3px;display:flex;overflow-y:auto}.project-list-item{position:relative}.project-card{text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:14px;flex-direction:column;gap:13px;width:100%;padding:16px 46px 16px 16px;transition:all .18s;display:flex}.project-card:hover{background:#fff;border-color:#dde7e2}.project-card--active{background:#fff;border-color:#d9e5df;box-shadow:0 8px 26px #173b3212}.project-card__top{justify-content:space-between;align-items:flex-start;gap:10px;min-width:0;display:flex}.project-card__top strong{color:var(--ink-deep);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.project-delete-button{z-index:1;color:#b34f42;cursor:pointer;opacity:1;background:#fff7f5;border:0;border-radius:7px;place-items:center;width:26px;height:26px;padding:0;transition:all .18s;display:grid;position:absolute;top:10px;right:10px}.project-delete-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:14px}.project-delete-button:hover{color:#a43f33;background:#fff0ed}.project-delete-button:focus-visible{outline-offset:2px;outline:2px solid #e48a7d}.project-card__meta{color:#82908c;justify-content:space-between;align-items:center;gap:7px;font-size:10px;display:flex}.origin-chip{color:#5a7469;text-overflow:ellipsis;white-space:nowrap;background:#edf4ef;border-radius:6px;align-items:center;max-width:105px;padding:3px 7px;font-size:9px;font-weight:700;display:inline-flex;overflow:hidden}.date-pill{color:#5c736a;align-items:center;gap:5px;display:inline-flex}.date-pill svg{fill:none;stroke:currentColor;stroke-width:1.8px;width:13px}.date-pill--late{color:#c15b41}.date-pill--muted{color:#9aa6a2}.list-empty{color:#8c9a95;text-align:center;place-items:center;padding:38px 24px;display:grid}.list-empty span{font-size:35px}.list-empty p{max-width:180px;margin:8px 0 0;font-size:12px;line-height:1.5}.archive-note{border-top:1px solid var(--line);color:#84938e;align-items:center;gap:9px;margin:14px 4px 0;padding-top:15px;font-size:11px;display:flex}.archive-note svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:16px}.timeline-panel{background:#fff;min-width:0;padding:34px clamp(30px,4vw,64px) 64px;position:relative}.toast{z-index:50;color:var(--ink);box-shadow:var(--shadow);background:#fff;border:1px solid #cfe0d8;border-radius:12px;align-items:center;gap:9px;padding:13px 17px;font-size:13px;font-weight:600;display:flex;position:fixed;top:92px;right:24px}.toast span{width:21px;height:21px;color:var(--ink-deep);background:var(--mint);border-radius:50%;place-items:center;display:grid}.project-workspace{grid-template-columns:minmax(440px,1fr) minmax(300px,360px);gap:clamp(28px,3vw,56px);max-width:1500px;margin:0 auto;display:grid}.timeline-column{min-width:0}.project-details{background:linear-gradient(145deg,#fff 0%,#f8fbf9 100%);border:1px solid #dce7e1;border-radius:20px;align-self:start;min-width:0;padding:28px;position:sticky;top:104px;box-shadow:0 16px 40px #173b320f}.project-header{flex-direction:column;gap:18px;display:flex}.project-header__toolbar{justify-content:space-between;align-items:flex-start;gap:16px;width:100%;display:flex}.project-header__copy{width:100%}.project-header__labels{flex-direction:column;align-items:flex-start;gap:8px;min-width:0;display:flex}.status-label{color:#668077;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;flex-shrink:0;align-items:center;gap:7px;font-size:10px;font-weight:700;display:inline-flex}.status-label i{background:#73a977;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #e8f3e9}.origin-chip--header{color:#5c7169;background:#edf4ef;max-width:180px;font-size:10px}.project-header h2{color:var(--ink-deep);letter-spacing:-.05em;margin:0;font-size:clamp(32px,2.7vw,42px);line-height:1.06}.project-header__copy>p{width:100%;color:var(--muted);white-space:pre-wrap;margin:12px 0 0;font-size:14px;line-height:1.6}.project-actions{border-top:1px solid #dfe9e4;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding-top:20px;display:grid}.project-actions .btn{width:100%;min-height:48px;padding:0 12px;font-size:12px}.deadline{text-align:right;flex-direction:column;flex:0 0 116px;display:flex}.deadline small{color:#85948f;font-size:10px}.deadline strong{color:var(--ink-deep);margin-top:3px;font-size:15px;line-height:1.35}.deadline--late strong{color:#c15b41}.stats-row{border-top:1px solid #dfe9e4;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:23px 0 0;padding-top:20px;display:grid}.stats-row div{text-align:center;flex-direction:column;align-items:center;gap:4px;display:flex}.stats-row strong{color:var(--ink-deep);font-size:23px;line-height:1}.stats-row span{color:#7b8c86;font-size:10px;line-height:1.35}.timeline-heading{justify-content:space-between;align-items:flex-end;margin:0 0 18px;padding:0 0 0 72px;display:flex}.timeline-heading h3{color:var(--ink-deep);letter-spacing:-.035em;margin:0;font-size:23px}.timeline-heading__count{color:#899792;font-size:11px}.timeline{max-width:920px;position:relative}.timeline:before{content:"";background:#dce6e1;width:1px;position:absolute;top:19px;bottom:25px;left:23px}.timeline-item{grid-template-columns:47px minmax(0,1fr);gap:25px;padding-bottom:17px;display:grid;position:relative}.timeline-point{z-index:2;border:7px solid #fff;border-radius:50%;place-items:center;width:47px;height:47px;display:grid;position:relative}.timeline-point svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px}.timeline-item--pending .timeline-point{color:#b42318;background:#ffe8e5;box-shadow:0 0 0 1px #f0aaa3}.timeline-item--action.timeline-item--planned.timeline-item--completed .timeline-point{color:#3f7a5a;background:#e7f4e9;box-shadow:0 0 0 1px #c9e2cf}.timeline-item--action.timeline-item--completed .timeline-point{color:#496ed1;background:#eef2ff;box-shadow:0 0 0 1px #d9e1fb}.timeline-card{background:#fff;border:1px solid #e0e8e4;border-radius:14px;min-width:0;padding:19px 21px;transition:border .18s,box-shadow .18s,background .18s}.timeline-card:hover{border-color:#cddbd5;box-shadow:0 10px 26px #173b320e}.timeline-card--interactive{cursor:pointer}.timeline-item--action.timeline-item--planned.timeline-item--completed .timeline-card{border-color:#d5e7da}.timeline-item--action.timeline-item--planned.timeline-item--completed .timeline-card:hover{border-color:#afd1b9;box-shadow:0 10px 26px #3f7a5a1a}.timeline-item--action.timeline-item--completed .timeline-card{border-color:#dbe4fb}.timeline-item--action.timeline-item--completed .timeline-card:hover{border-color:#b9caf4;box-shadow:0 10px 26px #496ed11a}.timeline-card--completed>p{color:#28483e;text-decoration:none}.timeline-card__meta{justify-content:space-between;align-items:center;gap:15px;display:flex}.timeline-card__types{align-items:center;gap:7px;display:flex}.timeline-card__actions{align-items:center;gap:14px;display:flex}.timeline-item-actions{align-items:center;gap:9px;display:flex}.timeline-action{color:#70817b;cursor:pointer;background:0 0;border:0;padding:0;font-size:10px;font-weight:700}.timeline-action:hover{color:var(--ink-deep);text-decoration:underline}.timeline-action--danger{color:#b85c43}.timeline-action--danger:hover{color:#953d28}.type-badge{letter-spacing:.1em;text-transform:uppercase;border-radius:6px;padding:4px 8px;font-size:9px;font-weight:800;display:inline-flex}.type-badge--action{color:#4968b8;background:var(--blue-soft)}.type-badge--action-status{color:#9a6634;background:#fff1df}.type-badge--action-status.type-badge--completed{color:#4f7961;background:#e7f4e9}.timeline-card time{color:#82918c;font-size:11px;font-weight:600}.timeline-card time small{color:#a2ada9;font-size:10px;font-weight:400}.timeline-card>p{color:#28483e;text-overflow:ellipsis;white-space:nowrap;margin:12px 0 0;font-size:14px;line-height:1.6;overflow:hidden}.timeline-entry-modal{width:min(560px,100vw - 40px)}.timeline-entry-modal__content{padding:2px 0 8px}.timeline-entry-modal__status{color:#50655d;background:#edf3f0;border-radius:6px;margin-left:6px;padding:5px 8px;font-size:10px;font-weight:750;display:inline-flex}.timeline-entry-modal__content>.rich-text{color:var(--ink-deep);white-space:pre-line;margin:18px 0 22px;font-size:17px;line-height:1.55}.timeline-entry-modal dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;display:grid}.timeline-entry-modal dl div{background:#f6f9f7;border-radius:9px;padding:11px}.timeline-entry-modal dt{color:#8b9994;letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px;font-size:9px;font-weight:750}.timeline-entry-modal dd{color:#3d574d;margin:0;font-size:12px;font-weight:650}.rich-link{color:#3569b8;text-underline-offset:2px;font-weight:650;-webkit-text-decoration:underline #a9c2ea;text-decoration:underline #a9c2ea}.rich-link:hover{color:#214f94;text-decoration-color:currentColor}.action-footer{color:#899690;border-top:1px solid #edf1ef;justify-content:space-between;align-items:center;gap:18px;margin-top:15px;padding-top:13px;font-size:10px;display:flex}.action-toggle{color:#657a72;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;font-size:10px;font-weight:650;display:inline-flex}.action-toggle i{border:1px solid #bdcbc5;border-radius:5px;place-items:center;width:16px;height:16px;font-size:10px;font-style:normal;display:grid}.action-toggle:hover{color:var(--ink-deep)}.action-toggle--done i{border-color:var(--mint-hover);color:var(--ink-deep);background:var(--mint)}.timeline-empty{color:#83928c;padding:45px 25px 55px 72px;position:relative}.timeline-empty__icon{z-index:2;background:var(--sage);border:7px solid #fff;border-radius:50%;place-items:center;width:47px;height:47px;font-size:19px;display:grid;position:absolute;left:0}.timeline-empty h4{color:#466159;margin:0 0 7px;font-size:16px}.timeline-empty p{margin:0;font-size:12px}.modal-backdrop{z-index:70;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0e2b245c;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal-card{background:#fff;border:1px solid #ffffffb3;border-radius:19px;width:min(100%,560px);padding:27px;box-shadow:0 28px 80px #0b261e40}.modal-card__heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.modal-card__heading .eyebrow{margin-bottom:5px}.modal-card h3{color:var(--ink-deep);letter-spacing:-.04em;margin:0;font-size:26px}.modal-card>p{color:var(--muted);margin:12px 0 22px;font-size:13px;line-height:1.6}.modal-close{border:1px solid var(--line);color:#6f817a;cursor:pointer;background:#fff;border-radius:9px;flex-shrink:0;place-items:center;width:33px;height:33px;font-size:23px;font-weight:300;line-height:1;display:grid}.modal-close:hover{background:#f5f8f6}.modal-form{flex-direction:column;gap:17px;display:flex}.modal-form__grid{grid-template-columns:minmax(0,1fr) 160px;gap:14px;display:grid}.modal-form__grid--project-details{grid-template-columns:minmax(0,1fr) 300px}.modal-form__grid--date-range{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-form__grid--action-details{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 200px}.modal-form__grid--action-details .field select{flex:1}.modal-form__actions{justify-content:flex-end;gap:9px;padding-top:3px;display:flex}.modal-card--edit{width:min(100%,650px)}.modal-card--action{width:min(100%,1000px)}.action-form-content{grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr);align-items:stretch;gap:17px;display:grid}.action-context-field{flex-direction:column;display:flex}.action-context-field textarea{resize:vertical;height:100%;min-height:220px}.action-images-field{background:#f7faf8;border:1px solid #dce8e1;border-radius:13px;flex-direction:column;min-height:0;padding:15px;display:flex}.action-images-field__heading{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:11px;display:flex}.action-images-field__heading strong{color:#365349;font-size:12px;display:block}.action-images-field__heading span{color:#81918a;margin-top:3px;font-size:10px;display:block}.action-upload-control{color:#31574a;cursor:pointer;background:#fff;border:1px dashed #a9c0b5;border-radius:9px;align-self:flex-start;align-items:center;min-height:38px;padding:0 13px;font-size:11px;font-weight:750;display:inline-flex}.action-upload-control:hover{background:#f3f8f5;border-color:#628f7c}.action-upload-control input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.action-upload-loading{color:#6f857b;margin:7px 0 0;font-size:10px}.action-image-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.action-image-grid figure{margin:0;position:relative}.action-image-grid img{aspect-ratio:1;object-fit:cover;border:1px solid #d8e5de;border-radius:8px;width:100%;display:block}.action-image-grid figure button{color:#fff;cursor:pointer;background:#c95042;border:2px solid #fff;border-radius:50%;place-items:center;width:21px;height:21px;font-size:16px;line-height:1;display:grid;position:absolute;top:-6px;right:-6px;box-shadow:0 2px 5px #692b2233}.action-image-grid figure button:hover{background:#a83f33;transform:scale(1.08)}.action-image-grid--details{grid-template-columns:repeat(4,minmax(0,1fr));margin:17px 0}.action-image-grid--details button{cursor:zoom-in;background:0 0;border:0;padding:0;transition:transform .15s;display:block}.action-image-grid--details button:hover{transform:translateY(-2px)}.action-image-lightbox{z-index:90;place-items:center;padding:48px;display:grid;position:fixed;inset:0}.action-image-lightbox__backdrop{cursor:zoom-out;background:#000000c2;border:0;position:absolute;inset:0}.action-image-lightbox__close{z-index:2;color:#fff;cursor:pointer;background:#00000042;border:1px solid #ffffff80;border-radius:50%;place-items:center;width:34px;height:34px;font-size:25px;line-height:1;display:grid;position:absolute;top:24px;right:28px}.action-image-lightbox__close:hover{background:#ffffff2e}.action-image-lightbox img{z-index:1;border-radius:10px;max-width:min(1100px,92vw);max-height:88vh;display:block;position:relative;box-shadow:0 24px 70px #0000007a}.modal-card--completion{width:min(100%,590px)}.modal-card--delete{width:min(100%,540px)}.completion-callout{background:#f6faf7;border:1px solid #dce8df;border-radius:12px;align-items:flex-start;gap:11px;margin:18px 0 22px;padding:14px;display:flex}.completion-callout>span{width:22px;height:22px;color:var(--ink-deep);background:var(--mint);border-radius:50%;flex:0 0 22px;place-items:center;font-size:12px;font-weight:800;display:grid}.completion-callout p{color:#597067;margin:0;font-size:12px;line-height:1.55}.completion-callout strong{color:var(--ink-deep)}.delete-callout{background:#fff7f4;border:1px solid #f0d8d0;border-radius:12px;align-items:flex-start;gap:11px;margin:18px 0 22px;padding:14px;display:flex}.delete-callout>span{color:#fff;background:#c15b41;border-radius:50%;flex:0 0 22px;place-items:center;width:22px;height:22px;font-size:13px;font-weight:800;display:grid}.delete-callout p{color:#805b51;margin:0;font-size:12px;line-height:1.55}.delete-callout strong{color:#663c31}.btn--danger{color:#fff;background:#bd593f;border-color:#bd593f}.btn--danger:hover{background:#9d4630;border-color:#9d4630}.workspace-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;max-width:520px;min-height:calc(100vh - 190px);margin:auto;display:flex}.workspace-empty__art{width:120px;height:115px;margin-bottom:20px;position:relative}.workspace-empty__art:before{content:"";background:#cbdad4;width:1px;position:absolute;top:4px;bottom:4px;left:50%}.workspace-empty__art span{background:var(--mint);border:5px solid #fff;border-radius:50%;width:18px;height:18px;position:absolute;left:calc(50% - 9px);box-shadow:0 0 0 1px #cbdad4}.workspace-empty__art span:first-child{top:0}.workspace-empty__art span:nth-child(2){background:var(--orange-soft);top:47px}.workspace-empty__art span:nth-child(3){background:var(--blue-soft);bottom:0}.workspace-empty h2{color:var(--ink-deep);letter-spacing:-.045em;margin:0;font-size:32px}.workspace-empty p{max-width:450px;color:var(--muted);margin:14px 0 25px;font-size:14px;line-height:1.65}@media (width<=980px){.workspace{grid-template-columns:300px minmax(0,1fr)}.project-sidebar{padding-left:16px;padding-right:16px}.timeline-panel{padding-left:28px;padding-right:28px}.project-header{gap:18px}.project-header__toolbar{flex-direction:column;align-items:flex-start;gap:14px}.project-header__aside{justify-content:space-between;width:100%}}@media (width<=760px){.auth-shell{display:block}.auth-story{display:none}.auth-panel{min-height:100vh;padding:32px 24px 22px}.mobile-brand{color:var(--ink-deep);letter-spacing:-.04em;align-items:center;gap:9px;margin-bottom:50px;font-size:21px;font-weight:700;display:flex}.auth-footer{padding-top:50px}}@media (width<=1023px){.app-shell>.topbar,.app-shell>.workspace{display:none}.desktop-only-message{color:#fff;background:var(--ink-deep);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:44px 28px;display:flex}.desktop-only-message .brand{color:#fff;margin-bottom:46px}.desktop-only-message__illustration{color:var(--mint);margin-bottom:28px}.desktop-only-message__illustration svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:120px}.desktop-only-message h1{letter-spacing:-.05em;max-width:560px;margin:0;font-size:clamp(29px,6vw,44px);line-height:1.06}.desktop-only-message p{color:#c0d4cd;max-width:500px;margin:18px 0 22px;font-size:15px;line-height:1.65}.desktop-only-message small{color:#99b9ad;font-size:12px}}.calendar--month{flex:1;grid-template-rows:34px repeat(6,minmax(0,1fr));grid-template-columns:repeat(7,minmax(0,1fr));min-height:0;display:grid}.calendar-day-summary{text-align:left;cursor:pointer;background:#fff;border-top:1px solid #edf2ef;border-bottom:0;border-left:0;border-right:1px solid #edf2ef;align-items:flex-start;min-height:0;padding:11px;transition:filter .16s;display:flex;position:relative}.calendar-day-summary:hover{filter:brightness(.97)}.calendar-day-summary>time{color:#71837b;background:#f1f5f2;border-radius:50%;place-items:center;width:24px;height:24px;font-size:10px;font-weight:750;display:grid}.calendar-day-summary strong{width:45px;height:45px;color:var(--ink-deep);place-items:center;font-size:22px;font-weight:800;line-height:1;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-42%)}.calendar-day-summary--overdue{background:#fff0ed}.calendar-day-summary--today{background:#fff8df}.calendar-day-summary--ok{background:#eef4ff}.calendar-day-summary--future{background:#f1f3f2}.calendar-day-summary.is-outside{opacity:.5}.week-calendar{grid-template-columns:47px minmax(0,1fr);height:650px;display:grid;overflow:auto}.week-calendar__hours{border-right:1px solid #e8efeb;height:1440px;position:relative}.week-calendar__hours span{color:#96a39e;font-size:9px;position:absolute;right:8px;transform:translateY(-6px)}.week-calendar__days{grid-template-columns:repeat(7,minmax(92px,1fr));min-width:700px;display:grid}.week-day{border-right:1px solid #e8efeb;height:1440px;position:relative}.week-day:last-child{border-right:0}.week-day header{z-index:3;color:#8c9994;background:#fffffff2;border-bottom:1px solid #e8efeb;justify-content:center;align-items:center;gap:5px;height:40px;font-size:10px;display:flex;position:sticky;top:0}.week-day header strong{letter-spacing:.06em;text-transform:uppercase;font-size:9px}.week-day header span{border-radius:50%;place-items:center;width:21px;height:21px;display:grid}.week-day.is-today header span{color:var(--ink-deep);background:var(--mint)}.week-day__grid{background:repeating-linear-gradient(#0000 0 59px,#edf2ef 60px);position:absolute;inset:40px 0 0}.week-event{z-index:2;cursor:pointer;background:#a9c1ff;border:0;border-left:4px solid #476fd0;border-radius:5px;min-height:30px;padding:0;transition:filter .15s,transform .15s;position:absolute;left:5px;right:5px}.week-event:hover{z-index:4;filter:brightness(.93);transform:scaleX(1.03)}.week-event--completed{opacity:.55}.day-calendar{flex-direction:column;gap:7px;max-height:500px;padding:16px;display:flex;overflow-y:auto}.day-calendar-item{width:100%;color:inherit;background:#f7f9f8;border:1px solid #0000;border-left:4px solid #a5b4ae;border-radius:9px;grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:11px 12px;transition:filter .15s;display:grid}.day-calendar-item:hover{filter:brightness(.97)}.day-calendar-item__details{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:106px minmax(0,1fr);gap:3px 12px;padding:0;display:grid}.day-calendar-item time{color:#667c72;grid-row:span 3;font-size:11px;font-weight:750}.day-calendar-item__type{color:#7a8d85;letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:800}.day-calendar-item strong{color:var(--ink-deep);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.day-calendar-item small{color:#84938d;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.day-calendar-item__toggle{white-space:nowrap;margin-left:13px}.day-calendar-item--overdue{background:#fff0ed;border-left-color:#d54f42}.day-calendar-item--overdue .day-calendar-item__type{color:#ae4536}.day-calendar-item--planned.day-calendar-item--completed{opacity:1;background:#eaf6ee;border-left-color:#3d8a61}.day-calendar-item--planned.day-calendar-item--completed .day-calendar-item__type{color:#30754e}.day-calendar-item--action.day-calendar-item--completed{opacity:1;background:#eef3ff;border-left-color:#476fd0}.day-calendar-item--action.day-calendar-item--completed .day-calendar-item__type{color:#3e62b9}.calendar-detail-modal{width:min(520px,100vw - 40px)}.calendar-detail-modal--action-images{width:min(900px,100vw - 40px)}.calendar-detail-modal__content{padding:3px 0 6px}.calendar-detail-status{border-radius:6px;margin-bottom:13px;padding:5px 8px;font-size:10px;font-weight:750;display:inline-flex}.calendar-detail-status--planned{color:#a33d32;background:#fff0ed}.calendar-detail-status--action{color:#3e62b9;background:#eef3ff}.calendar-detail-modal h4{color:var(--ink-deep);margin:0 0 20px;font-size:20px;line-height:1.35}.calendar-detail-modal dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;display:grid}.calendar-detail-modal dl div{background:#f6f9f7;border-radius:9px;padding:11px}.calendar-detail-modal dt{color:#8b9994;letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px;font-size:9px;font-weight:750}.calendar-detail-modal dd{color:#3d574d;margin:0;font-size:11px;font-weight:650}.calendar-detail-modal__content--action{padding:4px 0 2px}.calendar-action-detail{gap:18px;min-width:0;display:grid}.calendar-detail-modal__intro{align-items:center;gap:9px;margin-bottom:10px;display:flex}.calendar-detail-modal__intro .calendar-detail-status{margin:0}.calendar-detail-modal__label{color:#8b9994;letter-spacing:.07em;text-transform:uppercase;font-size:10px;font-weight:750}.calendar-action-detail__metadata dl{grid-template-columns:1.25fr .75fr 1fr 1fr;gap:9px}.calendar-action-detail__metadata dl div{min-width:0;padding:10px 12px}.calendar-action-detail__metadata dd{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-action-detail__body{grid-template-columns:minmax(0,1fr);min-width:0;display:grid}.calendar-action-detail--with-images .calendar-action-detail__body{grid-template-columns:minmax(0,1fr) 295px;gap:18px}.calendar-action-context{background:#fff;border:1px solid #dce8e1;border-radius:13px;flex-direction:column;height:320px;min-height:0;padding:16px 18px;display:flex}.calendar-action-context>span{color:#7f9189;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;font-size:10px;font-weight:750;display:block}.calendar-action-context__scroll{scrollbar-color:#b5c9bf transparent;flex:1;min-height:0;padding-right:10px;overflow-y:auto}.calendar-detail-modal__content--action h4{color:var(--ink-deep);overflow-wrap:anywhere;margin:0;font-size:clamp(18px,1.55vw,23px);line-height:1.42}.calendar-action-gallery{background:#f7faf8;border:1px solid #dce8e1;border-radius:13px;flex-direction:column;min-height:320px;padding:13px;display:flex}.calendar-action-gallery__heading{color:#3d574d;justify-content:space-between;align-items:baseline;gap:8px;font-size:12px;font-weight:750;display:flex}.calendar-action-gallery__heading small{color:#8b9994;font-size:10px;font-weight:650}.calendar-action-gallery__main-image{cursor:zoom-in;background:#eaf0ed;border:1px solid #d2e0d8;border-radius:10px;min-height:0;margin:11px 0;padding:0;display:block;position:relative;overflow:hidden}.calendar-action-gallery__main-image img{object-fit:cover;object-position:center;width:100%;height:218px;display:block}.calendar-action-gallery__main-image span{color:#fff;opacity:0;background:#13342bc7;border-radius:6px;padding:5px 7px;font-size:9px;font-weight:750;transition:all .16s;position:absolute;bottom:8px;right:8px;transform:translateY(3px)}.calendar-action-gallery__main-image:hover span{opacity:1;transform:translateY(0)}.calendar-action-gallery__thumbnails{scrollbar-color:#b5c9bf transparent;gap:8px;min-height:66px;padding-bottom:2px;display:flex;overflow-x:auto}.calendar-action-gallery__thumbnails button{cursor:pointer;background:#e7eeea;border:0;border-radius:8px;flex:0 0 58px;padding:0;overflow:hidden}.calendar-action-gallery__thumbnails button.is-selected{outline-offset:0;outline:2px solid #648d7c;box-shadow:0 0 0 3px #648d7c29}.calendar-action-gallery__thumbnails img{object-fit:cover;object-position:center;width:100%;height:58px;display:block}.calendar-detail-modal__actions{margin-top:22px}.calendar-detail-modal__actions .btn{white-space:nowrap}.finance-page{width:min(1280px,100%);min-height:calc(100vh - 76px);margin:0 auto;padding:35px clamp(28px,4vw,62px) 42px}.finance-heading{justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:25px;display:flex}.finance-heading h1{color:var(--ink-deep);letter-spacing:-.055em;margin:6px 0 0;font-size:clamp(32px,3.1vw,45px);line-height:1}.finance-heading p{max-width:610px;color:var(--muted);margin:12px 0 0;font-size:14px}.finance-heading .btn{white-space:nowrap;min-height:48px}.finance-month-toolbar{border:1px solid var(--line);background:#fff;border-radius:16px;align-items:center;gap:9px;margin-bottom:16px;padding:14px;display:flex;box-shadow:0 8px 22px #173b3209}.finance-month-toolbar>div:not(.finance-filters){flex-direction:column;min-width:165px;margin:0 8px;display:flex}.finance-month-toolbar .eyebrow{margin-bottom:3px;font-size:9px}.finance-month-toolbar strong{color:var(--ink-deep);text-transform:capitalize;font-size:15px}.finance-filters{grid-template-columns:repeat(2,minmax(170px,1fr));gap:8px;min-width:0;margin-left:auto;display:grid}.finance-filters .calendar-standard-select{height:39px;min-height:39px;font-size:12px}.finance-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.finance-metric{border:1px solid var(--line);background:#fff;border-radius:15px;padding:17px;box-shadow:0 8px 22px #173b3208}.finance-metric span{color:#81918b;font-size:10px;font-weight:700;display:block}.finance-metric strong{color:var(--ink-deep);letter-spacing:-.045em;margin-top:8px;font-size:21px;display:block}.finance-metric--income strong{color:#36785b}.finance-metric--expense strong{color:#b84c3f}.finance-list-card{border:1px solid var(--line);background:#fff;border-radius:19px;overflow:hidden;box-shadow:0 12px 32px #173b320a}.finance-list-card>header{border-bottom:1px solid #e9efec;justify-content:space-between;align-items:end;gap:18px;padding:21px 23px 16px;display:flex}.finance-list-card h2{color:var(--ink-deep);letter-spacing:-.035em;margin:5px 0 0;font-size:18px}.finance-list-card>header small{color:#84938d;text-align:right;font-size:10px}.finance-list{flex-direction:column;display:flex}.finance-row{border-top:1px solid #edf2ef;grid-template-columns:minmax(260px,1fr) 160px 110px 185px;align-items:center;gap:18px;padding:16px 22px;transition:background .16s;display:grid}.finance-row:first-child{border-top:0}.finance-row:hover{background:#fafcfb}.finance-row--effective{background:#f7fbf8}.finance-row--income .finance-row__kind>span{color:#34775a;background:#e8f5ec}.finance-row--expense .finance-row__kind>span{color:#bb4a3e;background:#fff0ec}.finance-row__kind{align-items:center;gap:12px;min-width:0;display:flex}.finance-row__kind>span{border-radius:10px;flex:none;place-items:center;width:34px;height:34px;font-size:18px;font-weight:800;display:grid}.finance-row__kind small,.finance-row__kind em,.finance-row__amount small{color:#83928c;letter-spacing:.04em;text-transform:uppercase;font-size:9px;font-style:normal;font-weight:700;display:block}.finance-row__kind strong{color:var(--ink-deep);text-overflow:ellipsis;white-space:nowrap;margin:3px 0;font-size:13px;display:block;overflow:hidden}.finance-row__kind em{letter-spacing:0;text-transform:none;font-weight:500}.finance-row__amount{text-align:right}.finance-row__amount strong{color:#284b40;margin-top:4px;font-size:14px;display:block}.finance-status{cursor:pointer;border:1px solid;border-radius:7px;justify-self:center;min-width:95px;padding:7px 8px;font-size:10px;font-weight:750}.finance-status--pending{color:#697a7c;background:#f5f7f7;border-color:#d7dee0}.finance-status--effective{color:#286845;background:#e9f7ec;border-color:#a7d9b3}.finance-row__actions{justify-content:flex-end;align-items:center;gap:9px;display:flex}.finance-row__actions .btn{min-height:35px;padding:0 10px;font-size:10px}.finance-edit-link{color:#527166;cursor:pointer;background:0 0;border:0;font-size:10px;font-weight:750}.finance-edit-link:hover{color:var(--ink-deep)}.finance-empty{text-align:center;padding:56px 25px}.finance-empty>span{color:#88a197;background:#eff5f1;border-radius:50%;place-items:center;width:40px;height:40px;margin:0 auto 11px;font-size:24px;display:grid}.finance-empty h2{font-size:17px}.finance-empty p{color:#81918b;margin:7px 0 0;font-size:12px}.finance-modal{width:min(670px,100vw - 40px)}.finance-month-modal{width:min(440px,100vw - 40px)}.finance-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.finance-form-grid--three{grid-template-columns:.6fr 1fr .9fr}.finance-effective-box{background:#f8fbf9;border:1px solid #e1ebe5;border-radius:12px;grid-template-columns:minmax(180px,.75fr) 1.25fr;align-items:center;gap:18px;padding:14px;display:grid}.finance-active-toggle{cursor:pointer;grid-template-columns:32px 1fr;align-items:center;column-gap:9px;display:grid}.finance-active-toggle input{opacity:0;position:absolute}.finance-active-toggle>span{background:#bdc9c3;border-radius:20px;width:32px;height:18px;transition:background .18s;position:relative}.finance-active-toggle>span:after{content:"";background:#fff;border-radius:50%;width:12px;height:12px;transition:transform .18s;position:absolute;top:3px;left:3px}.finance-active-toggle input:checked+span{background:#78b785}.finance-active-toggle input:checked+span:after{transform:translate(14px)}.finance-active-toggle strong{color:#36554a;font-size:12px}.finance-active-toggle small{color:#82918c;grid-column:2;font-size:9px;line-height:1.35}.finance-form-note{color:#798a83;margin:1px 0 0;font-size:10px;line-height:1.55}@media (width<=900px){.finance-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-row{grid-template-columns:minmax(220px,1fr) 130px 100px}.finance-row__actions{grid-column:1/-1;justify-content:flex-end}.finance-month-toolbar{flex-wrap:wrap}.finance-filters{width:100%;margin-left:0}}.finance-page{flex-direction:column;height:calc(100vh - 76px);min-height:0;padding-top:24px;display:flex;overflow:hidden}.finance-month-toolbar,.finance-metrics{flex:none}.finance-list-card{flex-direction:column;flex:1;min-height:0;display:flex}.finance-list{flex:1;min-height:0;overflow:auto}.finance-new-entry{white-space:nowrap;min-height:40px;padding:0 13px;font-size:11px}.finance-period-toolbar{border:1px solid var(--line);background:#fff;border-radius:16px;flex:none;align-items:end;gap:10px;margin-bottom:16px;padding:13px;display:flex;position:relative;box-shadow:0 8px 22px #173b3209}.finance-period-toolbar>div{min-width:164px;padding:0 6px 4px}.finance-period-toolbar .eyebrow{margin-bottom:4px;font-size:9px;display:block}.finance-period-toolbar strong{color:var(--ink-deep);font-size:14px}.finance-period-toolbar .field{gap:5px;width:104px}.finance-period-toolbar .field>span{font-size:10px}.finance-period-toolbar .field input{min-height:40px;padding:0 10px;font-size:12px}.finance-period-toolbar .btn{min-height:40px;padding:0 13px;font-size:11px}.finance-period-toolbar .finance-new-entry{margin-left:auto}.finance-period-error{position:absolute;bottom:-16px;left:194px}.finance-period-card{min-height:0}.finance-period-card>header{flex:none}.finance-table-filters{grid-template-columns:repeat(2,minmax(145px,1fr));gap:8px;display:grid}.finance-table-filters .calendar-standard-select{height:38px;min-height:38px;font-size:11px}.finance-table-scroll{flex:1;min-height:0;overflow:auto}.finance-table{border-collapse:separate;border-spacing:0;color:#3e564d;width:max-content;min-width:100%;font-size:11px}.finance-table th,.finance-table td{text-align:right;white-space:nowrap;background:#fff;border-bottom:1px solid #edf2ef;border-right:1px solid #edf2ef;min-width:128px;padding:12px 13px}.finance-table thead th{z-index:4;color:#7f9089;letter-spacing:.055em;text-align:center;text-transform:uppercase;background:#fbfcfb;font-size:9px;font-weight:750;position:sticky;top:0}.finance-table tbody tr:hover td{background:#fafcfb}.finance-table__row--income .finance-sticky--name button i{color:#34775a;background:#e8f5ec}.finance-table__row--expense .finance-sticky--name button i{color:#bb4a3e;background:#fff0ec}.finance-sticky{z-index:3;position:sticky;background:#fff!important}.finance-sticky--name{left:0;text-align:left!important;min-width:255px!important}.finance-sticky--category{left:255px;text-align:left!important;min-width:150px!important}.finance-sticky--total{left:405px;box-shadow:4px 0 9px #173b320b;min-width:145px!important}.finance-table thead .finance-sticky{z-index:6;background:#fbfcfb!important}.finance-table tfoot{z-index:5;position:sticky;bottom:0}.finance-table tfoot th{color:#274c40;text-align:right;background:#f1f7f3;border-top:1px solid #cadcd3;border-right:1px solid #dce8e1;padding:13px;font-size:11px}.finance-table tfoot .finance-sticky{z-index:7;background:#f1f7f3!important}.finance-table tfoot .is-negative{color:#b7473a;background:#fff1ed}.finance-sticky--name button{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:0;display:flex}.finance-sticky--name button:hover strong{color:#527a69;text-decoration:underline}.finance-sticky--name i{border-radius:8px;flex:none;place-items:center;width:29px;height:29px;font-size:15px;font-style:normal;font-weight:800;display:grid}.finance-sticky--name small,.finance-sticky--name em{color:#82928b;font-size:9px;font-style:normal;display:block}.finance-sticky--name small{letter-spacing:.04em;text-transform:uppercase;font-weight:700}.finance-sticky--name strong{max-width:190px;color:var(--ink-deep);text-overflow:ellipsis;margin:2px 0;font-size:12px;display:block;overflow:hidden}.finance-table__month{text-align:center!important;padding:0!important}.finance-table__month button{color:#405a50;cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;width:100%;min-height:61px;padding:8px;display:flex}.finance-table__month button:hover{background:#eef6f1}.finance-table__month.is-effective button{background:#edf8ef}.finance-table__month strong{font-size:11px}.finance-table__month small{color:#7d9187;font-size:8px}.finance-table__month.is-effective small{color:#397857;font-weight:750}.finance-table__month>span{color:#b1bdb7}.finance-table__empty{color:#83928c;text-align:center!important;padding:50px!important}.finance-period-toolbar .finance-period-select{width:215px}.finance-period-select__inputs{grid-template-columns:minmax(0,1fr) 72px;gap:6px;display:grid}.finance-period-select__inputs .calendar-standard-select{height:40px;min-height:40px;padding:0 9px;font-size:11px}.finance-table-scroll{flex-direction:column;display:flex}.finance-table{height:100%;min-height:100%}.finance-cell-status{background:#fff;border:1px solid #d5dddd;border-radius:4px;padding:2px 5px;font-weight:750;line-height:1;display:inline-flex;color:#61747a!important;font-size:8px!important}.finance-table__month.is-effective .finance-cell-status{background:#f6fff7;border-color:#9ed1aa;color:#2c734b!important}.finance-table tfoot{bottom:0}.finance-table tbody td{vertical-align:top;height:76px}.finance-table__month button{box-sizing:border-box;justify-content:flex-start;height:75px;min-height:0;padding-top:12px}.finance-sticky--name button{align-items:flex-start}.finance-table tbody .finance-table__filler{height:100%}.finance-table tbody .finance-table__filler td{background:#fff;border-bottom:0;height:100%;padding:0}.finance-table tbody td{vertical-align:middle;text-align:center}.finance-table__month button{justify-content:center;padding-top:8px}.finance-sticky--name button{justify-content:center;align-items:center}.finance-sticky--name i{margin-top:0}.finance-sticky--category,.finance-sticky--total{text-align:center!important}.calendar-edit-form{margin-top:4px}.calendar-edit-form__dates{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.calendar-edit-form__status select{height:47px;min-height:47px;color:var(--ink-deep);background:#fff;border:1px solid #d8e2de;border-radius:11px;padding:0 14px;line-height:1.2;display:block}.executive-summary-modal{width:min(720px,100vw - 40px)}.executive-summary-content{color:#29483e;max-height:min(58vh,560px);padding:4px 3px;font-size:14px;line-height:1.7;overflow-y:auto}.executive-summary-content h4{color:var(--ink-deep);letter-spacing:-.02em;margin:19px 0 8px;font-size:16px}.executive-summary-content h4:first-child{margin-top:0}.executive-summary-content p{margin:0 0 10px}.executive-summary-content ul{margin:0 0 13px;padding-left:20px}.executive-summary-content li{margin:4px 0}.executive-summary-error{color:#a34135;background:#fff0ed;border-radius:10px;margin:4px 0 18px;padding:13px;font-size:13px;line-height:1.5}.calendar-summary-button [wire\:loading]{align-items:center;gap:7px}.summary-loading-spinner{border:2px solid #b4c7be;border-top-color:#34574b;border-radius:50%;width:13px;height:13px;animation:.7s linear infinite summary-spin;display:inline-block}@keyframes summary-spin{to{transform:rotate(360deg)}}.day-calendar-item.day-calendar-item--action.day-calendar-item--planned.day-calendar-item--completed{border-left-color:var(--planned-action-completed-border);background:var(--planned-action-completed);opacity:1}.day-calendar-item.day-calendar-item--action.day-calendar-item--planned.day-calendar-item--completed .day-calendar-item__type{color:var(--ink-deep)}.week-event{right:auto}.week-event.week-event--pending{opacity:1;background:#cbd4d0;border-left-color:#879892}.week-event.week-event--overdue{opacity:1;background:#f4b4aa;border-left-color:#d54f42}.week-event.week-event--action.week-event--completed{opacity:1;background:#a9c1ff;border-left-color:#476fd0}.week-event.week-event--action.week-event--planned.week-event--completed{border-left-color:var(--planned-action-completed-border);background:var(--planned-action-completed)}.calendar-legend{background:#fff;flex:0 0 43px;min-height:43px;margin-top:auto}.calendar-legend__today{background:#ffdf70}.calendar-legend__ok{background:#a9c1ff}.calendar-legend__empty{background:#fff;border:1px solid #d7e0db}.week-calendar-wrapper{flex:1;min-height:0;display:flex;overflow:hidden}.week-calendar{flex:1;height:auto;min-height:0}.day-calendar{flex:1;min-height:0;max-height:none}.week-current-time{z-index:5;pointer-events:none;background:#c7ef5d;height:2px;position:absolute;left:0;right:0;box-shadow:0 1px 4px #53772533}.week-current-time:before{content:"";background:#94c93d;border-radius:50%;width:8px;height:8px;position:absolute;top:50%;left:-3px;transform:translateY(-50%);box-shadow:0 0 0 2px #fff}.week-current-time span{color:#29461f;background:#d9f783;border-radius:5px;padding:3px 5px;font-size:9px;font-weight:800;line-height:1;position:absolute;top:-11px;right:5px;box-shadow:0 2px 5px #4866231f}.finance-sticky--name,.finance-sticky--category,.finance-sticky--total{text-align:center!important}.finance-table tbody .finance-sticky--name{text-align:left!important}.finance-table tbody .finance-sticky--name button{justify-content:flex-start}.finance-delete-confirmation{background:#f8fbf9;border:1px solid #e1ebe5;border-radius:13px;margin:16px 22px 22px;padding:16px}.finance-delete-confirmation strong{color:var(--ink-deep);font-size:14px}.finance-delete-confirmation p{color:#72847c;margin:6px 0 14px;font-size:12px;line-height:1.45}.finance-delete-confirmation>div{justify-content:flex-end;gap:8px;display:flex}.finance-delete-confirmation .btn{min-height:38px;padding:0 12px;font-size:11px}.finance-table__month.is-empty button{background:#fff}.finance-table__month.is-empty button:hover{background:#f4f7f5}.finance-table__month.is-pending button{background:#fff3c4}.finance-table__month.is-pending button:hover{background:#ffe99a}.finance-table__month.is-overdue button{color:#9e3028;background:#fde0db}.finance-table__month.is-overdue button:hover{background:#f8c7bf}.finance-table__month.is-effective button{color:#315eaa;background:#e0ebff}.finance-table__month.is-effective button:hover{background:#cbdcff}.finance-month-modal .modal-form__actions{grid-template-columns:minmax(102px,.9fr) minmax(102px,.9fr) minmax(0,1.2fr);gap:10px;display:grid}.finance-month-modal .modal-form__actions .btn{text-align:center;white-space:normal;min-width:0;min-height:48px;padding:0 10px;font-size:12px;line-height:1.15}.finance-month-modal .finance-delete-confirmation>div{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.finance-month-modal .finance-delete-confirmation .btn{white-space:normal;min-width:0;min-height:43px}.finance-month-modal .finance-delete-confirmation{border-radius:16px;flex-direction:column;gap:15px;margin:26px 0 0;padding:24px;display:flex}.finance-month-modal .finance-delete-confirmation strong{font-size:16px;line-height:1.2}.finance-month-modal .finance-delete-confirmation p{margin:-5px 0 2px;font-size:13px;line-height:1.5}.finance-month-modal .finance-delete-confirmation .field{gap:8px}.finance-month-modal .finance-delete-confirmation .field>span{font-size:13px}.finance-month-modal .finance-delete-confirmation .calendar-standard-select{min-height:48px}.finance-month-modal .finance-delete-confirmation>div{gap:12px;margin-top:3px}.finance-month-modal .finance-delete-confirmation .btn{min-height:46px;padding:0 14px;font-size:12px}.finance-month-delete{flex-direction:column;gap:18px;padding:8px 0 0;display:flex}.finance-month-delete>p{color:#71837a;margin:0;font-size:13px;line-height:1.55}.finance-month-delete .field{gap:8px}.finance-month-delete .field>span{color:#3e584d;font-size:13px}.finance-month-delete .calendar-standard-select{min-height:48px}.finance-month-delete__actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:6px;display:grid}.finance-month-delete__actions .btn{white-space:normal;min-width:0;min-height:48px;padding:0 14px;font-size:12px}.finance-entry-delete{flex-direction:column;gap:24px;padding:8px 0 0;display:flex}.finance-entry-delete>p{color:#71837a;max-width:490px;margin:0;font-size:14px;line-height:1.6}.finance-entry-delete__actions{grid-template-columns:minmax(130px,.8fr) minmax(0,1.2fr);gap:12px;margin-left:auto;display:grid}.finance-entry-delete__actions .btn{white-space:normal;min-width:0;min-height:48px;padding:0 16px;font-size:13px}.finance-table__month button{height:61px;min-height:0;padding:6px}.finance-sticky--name small,.finance-sticky--name em{display:inline}.finance-sticky--name em:before{content:" · "}.finance-sticky--name strong{margin:1px 0 0}.finance-sticky--name i{border-radius:7px;width:26px;height:26px;font-size:13px}.finance-table tbody td{box-sizing:border-box;height:60px;padding:6px 10px}.finance-table__month{padding:0!important}.finance-table__month button{box-sizing:border-box;width:100%;height:60px;padding:5px 6px}.finance-sticky--name button>span{grid-template-columns:max-content minmax(0,1fr);align-items:baseline;column-gap:4px;display:grid}.finance-sticky--name em{text-overflow:ellipsis;white-space:nowrap;grid-area:1/2;overflow:hidden}.finance-sticky--name strong{grid-area:2/1/auto/-1}.finance-table td.finance-table__month.is-empty{background:#fff!important}.finance-table td.finance-table__month.is-pending{background:#fff3c4!important}.finance-table td.finance-table__month.is-overdue{background:#fde0db!important}.finance-table td.finance-table__month.is-effective{background:#e0ebff!important}.finance-table__month button,.finance-table__month.is-pending button,.finance-table__month.is-overdue button,.finance-table__month.is-effective button{background:0 0!important}.finance-sticky--name em{color:#82928b;letter-spacing:.04em;text-transform:uppercase;font-size:9px;font-style:normal;font-weight:700}.finance-table tbody tr{height:48px}.finance-table tbody td{height:48px;padding:3px 8px}.finance-table__month button{height:48px;padding:3px 5px}.finance-sticky--name i{width:22px;height:22px;font-size:12px}.finance-sticky--name strong{font-size:11px;line-height:1.1}.finance-sticky--name small,.finance-sticky--name em{font-size:8px;line-height:1}.finance-controls{flex:none;align-items:stretch;gap:12px;margin-bottom:12px;display:flex}.finance-metrics--compact{grid-template-columns:repeat(4,minmax(112px,1fr));gap:7px;margin:0;display:grid}.finance-metrics--compact .finance-metric{min-width:112px;box-shadow:none;border-radius:11px;padding:8px 11px}.finance-metrics--compact .finance-metric span{font-size:8px}.finance-metrics--compact .finance-metric strong{letter-spacing:-.025em;margin-top:3px;font-size:14px}.finance-controls__actions{align-items:stretch;gap:8px;margin-left:auto;display:flex}.finance-controls__actions .btn{white-space:nowrap;min-height:100%;padding:0 13px;font-size:11px}.finance-controls__actions .btn svg{width:15px;height:15px}.finance-period-modal{width:min(520px,100vw - 40px)}.finance-period-modal .finance-period-select__inputs{width:100%}.finance-period-modal .calendar-standard-select{min-height:47px}.finance-period-modal .modal-form__actions{margin-top:4px}.finance-metrics--compact{flex:auto;grid-template-columns:repeat(4,minmax(0,1fr))}.finance-metrics--compact .finance-metric{min-width:0}.finance-metrics--compact{grid-template-columns:repeat(5,minmax(0,1fr))}.finance-selected-period{color:#82928b;margin:0;font-size:11px;font-weight:600}.finance-selected-period strong{color:var(--ink-deep);text-transform:capitalize;font-weight:750}.finance-period-card{border-color:#dfe9e4;border-radius:20px;box-shadow:0 14px 36px #173b3209}.finance-period-card>header{background:#fff;min-height:62px;padding:12px 18px}.finance-selected-period{color:#789087;letter-spacing:.01em;background:#f8fbf9;border:1px solid #e2ebe6;border-radius:9px;align-items:center;min-height:34px;padding:0 11px;font-size:10px;display:inline-flex}.finance-selected-period strong{margin-left:4px;font-size:11px}.finance-table-filters{background:#f6f9f7;border:1px solid #e1ebe6;border-radius:10px;gap:6px;padding:4px}.finance-table-filters .calendar-standard-select{background-color:#fff;border-color:#0000;border-radius:7px;height:34px;min-height:34px;padding:0 27px 0 9px;font-size:10px}.finance-table{color:#3d554b}.finance-table thead th{background:#f8faf9;height:44px;padding:9px 10px;font-size:8px}.finance-table th,.finance-table td{border-color:#edf2ef;min-width:112px}.finance-sticky--name{width:230px;max-width:230px;left:0;min-width:230px!important}.finance-sticky--category{width:130px;max-width:130px;left:230px;min-width:130px!important}.finance-sticky--total{width:136px;max-width:136px;left:360px;min-width:136px!important}.finance-table tbody .finance-sticky{background:#fcfdfc!important}.finance-table tbody tr:hover .finance-sticky{background:#f6faf7!important}.finance-table tbody .finance-sticky--total{box-shadow:7px 0 13px #173b320e}.finance-table__month{border-left-color:#e8eeeb!important}.finance-table tfoot th{background:#f2f7f4;height:46px;padding:9px 10px;font-size:10px}.finance-table tfoot .finance-sticky--name{left:0}.finance-table tfoot .finance-sticky--total{left:360px}.finance-table__empty{color:#83948c;background:#fbfcfb!important}.finance-sticky--name button>span{grid-template-rows:repeat(3,minmax(0,auto))}.finance-entry-category{color:#819189;letter-spacing:.02em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;grid-area:3/1/auto/-1;font-size:8px;font-weight:600;line-height:1;overflow:hidden}.finance-table tbody .finance-sticky--category{color:#a46a22;font-size:11px;font-weight:750}.finance-sticky--name button>span{grid-template-rows:minmax(0,1fr) minmax(0,1fr);grid-template-columns:max-content max-content minmax(0,1fr);gap:1px 4px}.finance-sticky--name strong{text-overflow:ellipsis;white-space:nowrap;grid-area:1/1/auto/-1;margin:0;font-size:11px;line-height:1.1;overflow:hidden}.finance-sticky--name small{grid-area:2/1}.finance-sticky--name em{grid-area:2/2}.finance-entry-category{text-overflow:ellipsis;white-space:nowrap;grid-area:2/3;font-size:8px;font-weight:700;overflow:hidden}.finance-entry-category:before{content:" · "}.finance-sticky--name i{opacity:.9}.finance-table__row--expense .finance-table__month strong:before{content:"- "}.finance-table-filters{grid-template-columns:minmax(180px,1fr) repeat(2,minmax(145px,auto))}.finance-title-search{background:#fff;border:1px solid #0000;border-radius:7px;align-items:center;gap:7px;min-width:0;padding:0 9px;display:flex}.finance-title-search:focus-within{border-color:#b8cdc2}.finance-title-search svg{fill:none;stroke:#7c9187;stroke-width:1.8px;flex:none;width:14px;height:14px}.finance-title-search input{width:100%;min-width:0;height:32px;color:var(--ink-deep);font:inherit;background:0 0;border:0;outline:0;padding:0;font-size:10px}.finance-title-search input::placeholder{color:#93a39c}@media (width<=980px){.finance-controls{flex-direction:column;align-items:flex-start}.finance-controls__actions{width:100%;margin-left:0}.finance-controls__actions .btn{min-height:42px}.finance-metrics--compact{grid-template-columns:repeat(4,minmax(0,1fr));width:100%}.finance-metrics--compact .finance-metric{min-width:0}}.calendar-detail-modal .modal-form__actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.calendar-detail-modal .modal-form__actions .btn{text-align:center;justify-content:center;align-items:center;min-height:48px;padding:0 14px;display:inline-flex}.modal-backdrop{overscroll-behavior:contain;overflow-y:auto}.modal-card{max-height:calc(100vh - 48px);overflow:auto}.calendar-detail-modal{overflow:auto}.calendar-detail-modal .modal-card__heading{z-index:1;background:#fff;margin:-27px -27px 18px;padding:27px 27px 14px;position:sticky;top:-27px}.calendar-detail-modal .modal-form__actions{background:#fff;margin:22px -27px -27px;padding:14px 27px 27px;position:sticky;bottom:-27px}.calendar-detail-modal__actions a.btn{color:var(--ink-deep);text-decoration:none}.calendar-detail-modal--action-images .modal-card__heading{margin-bottom:18px}.calendar-detail-modal--action-images .modal-form{gap:16px;display:grid}.calendar-detail-modal--action-images .modal-form>.field:first-child{background:#f8fbf9;border:1px solid #dfe9e4;border-radius:13px;padding:13px 15px}.calendar-detail-modal--action-images .modal-form>.field:first-child>span{color:#71877d;letter-spacing:.07em;text-transform:uppercase;font-size:10px}.calendar-detail-modal--action-images .action-form-content{gap:16px}.calendar-detail-modal--action-images .calendar-edit-form__dates{gap:14px}.calendar-detail-modal--action-images .modal-form__actions{margin-top:2px}.week-event__title{box-sizing:border-box;color:#173b32;text-align:left;overflow-wrap:anywhere;word-break:break-word;min-width:0;max-width:100%;height:100%;padding:5px 7px;font-size:12px;font-weight:500;line-height:1.15;display:block;overflow:hidden}.week-event{contain:paint;overflow:hidden!important}.week-event__title{clip-path:inset(0);position:absolute;inset:0;overflow:hidden!important}.week-event--short .week-event__title{padding:3px 4px;line-height:1}.week-event--compact .week-event__title{padding:4px 5px;line-height:1.08}.week-event--medium .week-event__title{padding:5px 6px;line-height:1.15}.week-event--tall .week-event__title{padding:6px 7px}.week-event{touch-action:none;-webkit-user-select:none;user-select:none}.week-event:not(.is-dragging){cursor:grab}.week-event.is-dragging{z-index:7;cursor:grabbing;filter:brightness(.95);opacity:.28}.week-event.is-pending-move{visibility:hidden}.week-calendar.is-updating .week-event{transition:none!important}.week-event--drag-preview{opacity:.62;outline-offset:-2px;outline:2px dashed #194f4185;box-shadow:0 10px 22px #183a3129;z-index:50!important;pointer-events:none!important;margin:0!important;position:fixed!important;right:auto!important}.week-event{box-sizing:border-box;border:1px solid #d8e1dd;border-left-width:4px;border-radius:7px}.week-event.week-event--pending{background:#fff0b8;border-color:#e3c661 #e3c661 #e3c661 #c4951a}.week-event.week-event--overdue{background:#f7b7ad;border-color:#e58678 #e58678 #e58678 #d54f42}.week-event.week-event--action.week-event--completed,.week-event.week-event--action.week-event--planned.week-event--completed{background:#b9ceff;border-color:#779ced #779ced #779ced #476fd0}.calendar-legend__pending{background:#fff0b8}.calendar-legend__overdue{background:#f7b7ad}.calendar-legend__action-completed{background:#b9ceff}
