.tk-page :focus-visible{outline:3px solid var(--dark-purple);outline-offset:3px}.tk-page ::selection{background:var(--wash-purple);color:var(--ink-text)}.tk-hero{padding-bottom:var(--space-6)}.tk-hero h1{max-width:18ch}.tk-hero-lede{max-width:56ch}.page-hero .tk-hero-note{align-items:center;gap:var(--space-2);margin-top:var(--space-4);color:var(--soft-grey);font-size:var(--text-sm);display:inline-flex}.tk-hero-note-dot{background:var(--cloud-purple);width:8px;height:8px;box-shadow:0 0 0 4px var(--wash-purple);border-radius:50%;flex:none}.tk-body{padding-top:var(--space-6)}.tk-tool{gap:var(--space-9);min-width:0;display:grid}.tk-stack{gap:var(--space-4);min-width:0;display:grid}.tk-stack-lg{gap:var(--space-6);min-width:0;display:grid}.tk-split{gap:var(--space-12);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;display:grid}.tk-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.tk-grid-2{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.tk-grid-3{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.tk-rule{background:#e7e5ec;border:0;height:1px;margin:0}.tk-title{font-size:var(--text-2xl);letter-spacing:-.03em;margin:0}.tk-subtitle{font-size:var(--text-xl);letter-spacing:-.02em;margin:0}.tk-kicker{color:var(--accent);font-size:var(--text-sm);margin:0;font-weight:650}.tk-muted{color:var(--soft-grey);font-size:var(--text-sm);margin:0}.tk-hint{color:var(--soft-grey);font-size:var(--text-xs);margin:0;line-height:1.5}.tk-field{gap:var(--space-2);min-width:0;display:grid}.tk-label{color:var(--ink-text);font-size:var(--text-sm);font-weight:650}.tk-optional{color:var(--soft-grey);font-size:var(--text-xs);font-weight:500}.tk-input,.tk-select,.tk-textarea{border-radius:var(--radius-sm);background:var(--pure-white);width:100%;min-height:48px;color:var(--ink-text);font-size:var(--text-base);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);border:1px solid #dedbe7;padding:11px 14px;line-height:1.4}.tk-input::placeholder,.tk-textarea::placeholder{color:#a29ca3}.tk-input:hover,.tk-select:hover,.tk-textarea:hover{border-color:#c9c5d6}.tk-input:focus,.tk-select:focus,.tk-textarea:focus{border-color:var(--dark-purple);box-shadow:0 0 0 4px var(--wash-purple);outline:none}.tk-input[aria-invalid=true]{border-color:var(--phoenix-pink)}.tk-textarea{resize:vertical;min-height:160px}.tk-select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--dark-purple) 50%), linear-gradient(135deg, var(--dark-purple) 50%, transparent 50%);background-position:calc(100% - 20px),calc(100% - 14px);background-repeat:no-repeat;background-size:6px 6px;padding-right:40px}.tk-btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-6);border-radius:var(--radius-control);background:var(--pure-white);color:var(--ink-text);font-size:var(--text-sm);white-space:nowrap;cursor:pointer;transition:border-color var(--duration-base) var(--ease-out), background-color var(--duration-base) var(--ease-out), color var(--duration-base) var(--ease-out), transform var(--duration-fast) var(--ease-out);border:1px solid #dedbe7;font-weight:650;line-height:1.2;text-decoration:none;display:inline-flex}.tk-btn:hover{border-color:var(--dark-purple);color:var(--dark-purple)}.tk-btn:active{transform:scale(.97)}.tk-btn:disabled,.tk-btn[aria-disabled=true]{opacity:.45;pointer-events:none}.tk-btn-primary{border-color:var(--dark-purple);background:var(--dark-purple);color:var(--pure-white)}.tk-btn-primary:hover{border-color:var(--cloud-purple);background:var(--cloud-purple);color:var(--pure-white)}.tk-btn-soft{background:var(--wash-purple);color:var(--dark-purple);border-color:#0000}.tk-btn-soft:hover{color:var(--dark-purple);background:#e3e2ff;border-color:#0000}.tk-btn-quiet{color:var(--soft-grey);background:0 0;border-color:#0000}.tk-btn-quiet:hover{background:var(--wash-purple);color:var(--dark-purple);border-color:#0000}.tk-btn-danger:hover{border-color:var(--phoenix-pink);background:var(--pure-white);color:var(--phoenix-pink)}.tk-btn-lg{min-height:56px;padding:0 var(--space-9);font-size:var(--text-base);font-weight:700}.tk-btn-block{width:100%}.tk-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.tk-actions-end{justify-content:flex-end}.tk-icon-btn{border-radius:var(--radius-control);color:#a29ca3;width:44px;height:44px;font-size:var(--text-xl);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background:0 0;border:0;flex:none;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex}.tk-icon-btn:hover{background:var(--wash-purple);color:var(--dark-purple)}.tk-icon-btn.is-remove:hover{background:var(--wash-pink);color:var(--phoenix-pink)}.tk-icon-btn svg{width:18px;height:18px}.tk-seg{gap:var(--space-1);padding:var(--space-1);border-radius:var(--radius-control);background:#f3f2f8;flex-wrap:wrap;display:inline-flex}.tk-seg-btn{min-height:40px;padding:0 var(--space-4);border-radius:var(--radius-control);color:var(--soft-grey);font-size:var(--text-sm);cursor:pointer;transition:background-color var(--duration-base) var(--ease-out), color var(--duration-base) var(--ease-out), box-shadow var(--duration-base) var(--ease-out);background:0 0;border:0;font-weight:650}.tk-seg-btn:hover{color:var(--dark-purple)}.tk-seg-btn.is-active,.tk-seg-btn[aria-pressed=true],.tk-seg-btn[aria-selected=true]{background:var(--pure-white);color:var(--ink-text);box-shadow:0 1px 2px #241f2214}.tk-days{gap:var(--space-2);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}.tk-days legend{margin-bottom:var(--space-2);color:var(--ink-text);font-size:var(--text-sm);padding:0;font-weight:650}.tk-day{position:relative}.tk-day input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.tk-day span{min-width:52px;min-height:44px;padding:0 var(--space-3);border-radius:var(--radius-control);background:var(--pure-white);color:var(--soft-grey);font-size:var(--text-sm);transition:background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);border:1px solid #dedbe7;justify-content:center;align-items:center;font-weight:650;display:inline-flex}.tk-day input:hover+span{border-color:var(--dark-purple)}.tk-day input:checked+span{border-color:var(--dark-purple);background:var(--dark-purple);color:var(--pure-white)}.tk-day input:focus-visible+span{outline:3px solid var(--dark-purple);outline-offset:3px}.tk-surface{padding:var(--space-9);border-radius:var(--radius-lg);background:var(--pure-white);border:1px solid #e7e5ec}.tk-surface-wash{background:var(--wash-purple);border-color:#e7e5f4}.tk-surface-paper{background:var(--cream-paper);border-color:#f1e8dc}.tk-figure{gap:var(--space-1);display:grid}.tk-figure-value{color:var(--dark-purple);letter-spacing:-.05em;font-variant-numeric:tabular-nums;margin:0;font-family:Plus Jakarta Sans Variable,Plus Jakarta Sans,system-ui,sans-serif;font-size:clamp(56px,9vw,104px);font-weight:300;line-height:.95}.tk-figure-label{color:var(--soft-grey);font-size:var(--text-sm);margin:0;font-weight:650}.tk-figures{gap:var(--space-6) var(--space-12);flex-wrap:wrap;display:flex}.tk-stat{gap:2px;display:grid}.tk-stat-value{color:var(--ink-text);font-family:Plus Jakarta Sans Variable,Plus Jakarta Sans,system-ui,sans-serif;font-size:var(--text-3xl);letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin:0;font-weight:700;line-height:1.1}.tk-stat-label{color:var(--soft-grey);font-size:var(--text-xs);margin:0;font-weight:650}.tk-stats{gap:var(--space-6) var(--space-9);flex-wrap:wrap;display:flex}.tk-sentence{max-width:34ch;color:var(--ink-text);letter-spacing:-.03em;text-wrap:balance;margin:0;font-family:Plus Jakarta Sans Variable,Plus Jakarta Sans,system-ui,sans-serif;font-size:clamp(24px,3.4vw,36px);font-weight:600;line-height:1.2}.tk-sentence strong{color:var(--dark-purple);font-weight:750}.tk-progress{border-radius:var(--radius-control);background:#efeef6;height:10px;position:relative;overflow:hidden}.tk-progress>span{border-radius:inherit;background:var(--dark-purple);height:100%;transition:width var(--duration-slow) var(--ease-out);display:block}.tk-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.tk-row{align-items:center;gap:var(--space-3);min-height:64px;padding:var(--space-3) var(--space-3) var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--pure-white);transition:border-color var(--duration-base) var(--ease-out);border:1px solid #efedf3;display:flex}.tk-row:hover{border-color:#dcd9ea}.tk-row-body{flex:auto;min-width:0}.tk-row-title{color:var(--ink-text);overflow-wrap:anywhere;margin:0;font-weight:650;line-height:1.35}.tk-row-meta{color:var(--soft-grey);font-size:var(--text-xs);overflow-wrap:anywhere;margin:2px 0 0}.tk-row.is-late{background:var(--wash-pink);border-color:#f7d9e7}.tk-group-head{justify-content:space-between;align-items:baseline;gap:var(--space-4);padding-bottom:var(--space-2);border-bottom:2px solid var(--wash-purple);display:flex}.tk-group-title{font-size:var(--text-xl);letter-spacing:-.02em;margin:0}.tk-group-count{color:var(--soft-grey);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.tk-check{cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;width:44px;height:44px;padding:0;display:inline-flex}.tk-check-mark{border:2px solid var(--silver-beak);background:var(--pure-white);width:26px;height:26px;transition:background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);border-radius:8px;display:block;position:relative}.tk-check:hover .tk-check-mark{border-color:var(--cloud-purple)}.tk-check:active .tk-check-mark{transform:scale(.9)}.tk-check[aria-pressed=true] .tk-check-mark{border-color:var(--dark-purple);background:var(--dark-purple)}.tk-check[aria-pressed=true] .tk-check-mark:after{content:"";border:solid var(--pure-white);border-width:0 2.5px 2.5px 0;width:6px;height:12px;position:absolute;top:2px;left:8px;transform:rotate(45deg)}.tk-error{padding:var(--space-3) var(--space-4);border-radius:var(--radius-callout);background:var(--wash-pink);color:var(--ink-text);font-size:var(--text-sm);border:1px solid #f7d9e7;margin:0;font-weight:650}.tk-callout{padding:var(--space-4) var(--space-6);border-radius:var(--radius-md);background:var(--wash-purple);color:var(--ink-text);font-size:var(--text-sm);border:1px solid #e7e5f4;margin:0}.tk-callout strong{color:var(--dark-purple)}.tk-toast{z-index:250;width:max-content;max-width:calc(100vw - 32px);padding:var(--space-3) var(--space-6);text-align:center;border-radius:var(--radius-control);background:var(--dark-purple);color:var(--pure-white);font-size:var(--text-sm);opacity:0;pointer-events:none;transition:opacity var(--duration-base) var(--ease-out), transform var(--duration-base) var(--ease-out);font-weight:650;position:fixed;bottom:104px;left:50%;transform:translate(-50%,12px);box-shadow:0 12px 30px #5a5ed64d}.tk-toast.is-visible{opacity:1;transform:translate(-50%)}.tk-empty{gap:var(--space-3);padding:var(--space-12) var(--space-6);border-radius:var(--radius-lg);text-align:center;border:1px dashed #dcd9ea;justify-items:center;display:grid}.tk-empty .sticker{width:88px;rotate:-4deg}.tk-empty p{max-width:44ch;color:var(--soft-grey);margin:0}.tk-empty strong{color:var(--ink-text)}.tk-section{margin-top:var(--space-24)}.tk-guide:empty{display:none}.tk-how-grid{gap:var(--space-9) var(--space-12);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.tk-how-card{padding-top:var(--space-4);border-top:1px solid #e7e5ec}.tk-how-card h3{margin-bottom:var(--space-2);font-size:var(--text-xl);letter-spacing:-.02em}.tk-how-card p{max-width:60ch;color:var(--soft-grey);font-size:var(--text-sm);margin:0;line-height:1.7}.tk-how-card p+p{margin-top:var(--space-2)}.tk-honest-inline{margin-top:var(--space-9);padding:var(--space-6);border-radius:var(--radius-md);background:var(--wash-purple);border:1px solid #e7e5f4}.tk-honest-inline h3{margin-bottom:var(--space-2);font-size:var(--text-lg);letter-spacing:-.02em}.tk-honest-inline p{max-width:72ch;color:var(--soft-grey);font-size:var(--text-sm);margin:0}.tk-related{margin-top:var(--space-16);padding-top:var(--space-9);border-top:1px solid #e7e5ec}.tk-related h3{margin-bottom:var(--space-2);font-size:var(--text-2xl);letter-spacing:-.03em}.tk-related p{max-width:78ch;color:var(--soft-grey);font-size:var(--text-base);margin:0;line-height:1.75}.tk-related a{font-weight:650}.tk-faq-list{gap:var(--space-2);display:grid}.tk-faq-item{border-radius:var(--radius-md);background:var(--pure-white);transition:border-color var(--duration-base) var(--ease-out);border:1px solid #e7e5ec}.tk-faq-item.is-open{border-color:#d9d7f5}.tk-faq-heading{font-size:var(--text-base);letter-spacing:0;margin:0;line-height:1.4}.tk-faq-question{justify-content:space-between;align-items:center;gap:var(--space-4);width:100%;min-height:60px;padding:var(--space-4) var(--space-6);border-radius:var(--radius-md);color:var(--ink-text);font:inherit;font-size:var(--text-base);text-align:left;cursor:pointer;transition:color var(--duration-base) var(--ease-out);background:0 0;border:0;font-weight:650;display:flex}.tk-faq-question:hover{color:var(--accent)}.tk-faq-question-text{min-width:0}.tk-faq-mark{flex:none;width:16px;height:16px;position:relative}.tk-faq-mark:before,.tk-faq-mark:after{content:"";background:var(--accent);width:100%;height:2px;transition:transform var(--duration-base) var(--ease-out);border-radius:2px;position:absolute;top:50%;left:0}.tk-faq-mark:before{transform:translateY(-50%)}.tk-faq-mark:after{transform:translateY(-50%)rotate(90deg)}.tk-faq-item.is-open .tk-faq-mark:after{transform:translateY(-50%)rotate(0)}.tk-faq-panel{transition:grid-template-rows var(--duration-slow) var(--ease-out);grid-template-rows:0fr;display:grid}.tk-faq-item.is-open .tk-faq-panel{grid-template-rows:1fr}.tk-faq-panel-inner{overflow:hidden}.tk-faq-panel-inner p{max-width:72ch;padding:0 var(--space-6) var(--space-6);color:var(--soft-grey);font-size:var(--text-sm);margin:0;line-height:1.7}.tk-more-head{justify-content:space-between;align-items:baseline;gap:var(--space-4);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.tk-more-head h2{font-size:var(--text-3xl);letter-spacing:-.03em;margin:0}.tk-more-list{gap:var(--space-6);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.tk-more-item{padding:var(--space-6);border-radius:var(--radius-lg);background:var(--pure-white);transition:border-color var(--duration-base) var(--ease-out);border:1px solid #e7e5ec;position:relative}.tk-more-item:hover,.tk-more-item:focus-within{border-color:var(--accent)}.tk-more-tag{margin:0 0 var(--space-1);color:var(--accent);font-size:var(--text-xs);font-weight:650}.tk-more-item h3{margin:0 0 var(--space-2);font-size:var(--text-xl);letter-spacing:-.02em}.tk-more-item h3 a{color:var(--ink-text);text-decoration:none}.tk-more-item h3 a:after{content:"";border-radius:inherit;position:absolute;inset:0}.tk-more-item:hover h3 a{color:var(--accent)}.tk-more-description{color:var(--soft-grey);font-size:var(--text-sm);margin:0;line-height:1.6}.tk-print-only{display:none}@media (width<=1040px){.tk-split{gap:var(--space-9);grid-template-columns:minmax(0,1fr)}.tk-more-list{grid-template-columns:minmax(0,1fr)}}@media (width<=940px){.tk-how-grid{gap:var(--space-6);grid-template-columns:minmax(0,1fr)}}@media (width<=680px){.tk-hero h1{font-size:var(--text-4xl)}.tk-grid-2,.tk-grid-3{grid-template-columns:minmax(0,1fr)}.tk-surface{padding:var(--space-6)}.tk-btn{min-height:48px}.tk-actions-stack{flex-direction:column;align-items:stretch}.tk-actions-stack .tk-btn{width:100%}.tk-seg{width:100%;display:flex}.tk-seg-btn{min-height:44px;padding:0 var(--space-3);flex:auto}.tk-section{margin-top:var(--space-16)}.tk-honest-inline{padding:var(--space-4)}}@media (hover:none){.tk-more-item:hover{border-color:#e7e5ec}.tk-more-item:hover h3 a{color:var(--ink-text)}}@media (prefers-contrast:more){.tk-input,.tk-select,.tk-textarea,.tk-btn,.tk-row,.tk-faq-item,.tk-more-item,.tk-day span{border-color:#8e8892}}@media (prefers-reduced-motion:reduce){.tk-btn,.tk-check-mark,.tk-progress>span,.tk-faq-mark:before,.tk-faq-mark:after,.tk-faq-panel,.tk-toast{transition:none}}@media print{@page{margin:14mm}body.tk-page{color:var(--dark-purple);background:#fff;padding:0}.tk-page .bottom-nav,.tk-page .site-footer,.tk-page .skip-link,.tk-page .page-hero,.tk-page .tk-section,.tk-page .tk-honesty,.tk-page .tk-no-print,.tk-page .tk-toast,.tk-page .printable-popup{display:none!important}.tk-page .page-body{padding:0}.tk-page .tk-print-only{display:block!important}.tk-print-head{border-bottom:1.2pt solid var(--dark-purple);margin-bottom:6mm;padding-bottom:3mm}.tk-print-brand{color:var(--dark-purple);margin:0 0 1mm;font-size:10pt;font-weight:700}.tk-print-title{color:var(--dark-purple);letter-spacing:-.02em;margin:0;font-family:Plus Jakarta Sans Variable,Plus Jakarta Sans,system-ui,sans-serif;font-size:18pt;font-weight:700;line-height:1.15}.tk-print-sub{color:var(--dark-purple);margin:1mm 0 0;font-size:10pt}.tk-print-foot{color:var(--dark-purple);border-top:.6pt solid #d8cec2;margin-top:8mm;padding-top:3mm;font-size:9pt}}
