.xc-habit-root{--hc-ink:#1e293b;--hc-border:#cbd5e1;--hc-muted:#64748b;--hc-accent:#243a53;color:var(--hc-ink);font-family:inherit;min-width:0}.xc-habit-root *{box-sizing:border-box}.xc-habit-intro{max-width:92rem;margin:auto;padding:1.75rem 1.5rem 1.4rem}.xc-habit-eyebrow{font-size:.66rem;letter-spacing:.12em;font-weight:800;color:#7b8ba2}.xc-habit-intro h1{font-size:clamp(1.65rem,3vw,2.4rem);margin:.25rem 0;font-weight:800;line-height:1.2}.xc-habit-intro p{margin:.5rem 0 0;color:#536783;font-size:.94rem;max-width:65ch}.xc-habit-shell{display:grid;grid-template-columns:minmax(290px,350px) minmax(0,1fr);gap:1.35rem;align-items:start;max-width:96rem;margin:auto;padding:0 1.4rem 2.5rem;background:#f8fafc}.xc-habit-controls{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:0;box-shadow:0 2px 3px #11182708;min-width:0;display:flex;flex-direction:column;position:sticky;top:64px;height:calc(100vh - 210px);height:calc(100dvh - 210px);overflow:hidden}.xc-habit-controls-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent;padding:18px;scroll-padding-block:12px}.xc-habit-controls-scroll:focus-visible{outline:2px solid #4e7098;outline-offset:-3px}.xc-habit-controls-scroll::-webkit-scrollbar{width:8px}.xc-habit-controls-scroll::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:8px;border:2px solid #fff}.xc-habit-controls-actions{flex:none;background:#fff;border-top:1px solid #e2e8f0;padding:14px 18px 18px}.xc-habit-controls h2{font-size:.86rem;font-weight:800;margin:0 0 .65rem}.xc-habit-layout-list{display:flex;flex-direction:column;gap:.43rem}.xc-habit-layout-option{width:100%;display:flex;gap:.7rem;align-items:center;text-align:start;min-height:70px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;padding:.5rem .7rem;cursor:pointer;color:#1e293b}.xc-habit-layout-option:focus-visible,.xc-habit-layout-option:hover{background:#f8fafc;border-color:#64748b}.xc-habit-layout-option.is-selected{background:#f8fafc;border:2px solid #33465e;padding:calc(.5rem - 1px) calc(.7rem - 1px)}.xc-habit-layout-option strong{display:block;font-size:.81rem;line-height:1.3}.xc-habit-layout-option small{display:block;font-size:.67rem;color:#64748b;line-height:1.45;margin-top:.2rem}.xc-habit-layout-option b{margin-inline-start:auto;font-size:1rem}.xc-habit-layout-icon{width:44px;height:39px;flex:none;border:1px solid #cbd5e1;background:linear-gradient(#f3f6fa,#fff);display:grid;grid-template-columns:repeat(3,1fr);gap:3px;padding:5px}.xc-habit-layout-icon i{background:#d9e3ef;border:1px solid #bac9d9}.xc-habit-layout-icon.is-weekly{grid-template-columns:repeat(2,1fr)}.xc-habit-layout-icon.is-yearly{grid-template-columns:repeat(6,1fr);gap:2px}.xc-habit-layout-icon.is-challenge{grid-template-columns:repeat(5,1fr);gap:2px}.xc-habit-layout-icon.is-streak i:nth-child(odd){background:#7b9bb0}.xc-habit-rule{height:1px;background:#e2e8f0;margin:1rem 0}.xc-habit-editor-list{display:flex;flex-direction:column;gap:.55rem;max-height:300px;overflow:auto}.xc-habit-editor-row{border:1px solid #e2e8f0;border-radius:11px;padding:8px;background:#fafcff}.xc-habit-editor-top{display:flex;align-items:center;gap:4px}.xc-habit-editor-top input{min-width:0;flex:1}.xc-habit-remove{font-size:1.4rem;width:34px;height:34px;line-height:30px;border-radius:8px;color:#64748b;background:transparent;cursor:pointer;flex:none}.xc-habit-remove:hover{background:#fee2e2;color:#9f1239}.xc-habit-editor-bottom{display:grid;grid-template-columns:minmax(0,1fr) 85px;gap:6px;margin-top:6px}.xc-habit-editor-bottom select{min-width:0}.xc-habit-add-form{display:flex;gap:.45rem;margin-top:.65rem;min-width:0}.xc-habit-add-form input{flex:1;min-width:0}.xc-habit-add-form button{background:#1e293b;color:#fff;font-size:.78rem;font-weight:700;border-radius:9px;padding:0 .65rem;cursor:pointer;max-width:45%}.xc-habit-add-form button:disabled{opacity:.4;cursor:not-allowed}.xc-habit-hint{font-size:.73rem;line-height:1.55;color:#64748b;margin:.6rem 0}.xc-habit-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.xc-habit-challenge-date,.xc-habit-form-grid label{display:block;min-width:0;font-size:.77rem;font-weight:700;color:#475569}.xc-habit-challenge-date input,.xc-habit-form-grid select{display:block;width:100%;margin-top:.25rem;min-width:0;font-weight:600}.xc-habit-challenge-date{margin-top:.8rem}.xc-habit-subtle-button{display:block;width:100%;text-align:center;border:1px solid #dbe3ed;background:#fff;border-radius:9px;color:#41536b;font-size:.76rem;font-weight:600;padding:.65rem .4rem;margin-top:.5rem;cursor:pointer}.xc-habit-subtle-button:hover{background:#f1f5f9}.xc-habit-print-button{width:100%;padding:.9rem .6rem;background:#172337;color:#fff;border-radius:10px;font-weight:800;cursor:pointer}.xc-habit-preview{min-width:0}.xc-habit-preview-bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.5rem 0 1rem;color:#334155;font-size:.83rem}.xc-habit-preview-bar strong{font-size:.89rem;display:block}.xc-habit-preview-bar small{display:block;margin-top:.2rem;color:#64748b;font-size:.73rem}.xc-habit-live-stats{color:#64748b;font-variant-numeric:tabular-nums;white-space:nowrap}.xc-habit-paper{--paper-line:#b5c3d4;--paper-head:#e7edf5;--paper-ink:#1e293b;--paper-accent:#263c53;background:#fff;color:var(--paper-ink);border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 1px 5px #0f172a12;padding:2.5%;min-height:460px;direction:inherit}.xc-habit-paper[data-paper=A4][data-orientation=portrait]{--hc-sheet-ratio:210/297;--hc-page-height:281mm}.xc-habit-paper[data-paper=A4][data-orientation=landscape]{--hc-sheet-ratio:297/210;--hc-page-height:194mm}.xc-habit-paper[data-paper=Letter][data-orientation=portrait]{--hc-sheet-ratio:215.9/279.4;--hc-page-height:263.4mm}.xc-habit-paper[data-paper=Letter][data-orientation=landscape]{--hc-sheet-ratio:279.4/215.9;--hc-page-height:199.9mm}.xc-habit-paper[data-paper=A5][data-orientation=portrait]{--hc-sheet-ratio:148/210;--hc-page-height:194mm}.xc-habit-paper[data-paper=A5][data-orientation=landscape]{--hc-sheet-ratio:210/148;--hc-page-height:132mm}@media screen{.xc-habit-paper{display:flex;flex-direction:column;aspect-ratio:var(--hc-sheet-ratio,297/210)}.xc-habit-grid-scroll{flex:1 1 auto;min-height:0;display:flex;align-items:stretch}.xc-habit-matrix{height:100%}.xc-habit-paper>.xc-habit-routine{flex:1 1 auto;min-height:0}.xc-habit-routine-group{display:flex;flex-direction:column;min-height:0}.xc-habit-routine-group .xc-habit-grid-scroll{flex:1 1 auto;min-height:0}}.xc-habit-paper.xc-habit-theme-minimal{--paper-line:#c3cad1;--paper-head:#f7f7f7;--paper-ink:#181818;--paper-accent:#222}.xc-habit-paper.xc-habit-theme-soft{--paper-line:#c9d9e7;--paper-head:#e8f2fa;--paper-ink:#34455d;--paper-accent:#607fa5}.xc-habit-paper-head{display:flex;align-items:end;justify-content:space-between;gap:.6rem;border-bottom:3px solid var(--paper-accent);padding-bottom:.48rem;margin-bottom:1rem}.xc-habit-paper-head span{font-size:.58rem;font-weight:800;letter-spacing:.095em}.xc-habit-paper-head h2{font-size:clamp(.9rem,2vw,1.45rem);font-weight:800;margin:.15rem 0 0;overflow-wrap:anywhere}.xc-habit-paper-head small{font-size:.65rem;color:#8293aa;white-space:nowrap}.xc-habit-grid-scroll{max-width:100%;overflow-x:auto}.xc-habit-matrix{border:1px solid var(--paper-line);border-collapse:collapse;width:100%;table-layout:fixed;font-variant-numeric:tabular-nums;text-align:center;font-size:.63rem;direction:inherit}.xc-habit-matrix td,.xc-habit-matrix th{border:1px solid var(--paper-line);padding:0;height:45px;vertical-align:middle;overflow:hidden}.xc-habit-matrix thead th{background:var(--paper-head);height:25px;font-size:.64rem;font-weight:800}.xc-habit-matrix td.habit-col,.xc-habit-matrix th.habit-col{width:23%;text-align:start;padding:0 .45rem}.xc-habit-matrix .habit-col span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.xc-habit-matrix .count-col{width:4%;font-size:.62rem}.xc-habit-cell{display:flex;align-items:center;justify-content:center;vertical-align:middle;margin:auto;width:22px;height:22px;background:#fff;border-radius:5px;border:1px solid #93a4b8;cursor:pointer;color:#fff;font-size:.84rem;font-weight:800;transition:background .12s}.xc-habit-cell.is-done{background:#344d68;border-color:#344d68}.xc-habit-cell:not(:disabled):hover{outline:2px solid #a7b9d1;outline-offset:1px}.xc-habit-cell:disabled{cursor:default;opacity:1}.xc-habit-matrix.is-compact td,.xc-habit-matrix.is-compact th{height:39px}.xc-habit-matrix.is-compact .xc-habit-cell{width:15px;height:15px;font-size:.68rem;border-radius:3px}.xc-habit-matrix.is-yearly{min-width:700px}.xc-habit-matrix.is-yearly .habit-col{width:16%}.xc-habit-matrix.is-yearly .count-col{width:4%}.xc-habit-matrix.is-yearly td,.xc-habit-matrix.is-yearly th{height:32px}.xc-habit-matrix.is-yearly .xc-habit-cell{width:13px;height:13px;font-size:.62rem;border-radius:2px}.xc-habit-paper-focus{font-size:.85rem;padding-bottom:.55rem}.xc-habit-streak-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin-bottom:.8rem}.xc-habit-streak-cards div{padding:.6rem .8rem;border:1px solid var(--paper-line);border-radius:7px}.xc-habit-streak-cards small{font-size:.68rem;color:#64748b;display:block}.xc-habit-streak-cards b{display:block;font-size:1.4rem;margin-top:.2rem}.xc-habit-paper>.xc-habit-routine{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.xc-habit-routine-group{min-width:0}.xc-habit-routine-group h3{font-size:.8rem;margin:.1rem 0 .5rem;font-weight:800}.xc-habit-routine .xc-habit-matrix .habit-col{width:38%}.xc-habit-routine .xc-habit-matrix .count-col{width:8%}.xc-habit-routine .xc-habit-cell{width:16px;height:16px}.xc-habit-paper-foot{padding-top:1rem;margin-top:auto;color:#64748b;font-size:.65rem}.xc-habit-preview-guide{color:#64748b;font-size:.73rem;line-height:1.5;margin:.7rem 0}@media(max-width:950px){.xc-habit-shell{grid-template-columns:minmax(0,1fr)}.xc-habit-controls{max-width:none;position:static;top:auto;height:auto;overflow:visible;display:block}.xc-habit-controls-scroll{overflow:visible;min-height:auto;padding:18px;overscroll-behavior-y:auto}.xc-habit-controls-actions{padding:14px 18px 18px}.xc-habit-layout-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.xc-habit-shell{padding:0 .65rem 1rem;gap:.65rem}.xc-habit-intro{padding:1rem}.xc-habit-layout-list{grid-template-columns:1fr}.xc-habit-controls-actions,.xc-habit-controls-scroll{padding:.7rem}.xc-habit-paper{padding:1rem;min-height:340px}.xc-habit-matrix{min-width:580px}.xc-habit-matrix.is-yearly{min-width:650px}.xc-habit-paper>.xc-habit-routine{grid-template-columns:1fr}.xc-habit-live-stats{display:none}.xc-habit-paper-head h2{font-size:.92rem}}@media print{body,html{background:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.xc-habit-controls,.xc-habit-intro,.xc-habit-preview-bar,.xc-habit-preview-guide,.xc-site-header,footer:not(.xc-habit-paper-foot){display:none!important}.xc-habit-preview,.xc-habit-root,.xc-habit-shell{display:block!important;max-width:none!important;margin:0!important;padding:0!important;background:#fff!important;overflow:visible!important}.xc-habit-paper{flex-direction:column!important;width:100%!important;height:var(--hc-page-height)!important;max-height:var(--hc-page-height)!important;border:0!important;box-shadow:none!important;border-radius:0!important;padding:0!important;break-inside:avoid;page-break-inside:avoid}.xc-habit-grid-scroll,.xc-habit-paper{display:flex!important;max-width:100%!important;min-height:0!important}.xc-habit-grid-scroll{align-items:stretch!important;flex:1 1 0%!important;overflow:visible!important}.xc-habit-matrix{width:100%!important;min-width:0!important;height:100%!important;font-size:7pt}.xc-habit-matrix tbody td,.xc-habit-matrix tbody th{height:0!important}.xc-habit-matrix thead th{height:6mm;font-size:6.5pt}.xc-habit-cell,.xc-habit-matrix.is-compact .xc-habit-cell,.xc-habit-matrix.is-yearly .xc-habit-cell{width:3.1mm!important;height:3.1mm!important;min-width:0!important;min-height:0!important;margin:auto!important;border-radius:1px!important;background:#fff!important;color:var(--paper-ink)!important;font-size:7pt!important;border:.65pt solid var(--paper-ink)!important}.xc-habit-cell.is-done{background:#fff!important;color:#1e293b!important;font-weight:800!important}.xc-habit-paper-head h2{font-size:15pt}.xc-habit-paper-foot{font-size:6pt}.xc-habit-paper>.xc-habit-routine{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;flex:1 1 0%!important;min-height:0!important}.xc-habit-routine-group{display:flex!important;flex-direction:column!important;min-height:0!important}.xc-habit-paper-focus,.xc-habit-paper-foot,.xc-habit-paper-head,.xc-habit-streak-cards{flex:none!important}}.xc-habit-week-nav{display:flex;gap:.35rem;align-items:center;justify-content:space-between;margin-top:.7rem;font-size:.72rem}.xc-habit-week-nav button{background:#f1f5f9;border:1px solid #dbe3ed;border-radius:8px;min-width:36px;min-height:36px;cursor:pointer}.xc-habit-week-nav strong{text-align:center;font-variant-numeric:tabular-nums}.xc-habit-goal-summary{margin:.6rem 0 0;padding:.5rem .7rem;border-radius:8px;background:#eff6ff;color:#1e3a5f;font-size:.76rem;font-weight:700}.xc-habit-live-stats small{display:block;text-align:end;font-size:.69rem;margin-top:.2rem}.xc-habit-generic-name{display:none!important}.xc-habit-routine-group.is-anytime{grid-column:1/-1}@media print{.xc-habit-paper[data-output=blank] .xc-habit-personal-name{display:none!important}.xc-habit-paper[data-output=blank] .xc-habit-generic-name{display:block!important}.xc-habit-paper[data-output=blank] .xc-habit-cell.is-done span{visibility:hidden!important}.xc-habit-paper[data-output=blank] .xc-habit-matrix tbody .count-col{color:transparent!important}.xc-habit-paper[data-output=blank] .xc-habit-stat-count{visibility:hidden!important}.xc-habit-paper[data-output=blank] .xc-habit-cell.is-done{border-color:var(--paper-ink)!important}}.xc-habit-matrix.is-goal .count-col{width:11%}