@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@600;700&family=Source+Sans+3:wght@400;600;700&display=swap";:root{--stone-950:#1c1917;--stone-900:#292524;--stone-800:#3d3833;--stone-700:#57534e;--stone-600:#6b655f;--stone-500:#78716c;--stone-300:#d6d3d1;--stone-200:#e7e5e4;--stone-100:#f5f5f4;--surface-plain:#fffcf8;--surface-elevated:#fdf9f2;--amber-700:#b45309;--amber-600:#d97706;--amber-500:#c58e24;--amber-200:#f4dfbf;--olive-600:#516149;--olive-500:#627357;--danger-600:#9a3412;--danger-200:#f5d2cb;--text-main:#312d2b;--text-muted:#5f5853;--card-shadow:0 16px 34px #1c19171c;--card-border:1px solid #e4ddd3}*{box-sizing:border-box}body{color:var(--text-main);background:radial-gradient(circle at 7% -4%,#b4530921,#0000 34%),radial-gradient(circle at 96% 16%,#51614926,#0000 39%),linear-gradient(#f6f4ef 0%,#f3efea 52%,#f8f6f2 100%);min-height:100vh;margin:0;font-family:"Source Sans 3",Trebuchet MS,sans-serif}h1,h2,h3{letter-spacing:.02em;margin:0;font-family:Cormorant Garamond,Georgia,serif;line-height:1.08}p{margin:0}.app-shell{gap:1rem;max-width:76rem;margin:0 auto;padding:1rem 1rem 2.25rem;display:grid}.loading-shell{text-align:center;place-content:center;min-height:100vh}.loading-indicator{justify-items:center;gap:.75rem;display:grid}.loading-spinner{border:3px solid #ded8ce;border-top-color:var(--amber-600);border-radius:50%;width:2rem;height:2rem;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes rise-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.app-header{background:linear-gradient(134deg,#1c1917 0%,#2f2a27 52%,#3f2f1d 100%);border:1px solid #423d39;border-radius:1.1rem;gap:.7rem;padding:1.05rem;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 32px #1c19173d}.app-header:before{content:"";pointer-events:none;background:radial-gradient(circle,#d9770647 0%,#d9770600 68%);border-radius:50%;width:18rem;height:18rem;position:absolute;inset:-30% auto auto -8%}.app-header-main{align-items:center;gap:.9rem;min-width:0;display:flex;position:relative}.app-logo{object-fit:contain;background:#fffdf8;border:1px solid #c9a56a;border-radius:.74rem;flex:none;width:3.35rem;height:3.35rem;padding:.25rem;box-shadow:0 10px 20px #00000042}.eyebrow{text-transform:uppercase;color:#e4c68f;letter-spacing:.1em;font-size:.7rem;font-weight:700}.app-header h1{color:#fff9f0}.subtitle{color:#d7d2cc;max-width:42rem;margin-top:.35rem}.storage-note{color:var(--text-muted);font-size:.9rem}.top-nav{gap:.5rem;padding-bottom:.12rem;display:flex;overflow-x:auto}.nav-item{color:#514a44;background:#fbf8f3;border:1px solid #cfc5b6;border-radius:999px;flex:none;min-width:6.7rem;padding:.56rem .45rem;font-weight:600;transition:border-color .14s,background-color .14s,color .14s,transform .14s}.nav-item:hover{color:#3f3833;border-color:#d3a054}.nav-item:focus-visible{outline-offset:2px;outline:2px solid #d97706}.nav-item.is-active{color:#fff;background:linear-gradient(#d78317 0%,#b15b0f 100%);border-color:#9e4f0d}.panel{border:var(--card-border);box-shadow:var(--card-shadow);background:linear-gradient(#fffdf9 0%,#fef9f0 100%);border-radius:1rem;gap:1rem;padding:1rem;animation:.32s both rise-in;display:grid}.panel-headline{gap:.25rem;display:grid}.panel-headline p{color:var(--text-muted)}.today-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;display:grid}.today-metrics article{text-align:center;background:#f7efe2;border:1px solid #ebdcc5;border-radius:.85rem;padding:.7rem}.today-metrics h3{color:#5a524b;font-size:1rem}.today-metrics p{color:#2f2a26;font-size:1.4rem;font-weight:700}.future-preview-panel{background:#fff9f1;border:1px solid #e8dcc9;border-radius:.92rem;gap:.72rem;padding:.8rem;display:grid}.future-preview-list,.future-preview-intentions{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.future-preview-day{background:#fffdfa;border:1px solid #e5d9c9;border-radius:.76rem;gap:.5rem;padding:.62rem;display:grid}.future-preview-day-header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.future-preview-day-header h4{margin:0;font-size:1.04rem}.future-preview-intention{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.future-preview-intention-main{min-width:0}.future-preview-intention-title{color:#302b27;font-weight:700}.future-preview-intention-meta{color:var(--text-muted);font-size:.86rem}.badge{letter-spacing:.02em;color:#514a43;background:#ede5d6;border-radius:999px;justify-content:center;align-items:center;padding:.2rem .66rem;font-size:.75rem;font-weight:700;display:inline-flex}.badge.subdued{color:#5d554e;background:#ece4d8}.priority-p0{color:#fff;background:#a0331f}.priority-p1{color:#fff;background:#c27114}.priority-p2{color:#fff;background:#60763e}.priority-p3{color:#fff;background:#496a83}.intentions-list,.categories-list,.history-list{gap:.7rem;margin:0;padding:0;list-style:none;display:grid}.intention-card,.category-item,.history-item{background:var(--surface-plain);border:1px solid #e4dac9;border-radius:.85rem;gap:.45rem;padding:.78rem;display:grid}.intention-card-header{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.category-label{color:var(--text-muted);font-size:.92rem}.intention-notes,.meta-row{color:#453e39;line-height:1.35}.intention-card-footer,.button-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.action-button,.secondary-button{border:none;border-radius:.64rem;padding:.5rem .8rem;font-size:.9rem;font-weight:700;transition:background-color .15s,color .15s,transform .15s,box-shadow .15s}.action-button:hover,.secondary-button:hover{transform:translateY(-1px)}.action-button:focus-visible,.secondary-button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.field-help:focus-visible{outline-offset:2px;outline:2px solid #d97706}.action-button{color:#fff;background:linear-gradient(#d78317 0%,#b45a0f 100%);box-shadow:0 6px 16px #b45a0f42}.action-button:disabled{color:#5f5954;box-shadow:none;cursor:not-allowed;background:#d2cbc1;transform:none}.secondary-button{color:#3c352f;background:#ede7dd;border:1px solid #d8cec0}.secondary-button.danger{background:var(--danger-200);color:#7f1d1d;border-color:#e6b8ab}.form-grid,.filters-grid,.settings-grid,.inline-form,.backup-panel{gap:.7rem;display:grid}.form-field,label{color:#4e4540;align-content:start;gap:.25rem;font-weight:600;display:grid}.field-label{align-items:center;gap:.35rem;min-height:1.2rem;display:inline-flex}.field-help{color:#4f453d;cursor:help;background:#e5dac9;border-radius:999px;justify-content:center;align-items:center;width:1rem;height:1rem;font-size:.74rem;font-weight:700;line-height:1;display:inline-flex;position:relative}.field-help:before{content:"?"}.field-help:after{content:attr(data-help);color:#3a342f;white-space:normal;text-wrap:pretty;visibility:hidden;opacity:0;pointer-events:none;z-index:50;background:#fff8ec;border:1px solid #d4b58e;border-radius:.56rem;width:min(22rem,100vw - 2.5rem);max-width:22rem;padding:.45rem .56rem;font-size:.76rem;line-height:1.32;transition:opacity .12s;position:absolute;top:50%;left:calc(100% + .35rem);transform:translateY(-50%);box-shadow:0 12px 24px #1c191729}.field-help:hover:after{visibility:visible;opacity:1}.file-input-group{align-items:center;gap:.35rem;display:inline-flex}input,textarea,select{width:100%;font:inherit;color:var(--text-main);background:#fffdf9;border:1px solid #d4c9b8;border-radius:.56rem;padding:.52rem .66rem}textarea{resize:vertical}.form-grid .form-field input,.form-grid .form-field select,.filters-grid .form-field input,.filters-grid .form-field select,.settings-grid .form-field input,.settings-grid label input{min-height:3.2rem}.form-grid .form-field textarea{min-height:7.2rem}.form-actions,.form-error,.form-warning-grid{grid-column:1/-1}.form-actions,.settings-actions,.today-actions{justify-content:flex-start}.file-input-trigger{cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.file-input-hidden{display:none}.category-main-row{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.compact-field{gap:.35rem}.error-banner,.error-text{color:#7f1d1d;background:#fbe6e0;border:1px solid #efb9a8;border-radius:.82rem;padding:.6rem}.success-text{color:#1f5130;background:#e7f5ea;border:1px solid #b9debf;border-radius:.82rem;padding:.6rem}.cadence-warning-panel{background:var(--surface-elevated);border:1px solid #e4d7c3;border-radius:.9rem;gap:.7rem;padding:.8rem;display:grid}.cadence-warning-list{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.cadence-warning-card{background:#fffdf9;border:1px solid #e4d8c7;border-radius:.76rem;gap:.32rem;padding:.66rem;display:grid}.cadence-warning-card.has-warning{background:#fff7ee;border-color:#d59f66}.cadence-warning-header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.cadence-warning-header h4{margin:0;font-family:"Source Sans 3",Trebuchet MS,sans-serif;font-size:1rem}.cadence-warning-metrics{color:#514840;font-size:.9rem}.cadence-warning-text{color:#3f3833;font-size:.9rem}.cadence-status{letter-spacing:.02em;border-radius:999px;padding:.2rem .55rem;font-size:.72rem;font-weight:700}.status-on-track{color:#29462c;background:#d9e9d9}.status-drift{color:#7a4c0e;background:#f3e0bd}.status-likely{color:#6e3418;background:#f4d6c1}.status-imminent{color:#fff;background:#ad3f32}.empty-state{color:#5e544d}@media (width>=768px){.app-shell{gap:1.25rem;padding:1.5rem}.app-header{grid-template-columns:minmax(0,1fr) auto;align-items:end}.top-nav{grid-template-columns:repeat(5,minmax(0,1fr));display:grid;overflow:visible}.form-grid,.filters-grid,.settings-grid,.inline-form{grid-template-columns:repeat(2,minmax(0,1fr))}.backup-panel{grid-template-columns:minmax(0,1fr)}}@media (width<=767.98px){.field-help:after{width:min(18rem,100vw - 3rem);top:calc(100% + .3rem);left:0;transform:none}.future-preview-day-header,.future-preview-intention{flex-direction:column;align-items:flex-start}}@media (width>=1024px){.app-shell{padding:2rem}.top-nav{max-width:54rem}.form-grid,.filters-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.loading-spinner{animation:none}.panel,.action-button,.secondary-button,.nav-item{transition:none;animation:none}}
