:root{font-family:Montserrat,Arial,Helvetica,sans-serif;line-height:1.5;font-weight:400;color:#4f5661;--lavender: #b8acd1;--soft-blue: #abb194;--sage-green: #aac7df;--light-pink: #eed8eb;--beige-taupe: #d7c5bb;--text-main: #4f5661;--panel-bg: rgba(255, 251, 253, .88);--panel-border: #abb194;--accent: #b8acd1;--accent-deep: #91b5d8;--accent-soft: #eed8eb;--button-text: #ffffff;background:radial-gradient(circle at top left,rgba(238,216,235,.95),transparent 34%),radial-gradient(circle at top right,rgba(170,199,223,.6),transparent 28%),linear-gradient(180deg,#fffdfd,#f4eef3)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:radial-gradient(circle at top left,rgba(238,216,235,.95),transparent 34%),radial-gradient(circle at top right,rgba(170,199,223,.6),transparent 28%),linear-gradient(180deg,#fffdfd,#f4eef3)}button,input,textarea{font:inherit}.app-shell{min-height:100vh;display:grid;grid-template-rows:auto auto 1fr;color:var(--text-main)}.app-header{width:min(820px,calc(100% - 48px));margin:0 auto;padding:24px 0 12px}.app-title{margin:0;font-size:clamp(1.9rem,3vw,2.7rem);letter-spacing:.03em;font-family:Cormorant SC,Georgia,Times New Roman,serif;color:#84749f}.app-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;width:min(820px,calc(100% - 48px));margin:0 auto;padding:0 0 16px}.nav-button{padding:12px 10px;border-radius:14px;border:1px solid var(--panel-border);background:#fffc;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease}.nav-button:hover{transform:translateY(-1px);background:#f8f1f7;border-color:var(--lavender);color:#6e6188;box-shadow:0 10px 22px #9d8fbd24}.nav-button-active{background:var(--accent);color:#fff;border-color:var(--accent)}.app-main{width:min(1180px,100%);margin:0 auto;padding:0 20px 24px}.page-grid{display:grid;grid-template-columns:minmax(280px,.95fr) minmax(360px,1.25fr);gap:18px;align-items:start}.page-column{display:grid;gap:18px}.tracker-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.panel{background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:24px;padding:18px;box-shadow:0 16px 40px #aca3c424;transition:transform .2s ease,box-shadow .2s ease}.panel:hover{transform:translateY(-2px);box-shadow:0 18px 44px #aca3c42e}.panel h2,.panel h3{margin-top:0;margin-bottom:6px}.eyebrow{margin:0 0 10px;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:#8a7ca7}.step-tag{display:inline-flex;align-items:center;justify-content:center;width:fit-content;padding:7px 12px;border-radius:999px;background:#fff;color:#8a7ca7;border:1px solid var(--lavender);font-size:.88rem;font-weight:700}.muted{color:#7e8592}.split-grid{display:grid;gap:12px}.field-grid{display:grid;gap:8px}.field-label{margin:0;font-size:.92rem;font-weight:700}.chip-grid{display:flex;flex-wrap:wrap;gap:10px}.chip-button{padding:9px 14px;border-radius:999px;border:1px solid var(--panel-border);background:#fffdfa;cursor:pointer;transition:transform .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease}.chip-button:hover{transform:translateY(-1px);border-color:var(--lavender);background:#f8f1f7;color:#6e6188;box-shadow:0 10px 22px #9d8fbd24}.chip-button-active,.chip-button-active:hover{background:var(--accent);color:#fffdf9;border-color:var(--accent)}.text-input,.text-area{width:100%;border:1px solid var(--panel-border);border-radius:14px;padding:12px 14px;background:#fffdfd;color:inherit}.text-input:focus,.text-area:focus{border-color:var(--lavender);background:#fffaff;outline:none}.text-area{resize:vertical}.primary-button,.secondary-button{border-radius:14px;padding:11px 16px;cursor:pointer;transition:transform .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease}.primary-button:hover,.secondary-button:hover{transform:translateY(-1px);box-shadow:0 12px 24px #6249361f}.primary-button{border:1px solid var(--accent);background:var(--accent);color:var(--button-text)}.primary-button:hover{background:#9d8fbd;border-color:#9d8fbd}.primary-button:disabled,.secondary-button:disabled{cursor:not-allowed;opacity:.55;box-shadow:none;transform:none}.primary-button:disabled:hover,.secondary-button:disabled:hover{background:inherit;border-color:inherit;color:inherit}.secondary-button{border:1px solid var(--panel-border);background:#fffdfd;color:var(--text-main)}.secondary-button:hover{background:#f8f1f7;border-color:var(--lavender);color:#6e6188}.button-row{display:flex;flex-wrap:wrap;gap:10px}.stat-card{display:grid;gap:8px}.stat-number{margin:0;font-size:2.3rem;font-weight:700}.emoji-badge{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:14px;font-size:1.35rem}.streak-row{display:flex;align-items:center;gap:12px;flex-wrap:nowrap}.streak-heading,.streak-number{margin:0}.entry-list{display:grid;gap:12px}.erp-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.entry-card{border:1px solid var(--panel-border);border-radius:18px;padding:14px;background:#fffdfd;transition:transform .2s ease,box-shadow .2s ease}.entry-card:hover{transform:translateY(-2px);box-shadow:0 12px 26px #aca3c424}.entry-card p{margin:0 0 8px}.entry-card p:last-child{margin-bottom:0}.erp-entry-card{padding:12px}.erp-entry-card p{margin-bottom:6px}.entry-date{font-size:.88rem;color:#8a90a0}.bar-chart{display:grid;gap:10px}.bar-row{display:grid;grid-template-columns:minmax(78px,108px) minmax(0,1fr) auto;gap:10px;align-items:center}.bar-row span{text-align:right;justify-self:end;overflow-wrap:anywhere}.routine-bar-row{grid-template-columns:minmax(132px,168px) minmax(0,1fr) auto}.routine-bar-row span{white-space:normal;overflow-wrap:anywhere;font-size:.92rem}.bar-track{height:12px;border-radius:999px;background:#f3edf7;overflow:hidden}.bar-fill{height:100%;border-radius:inherit;background:#aac7df}.quote-box{min-height:30px;display:grid;align-items:center;justify-items:center;color:#8a7ca7;font-weight:700;text-align:center;transition:opacity .35s ease}.quote-visible{opacity:1}.quote-hidden{opacity:0}.timer-orb{width:180px;aspect-ratio:1;margin:0 auto;border-radius:50%;background:radial-gradient(circle at 30% 30%,#f5edf8,#d8cee9 68%,#b8acd1);display:grid;place-items:center;box-shadow:0 18px 36px #b8acd142;transition:transform .2s ease}.timer-orb-running{animation:breathe 4s ease-in-out infinite}.dbt-orb.timer-orb-running{animation:none}.dbt-orb.timer-orb-running.timer-orb-inhale{animation:inhalePulse 4s linear infinite}.dbt-orb.timer-orb-running.timer-orb-hold{animation:holdStill 4s linear infinite}.dbt-orb.timer-orb-running.timer-orb-exhale{animation:exhalePulse 6s linear infinite}.timer-orb-inner{width:72%;aspect-ratio:1;border-radius:50%;background:#fffdfff0;display:grid;place-items:center}.timer-center{display:grid;justify-items:center;align-content:center}.timer-value{margin:0;font-size:2rem;font-weight:700}.dbt-breath-label{margin:6px 0 0;font-size:.95rem;color:#8a7ca7;font-weight:700}.grounding-area{min-height:42px;padding-top:10px;padding-bottom:10px}.tight-heading{margin-bottom:2px!important}.tight-text{margin-top:0}.timer-helper{text-align:center;margin:0}.timer-button-row{justify-content:center}.equal-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.equal-button{width:100%}.pie-layout{display:grid;justify-content:center;align-items:center}.tracker-center-title,.tracker-center-text{text-align:center}.pie-chart{width:150px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;box-shadow:inset 0 0 0 1px #b8acd12e}.pie-center{width:78px;height:78px;border-radius:50%;display:grid;place-items:center;background:#fffdfd;font-weight:700;font-size:1.15rem}.pie-legend{display:grid;gap:10px}.pie-legend-bottom{justify-content:center;margin-top:14px}.pie-legend p{margin:0;display:flex;align-items:center;gap:10px}.legend-dot{width:12px;height:12px;border-radius:50%;display:inline-block;border:1px solid #abb194}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1f293373;display:grid;place-items:center;padding:20px;z-index:10}.modal-card{width:min(520px,100%);background:#fffdfd;border:1px solid var(--panel-border);border-radius:24px;padding:20px;box-shadow:0 24px 60px #aca3c438}.modal-section{display:grid;gap:6px;margin-bottom:14px}.modal-value{margin:0}.gratitude-text{white-space:pre-wrap}.gratitude-actions{justify-content:flex-end;align-self:start}.gratitude-card-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.gratitude-card-row .gratitude-text{flex:1}@keyframes breathe{0%,to{transform:scale(.94)}50%{transform:scale(1.04)}}@keyframes inhalePulse{0%{transform:scale(.82)}to{transform:scale(.98)}}@keyframes holdStill{0%,to{transform:scale(.98)}}@keyframes exhalePulse{0%{transform:scale(.98)}20%{transform:scale(.95)}40%{transform:scale(.92)}60%{transform:scale(.89)}80%{transform:scale(.86)}to{transform:scale(.82)}}@media (max-width: 860px){.page-grid,.pie-layout{grid-template-columns:1fr}.streak-row{flex-wrap:wrap}.tracker-stats-grid,.erp-card-grid{grid-template-columns:1fr}}@media (max-width: 560px){.app-header{width:min(420px,calc(100% - 32px));padding:20px 0 10px}.app-nav{grid-template-columns:repeat(2,minmax(0,1fr));width:min(420px,calc(100% - 32px));padding:0 0 14px}.app-main{padding:0 16px 20px}.bar-row{grid-template-columns:minmax(66px,92px) minmax(0,1fr) 28px}.routine-bar-row{grid-template-columns:minmax(104px,138px) minmax(0,1fr) 28px}.routine-bar-row span{white-space:normal}.equal-buttons{grid-template-columns:1fr}.timer-orb{width:150px}}
