:root{--bg: #f5f5f5;--panel: #ffffff;--panel-2: #ececec;--text: #111111;--muted: #5f5f5f;--border: #222222;--accent: #111111;--accent-2: #8c8c8c;--success: #2f7d32;--warning: #a06a00;--danger: #9f2d2d;--shadow: 0 10px 24px rgba(0, 0, 0, .08)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif}button,input,textarea,select{font:inherit}button,input,textarea,select{border:1px solid var(--border);border-radius:8px}button{background:var(--panel);color:var(--text);padding:.7rem .9rem;cursor:pointer}input,textarea,select{width:100%;padding:.75rem .85rem;background:#fffdf8;color:var(--text)}textarea{min-height:110px;resize:vertical}.sheet-shell{display:grid;grid-template-columns:220px 1fr;min-height:100vh}.left-rail{background:color-mix(in srgb,var(--accent) 10%,var(--bg));border-right:2px solid var(--border);padding:1rem;display:flex;flex-direction:column;gap:.75rem}.brand-box{background:var(--accent);color:#fff;border-radius:14px;padding:1rem}.brand-box h1{margin:0 0 .3rem}.rail-btn,.accent-btn{width:100%}.rail-btn.active,.accent-btn{background:var(--accent);color:#fff;border-color:var(--accent)}.sheet-main{padding:1rem;display:grid;gap:1rem}.hero-banner{background:var(--accent);color:#fff;border-radius:18px;padding:1rem 1.2rem;display:flex;justify-content:space-between;gap:1rem;align-items:center}.hero-banner h2{margin:0 0 .35rem;text-transform:uppercase;letter-spacing:.04em}.hero-banner p{margin:0;color:#ffffffd9}.hero-controls{display:flex;gap:.75rem}.hero-controls input{background:#fffffff2}.excel-frame{border:4px solid #313131;background:#f3efe6;padding:.75rem;box-shadow:var(--shadow)}.main-board{display:grid;gap:.75rem;grid-template-columns:220px 1fr 240px;grid-template-areas:"left top right" "left matrix right" "bottomLeft bottomGoals bottomNotes"}.panel-box{border:2px solid var(--border);background:var(--panel);box-shadow:var(--shadow);position:relative}.panel-title{background:var(--accent);color:#fff;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:.45rem .65rem;font-size:.92rem}.board-top-chart{grid-area:top}.left-habits{grid-area:left;display:flex;flex-direction:column}.matrix-zone{grid-area:matrix;overflow:hidden}.right-metrics{grid-area:right;display:grid;gap:.6rem}.bottom-left{grid-area:bottomLeft}.bottom-goals{grid-area:bottomGoals}.bottom-notes{grid-area:bottomNotes}.habit-side-list{padding:.5rem;display:grid;gap:.35rem}.habit-link{display:flex;gap:.5rem;align-items:center;text-align:left;background:#fffdf8}.habit-link.active{background:color-mix(in srgb,var(--accent) 10%,white)}.weeks-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:.25rem;padding:.35rem .5rem;background:var(--panel-2);border-bottom:2px solid var(--border);font-size:.82rem;font-weight:700;color:var(--text)}.matrix-scroll{overflow:auto}.sheet-table{border-collapse:collapse;min-width:980px;width:100%}.sheet-table th,.sheet-table td{border:1px solid #aebfd8;text-align:center;padding:.18rem;background:#fffef9}.sheet-table th{position:sticky;top:0;background:var(--panel-2);z-index:3;font-size:.8rem}.sticky-col{position:sticky;left:0;z-index:2;background:#f7f2e8!important}.row-head{min-width:170px;text-align:left!important;cursor:pointer}.row-head-wrap{display:flex;gap:.5rem;align-items:center}.row-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.cell{width:24px;height:24px;padding:0;border-radius:4px;background:#fff}.cell.completed{background:var(--accent);color:#fff}.cell.skipped{background:var(--warning);color:#fff}.cell.missed{background:var(--danger);color:#fff}.small-box{min-height:118px}.donut-box{position:relative}.center-rate{position:absolute;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:1.5rem;font-weight:800;pointer-events:none;top:22px}.small-row,.small-note{display:flex;justify-content:space-between;gap:.5rem;padding:.45rem .6rem;border-top:1px dashed #b6c6da;font-size:.86rem}.metric-big{padding:.75rem;font-size:1.1rem;font-weight:700}.goal-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.5rem;padding:.7rem}.goal-col{background:#fffef9;border:1px solid #b6c6da;padding:.55rem;min-height:130px}.goal-col label{display:block;font-size:.82rem;margin-top:.25rem}.mood-row{display:flex;gap:.4rem;padding:.65rem}.mood-mini{width:38px;height:38px;padding:0}.wide{margin:0 .7rem .7rem;width:calc(100% - 1.4rem)}.chart-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:.6rem}.mini-chart{min-height:150px}.mini-foot{padding:0 .65rem .65rem;color:var(--muted);font-size:.82rem}.settings-layout{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:1rem}.settings-box{padding-bottom:1rem}.preset-row{display:flex;gap:.75rem;padding:.8rem}.theme-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem;padding:.8rem}.theme-field{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.theme-field input{max-width:84px;padding:.2rem;height:40px}.info-list{margin:.75rem 1rem 0}.annual-box{padding-bottom:1rem}.annual-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:1rem}.annual-card{background:#fffef9;border:1px solid #b6c6da;padding:.75rem}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:grid;place-items:center;padding:1rem}.modal{width:min(860px,100%);background:var(--panel);border:2px solid var(--border)}.modal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;padding:1rem}.check-row,.modal-actions{display:flex;gap:1rem;padding:0 1rem 1rem}.modal textarea,.modal>input{margin:0 1rem 1rem;width:calc(100% - 2rem)}.muted{color:var(--muted)}@media (max-width: 1280px){.main-board{grid-template-columns:1fr;grid-template-areas:"top" "left" "matrix" "right" "bottomLeft" "bottomGoals" "bottomNotes"}.chart-strip{grid-template-columns:repeat(4,1fr)}.settings-layout{grid-template-columns:1fr}}@media (max-width: 900px){.sheet-shell{grid-template-columns:1fr}.hero-banner{flex-direction:column;align-items:stretch}.hero-controls{flex-direction:column}.chart-strip{grid-template-columns:repeat(2,1fr)}.annual-grid,.theme-grid,.goal-grid,.modal-grid{grid-template-columns:1fr}}.habit-link-row{display:grid;grid-template-columns:1fr auto;gap:.35rem;align-items:center}.habit-link.main{display:flex;gap:.5rem;align-items:center;text-align:left;background:#fffdf8;width:100%}.habit-link-row.active .habit-link.main{background:color-mix(in srgb,var(--accent) 10%,white)}.mini-actions{display:flex;gap:.25rem}.mini-actions button{padding:.45rem .55rem;min-width:36px;background:#fffdf8}.matrix-zone,.matrix-scroll,.sheet-table,.sheet-table th,.sheet-table td{position:relative;z-index:1}.modal-backdrop{z-index:9998;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal{position:relative;z-index:9999;box-shadow:0 24px 60px #00000040}.sheet-table th,.sheet-table td,.cell,.row-head,.weeks-strip,.panel-box{-webkit-user-select:none;user-select:none}.cell:focus,.cell:focus-visible,.mini-actions button:focus,.mini-actions button:focus-visible,.habit-link.main:focus,.habit-link.main:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.extra-charts{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.extra-chart{min-height:290px}@media (max-width: 900px){.extra-charts{grid-template-columns:1fr}}.mini-chart-body{padding:.9rem .7rem .4rem;display:grid;gap:.8rem;align-items:center}.mini-bar-track{height:14px;border:1px solid var(--border);background:var(--panel-2);position:relative}.mini-bar-fill{height:100%;background:var(--accent)}.mini-stat{font-size:1.5rem;font-weight:700;color:var(--text);text-align:center}@media (display-mode: standalone){body{overscroll-behavior:none}}.install-btn{background:var(--panel);color:var(--text);font-weight:700}.install-help{margin-top:-.25rem}.install-help-body{padding:1rem;display:grid;gap:.75rem}.install-help-body p{margin:0;line-height:1.5}
