:root{--paper:#f4f0e8;--card:#fffdf9;--ink:#26332c;--muted:#6f776f;--line:#dedbd2;--forest:#315f49;--forest2:#214a37;--shadow:0 18px 50px rgba(47,57,50,.08);--corpo:#2E9D62;--futuro:#E6B422;--lavoro:#2474D2;--casa:#EC4899;--relazioni:#D94B45;--altro:#8054C7;--felicita:#F97316}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.5 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}.topbar{height:70px;padding:0 max(24px,calc((100vw - 1240px)/2));display:flex;align-items:center;gap:30px;border-bottom:1px solid rgba(66,77,68,.12);position:sticky;top:0;background:rgba(244,240,232,.93);backdrop-filter:blur(14px);z-index:10}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-weight:750;font-family:Georgia,serif;font-size:18px}.brand-mark{display:grid;place-items:center;width:36px;height:36px;padding:4px;background:var(--forest);color:white;border-radius:11px;overflow:hidden}.brand-mark img{display:block;width:100%;height:100%;object-fit:contain}.topbar nav{display:flex;align-self:stretch;margin-left:auto}.nav-btn{border:0;background:transparent;padding:0 18px;color:var(--muted);border-bottom:2px solid transparent}.nav-btn.active{color:var(--forest);border-bottom-color:var(--forest);font-weight:700}.primary,.secondary,.filter,.tab{border-radius:10px;border:1px solid transparent;padding:10px 16px;font-weight:700}.primary{background:var(--forest);color:white;box-shadow:0 5px 14px rgba(49,95,73,.18)}.primary:hover{background:var(--forest2)}.secondary,.filter,.tab{background:var(--card);border-color:var(--line)}.compact{padding:9px 14px}.full{width:100%}.view{display:none}.view.active{display:block}.hero{max-width:1240px;margin:0 auto;padding:58px 24px 34px;display:flex;align-items:end;justify-content:space-between;gap:30px}.eyebrow{margin:0 0 8px;color:var(--forest);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.13em}.hero h1,.page h1{font:500 clamp(34px,5vw,54px)/1.05 Georgia,serif;margin:0 0 12px}.hero>div>p:last-child{color:var(--muted);font-size:17px;margin:0;max-width:590px}.stats{display:flex;background:rgba(255,253,249,.55);border:1px solid var(--line);border-radius:16px;padding:16px}.stats article{min-width:105px;padding:0 18px;border-right:1px solid var(--line);display:flex;flex-direction:column}.stats article:last-child{border:0}.stats strong{font:500 28px Georgia,serif}.stats span{font-size:11px;color:var(--muted)}.workspace{max-width:1240px;margin:0 auto;padding:0 24px 60px;display:grid;grid-template-columns:300px 1fr;gap:24px}.composer,.map-card{background:var(--card);border:1px solid rgba(70,80,71,.13);border-radius:20px;box-shadow:var(--shadow)}.composer{padding:26px;align-self:start}.composer h2,.map-card h2,.modal h2{font:500 24px Georgia,serif;margin:0}.muted{color:var(--muted);margin:8px 0 18px}.composer textarea,.modal textarea,.modal input,.modal select{width:100%;border:1px solid var(--line);border-radius:10px;padding:12px;background:#fff;resize:vertical;margin-top:6px}.composer textarea{margin:8px 0 12px}.composer textarea:focus,.modal input:focus,.modal textarea:focus,.modal select:focus{outline:2px solid #87aa97;outline-offset:1px}.tip{display:flex;gap:10px;margin-top:22px;border-top:1px solid var(--line);padding-top:18px;color:var(--muted);font-size:12px}.tip span{color:#c38f3f}.tip p{margin:0}.map-card{padding:24px;min-height:590px}.map-head,.page-head,.modal-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.legend{display:flex;flex-wrap:wrap;gap:13px;margin:20px 0}.legend span{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:11px}.legend i{width:8px;height:8px;border-radius:50%}.mind-map{height:430px;position:relative;overflow:hidden;background:radial-gradient(circle at center,rgba(99,129,112,.07),transparent 55%);border-radius:14px}.mind-map svg{width:100%;height:100%;display:block}.node{cursor:pointer;filter:drop-shadow(0 5px 7px rgba(40,50,43,.15));transition:transform .2s}.node:hover{transform:scale(1.08);transform-box:fill-box;transform-origin:center}.node.resolved{opacity:.4}.map-empty{height:100%;display:grid;place-items:center;text-align:center;color:var(--muted)}.map-empty span{font:500 23px Georgia,serif}.map-note{text-align:center;color:var(--muted);font-size:11px}.page{max-width:1180px;margin:0 auto;padding:55px 24px}.page-head{margin-bottom:28px}.filters{display:flex;gap:8px;margin-bottom:22px}.filter.active,.tab.active{background:#dfe9e2;border-color:#a8c1b2;color:var(--forest)}.problem-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.problem-card,.solution-card{background:var(--card);border:1px solid var(--line);border-top:4px solid var(--cat);padding:20px;border-radius:14px;box-shadow:0 8px 20px rgba(50,60,53,.04)}.problem-card.resolved{opacity:.62}.problem-card h3,.solution-card h3{margin:10px 0 16px;font:500 20px Georgia,serif}.badges{display:flex;gap:6px;flex-wrap:wrap}.badge{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:4px 8px;border-radius:20px;background:#eee}.card-actions{display:flex;gap:6px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:13px}.card-actions button{border:0;background:transparent;color:var(--forest);padding:5px;font-size:12px;font-weight:700}.card-actions .danger{color:#a95145}.attached{font-size:12px;color:var(--muted);margin:0 0 14px}.solution-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.solution-card{border-top-color:var(--forest)}.solution-card p{color:var(--muted)}dialog{border:0;padding:0;border-radius:18px;box-shadow:0 30px 80px rgba(27,36,31,.28);width:min(520px,calc(100% - 24px));background:var(--card)}dialog::backdrop{background:rgba(31,40,35,.48);backdrop-filter:blur(3px)}.modal{padding:26px}.modal.wide{width:100%}.modal label{display:block;font-size:12px;font-weight:800;margin-top:17px}.icon-btn{border:0;background:#eee9e1;width:34px;height:34px;border-radius:50%;font-size:20px}.modal fieldset{border:0;padding:0;margin:18px 0}.modal legend{font-size:12px;font-weight:800;margin-bottom:8px}.weight-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.weight-choice{border:1px solid var(--line);background:white;border-radius:10px;padding:12px}.weight-choice.active{outline:2px solid var(--forest);background:#edf4ef}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:24px}.check-list{max-height:170px;overflow:auto;border:1px solid var(--line);border-radius:10px}.check-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line);font-size:13px}.check-row:last-child{border:0}.tabs{display:flex;gap:8px;margin-top:20px}.tab-panel{display:none}.tab-panel.active{display:block}.reuse-list{display:grid;gap:8px;margin-top:14px;max-height:180px;overflow:auto}.reuse-option{border:1px solid var(--line);padding:12px;border-radius:10px;background:white;text-align:left}.reuse-option.active{border-color:var(--forest);background:#edf4ef}.reuse-option strong,.reuse-option small{display:block}.reuse-option small{color:var(--muted)}.error{color:#b24c42;min-height:20px;font-size:12px}.empty{grid-column:1/-1;text-align:center;padding:60px 20px;color:var(--muted);border:1px dashed #c8c2b8;border-radius:14px}#toast{position:fixed;right:24px;bottom:24px;background:var(--ink);color:white;padding:12px 18px;border-radius:10px;opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s;z-index:30}#toast.show{opacity:1;transform:none}
.composer-label{display:block;font-size:12px;font-weight:800;margin:4px 0 14px}.composer-label select{display:block;width:100%;margin-top:6px;padding:11px;border:1px solid var(--line);border-radius:10px;background:#fff}.composer-fieldset{border:0;padding:0;margin:0 0 16px}.composer-fieldset legend{font-size:12px;font-weight:800;margin-bottom:7px}.quick-weights{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.quick-weight{border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 3px;font-size:11px}.quick-weight.active{background:#dfe9e2;border-color:#7ba087;color:var(--forest);font-weight:800}.map-tools{display:flex;gap:5px}.map-tool{width:38px;height:38px;padding:0;font-size:18px}.mind-map{touch-action:none;cursor:grab;user-select:none}.mind-map.panning{cursor:grabbing}.node{cursor:grab;transition:none}.node.dragging{cursor:grabbing;filter:drop-shadow(0 9px 10px rgba(40,50,43,.25))}.node:hover{transform:none}.node:hover circle{stroke-width:5}.map-card:fullscreen{width:100vw;height:100vh;max-width:none;border:0;border-radius:0;padding:28px;background:var(--card);display:flex;flex-direction:column;overflow:auto}.map-card:fullscreen .mind-map{height:auto;min-height:360px;flex:1}.map-card:fullscreen .map-note{margin-bottom:0}.solution-context{margin:18px 0 14px;padding:14px;background:#f2efe8;border:1px solid var(--line);border-radius:12px}.context-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.context-problem{font:500 16px Georgia,serif;margin:0}.status-action{flex:none;border:1px solid #9db7a7;background:#fff;color:var(--forest);border-radius:8px;padding:7px 10px;font-size:11px;font-weight:800}.existing-solutions{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.existing-solutions-label{width:100%;margin:0;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.solution-pill{display:inline-flex;align-items:center;gap:5px;background:#dfe9e2;color:var(--forest2);border-radius:20px;padding:5px 9px;font-size:11px;font-weight:700}.solution-pill:before{content:"✓";font-weight:900}.no-existing{font-size:11px;color:var(--muted);margin:8px 0 0}.problem-picker-head{display:flex;align-items:center;justify-content:space-between;margin:14px 0 7px}.problem-picker-head p{margin:0;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.problem-picker-head span{font-size:10px;color:var(--muted)}.check-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:150px;overflow:auto;border:0;padding:2px}.check-row{position:relative;display:block;padding:0;border:0;cursor:pointer}.check-row input{position:absolute;opacity:0;pointer-events:none}.check-row span{display:flex;align-items:center;min-height:44px;padding:8px 10px 8px 32px;border:1px solid var(--line);border-radius:9px;background:#fff;font-size:11px;line-height:1.3;transition:.15s}.check-row span:before{content:"";position:absolute;left:10px;width:14px;height:14px;border:1.5px solid #aaa;border-radius:4px;background:#fff}.check-row input:checked+span{border-color:#83a691;background:#e8f0eb;color:var(--forest2);font-weight:700}.check-row input:checked+span:before{content:"✓";display:grid;place-items:center;background:var(--forest);border-color:var(--forest);color:#fff;font-size:10px}.check-row:hover span{border-color:#9eb3a6}.bulk-bar{display:flex;align-items:center;gap:12px;margin:-8px 0 18px;padding:10px 12px;background:rgba(255,253,249,.65);border:1px solid var(--line);border-radius:11px}.bulk-bar span{font-size:11px;color:var(--muted);margin-right:auto}.bulk-select,.bulk-delete{border:0;background:transparent;font-size:11px;font-weight:800;padding:5px 7px}.bulk-select{color:var(--forest)}.bulk-delete{color:#b0443c}.bulk-delete:disabled{color:#aaa;cursor:not-allowed}.problem-select{position:absolute;top:14px;right:14px;width:20px;height:20px;accent-color:var(--forest);cursor:pointer}.problem-card{position:relative;padding-right:46px}.problem-card.selected{outline:2px solid #6f9d82;background:#f5faf6}.scroll-sentinel{height:54px;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:11px}.scroll-sentinel.done{height:22px}.scroll-sentinel.done span{display:none}.active-solutions-preview{border-top:1px solid var(--line);margin-top:14px;padding-top:16px}.preview-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:10px}.preview-head h3{font:500 18px Georgia,serif;margin:0}.preview-head button{border:0;background:transparent;color:var(--forest);font-size:11px;font-weight:800}.active-solutions-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.active-solution-card{display:flex;align-items:center;gap:9px;text-align:left;border:1px solid var(--line);border-left:4px solid var(--solution-color);background:#fff;border-radius:10px;padding:9px;min-width:0}.active-solution-card:hover{background:#f5f8f6;border-color:#b8c9bf}.solution-rank{display:grid;place-items:center;flex:none;width:20px;height:20px;border-radius:50%;background:var(--solution-color);color:white;font-size:10px;font-weight:800}.active-solution-copy{display:block;min-width:0;flex:1}.active-solution-copy strong,.active-solution-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.active-solution-copy strong{font-size:12px}.active-solution-copy small{font-size:9px;color:var(--muted);margin-top:2px}.usage-count{flex:none;text-align:center;color:var(--muted);font-size:8px;text-transform:uppercase}.usage-count b{display:block;color:var(--ink);font:500 17px Georgia,serif}.preview-empty,.more-solutions{grid-column:1/-1;color:var(--muted);font-size:11px;margin:4px 0}
@media(max-width:850px){.topbar{padding:0 14px;gap:8px}.brand span:last-child{display:none}.topbar nav{margin-left:0;flex:1;justify-content:center}.nav-btn{padding:0 10px}.compact{font-size:0}.compact:first-letter{font-size:18px}.hero{padding-top:36px;display:block}.stats{margin-top:24px;width:100%;justify-content:space-around}.stats article{min-width:0}.workspace{grid-template-columns:1fr}.composer{order:2}.map-card{min-height:510px}.mind-map{height:350px}.problem-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.topbar{height:62px}.hero{padding:30px 16px 22px}.hero h1,.page h1{font-size:36px}.stats{padding:12px}.stats article{padding:0 10px}.stats strong{font-size:22px}.workspace,.page{padding-left:14px;padding-right:14px}.map-card,.composer{padding:18px;border-radius:16px}.map-head .secondary:not(.map-tool){display:none}.mind-map{height:310px}.problem-grid,.solution-grid,.active-solutions-list{grid-template-columns:1fr}.page-head{align-items:flex-start}.page-head .primary{padding:9px 11px}.modal{padding:20px}.weight-choice{padding:10px 5px;font-size:12px}.check-list{grid-template-columns:1fr}.context-top{display:block}.status-action{margin-top:9px}}
.mind-map{height:560px}
.node-label,.category-label{fill:#fff;paint-order:stroke fill;stroke:#111;stroke-width:2.35px;stroke-linejoin:round;stroke-linecap:round;letter-spacing:.01em;pointer-events:none}
.task-node{cursor:pointer;filter:drop-shadow(0 4px 5px rgba(40,50,43,.13))}.task-node:hover rect:first-of-type{stroke-width:4}
.solution-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.solution-card-head strong{font-size:11px;color:var(--muted)}
.priority-badge{display:inline-flex;padding:4px 8px;border-radius:20px;background:#e4eee8;color:var(--forest2);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.compact-note{font-size:11px;margin:12px 2px 0}
.reuse-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 2px 4px}.reuse-head p{margin:0;font-size:11px;font-weight:800}.reuse-head span{color:var(--muted);font-size:10px}.reuse-option.multi{display:grid;grid-template-columns:22px 1fr;align-items:center;gap:9px;width:100%}.reuse-check{display:grid;place-items:center;width:20px;height:20px;border:1.5px solid #a9afa9;border-radius:6px;color:#fff;font-size:12px;font-weight:900}.reuse-option.multi.active .reuse-check{background:var(--forest);border-color:var(--forest)}
.add-another{width:100%;margin-top:12px;border-style:dashed}.draft-head{display:flex;align-items:center;justify-content:space-between;margin:16px 2px 6px}.draft-head p{margin:0;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.draft-head span{font-size:10px;color:var(--muted)}.solution-drafts{display:grid;gap:6px}.solution-draft{display:flex;align-items:center;gap:10px;padding:9px 10px;border:1px solid #b9cbbf;background:#eef5f0;border-radius:9px}.solution-draft>span{min-width:0;flex:1}.solution-draft strong,.solution-draft small{display:block}.solution-draft strong{font-size:12px}.solution-draft small{color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.solution-draft button{border:0;background:transparent;color:#8c4b45;font-size:18px}.draft-empty{margin:0;padding:10px;border:1px dashed var(--line);border-radius:9px;color:var(--muted);font-size:10px;text-align:center}
@media(max-width:850px){.map-card{min-height:650px}.mind-map{height:500px}}
@media(max-width:560px){.mind-map{height:460px}}
.hero h1{font-size:clamp(28px,4vw,44px)}.sahel-signature{display:inline-flex;align-items:center;gap:.2em;white-space:nowrap;color:#b63e58;font-size:.78em;line-height:1;vertical-align:.08em}.sahel-name{font-family:"Geeza Pro",Tahoma,Arial,sans-serif;font-weight:750}.sahel-heart{color:#d33f60;font-size:1.18em}

.calendar-page{max-width:1380px;margin:0 auto;padding:42px 24px 60px}
.calendar-header{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}
.calendar-header h1{font:500 clamp(34px,5vw,50px)/1.05 Georgia,serif;margin:0}
.calendar-shell{overflow:hidden;background:var(--card);border:1px solid rgba(70,80,71,.13);border-radius:20px;box-shadow:var(--shadow)}
.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border-bottom:1px solid var(--line)}
.calendar-navigation{display:flex;align-items:center;gap:7px;min-width:0}
.calendar-period-picker{display:flex;align-items:center;gap:4px;height:44px;margin-left:8px;padding:4px 7px 4px 5px;border:1px solid #cbd6cf;border-radius:13px;background:linear-gradient(180deg,#fff,#fafcfb);box-shadow:0 3px 10px rgba(43,65,53,.07)}
.calendar-period-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#e4efe8;color:var(--forest);font-size:18px}
.calendar-period-picker>i{width:1px;height:24px;margin:0 2px;background:#dce2de}
.calendar-period-picker label{position:relative;display:block}
.calendar-period-picker label span{position:absolute;z-index:1;top:3px;left:9px;color:#849087;font-size:7px;font-weight:850;text-transform:uppercase;letter-spacing:.08em;pointer-events:none}
.calendar-period-picker select,.calendar-period-picker input{height:36px;border:0;border-radius:8px;background:transparent;padding:11px 8px 0;font-size:13px;font-weight:800;outline:0}
.calendar-period-picker select:hover,.calendar-period-picker input:hover{background:#f0f5f2}
.calendar-period-picker select:focus,.calendar-period-picker input:focus{background:#edf5f0;box-shadow:inset 0 0 0 1.5px #739581}
.calendar-period-picker select{width:118px;padding-right:24px}.calendar-period-picker input{width:73px}
.calendar-arrow{display:grid;place-items:center;width:38px;height:38px;padding:0;font-size:22px}
.calendar-today{height:38px;padding:0 14px}
.calendar-view-switch{display:flex;padding:3px;background:#eeeae3;border-radius:10px}
.calendar-view-switch button{border:0;background:transparent;padding:7px 12px;border-radius:8px;color:var(--muted);font-size:12px;font-weight:750}
.calendar-view-switch button.active{background:#fff;color:var(--forest);box-shadow:0 2px 7px rgba(40,50,43,.12)}
.calendar-content{min-height:650px;background:#fff}
.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--line)}
.calendar-weekdays span{padding:10px;text-align:center;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.calendar-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:repeat(6,minmax(108px,1fr));min-height:650px}
.calendar-month-cell{min-width:0;padding:7px;border-right:1px solid #e8e5df;border-bottom:1px solid #e8e5df;background:#fff;cursor:pointer}
.calendar-month-cell:nth-child(7n){border-right:0}
.calendar-month-cell.outside{background:#faf9f6;color:#a9aaa7}
.calendar-month-cell.today{background:#f4faf6}
.calendar-day-number{display:grid;place-items:center;width:27px;height:27px;margin:0 0 4px auto;border:0;border-radius:50%;background:transparent;font-size:12px}
.calendar-month-cell.today .calendar-day-number,.calendar-column-head.today strong{background:var(--forest);color:#fff}
.calendar-cell-events{display:grid;gap:3px}
.calendar-event{display:flex;align-items:center;gap:5px;width:100%;min-width:0;padding:5px 7px;border:0;border-left:4px solid rgba(0,0,0,.22);border-radius:4px;background:var(--event-color);color:#fff;text-align:left;box-shadow:0 1px 2px rgba(34,40,37,.13);font-size:11px;font-weight:700;line-height:1.25}
.calendar-event:hover{filter:brightness(.94)}
.calendar-event.completed{opacity:.58;filter:saturate(.55)}.calendar-event.completed .calendar-event-title{text-decoration:line-through}.calendar-event-check{flex:none;display:grid;place-items:center;width:14px;height:14px;border-radius:50%;background:rgba(255,255,255,.25);font-size:9px}
.calendar-event-time{flex:none;font-size:9px;font-weight:850;opacity:.9}
.calendar-event-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.calendar-event.compact-event{padding:3px 5px;font-size:10px}
.calendar-event.range-start{border-radius:5px 1px 1px 5px}.calendar-event.range-middle{border-left-color:transparent;border-radius:1px}.calendar-event.range-end{border-left-color:transparent;border-radius:1px 5px 5px 1px}
.calendar-more{border:0;background:transparent;padding:4px 3px;color:var(--forest);font-size:10px;font-weight:800}
.calendar-time-header,.calendar-all-day-row{display:grid;align-items:stretch;border-bottom:1px solid var(--line)}
.calendar-time-view.week .calendar-time-header,.calendar-time-view.week .calendar-all-day-row{grid-template-columns:62px repeat(7,minmax(110px,1fr))}
.calendar-time-view.day .calendar-time-header,.calendar-time-view.day .calendar-all-day-row{grid-template-columns:62px minmax(300px,1fr)}
.calendar-time-header>span,.calendar-all-day-row>span{border-right:1px solid var(--line)}
.calendar-column-head{display:flex;align-items:center;justify-content:center;gap:7px;min-height:62px;border:0;border-right:1px solid var(--line);background:#fff}
.calendar-column-head span{color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase}
.calendar-column-head strong{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;font:500 17px Georgia,serif}
.calendar-all-day-row>span{padding:9px 7px;color:var(--muted);font-size:9px;text-align:right}
.calendar-all-day-cell{min-height:42px;padding:4px;border-right:1px solid var(--line);cursor:pointer}
.calendar-all-day-cell .calendar-event{margin-bottom:3px}
.calendar-scroll{display:grid;grid-template-columns:62px minmax(0,1fr);height:650px;overflow:auto}
.calendar-hours{position:relative;height:1248px;border-right:1px solid var(--line)}
.calendar-hours span{position:absolute;right:7px;transform:translateY(-7px);color:#8a8f8b;font-size:9px}
.calendar-time-columns{display:grid;grid-template-columns:repeat(var(--calendar-columns),minmax(110px,1fr));min-width:max-content}
.calendar-time-column{position:relative;width:100%;min-width:110px;height:1248px;border-right:1px solid var(--line);cursor:pointer;background:#fff}
.calendar-time-column.today{background:#f8fbf9}
.calendar-time-column>i{position:absolute;left:0;right:0;border-top:1px solid #eceae5;pointer-events:none}
.calendar-positioned-event{position:absolute;left:3px;right:3px;z-index:2}
.calendar-positioned-event .calendar-event{height:100%;align-items:flex-start;padding-top:5px}
.calendar-task-modal{width:100%}
.calendar-form-row{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:12px}
.calendar-form-row .calendar-all-day{display:flex;align-items:center;gap:8px;min-height:44px;padding:10px 2px}
.calendar-form-row .calendar-all-day input{width:auto;margin:0;accent-color:var(--forest)}
.calendar-time-fields.disabled{opacity:.4}
.calendar-modal-actions{display:grid;grid-template-columns:auto 1fr auto auto auto;align-items:center;gap:8px}
.calendar-delete{border:0;background:transparent;color:#a44039;padding:9px 0;font-weight:750}
.task-complete-button{border:1px solid #72a184;border-radius:9px;background:#edf6f0;color:var(--forest);padding:9px 12px;font-weight:800}.task-is-completed .task-complete-button{border-color:#aaa;background:#f2f2ef;color:#666}
.organize-actions{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center}

.report-page{max-width:1380px;margin:0 auto;padding:42px 24px 70px}
.report-header{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.report-header h1{font:500 clamp(34px,5vw,50px)/1.05 Georgia,serif;margin:0}.report-header .muted{margin:8px 0 0}
.report-range{display:flex;padding:3px;background:#eae7e0;border-radius:11px}.report-range button{border:0;border-radius:8px;background:transparent;padding:8px 12px;color:var(--muted);font-size:11px;font-weight:800}.report-range button.active{background:#fff;color:var(--forest);box-shadow:0 2px 7px rgba(40,50,43,.12)}
.report-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}.report-summary article{padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--card);box-shadow:0 6px 22px rgba(48,54,48,.05)}.report-summary strong,.report-summary span{display:block}.report-summary strong{font:500 31px Georgia,serif}.report-summary span{margin-top:4px;color:var(--muted);font-size:10px;font-weight:750}.report-summary .positive strong{color:#26764f}.report-summary .negative strong{color:#c04a42}
.report-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:14px}.report-card{min-width:0;padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--card);box-shadow:var(--shadow)}.report-card.report-wide{grid-column:1/-1}.report-card-head{display:flex;align-items:start;justify-content:space-between;gap:16px}.report-card h2{margin:0;font:500 21px Georgia,serif}.report-card-head>span{padding:6px 9px;border-radius:20px;background:#f0f0eb;color:var(--muted);font-size:10px;font-weight:800}.report-card-head>span.improving{background:#e5f2e9;color:#26764f}.report-card-head>span.worsening{background:#f9e8e5;color:#b2423b}
.report-chart{width:100%;margin-top:12px}.report-chart svg{display:block;width:100%;height:250px}.compact-chart svg{height:230px}.report-chart text{fill:#8a8f8b;font-size:10px}.report-chart .chart-value{fill:var(--ink);font:700 14px Inter,sans-serif}.chart-axis{stroke:#dedfd9}
.category-report{display:grid;gap:13px;margin-top:20px}.category-report-row{display:grid;grid-template-columns:10px 72px 1fr 34px;align-items:center;gap:8px}.category-report-row .category-dot{width:9px;height:9px;border-radius:50%}.category-report-row strong{font-size:11px}.category-report-row b{text-align:right;font-size:11px}.category-report-row small{grid-column:3/-1;margin-top:-5px;color:var(--muted);font-size:8px}.category-meter{height:7px;border-radius:10px;background:#ecece7;overflow:hidden}.category-meter i{display:block;height:100%;border-radius:10px}.category-meter i.good{background:#3b9a66}.category-meter i.bad{background:#d65a51}.good-text{color:#26764f}.bad-text{color:#b2423b}.report-note{margin:15px 3px 0;color:var(--muted);font-size:9px}

@media(max-width:850px){
  .topbar nav{overflow-x:auto;justify-content:flex-start}.nav-btn{flex:none}
  .calendar-page{padding:30px 14px 45px}
  .calendar-toolbar{align-items:flex-start;flex-direction:column}
  .calendar-view-switch{align-self:stretch}.calendar-view-switch button{flex:1}
  .calendar-month-grid{grid-template-rows:repeat(6,minmax(92px,1fr))}
  .calendar-event.compact-event .calendar-event-time{display:none}
  .report-summary{grid-template-columns:repeat(2,1fr)}.report-grid{grid-template-columns:1fr}.report-card.report-wide{grid-column:auto}
}
@media(max-width:560px){
  .calendar-header{align-items:flex-start}.calendar-header h1{font-size:36px}
  .calendar-header .primary{font-size:0;padding:10px 13px}.calendar-header .primary:first-letter{font-size:18px}
  .calendar-toolbar{padding:14px}.calendar-navigation{width:100%;flex-wrap:wrap}.calendar-period-picker{order:4;width:100%;margin:4px 0 0}.calendar-period-picker label:first-of-type{flex:1}.calendar-period-picker select{width:100%}
  .calendar-month-grid{min-width:720px}.calendar-weekdays{min-width:720px}.calendar-month{overflow:auto}
  .calendar-content{min-height:590px}.calendar-scroll{height:590px}
  .calendar-form-row{grid-template-columns:1fr}.calendar-modal-actions{grid-template-columns:auto 1fr auto}.calendar-modal-actions .secondary,.calendar-modal-actions span{display:none}
  .report-page{padding:30px 14px 50px}.report-header{align-items:flex-start;flex-direction:column}.report-range{width:100%}.report-range button{flex:1}.report-summary{gap:8px}.report-summary article{padding:14px}.report-summary strong{font-size:25px}.report-card{padding:15px}.category-report-row{grid-template-columns:10px 65px 1fr 30px}
}

#solutionDialog{width:min(720px,calc(100% - 24px));max-height:min(860px,calc(100vh - 24px));overflow:auto}
.solution-wizard-progress{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:9px;margin:22px 0 18px}
.solution-wizard-progress>i{height:1px;background:var(--line)}
.solution-wizard-progress button{display:flex;align-items:center;gap:7px;border:0;background:transparent;padding:0;color:#92958f;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.solution-wizard-progress button span{display:grid;place-items:center;width:25px;height:25px;border:1px solid #c9cbc6;border-radius:50%;background:#fff;font-size:11px}
.solution-wizard-progress button small{font-size:7px;font-weight:700;text-transform:none;letter-spacing:0;color:#9a9c98}
.solution-wizard-progress button.active{color:var(--forest)}
.solution-wizard-progress button.active span{border-color:var(--forest);background:var(--forest);color:#fff}
.solution-wizard-progress button.complete{color:#5e796a}
.solution-wizard-progress button.complete span{border-color:#9db5a7;background:#e8f1eb;color:var(--forest)}
.solution-wizard-panel{display:none;min-height:300px}
.solution-wizard-panel.active{display:block}
.solution-wizard-actions{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center}
.wizard-calendar-choice{padding:4px 2px}
.wizard-calendar-toggle{display:flex!important;align-items:center;gap:12px;margin:0 0 16px!important;padding:14px;border:1px solid #b7c9bd;border-radius:12px;background:#eef5f0;cursor:pointer}
.step-two-task-choice{margin-top:18px!important}
.wizard-calendar-toggle input,.wizard-all-day input{width:auto!important;margin:0!important;accent-color:var(--forest)}
.wizard-calendar-toggle span{display:block}.wizard-calendar-toggle strong,.wizard-calendar-toggle small{display:block}
.wizard-calendar-toggle strong{font-size:13px}.wizard-calendar-toggle small{margin-top:2px;color:var(--muted);font-size:10px;font-weight:500}
#wizardCalendarFields{display:grid;gap:11px;transition:.18s}
#wizardCalendarFields.disabled{opacity:.42}
#wizardCalendarFields>label>small{display:block;margin-top:4px;color:var(--muted);font-size:9px;font-weight:500}
.wizard-schedule-mode{display:grid!important;grid-template-columns:1fr 1fr;gap:8px;margin:4px 0!important}
.wizard-schedule-mode legend{grid-column:1/-1}
.wizard-schedule-mode label{position:relative;margin:0!important;cursor:pointer}
.wizard-schedule-mode input{position:absolute;opacity:0}
.wizard-schedule-mode span{display:block;min-height:68px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fff}
.wizard-schedule-mode strong,.wizard-schedule-mode small{display:block}
.wizard-schedule-mode small{margin-top:4px;color:var(--muted);font-size:9px;font-weight:500}
.wizard-schedule-mode input:checked+span{border-color:#71947f;background:#e8f1eb;box-shadow:inset 0 0 0 1px #71947f}
.wizard-all-day{display:flex!important;align-items:center;gap:8px;margin:1px 0!important}
.wizard-calendar-times.disabled{opacity:.4}
.calendar-all-day{display:flex!important;align-items:center;gap:8px}.calendar-all-day input{width:auto!important;margin:0!important;accent-color:var(--forest)}
.trello-top-button{border:1px solid #138a74;border-radius:9px;background:#fff;color:#087763;padding:8px 11px;font-size:11px;font-weight:850}.trello-top-button.connected:before{content:"●";margin-right:5px;color:#19a974}
.wizard-trello-option{margin-top:7px;padding:13px;border:1px solid #b9d9d2;border-radius:11px;background:#f0f8f6}
.wizard-trello-option>label:first-child{display:flex!important;align-items:center;gap:10px;margin:0!important}.wizard-trello-option input{width:auto!important;margin:0!important;accent-color:#087763}
.wizard-trello-option span strong,.wizard-trello-option span small{display:block}.wizard-trello-option span small{margin-top:2px;color:var(--muted);font-size:9px;font-weight:500}
.wizard-trello-notes{display:flex!important;align-items:center;gap:8px;margin:11px 0 0 25px!important;color:var(--muted)}
.trello-status-card{display:grid;gap:3px;margin:20px 0 14px;padding:14px;border:1px solid #b9d9d2;border-left:5px solid #0b8f78;border-radius:11px;background:#f2faf8}.trello-status-card strong{font-size:13px}.trello-status-card span{color:var(--muted);font-size:10px}
.trello-callback-page{min-height:100vh;display:grid;place-items:center;padding:24px}.trello-callback-page main{width:min(420px,100%);padding:32px;border:1px solid var(--line);border-radius:22px;background:var(--card);box-shadow:var(--shadow);text-align:center}.trello-callback-page .security-mark{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 15px;border-radius:17px;background:#e4f2ed;color:#087763;font-size:24px}.trello-callback-page h1{font:500 28px Georgia,serif}.trello-callback-page p{color:var(--muted)}

.topbar{gap:14px;padding-left:max(24px,calc((100vw - 1380px)/2 + 24px));padding-right:max(24px,calc((100vw - 1380px)/2 + 24px))}.drawer-trigger{display:grid;align-content:center;gap:4px;width:40px;height:40px;padding:0 11px;border:1px solid #d4d1c8;border-radius:11px;background:rgba(255,253,249,.75)}.drawer-trigger:hover{background:#fff;border-color:#aebcaf}.drawer-trigger span{display:block;width:16px;height:2px;border-radius:2px;background:var(--forest)}.topbar-current{margin-left:8px;padding-left:20px;border-left:1px solid var(--line);color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.topbar .compact{margin-left:auto}
.brand-mark{width:44px;height:44px;padding:0;background:transparent;border-radius:0;overflow:visible}.brand-mark img{width:100%;height:100%;object-fit:contain}
.drawer-nav-mark svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.drawer-nav-mark svg .icon-fill{fill:currentColor;stroke:none}
.hero,.workspace,.page{max-width:1380px}.hero{padding:42px 24px 34px}.workspace{padding-left:24px;padding-right:24px}.page{padding:42px 24px 60px}
.context-weight{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding-top:11px;border-top:1px solid #d8d5cd}.context-weight>span{color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.context-weight>div{display:flex;gap:4px}.context-weight button{border:1px solid #d0d1cb;border-radius:8px;background:#fff;padding:5px 8px;color:var(--muted);font-size:9px;font-weight:800}.context-weight button.active{border-color:var(--forest);background:var(--forest);color:#fff}
.drawer-backdrop{position:fixed;inset:0;z-index:79;background:rgba(27,34,29,.42);backdrop-filter:blur(2px)}.drawer-backdrop[hidden]{display:none}.navigation-drawer{position:fixed;z-index:80;top:0;bottom:0;left:0;display:flex;flex-direction:column;width:min(340px,calc(100vw - 34px));padding:22px;background:#fbf8f2;border-right:1px solid #d9d4ca;box-shadow:24px 0 65px rgba(31,40,35,.18);transform:translateX(-105%);visibility:hidden;transition:transform .24s ease,visibility .24s}.navigation-drawer.open{transform:translateX(0);visibility:visible}.drawer-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:24px;border-bottom:1px solid var(--line)}.drawer-brand{font-size:20px}.drawer-close{display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:50%;background:#ece8e0;color:#5e655f;font-size:23px}.drawer-label{margin:24px 10px 9px;color:#8b918b;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.14em}.navigation-drawer nav{display:grid;gap:5px}.navigation-drawer .nav-btn{display:grid;grid-template-columns:38px 1fr;align-items:center;gap:11px;width:100%;padding:11px;border:1px solid transparent;border-radius:13px;background:transparent;color:var(--ink);text-align:left}.navigation-drawer .nav-btn:hover{background:#f0ede6}.navigation-drawer .nav-btn.active{border-color:#b9cebf;background:#e8f1eb;color:var(--forest2);box-shadow:0 4px 13px rgba(49,95,73,.06)}.drawer-nav-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#ebe8e1;color:#69716b;font:800 17px Georgia,serif}.nav-btn.active .drawer-nav-mark{background:var(--forest);color:#fff}.navigation-drawer .nav-btn>span:last-child{min-width:0}.navigation-drawer .nav-btn strong,.navigation-drawer .nav-btn small{display:block}.navigation-drawer .nav-btn strong{font-size:13px}.navigation-drawer .nav-btn small{margin-top:2px;color:var(--muted);font-size:9px;font-weight:550}.drawer-footer{display:grid;gap:13px;margin-top:auto;padding-top:18px;border-top:1px solid var(--line)}.drawer-footer .trello-top-button{width:100%;padding:11px}.drawer-footer p{margin:0;color:#8a908a;font-size:9px;text-align:center}.drawer-open{overflow:hidden}

@media(max-width:560px){
  .solution-wizard-progress button{font-size:0}.solution-wizard-progress button span{font-size:11px}
  .solution-wizard-panel{min-height:340px}.wizard-schedule-mode{grid-template-columns:1fr}
  .solution-wizard-actions{grid-template-columns:auto 1fr auto}.solution-wizard-actions button[value="cancel"]{display:none}
  .topbar{padding:0 12px;gap:9px}.topbar .brand span:last-child{display:none}.topbar .brand-mark{width:40px;height:40px}.topbar-current{margin:0;padding-left:10px;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drawer-trigger{width:38px;height:38px}.navigation-drawer{padding:18px}.navigation-drawer .brand span:last-child{display:inline}
}
