.sp-redesign{--sp-bg: var(--bg, #F6EEDC);--sp-ink: var(--ink, #2A1F18);--sp-accent: var(--ruby, #A0182B);--sp-yellow: var(--amber, #F2C94C);--sp-green: var(--teal, #6B8E5A);--sp-pink: color-mix(in srgb, var(--ruby, #A0182B) 34%, var(--surface, #FFFBF1));--sp-paper: var(--surface, #FFFBF1);background:var(--sp-bg);color:var(--sp-ink);font-family:Geist,DM Sans,ui-sans-serif,system-ui,sans-serif}.sp-redesign button{font-family:inherit}.sp-shell{max-width:1480px;min-height:100vh;margin:0 auto}.sp-topbar{display:flex;align-items:center;justify-content:space-between;padding:18px 32px;border-bottom:1px solid color-mix(in srgb,var(--sp-ink) 10%,transparent)}.sp-brand{display:flex;align-items:center;gap:10px}.sp-brand>span,.sp-hero h1,.sp-section-head h2,.sp-library h2,.sp-profile-card h2,.sp-number-table strong,.sp-progress-stats strong,.sp-library strong{font-family:Fraunces,Georgia,serif;letter-spacing:-.02em}.sp-brand>span{font-size:22px;font-weight:500}.sp-brand i{width:1px;height:18px;margin:0 12px;background:color-mix(in srgb,var(--sp-ink) 20%,transparent)}.sp-brand b,.sp-eyebrow,.sp-card-kicker,.sp-today-head b,.sp-bar-label,.sp-picker-head,.sp-plan-label,.sp-setting-row,.sp-modal label,.sp-modal-grid>div>span{font-family:JetBrains Mono,ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase}.sp-brand b{font-size:12px;color:color-mix(in srgb,var(--sp-ink) 60%,transparent)}.sp-close{width:36px;height:36px;border-radius:999px;border:1.5px solid color-mix(in srgb,var(--sp-ink) 20%,transparent);background:transparent;color:var(--sp-ink);font-size:20px;cursor:pointer}.sp-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px}.sp-hero,.sp-section,.sp-today{padding:20px 32px}.sp-hero{padding-top:28px;padding-bottom:16px}.sp-script{font-family:Caveat,cursive;font-size:22px;color:var(--sp-accent)}.sp-hero h1{margin:4px 0 0;font-size:52px;line-height:1.02;font-weight:500}.sp-hero h1 em{margin-left:14px;color:var(--sp-accent);font-size:28px;vertical-align:.2em}.sp-marker{position:relative;display:inline-block;padding:0 .12em}.sp-marker svg{position:absolute;inset:12% -4% 6%;width:108%;height:82%;z-index:0}.sp-marker span{position:relative;z-index:1}.sp-pill-row{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:28px}.sp-pill-row>button{padding:0;border:0;background:transparent;cursor:pointer}.sp-pill{min-width:116px;padding:8px 16px;border:2px solid var(--sp-ink);border-radius:14px;box-shadow:3px 3px 0 var(--sp-ink);text-align:center;line-height:1.1;background:var(--sp-ink);color:var(--sp-bg)}.sp-pill-accent{background:var(--sp-accent);color:var(--sp-bg)}.sp-pill-green{background:var(--sp-green);color:var(--sp-bg)}.sp-pill-big{padding:10px 18px}.sp-pill div{font-family:JetBrains Mono,monospace;font-size:9px;letter-spacing:.1em;text-transform:uppercase;opacity:.75}.sp-pill strong{display:block;margin-top:2px;font-family:Fraunces,Georgia,serif;font-size:20px;font-weight:500}.sp-pill-big strong{font-size:28px}.sp-edit-goal,.sp-change{border:1.5px solid color-mix(in srgb,var(--sp-ink) 30%,transparent);background:var(--sp-paper);color:var(--sp-ink);border-radius:999px;padding:9px 16px;font-weight:700;cursor:pointer}.sp-today-card{background:var(--sp-ink);color:var(--sp-bg);border:2px solid var(--sp-ink);border-radius:6px;box-shadow:5px 6px 0 var(--sp-ink);padding:30px 34px;transform:rotate(-.5deg)}.sp-today-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:6px}.sp-today-head span{font-family:Caveat,cursive;font-size:22px;color:var(--sp-yellow)}.sp-today-head b{font-size:11px;color:color-mix(in srgb,var(--sp-bg) 70%,transparent);font-weight:600}.sp-today-head em{color:var(--sp-pink);font-style:normal}.sp-today-card h2{margin:4px 0 22px;font-family:Fraunces,Georgia,serif;font-size:40px;line-height:1.02;font-weight:500;letter-spacing:-.025em}.sp-today-card h2 em{color:var(--sp-yellow)}.sp-today-card h2 i{color:var(--sp-pink)}.sp-today-card h2 strong{color:var(--sp-green);font-style:italic}.sp-today-bars{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:22px}.sp-bar-label{display:flex;justify-content:space-between;margin-bottom:6px;font-size:11px;color:color-mix(in srgb,var(--sp-ink) 70%,transparent)}.sp-dark-label{color:color-mix(in srgb,var(--sp-bg) 70%,transparent)}.sp-progress-track,.sp-progress-track-dark{height:10px;border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--sp-ink) 10%,transparent)}.sp-progress-track-dark{background:color-mix(in srgb,var(--sp-bg) 12%,transparent);border:1px solid color-mix(in srgb,var(--sp-bg) 14%,transparent)}.sp-progress-track div,.sp-progress-track-dark div{height:100%;border-radius:999px}.sp-today-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.sp-primary{background:var(--sp-accent);color:var(--sp-bg);border:2px solid var(--sp-bg);padding:13px 22px;border-radius:999px;box-shadow:4px 4px 0 var(--sp-bg);font-weight:800;transform:rotate(-.8deg)}.sp-rest{background:transparent;color:var(--sp-bg);border:1.5px dashed color-mix(in srgb,var(--sp-bg) 35%,transparent);border-radius:999px;padding:11px 16px;font-weight:600}.sp-today-actions p{margin-left:auto;max-width:280px;text-align:right;font-family:Caveat,cursive;font-size:18px;color:color-mix(in srgb,var(--sp-bg) 70%,transparent);line-height:1.2}.sp-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px}.sp-eyebrow{color:color-mix(in srgb,var(--sp-ink) 55%,transparent);font-size:11px;font-weight:700}.sp-section-head h2,.sp-library h2{margin:2px 0 0;font-size:28px;line-height:1.1;font-weight:500}.sp-section-head h2 em{color:var(--sp-accent)}.sp-section-head p{max-width:280px;margin:0;text-align:right;color:color-mix(in srgb,var(--sp-ink) 55%,transparent);font-size:12px;line-height:1.4}.sp-analytics-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:18px}.sp-data-card,.sp-plan-card,.sp-side-card{background:var(--sp-paper);border:1.5px solid color-mix(in srgb,var(--sp-ink) 14%,transparent);border-radius:12px;padding:20px 22px}.sp-card-kicker{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px;color:color-mix(in srgb,var(--sp-ink) 45%,transparent);font-size:10px;font-weight:700}.sp-domain-row{margin-bottom:14px}.sp-domain-top{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:5px}.sp-domain-top strong{font-size:14px}.sp-domain-top>span{font-family:JetBrains Mono,monospace;font-size:12px;color:color-mix(in srgb,var(--sp-ink) 60%,transparent)}.sp-domain-top b{color:var(--sp-accent)}.sp-focus-chip,.sp-rec{display:inline-block;margin-right:8px;padding:2px 6px;border-radius:4px;background:var(--sp-accent);color:var(--sp-bg);font-family:JetBrains Mono,monospace;font-size:9px;text-transform:uppercase}.sp-rec{margin-left:10px;border-radius:999px;font-family:Caveat,cursive;font-size:14px;text-transform:none;vertical-align:.18em}.sp-domain-meter{display:flex;align-items:center;gap:12px}.sp-domain-track{flex:1;height:14px;position:relative;overflow:hidden;border-radius:4px;background:color-mix(in srgb,var(--sp-ink) 8%,transparent)}.sp-domain-track div{height:100%;border-radius:4px}.sp-domain-track i{position:absolute;top:-4px;bottom:-4px;width:2px;border-radius:1px;background:color-mix(in srgb,var(--sp-ink) 40%,transparent)}.sp-domain-meter>strong{min-width:48px;text-align:right;font-family:Fraunces,Georgia,serif;font-size:18px}.sp-trend{width:100%;display:block;font-family:JetBrains Mono,monospace}.sp-micro-grid{margin-top:auto;padding-top:14px;border-top:1px dashed color-mix(in srgb,var(--sp-ink) 12%,transparent);display:grid;grid-template-columns:1fr 1fr;gap:12px}.sp-micro-grid strong{display:block;font-family:Fraunces,Georgia,serif;font-size:22px;font-weight:500}.sp-micro-grid span{font-family:JetBrains Mono,monospace;font-size:10px;text-transform:uppercase;color:color-mix(in srgb,var(--sp-ink) 50%,transparent)}.sp-green{color:var(--sp-green)!important}.sp-red{color:var(--sp-accent)!important}.sp-plan-card{display:grid;gap:20px;border-radius:14px;padding:22px 24px}.sp-plan-card>p{max-width:720px;margin:0;color:color-mix(in srgb,var(--sp-ink) 70%,transparent);font-size:14px;line-height:1.55}.sp-phase-bar{display:flex;height:32px;overflow:hidden;border:1px solid color-mix(in srgb,var(--sp-ink) 12%,transparent);border-radius:8px}.sp-phase-bar div{display:flex;align-items:center;justify-content:center;min-width:0;padding:0 6px;font-size:11px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sp-plan-bottom{display:grid;grid-template-columns:1fr 1fr;gap:22px}.sp-number-table{display:grid;grid-template-columns:repeat(5,1fr);overflow:hidden;border:1px solid color-mix(in srgb,var(--sp-ink) 12%,transparent);border-radius:10px}.sp-number-table div{min-width:0;padding:10px 8px;text-align:center;border-right:1px solid color-mix(in srgb,var(--sp-ink) 12%,transparent)}.sp-number-table div:last-child{border-right:0}.sp-number-table .subtle{background:color-mix(in srgb,var(--sp-ink) 4%,transparent)}.sp-number-table strong{display:block;overflow:hidden;text-overflow:ellipsis;font-size:22px;line-height:1;white-space:nowrap}.sp-number-table span{display:block;margin-top:5px;font-family:JetBrains Mono,monospace;font-size:9px;color:color-mix(in srgb,var(--sp-ink) 55%,transparent);text-transform:uppercase}.sp-advice{margin-top:12px;padding:10px 12px;border-left:3px solid var(--sp-accent);border-radius:4px;background:color-mix(in srgb,var(--sp-accent) 5%,transparent);color:color-mix(in srgb,var(--sp-ink) 78%,transparent);font-size:12.5px;line-height:1.55}.sp-slider{display:block;margin-bottom:14px}.sp-slider span{display:flex;justify-content:space-between;margin-bottom:6px;font-family:JetBrains Mono,monospace;font-size:11px;color:color-mix(in srgb,var(--sp-ink) 60%,transparent);text-transform:uppercase}.sp-slider b{font-family:Fraunces,Georgia,serif;color:var(--sp-ink);font-size:16px}.sp-slider input{width:100%;accent-color:var(--sp-accent)}.sp-risk{padding:6px 10px;border-radius:4px;background:color-mix(in srgb,var(--sp-ink) 4%,transparent);font-family:JetBrains Mono,monospace;font-size:11px;color:color-mix(in srgb,var(--sp-ink) 60%,transparent)}.sp-picker{margin-top:22px}.sp-picker-head{display:flex;justify-content:space-between;margin-bottom:12px;font-size:11px;color:color-mix(in srgb,var(--sp-ink) 60%,transparent)}.sp-picker-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.sp-picker-grid>button{position:relative;padding:18px 18px 16px;text-align:left;border:1.5px solid color-mix(in srgb,var(--sp-ink) 14%,transparent);border-radius:10px;background:var(--sp-paper);color:var(--sp-ink);cursor:pointer}.sp-picker-grid>button.selected{border-color:var(--sp-accent);background:color-mix(in srgb,var(--sp-accent) 6%,transparent)}.sp-picker-grid>button.over{opacity:.65}.sp-picker-grid h3{margin:0 0 8px;font-family:Fraunces,Georgia,serif;font-size:19px;line-height:1.15}.sp-picker-grid p{margin:0 0 14px;color:color-mix(in srgb,var(--sp-ink) 60%,transparent);font-size:12px;line-height:1.5}.sp-plan-label{display:flex;justify-content:space-between;gap:8px;margin-bottom:8px;font-size:10px;color:color-mix(in srgb,var(--sp-ink) 55%,transparent)}.sp-plan-label i{color:var(--sp-accent);font-style:normal;font-weight:800}.sp-mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding-top:10px;border-top:1px dashed color-mix(in srgb,var(--sp-ink) 12%,transparent)}.sp-mini-stats b{display:block;font-family:Fraunces,Georgia,serif;font-size:22px;line-height:1}.sp-mini-stats span{font-size:9px;text-transform:uppercase;opacity:.75}.sp-picker-grid>button>em{position:absolute;top:10px;right:10px;width:20px;height:20px;border-radius:999px;display:grid;place-items:center;background:var(--sp-accent);color:var(--sp-bg);font-style:normal;font-size:11px;font-weight:800}.sp-picker>p{margin:10px 0 0;color:color-mix(in srgb,var(--sp-ink) 55%,transparent);font-size:12px;font-style:italic}.sp-library h2{font-size:24px}.sp-library>div:last-child{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}.sp-library button{display:flex;align-items:center;justify-content:space-between;position:relative;overflow:hidden;padding:18px 22px;border:1.5px solid color-mix(in srgb,var(--sp-ink) 14%,transparent);border-left-width:4px;border-radius:12px;background:var(--sp-paper);color:var(--sp-ink);text-align:left;cursor:pointer}.sp-library strong{display:block;font-size:40px;line-height:1}.sp-library b{display:block;margin-top:6px;font-family:JetBrains Mono,monospace;font-size:11px;text-transform:uppercase}.sp-library i{display:block;margin-top:2px;color:color-mix(in srgb,var(--sp-ink) 60%,transparent);font-style:normal;font-size:12px}.sp-library button>em{color:color-mix(in srgb,var(--sp-ink) 40%,transparent);font-size:20px;font-style:normal}.sp-sidebar{display:flex;flex-direction:column;gap:16px;padding:28px 32px 28px 0}.sp-profile-card{position:relative;padding:20px 22px;border:2px solid var(--sp-ink);border-radius:6px;background:var(--sp-paper);box-shadow:5px 6px 0 var(--sp-ink);transform:rotate(1.4deg)}.sp-profile-card>div{display:flex;align-items:center;gap:14px;margin-bottom:10px}.sp-avatar{position:relative;width:52px;height:52px;border:2px solid var(--sp-ink);border-radius:999px;display:grid;place-items:center;background:linear-gradient(135deg,var(--sp-pink),var(--sp-accent));color:var(--sp-bg);font-family:Fraunces,Georgia,serif;font-size:24px;font-style:italic;overflow:visible}.sp-avatar img{width:100%;height:100%;border-radius:999px;-o-object-fit:cover;object-fit:cover}.sp-avatar label{position:absolute;right:-7px;bottom:-7px;width:24px;height:24px;border:1px solid color-mix(in srgb,var(--sp-ink) 40%,transparent);border-radius:999px;display:grid;place-items:center;background:var(--sp-paper);cursor:pointer}.sp-profile-card h2{margin:0;font-size:22px;font-weight:500}.sp-profile-card p{margin:2px 0 0;color:color-mix(in srgb,var(--sp-ink) 60%,transparent);font-size:12px}.sp-profile-card>span{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid color-mix(in srgb,var(--sp-accent) 40%,transparent);border-radius:999px;color:var(--sp-accent);font-family:JetBrains Mono,monospace;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.sp-profile-card>span i{width:6px;height:6px;border-radius:999px;background:var(--sp-accent)}.sp-progress-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px;text-align:center}.sp-progress-stats strong{display:block;font-size:26px;font-weight:500}.sp-progress-stats span{font-family:JetBrains Mono,monospace;font-size:10px;text-transform:uppercase;color:color-mix(in srgb,var(--sp-ink) 55%,transparent)}.sp-progress-caption{display:flex;justify-content:space-between;margin-top:6px;font-family:JetBrains Mono,monospace;font-size:10px;color:color-mix(in srgb,var(--sp-ink) 50%,transparent)}.sp-schedule-head{display:flex;justify-content:space-between;align-items:center}.sp-schedule-head button{border:1px solid color-mix(in srgb,var(--sp-ink) 20%,transparent);border-radius:6px;background:transparent;padding:3px 10px;font-family:JetBrains Mono,monospace;font-size:11px;text-transform:uppercase}.sp-setting-row{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px dashed color-mix(in srgb,var(--sp-ink) 12%,transparent);font-size:13px;text-transform:none;letter-spacing:0;font-family:Geist,DM Sans,sans-serif}.sp-setting-row span{color:color-mix(in srgb,var(--sp-ink) 60%,transparent)}.sp-streak{padding:14px 18px;border:1px dashed color-mix(in srgb,var(--sp-accent) 40%,transparent);border-radius:12px;background:color-mix(in srgb,var(--sp-accent) 6%,transparent);text-align:center}.sp-streak div{color:var(--sp-accent);font-size:18px;letter-spacing:.2em}.sp-streak p{margin:4px 0 0;font-family:Caveat,cursive;font-size:17px}.sp-modal{position:fixed;inset:0;z-index:300;display:flex;align-items:center;justify-content:center;padding:24px;background:color-mix(in srgb,var(--sp-ink) 70%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.sp-modal-card{width:min(720px,100%);max-height:90vh;overflow:auto;padding:30px 34px;border:2px solid var(--sp-ink);border-radius:18px;background:var(--sp-bg);box-shadow:8px 8px 0 var(--sp-accent)}.sp-modal-card header{display:flex;justify-content:space-between;margin-bottom:18px}.sp-modal-card header span,.sp-preview b{font-family:Caveat,cursive;color:var(--sp-accent);font-size:22px;font-weight:400}.sp-modal-card h2{margin:4px 0 0;font-family:Fraunces,Georgia,serif;font-size:36px;font-weight:500}.sp-modal-card header button{width:36px;height:36px;border-radius:999px;border:1.5px solid color-mix(in srgb,var(--sp-ink) 20%,transparent);background:transparent;font-size:18px}.sp-modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.sp-modal-grid .wide{grid-column:1 / -1}.sp-modal label,.sp-modal-grid>div>span{display:block;margin-bottom:8px;color:color-mix(in srgb,var(--sp-ink) 55%,transparent);font-size:10px;font-weight:700}.sp-modal input[type=date],.sp-modal input[type=time]{width:100%;padding:11px 14px;border:1.5px solid color-mix(in srgb,var(--sp-ink) 20%,transparent);border-radius:10px;background:var(--sp-paper);color:var(--sp-ink)}.sp-segments{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.wide .sp-segments{grid-template-columns:repeat(6,1fr)}.wide:last-child .sp-segments{grid-template-columns:repeat(3,1fr)}.sp-segments button{padding:10px 8px;border:1.5px solid color-mix(in srgb,var(--sp-ink) 20%,transparent);border-radius:10px;background:var(--sp-paper);color:var(--sp-ink);font-weight:600}.sp-segments button.active{background:var(--sp-ink);color:var(--sp-bg)}.sp-preview{margin-top:20px;padding:14px 16px;border-left:3px solid var(--sp-accent);border-radius:6px;background:color-mix(in srgb,var(--sp-accent) 6%,transparent);color:color-mix(in srgb,var(--sp-ink) 80%,transparent);font-size:13px;line-height:1.55}.sp-modal footer{display:flex;justify-content:flex-end;gap:12px;margin-top:22px}.sp-modal footer button{padding:10px 18px;border-radius:999px;border:1.5px solid color-mix(in srgb,var(--sp-ink) 20%,transparent);background:transparent;font-weight:700}.sp-modal footer button:last-child{border:2px solid var(--sp-ink);background:var(--sp-accent);color:var(--sp-bg);box-shadow:3px 3px 0 var(--sp-ink)}.sp-toast{position:fixed;left:50%;bottom:80px;z-index:400;transform:translate(-50%);padding:14px 22px;border:2px solid var(--sp-accent);border-radius:999px;background:var(--sp-ink);color:var(--sp-bg);box-shadow:4px 4px 0 var(--sp-accent);font-weight:700;animation:sp-toast 2.8s ease forwards}@keyframes sp-toast{0%,80%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(8px)}}@media(max-width:1100px){.sp-grid,.sp-analytics-grid,.sp-plan-bottom{grid-template-columns:1fr}.sp-sidebar{padding:0 32px 32px}.sp-picker-grid,.sp-library>div:last-child{grid-template-columns:1fr 1fr}}@media(max-width:720px){.sp-hero h1{font-size:42px}.sp-hero h1 em{display:block;margin:8px 0 0}.sp-today-bars,.sp-picker-grid,.sp-library>div:last-child,.sp-modal-grid{grid-template-columns:1fr}.sp-today-card{padding:24px}.sp-today-actions p{margin-left:0;text-align:left}}.sp-page{background:var(--bg)!important;color:var(--ink);font-family:DM Sans,ui-sans-serif,sans-serif}.sp-page section.rounded-lg{background:var(--surface)!important;border:2px solid var(--ink)!important;box-shadow:var(--shadow)!important}.sp-mini-card{background:var(--surface)!important;border:2px solid var(--ink)!important;box-shadow:var(--shadow)!important}.sp-page .rounded-lg.bg-stone-50,.sp-page .rounded-lg.bg-stone-100,.sp-page .bg-stone-100,.sp-page .bg-stone-50{background:var(--surface2)!important}.sp-page .bg-stone-950,.sp-page .rounded-lg.bg-stone-950{background:var(--ink)!important}.sp-page .shadow-sm{box-shadow:3px 4px 0 var(--ink)!important}.sp-page .shadow-lg{box-shadow:var(--shadow)!important}.sp-page .bg-white{background:var(--surface)!important}.sp-page .bg-white\/80{background:color-mix(in srgb,var(--surface) 80%,transparent)!important}.sp-page .bg-white\/15{background:color-mix(in srgb,var(--surface) 15%,transparent)!important}.sp-page .text-teal-700,.sp-page .text-teal-800{color:var(--ruby)!important}.sp-page .text-teal-900{color:var(--ink)!important}.sp-page .bg-teal-700{background:var(--ruby)!important}.sp-page .bg-teal-50,.sp-page .bg-teal-100{background:var(--rose-lt)!important}.sp-page .hover\:bg-teal-800:hover{background:var(--ruby)!important}.sp-page .hover\:bg-teal-100:hover{background:var(--rose-lt)!important}.sp-page .border-teal-700{border-color:var(--ruby)!important}.sp-page .ring-teal-700{--tw-ring-color: var(--ruby) !important}.sp-page .text-teal-200{color:var(--amber)!important}.sp-page .text-teal-300{color:var(--teal)!important}.sp-page .bg-teal-300{background:var(--teal)!important}.sp-page .text-stone-950{color:var(--ink)!important}.sp-page .text-stone-700,.sp-page .text-stone-600{color:var(--ink2)!important}.sp-page .text-stone-500,.sp-page .text-stone-400{color:var(--ink3)!important}.sp-page .text-stone-300{color:var(--border2)!important}.sp-page .border-stone-200{border-color:var(--border)!important}.sp-page .border-stone-300{border-color:var(--border2)!important}.sp-page .border-amber-300{border-color:var(--amber)!important}.sp-page .bg-amber-50{background:var(--amber-lt)!important}.sp-page .text-amber-950{color:var(--ink)!important}.sp-page .text-amber-900{color:var(--ink2)!important}.sp-page button.border-teal-700.bg-teal-50{background:var(--amber-lt)!important;border:2px solid var(--ink)!important;box-shadow:3px 4px 0 var(--ink)!important}.sp-page button.rounded-lg.border.bg-white{background:var(--surface)!important;border:2px solid var(--ink)!important;box-shadow:3px 4px 0 var(--ink)!important}.sp-page button.rounded-lg.border.bg-white:hover{background:var(--amber-lt)!important;transform:translateY(-2px)!important;box-shadow:5px 7px 0 var(--ink)!important}.sp-page input[type=date],.sp-page input[type=time],.sp-page input[type=number]{background:var(--surface)!important;border:2px solid var(--border2)!important;color:var(--ink)!important;box-shadow:2px 3px 0 var(--border)!important;border-radius:8px!important}.sp-page input:focus{border-color:var(--ruby)!important;box-shadow:2px 3px 0 var(--ruby)!important;outline:none!important}.sp-page textarea{background:var(--surface)!important;border:2px solid var(--border2)!important;color:var(--ink)!important;box-shadow:2px 3px 0 var(--border)!important}.sp-page textarea:focus{border-color:var(--ruby)!important;box-shadow:2px 3px 0 var(--ruby)!important;outline:none!important}.sp-page button.bg-stone-950{background:var(--ink)!important;color:var(--surface)!important;border:2px solid var(--ink)!important;box-shadow:3px 4px 0 var(--border)!important;border-radius:999px!important;transition:transform .15s,box-shadow .15s!important}.sp-page button.bg-stone-950:hover{transform:translateY(-2px)!important;box-shadow:4px 6px 0 var(--border)!important}.sp-page button.bg-teal-700{background:var(--ruby)!important;color:var(--surface)!important;border:2px solid var(--ink)!important;box-shadow:3px 4px 0 var(--ink)!important;border-radius:999px!important;transition:transform .15s,box-shadow .15s!important}.sp-page button.bg-teal-700:hover:not(:disabled){transform:translateY(-2px)!important;box-shadow:4px 6px 0 var(--ink)!important}.sp-page button.bg-teal-700:disabled{background:var(--surface2)!important;color:var(--ink3)!important;border-color:var(--border)!important;box-shadow:none!important}.sp-page button.border.border-stone-300.bg-white,.sp-page button.rounded-md.border.border-stone-300{background:var(--surface)!important;color:var(--ink)!important;border:2px solid var(--ink)!important;box-shadow:2px 3px 0 var(--ink)!important;border-radius:999px!important;transition:transform .15s,box-shadow .15s,background .15s!important}.sp-page button.border.border-stone-300.bg-white:hover,.sp-page button.rounded-md.border.border-stone-300:hover{background:var(--amber-lt)!important;transform:translateY(-1px)!important;box-shadow:3px 4px 0 var(--ink)!important}.sp-page .bg-teal-700.h-full{background:var(--ruby)!important}.sp-page .bg-teal-300.h-full{background:var(--teal)!important}.sp-page .rounded-md.bg-teal-700{background:var(--ruby)!important;border-radius:6px!important}.sp-page .rounded-md.bg-teal-50{background:var(--rose-lt)!important;color:var(--ruby)!important}.sp-page .rounded-md.bg-teal-100{background:var(--rose-lt)!important;color:var(--ink)!important}.sp-page .rounded-md.bg-teal-50.px-2\.5{background:var(--rose-lt)!important;color:var(--ruby)!important;border:1.5px solid var(--rose-lt)!important}.sp-page .rounded-md.bg-teal-50.px-2{background:var(--rose-lt)!important;color:var(--ruby)!important}.sp-page h1,.sp-page h2,.sp-page h3{font-family:Fraunces,Georgia,serif!important}.sp-page .text-2xl,.sp-page .text-lg{font-family:Fraunces,Georgia,serif}.sp-page .bg-stone-950 .text-stone-300{color:color-mix(in srgb,var(--bg) 55%,transparent)!important}.sp-page .bg-stone-950 .text-stone-400{color:color-mix(in srgb,var(--bg) 42%,transparent)!important}.sp-page .bg-stone-950 .text-white{color:var(--bg)!important}.sp-page .bg-stone-100.rounded-lg{background:var(--surface2)!important}.sp-page .overflow-hidden.rounded-lg.bg-stone-100{border:2px solid var(--border)!important}.sp-page .absolute.-bottom-2{background:var(--surface)!important;border:2px solid var(--ink)!important;box-shadow:2px 2px 0 var(--ink)!important;transition:transform .12s!important}.sp-page .absolute.-bottom-2:hover{background:var(--amber)!important;transform:translateY(-1px)!important}.sp-page .hover\:bg-stone-100:hover,.sp-page .hover\:bg-stone-50:hover{background:var(--surface2)!important}.sn-note{width:230px;border-radius:3px 3px 8px 8px;box-shadow:4px 6px #0000002e,0 2px 4px #00000014;z-index:150;display:flex;flex-direction:column;font-family:DM Sans,ui-sans-serif,sans-serif}.sn-yellow{background:#fef9c3}.sn-pink{background:#fce7f3}.sn-mint{background:#d1fae5}.sn-blue{background:#dbeafe}.sn-handle{display:flex;align-items:center;justify-content:space-between;padding:7px 9px 6px;cursor:grab;border-radius:3px 3px 0 0;border-bottom:1px solid rgba(0,0,0,.1)}.sn-handle:active{cursor:grabbing}.sn-yellow .sn-handle{background:#fde047}.sn-pink .sn-handle{background:#f9a8d4}.sn-mint .sn-handle{background:#6ee7b7}.sn-blue .sn-handle{background:#93c5fd}.sn-color-row{display:flex;gap:5px;align-items:center}.sn-color-dot{width:11px;height:11px;border-radius:50%;border:1.5px solid rgba(0,0,0,.2);cursor:pointer;padding:0;transition:transform .12s,box-shadow .12s}.sn-color-dot:hover{transform:scale(1.2)}.sn-color-dot--active{box-shadow:0 0 0 2px #00000073}.sn-color-dot--yellow{background:#fef9c3}.sn-color-dot--pink{background:#fce7f3}.sn-color-dot--mint{background:#d1fae5}.sn-color-dot--blue{background:#dbeafe}.sn-close{width:20px;height:20px;background:none;border:none;font-size:1rem;line-height:1;color:#0006;cursor:pointer;padding:0;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:color .12s,background .12s}.sn-close:hover{color:#000000d9;background:#0000001a}.sn-textarea{width:100%;min-height:110px;resize:vertical;border:none;background:transparent;font-family:DM Sans,ui-sans-serif,sans-serif;font-size:.83rem;line-height:1.6;color:#000000c7;padding:9px 11px 11px;outline:none;box-sizing:border-box;border-radius:0 0 8px 8px}.sn-textarea::-moz-placeholder{color:#0000004d}.sn-textarea::placeholder{color:#0000004d}.ft-unified{max-height:560px;overflow-y:auto;overflow-x:hidden}.ft-unified::-webkit-scrollbar{width:4px}.ft-unified::-webkit-scrollbar-track{background:transparent}.ft-unified::-webkit-scrollbar-thumb{background:var(--border2);border-radius:2px}.ft-section{padding:14px}.ft-section--notes{padding-bottom:16px}.ft-separator{height:0;border:none;border-top:1.5px solid var(--border);margin:0}.ft-section-hd{display:flex;align-items:center;margin-bottom:10px;gap:8px}.ft-section-hd-label{flex:1;font-size:.65rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--ink2)}.ft-mode-row{display:flex;gap:6px;margin-bottom:12px}.ft-mode-btn{flex:1;padding:6px 0;border:1.5px solid var(--border2);border-radius:7px;background:none;font-size:.74rem;font-weight:600;color:var(--ink2);cursor:pointer;transition:all .12s;font-family:inherit}.ft-mode-btn:hover{border-color:var(--ink);color:var(--ink)}.ft-mode-btn--active{background:var(--ruby);border-color:var(--ruby);color:#fff}.ft-presets{display:flex;gap:5px;justify-content:center;margin-bottom:10px}.ft-preset{padding:3px 10px;border:1.5px solid var(--border2);border-radius:999px;background:none;font-size:.72rem;font-weight:700;color:var(--ink2);cursor:pointer;transition:all .12s;font-family:JetBrains Mono,monospace;line-height:1.4}.ft-preset:hover:not(:disabled){border-color:var(--ink);color:var(--ink)}.ft-preset--active{background:var(--ruby);border-color:var(--ruby);color:#fff}.ft-preset:disabled{opacity:.45;cursor:default}.ft-preset-unit{font-size:.6rem;opacity:.8;margin-left:1px}.ft-timer-face{display:flex;flex-direction:column;align-items:center;padding:8px 0 6px;border-radius:10px;margin-bottom:10px}.ft-timer-face--pomodoro{background:var(--amber-lt)}.ft-timer-face--custom{background:var(--slate-lt)}.ft-phase-icon{font-size:1.8rem;line-height:1;margin-bottom:2px}.ft-time{font-family:JetBrains Mono,ui-monospace,monospace;font-size:2.6rem;font-weight:500;letter-spacing:-.04em;color:var(--ink);text-align:center;line-height:1;margin:2px 0 6px}.ft-phase-label{font-size:.72rem;font-weight:600;color:var(--ink2);margin-bottom:2px}.ft-dots{display:flex;justify-content:center;gap:6px;margin-bottom:12px}.ft-dot{width:8px;height:8px;border-radius:50%;background:var(--border2);display:inline-block;transition:background .2s}.ft-dot--done{background:var(--ruby)}.ft-custom-row{display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:12px}.ft-custom-input{width:64px;text-align:center;border:1.5px solid var(--border2);border-radius:6px;background:var(--bg);color:var(--ink);font-size:.9rem;font-weight:600;padding:4px 8px;font-family:JetBrains Mono,monospace}.ft-custom-input:focus{outline:none;border-color:var(--ruby)}.ft-custom-unit{font-size:.75rem;color:var(--ink3)}.ft-controls{display:flex;gap:6px;justify-content:center}.ft-btn{padding:6px 14px;border:1.5px solid var(--border2);border-radius:7px;background:none;color:var(--ink);font-size:.78rem;font-weight:600;cursor:pointer;transition:all .12s;font-family:inherit;white-space:nowrap}.ft-btn:hover{border-color:var(--ink);background:var(--surface2)}.ft-btn--primary{background:var(--ruby);border-color:var(--ruby);color:#fff;min-width:96px}.ft-btn--primary:hover{opacity:.88}.ft-btn--sm{padding:3px 10px;font-size:.7rem}.ft-ambient-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-bottom:10px}.ft-ambient-btn{display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 4px 6px;border:1.5px solid var(--border2);border-radius:8px;background:none;cursor:pointer;transition:all .12s;font-family:inherit}.ft-ambient-btn:hover{border-color:var(--ink)}.ft-ambient-btn--active{border-color:var(--ruby);background:var(--rose-lt)}.ft-ambient-icon{font-size:1.25rem;line-height:1}.ft-ambient-label{font-size:.56rem;font-weight:700;color:var(--ink2);letter-spacing:.01em}.ft-ambient-btn--active .ft-ambient-label{color:var(--ruby)}.ft-vol-row{display:flex;align-items:center;gap:6px}.ft-vol-icon{font-size:.85rem;flex-shrink:0}.ft-slider{flex:1;accent-color:var(--ruby);height:3px;cursor:pointer}.ft-alert-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:8px}.ft-radio-label{display:flex;align-items:center;gap:4px;font-size:.76rem;font-weight:600;color:var(--ink2);cursor:pointer}.ft-radio-label input[type=radio]{accent-color:var(--ruby)}.ft-notif-row{margin-top:2px}.ft-notif-ok{font-size:.7rem;color:var(--teal);font-weight:600}.ft-notes-add{width:100%;justify-content:center;min-width:unset}.tk-body{padding:14px;display:flex;flex-direction:column}.tk-add-row{display:flex;gap:7px;margin-bottom:12px}.tk-input{flex:1;border:1.5px solid var(--border2);border-radius:8px;background:var(--bg);color:var(--ink);font-size:.82rem;padding:7px 11px;font-family:inherit;transition:border-color .15s}.tk-input:focus{outline:none;border-color:var(--ruby)}.tk-input::-moz-placeholder{color:var(--ink3)}.tk-input::placeholder{color:var(--ink3)}.tk-add-btn{width:34px;height:34px;flex-shrink:0;border-radius:8px;border:none;background:var(--ruby);color:#fff;font-size:1.3rem;font-weight:400;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;transition:opacity .12s}.tk-add-btn:hover{opacity:.85}.tk-list{display:flex;flex-direction:column;max-height:220px;overflow-y:auto}.tk-list::-webkit-scrollbar{width:3px}.tk-list::-webkit-scrollbar-track{background:transparent}.tk-list::-webkit-scrollbar-thumb{background:var(--border2);border-radius:2px}.tk-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:20px 0 14px;color:var(--ink3);font-size:.75rem}.tk-empty-icon{font-size:1.8rem}.tk-item{display:flex;align-items:center;gap:9px;padding:8px 0;border-bottom:1px solid var(--border)}.tk-item:last-child{border-bottom:none}.tk-item--done .tk-text{text-decoration:line-through;color:var(--ink3)}.tk-check{width:20px;height:20px;border-radius:50%;border:2px solid var(--border2);background:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color .15s,background .15s;padding:0}.tk-check:hover{border-color:var(--teal)}.tk-check--done{background:var(--teal);border-color:var(--teal)}.tk-check-mark{font-size:.62rem;color:#fff;font-weight:700}.tk-text{flex:1;font-size:.8rem;color:var(--ink);word-break:break-word;line-height:1.35}.tk-del{width:22px;height:22px;flex-shrink:0;border-radius:5px;border:none;background:none;font-size:1rem;color:var(--ink3);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;opacity:0;transition:opacity .12s,background .12s,color .12s}.tk-item:hover .tk-del{opacity:1}.tk-del:hover{background:var(--rose-lt);color:var(--ruby)}.tk-footer{display:flex;justify-content:flex-end;padding-top:9px;margin-top:2px;border-top:1px solid var(--border)}.tk-clear-btn{border:none;background:none;font-size:.7rem;font-weight:600;color:var(--ink3);cursor:pointer;padding:3px 6px;border-radius:4px;font-family:inherit;transition:color .12s,background .12s}.tk-clear-btn:hover{color:var(--ruby);background:var(--rose-lt)}.wg-shell{border-radius:14px;border:2px solid var(--ink);box-shadow:var(--shadow-md);background:var(--surface);overflow:hidden;font-family:DM Sans,ui-sans-serif,sans-serif}.wg-header{display:flex;align-items:center;gap:6px;padding:9px 10px 9px 8px;background:var(--surface2);border-bottom:1.5px solid var(--border);cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.wg-header:active{cursor:grabbing}.wg-header-grip{font-size:.75rem;color:var(--ink3);flex-shrink:0;line-height:1;letter-spacing:-1px;margin-right:2px}.wg-header-icon{font-size:.95rem;flex-shrink:0}.wg-header-title{flex:1;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wg-close{width:22px;height:22px;background:none;border:none;font-size:1rem;color:var(--ink3);cursor:pointer;padding:0;border-radius:5px;line-height:1;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:color .12s,background .12s}.wg-close:hover{color:var(--ink);background:var(--border)}.wg-chips{display:flex;gap:4px;flex-wrap:wrap;justify-content:center;margin-bottom:4px}.wg-chip{padding:3px 9px;border:1.5px solid var(--border2);border-radius:999px;background:none;font-size:.72rem;font-weight:700;color:var(--ink2);cursor:pointer;font-family:JetBrains Mono,monospace;transition:all .12s;line-height:1.4}.wg-chip:hover{border-color:var(--ink);color:var(--ink)}.wg-chip--on{background:var(--ruby);border-color:var(--ruby);color:#fff}.wg-btn{padding:6px 14px;border:1.5px solid var(--border2);border-radius:7px;background:none;color:var(--ink);font-size:.78rem;font-weight:600;cursor:pointer;transition:all .12s;font-family:inherit;white-space:nowrap}.wg-btn:hover{border-color:var(--ink);background:var(--surface2)}.wg-btn--primary{background:var(--ruby);border-color:var(--ruby);color:#fff}.wg-btn--primary:hover{opacity:.88}.wg-btn--teal{background:var(--teal);border-color:var(--teal);color:#fff}.wg-btn--teal:hover{opacity:.88}.wg-btn-link{border:none;background:none;font-size:.68rem;font-weight:600;color:var(--ink3);cursor:pointer;padding:2px 4px;border-radius:4px;font-family:inherit;text-decoration:underline;text-underline-offset:2px;transition:color .12s}.wg-btn-link:hover{color:var(--ruby)}.wg-cd{display:flex;flex-direction:column;align-items:center;padding:20px 16px 16px;gap:4px}.wg-cd-number{font-family:JetBrains Mono,monospace;font-size:3.2rem;font-weight:700;letter-spacing:-.04em;color:var(--ink);line-height:1}.wg-cd--warn .wg-cd-number{color:var(--amber)}.wg-cd--urgent .wg-cd-number{color:var(--ruby)}.wg-cd-sub{font-size:.72rem;font-weight:600;color:var(--ink2);text-align:center}.wg-cd-hint{font-size:.67rem;color:var(--ink3);text-align:center;margin-top:8px;line-height:1.5}.wg-break{display:flex;flex-direction:column;align-items:center;padding:16px 14px 14px;gap:10px}.wg-break-time{font-family:JetBrains Mono,monospace;font-size:2.4rem;font-weight:500;letter-spacing:-.04em;color:var(--ink);line-height:1}.wg-break-sub{font-size:.68rem;color:var(--ink3);margin-top:-4px}.wg-break-controls{display:flex;gap:6px}.wg-quote{padding:16px;display:flex;flex-direction:column;gap:10px}.wg-quote-text{font-size:.82rem;line-height:1.65;color:var(--ink);font-style:italic;margin:0}.wg-quote-author{font-size:.7rem;font-weight:700;color:var(--ink2);margin:0}.wg-quote-next{align-self:flex-end;font-size:.72rem;padding:4px 10px}.wl-root{position:fixed;bottom:18px;left:18px;z-index:126;display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-family:DM Sans,ui-sans-serif,sans-serif}.wl-picker{background:var(--surface);border:2px solid var(--ink);box-shadow:var(--shadow-md);border-radius:14px;overflow:hidden;min-width:226px}.wl-picker-title{font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);padding:10px 14px 9px;background:var(--surface2);border-bottom:1.5px solid var(--border)}.wl-picker-row{display:flex;align-items:center;gap:10px;padding:9px 14px;transition:background .1s}.wl-picker-row+.wl-picker-row{border-top:1px solid var(--border)}.wl-picker-icon{font-size:1rem;flex-shrink:0}.wl-picker-name{flex:1;font-size:.78rem;font-weight:600;color:var(--ink)}.wl-toggle{position:relative;width:32px;height:18px;border-radius:999px;border:1.5px solid var(--border2);background:var(--surface2);cursor:pointer;flex-shrink:0;transition:background .15s,border-color .15s;padding:0}.wl-toggle--on{background:var(--ruby);border-color:var(--ruby)}.wl-toggle-knob{position:absolute;top:2px;left:2px;width:10px;height:10px;border-radius:50%;background:var(--ink3);transition:transform .15s,background .15s;display:block}.wl-toggle--on .wl-toggle-knob{transform:translate(14px);background:#fff}.wl-picker-hint{font-size:.63rem;color:var(--ink3);padding:8px 14px;background:var(--surface2);border-top:1.5px solid var(--border);line-height:1.4}.wl-pill{display:flex;align-items:center;gap:2px;background:var(--surface);border:2px solid var(--ink);box-shadow:var(--shadow);border-radius:999px;padding:5px 7px}.wl-pill-divider{width:1.5px;height:18px;background:var(--border);margin:0 4px;flex-shrink:0;border-radius:999px}.wl-icon-btn{width:34px;height:34px;border-radius:8px;border:none;background:none;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .12s;position:relative}.wl-icon-btn:hover{background:var(--surface2)}.wl-icon-btn--active{background:var(--amber-lt)}.wl-icon-btn--active:after{content:"";position:absolute;bottom:3px;left:50%;transform:translate(-50%);width:16px;height:3px;border-radius:999px;background:var(--ruby)}.wl-add-btn{width:28px;height:28px;border-radius:50%;border:1.5px solid var(--border2);background:none;font-size:.85rem;cursor:pointer;color:var(--ink2);display:flex;align-items:center;justify-content:center;transition:all .12s;margin-left:2px}.wl-add-btn:hover{border-color:var(--ruby);color:var(--ruby)}.wl-add-btn--open{background:var(--ruby);border-color:var(--ruby);color:#fff}.wc-panel{margin-top:24px}.wc-title{font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink2);margin:0 0 4px}.wc-sub{font-size:.72rem;color:var(--ink3);margin:0 0 14px}.wc-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.wc-card{display:flex;align-items:center;gap:8px;padding:10px 10px 10px 8px;border:1.5px solid var(--border2);border-radius:10px;background:var(--surface2);cursor:grab;transition:border-color .12s,background .12s,opacity .15s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.wc-card--on{border-color:var(--ruby);background:var(--rose-lt)}.wc-card--dragging{opacity:.45;cursor:grabbing}.wc-card--over{border-color:var(--amber);background:var(--amber-lt)}.wc-card-grip{font-size:.75rem;color:var(--ink3);flex-shrink:0;cursor:grab}.wc-card-icon{font-size:1.1rem;flex-shrink:0}.wc-card-info{flex:1;min-width:0}.wc-card-title{font-size:.72rem;font-weight:700;color:var(--ink)}.wc-card-desc{font-size:.62rem;color:var(--ink3);line-height:1.3;margin-top:1px}.wc-toggle{position:relative;width:32px;height:18px;border-radius:999px;border:1.5px solid var(--border2);background:var(--surface);cursor:pointer;flex-shrink:0;transition:background .15s,border-color .15s;padding:0}.wc-toggle--on{background:var(--ruby);border-color:var(--ruby)}.wc-toggle-knob{position:absolute;top:2px;left:2px;width:10px;height:10px;border-radius:50%;background:var(--ink3);transition:transform .15s,background .15s}.wc-toggle--on .wc-toggle-knob{transform:translate(14px);background:#fff}.acct-btn{background:#fffbf1;border:2px solid #2a1f18;box-shadow:3px 4px #2a1f18;border-radius:999px;color:#2a1f18;font-weight:600;padding:7px 18px;font-family:DM Sans,ui-sans-serif,sans-serif;font-size:.875rem;cursor:pointer;transition:transform .12s,box-shadow .12s;white-space:nowrap;display:flex;align-items:center;gap:8px}.acct-btn:hover{transform:translateY(-2px);box-shadow:4px 6px #2a1f18}.acct-btn-avatar{width:22px;height:22px;border-radius:50%;-o-object-fit:cover;object-fit:cover;flex-shrink:0;border:1.5px solid rgba(42,31,24,.25)}.acct-btn-initial{width:22px;height:22px;border-radius:50%;background:#2a1f18;color:#f2c94c;font-size:.7rem;font-weight:800;font-family:Fraunces,Georgia,serif;display:flex;align-items:center;justify-content:center;flex-shrink:0}.acct-menu{position:absolute;right:calc(100% + 10px);top:0;min-width:230px;background:#fffbf1;border:2px solid #2a1f18;box-shadow:4px 5px #2a1f18;border-radius:14px;overflow:hidden;font-family:DM Sans,ui-sans-serif,sans-serif;font-size:.875rem}.acct-menu-header{display:flex;align-items:center;gap:10px;padding:14px 16px 12px;border-bottom:2px solid rgba(42,31,24,.12);background:#2a1f180a}.acct-menu-avatar{width:34px;height:34px;border-radius:999px;background:#2a1f18;color:#f2c94c;font-weight:800;font-size:.9rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:Fraunces,Georgia,serif;letter-spacing:0;overflow:hidden}.acct-menu-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.acct-menu-user{min-width:0}.acct-menu-name{font-weight:700;color:#2a1f18;font-size:.875rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.acct-menu-email{color:#2a1f1880;font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}.acct-menu-divider{height:2px;background:#2a1f181a;margin:2px 0}.acct-menu-theme{display:flex;align-items:center;justify-content:space-between;padding:9px 16px}.acct-menu-theme-label{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#2a1f1873}.acct-menu-theme-swatches{display:flex;gap:7px}.acct-swatch{width:22px;height:22px;border-radius:50%;border:3px solid;cursor:pointer;transition:transform .12s;padding:0;outline:none}.acct-swatch:hover{transform:scale(1.15)}.acct-swatch--active{outline:2.5px solid #2a1f18;outline-offset:2px}.acct-swatch[data-palette=ruby]{background:#f6eedc;border-color:#a0182b}.acct-swatch[data-palette=citrus]{background:#fff6e5;border-color:#e26d29}.acct-swatch[data-palette=midnight]{background:#181a20;border-color:#ffb257}.acct-swatch[data-palette=garden]{background:#efe9d9;border-color:#3f6b3a}.acct-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:11px 16px;text-align:left;background:transparent;border:0;cursor:pointer;color:#2a1f18;font-weight:500;font-size:.875rem;font-family:DM Sans,ui-sans-serif,sans-serif;transition:background .1s}.acct-menu-item:hover{background:#f2c94c38}.acct-menu-item-icon{font-size:1rem;width:20px;text-align:center;flex-shrink:0}.acct-menu-item--muted{color:#2a1f1899}.acct-menu-item--muted:hover{background:#2a1f180f}.acct-menu-item--danger{color:#a0182b}.acct-menu-item--danger:hover{background:#a0182b14}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background: 38 33% 95%;--foreground: 24 10% 10%;--muted: 36 18% 88%;--muted-foreground: 25 6% 42%;--accent: 35 44% 91%;--accent-foreground: 24 10% 10%;--border: 32 15% 86%;--input: 32 15% 86%;--ring: 174 84% 32%;--primary: 174 84% 32%;--primary-foreground: 0 0% 100%;--secondary: 35 26% 93%;--secondary-foreground: 24 10% 10%;--destructive: 350 76% 50%;--destructive-foreground: 0 0% 100%;--radius: .75rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-auto{pointer-events:auto}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.-bottom-2{bottom:-.5rem}.-right-2{right:-.5rem}.bottom-0{bottom:0}.bottom-4{bottom:1rem}.right-4{right:1rem}.top-4{top:1rem}.top-5{top:1.25rem}.z-10{z-index:10}.z-\[120\]{z-index:120}.z-\[125\]{z-index:125}.z-\[130\]{z-index:130}.z-\[200\]{z-index:200}.z-\[220\]{z-index:220}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-auto{margin-top:auto}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-16{height:4rem}.h-2{height:.5rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[4px\]{height:4px}.h-full{height:100%}.min-h-14{min-height:3.5rem}.min-h-20{min-height:5rem}.min-h-\[260px\]{min-height:260px}.min-h-screen{min-height:100vh}.w-10{width:2.5rem}.w-16{width:4rem}.w-20{width:5rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-8{width:2rem}.w-\[min\(360px\,calc\(100vw-2rem\)\)\]{width:min(360px,calc(100vw - 2rem))}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-\[2ch\]{min-width:2ch}.max-w-2xl{max-width:42rem}.max-w-6xl{max-width:72rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.resize-none{resize:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-evenly{justify-content:space-evenly}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-0{border-width:0px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-amber-300{--tw-border-opacity: 1;border-color:rgb(252 211 77 / var(--tw-border-opacity, 1))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-input{border-color:hsl(var(--input))}.border-primary{border-color:hsl(var(--primary))}.border-stone-200{--tw-border-opacity: 1;border-color:rgb(231 229 228 / var(--tw-border-opacity, 1))}.border-stone-300{--tw-border-opacity: 1;border-color:rgb(214 211 209 / var(--tw-border-opacity, 1))}.border-teal-700{--tw-border-opacity: 1;border-color:rgb(15 118 110 / var(--tw-border-opacity, 1))}.bg-\[\#2D2D2D\]{--tw-bg-opacity: 1;background-color:rgb(45 45 45 / var(--tw-bg-opacity, 1))}.bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.bg-background{background-color:hsl(var(--background))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-primary{background-color:hsl(var(--primary))}.bg-secondary{background-color:hsl(var(--secondary))}.bg-stone-100{--tw-bg-opacity: 1;background-color:rgb(245 245 244 / var(--tw-bg-opacity, 1))}.bg-stone-200{--tw-bg-opacity: 1;background-color:rgb(231 229 228 / var(--tw-bg-opacity, 1))}.bg-stone-50{--tw-bg-opacity: 1;background-color:rgb(250 250 249 / var(--tw-bg-opacity, 1))}.bg-stone-950{--tw-bg-opacity: 1;background-color:rgb(12 10 9 / var(--tw-bg-opacity, 1))}.bg-teal-100{--tw-bg-opacity: 1;background-color:rgb(204 251 241 / var(--tw-bg-opacity, 1))}.bg-teal-300{--tw-bg-opacity: 1;background-color:rgb(94 234 212 / var(--tw-bg-opacity, 1))}.bg-teal-50{--tw-bg-opacity: 1;background-color:rgb(240 253 250 / var(--tw-bg-opacity, 1))}.bg-teal-600{--tw-bg-opacity: 1;background-color:rgb(13 148 136 / var(--tw-bg-opacity, 1))}.bg-teal-700{--tw-bg-opacity: 1;background-color:rgb(15 118 110 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/10{background-color:#ffffff1a}.bg-white\/15{background-color:#ffffff26}.bg-white\/80{background-color:#fffc}.object-cover{-o-object-fit:cover;object-fit:cover}.p-12{padding:3rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-8{padding:2rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.pb-4{padding-bottom:1rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.italic{font-style:italic}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-none{line-height:1}.leading-snug{line-height:1.375}.tracking-\[0\.08em\]{letter-spacing:.08em}.tracking-\[0\.12em\]{letter-spacing:.12em}.tracking-\[0\.1em\]{letter-spacing:.1em}.tracking-normal{letter-spacing:0em}.text-amber-900{--tw-text-opacity: 1;color:rgb(120 53 15 / var(--tw-text-opacity, 1))}.text-amber-950{--tw-text-opacity: 1;color:rgb(69 26 3 / var(--tw-text-opacity, 1))}.text-current{color:currentColor}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-stone-100{--tw-text-opacity: 1;color:rgb(245 245 244 / var(--tw-text-opacity, 1))}.text-stone-300{--tw-text-opacity: 1;color:rgb(214 211 209 / var(--tw-text-opacity, 1))}.text-stone-400{--tw-text-opacity: 1;color:rgb(168 162 158 / var(--tw-text-opacity, 1))}.text-stone-500{--tw-text-opacity: 1;color:rgb(120 113 108 / var(--tw-text-opacity, 1))}.text-stone-600{--tw-text-opacity: 1;color:rgb(87 83 78 / var(--tw-text-opacity, 1))}.text-stone-700{--tw-text-opacity: 1;color:rgb(68 64 60 / var(--tw-text-opacity, 1))}.text-stone-800{--tw-text-opacity: 1;color:rgb(41 37 36 / var(--tw-text-opacity, 1))}.text-stone-950{--tw-text-opacity: 1;color:rgb(12 10 9 / var(--tw-text-opacity, 1))}.text-teal-200{--tw-text-opacity: 1;color:rgb(153 246 228 / var(--tw-text-opacity, 1))}.text-teal-600{--tw-text-opacity: 1;color:rgb(13 148 136 / var(--tw-text-opacity, 1))}.text-teal-700{--tw-text-opacity: 1;color:rgb(15 118 110 / var(--tw-text-opacity, 1))}.text-teal-800{--tw-text-opacity: 1;color:rgb(17 94 89 / var(--tw-text-opacity, 1))}.text-teal-900{--tw-text-opacity: 1;color:rgb(19 78 74 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-70{opacity:.7}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-teal-700{--tw-ring-opacity: 1;--tw-ring-color: rgb(15 118 110 / var(--tw-ring-opacity, 1))}.ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-700{transition-duration:.7s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.file\:text-foreground::file-selector-button{color:hsl(var(--foreground))}.placeholder\:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\:bg-gray-300:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\:bg-stone-100:hover{--tw-bg-opacity: 1;background-color:rgb(245 245 244 / var(--tw-bg-opacity, 1))}.hover\:bg-stone-50:hover{--tw-bg-opacity: 1;background-color:rgb(250 250 249 / var(--tw-bg-opacity, 1))}.hover\:bg-stone-800:hover{--tw-bg-opacity: 1;background-color:rgb(41 37 36 / var(--tw-bg-opacity, 1))}.hover\:bg-teal-100:hover{--tw-bg-opacity: 1;background-color:rgb(204 251 241 / var(--tw-bg-opacity, 1))}.hover\:bg-teal-700:hover{--tw-bg-opacity: 1;background-color:rgb(15 118 110 / var(--tw-bg-opacity, 1))}.hover\:bg-teal-800:hover{--tw-bg-opacity: 1;background-color:rgb(17 94 89 / var(--tw-bg-opacity, 1))}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:underline:hover{text-decoration-line:underline}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-70{opacity:.7}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:hsl(var(--primary))}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:hsl(var(--primary-foreground))}@media(min-width:640px){.sm\:col-span-2{grid-column:span 2 / span 2}.sm\:w-56{width:14rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-start{align-items:flex-start}.sm\:items-end{align-items:flex-end}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:p-5{padding:1.25rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}}@media(min-width:768px){.md\:block{display:block}}@media(min-width:1024px){.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-\[1\.15fr_0\.85fr\]{grid-template-columns:1.15fr .85fr}.lg\:grid-cols-\[1fr_390px\]{grid-template-columns:1fr 390px}.lg\:px-8{padding-left:2rem;padding-right:2rem}}@media(min-width:1280px){.xl\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}:root{--bg:#f6eedc;--surface:#fffbf1;--surface2:rgba(42,31,24,.06);--border:rgba(42,31,24,.2);--border2:rgba(42,31,24,.36);--ink:#2a1f18;--ink2:rgba(42,31,24,.72);--ink3:rgba(42,31,24,.46);--ruby:#a0182b;--amber:#f2c94c;--amber-lt:rgba(242,201,76,.18);--amber-md:rgba(242,201,76,.45);--teal:#6b8e5a;--teal-lt:rgba(107,142,90,.15);--rose:#a0182b;--rose-lt:rgba(160,24,43,.1);--correct:#6b8e5a;--correct-lt:rgba(107,142,90,.15);--wrong:#a0182b;--wrong-lt:rgba(160,24,43,.1);--slate:#4a3f36;--slate-lt:rgba(42,31,24,.06);--radius:10px;--shadow:4px 5px 0 var(--ink);--shadow-md:5px 7px 0 var(--ink)}*{margin:0;padding:0;box-sizing:border-box}body{background:var(--bg);color:var(--ink);font-family:DM Sans,ui-sans-serif,sans-serif;min-height:100vh}.screen{display:none;min-height:100vh}.screen.active{display:flex;flex-direction:column}#home-screen{justify-content:center;align-items:center;padding:2.5rem 1.5rem}.home-inner{max-width:860px;width:100%}.top-nav{background:var(--surface);border-bottom:2px solid var(--ink);padding:.75rem 1.5rem;display:flex;align-items:center;gap:1rem;position:sticky;top:0;z-index:50;box-shadow:0 3px 0 var(--ink)}.nav-wordmark{font-family:Fraunces,Georgia,serif;font-size:1.1rem;font-weight:600;color:var(--ink)}.nav-wordmark span{color:var(--ruby)}.nav-spacer{flex:1}.nav-links{display:flex;gap:.3rem}.nav-link{padding:.38rem .82rem;border-radius:999px;font-size:.78rem;font-weight:700;cursor:pointer;border:2px solid transparent;color:var(--ink2);transition:all .15s;background:none;font-family:DM Sans,sans-serif}.nav-link:hover{border-color:var(--border2);background:var(--surface2)}.nav-link.active-link{background:var(--amber);border-color:var(--ink);color:var(--ink);box-shadow:2px 2px 0 var(--ink)}.nav-hamburger{display:none;padding:.38rem .6rem;border-radius:8px;background:var(--surface2);border:2px solid var(--ink);cursor:pointer;font-size:1rem;box-shadow:2px 2px 0 var(--ink)}.nav-menu-drop{display:none;position:absolute;top:100%;right:1rem;background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);padding:.5rem;min-width:180px;z-index:100}.nav-menu-drop.open{display:flex;flex-direction:column;gap:.2rem}.nav-menu-item{padding:.5rem .85rem;border-radius:8px;font-size:.82rem;font-weight:600;cursor:pointer;color:var(--ink2);transition:all .15s;border:none;background:none;text-align:left;font-family:DM Sans,sans-serif}.nav-menu-item:hover{background:var(--amber-lt);color:var(--ink)}@media(max-width:600px){.nav-links{display:none}.nav-hamburger{display:block}}.wordmark-row{display:flex;align-items:baseline;gap:.5rem;margin-bottom:1.8rem;padding-bottom:1.2rem;border-bottom:2px solid var(--ink)}.wm-logo{font-family:Fraunces,Georgia,serif;font-size:1.4rem;font-weight:600;color:var(--ink)}.wm-logo span{color:var(--ruby)}.wm-sub{font-size:.75rem;color:var(--ink3);letter-spacing:.06em;text-transform:uppercase;padding-left:.5rem;border-left:2px solid var(--border2)}.wm-badge{margin-left:auto;background:var(--amber);border:2px solid var(--ink);border-radius:999px;padding:.18rem .72rem;font-size:.67rem;font-weight:800;color:var(--ink);box-shadow:2px 2px 0 var(--ink)}.checkin-card{background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);padding:1.2rem 1.4rem;margin-bottom:1.2rem;box-shadow:var(--shadow)}.ci-top{display:flex;align-items:flex-start;gap:1.2rem;flex-wrap:wrap;margin-bottom:1rem}.ci-streak-block{flex-shrink:0;text-align:center;min-width:72px}.ci-streak-num{font-family:Fraunces,Georgia,serif;font-size:2.8rem;font-weight:600;line-height:1;color:var(--ruby)}.ci-streak-lbl{font-size:.63rem;text-transform:uppercase;letter-spacing:.1em;color:var(--ink3);margin-top:2px}.ci-mid{flex:1;min-width:200px}.ci-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--ink2);margin-bottom:.4rem}.ci-meta{font-size:.68rem;color:var(--ink3);margin-bottom:.6rem}.ci-btn-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.ci-btn{padding:.52rem 1.1rem;background:var(--ruby);color:var(--surface);border:2px solid var(--ink);border-radius:999px;font-weight:800;font-size:.8rem;cursor:pointer;font-family:DM Sans,sans-serif;white-space:nowrap;transition:transform .15s,box-shadow .15s;box-shadow:3px 3px 0 var(--ink)}.ci-btn:hover{transform:translateY(-2px);box-shadow:4px 5px 0 var(--ink)}.ci-btn.done-state{background:var(--teal-lt);color:var(--teal);border:2px solid var(--teal);box-shadow:2px 3px 0 var(--teal)}.ci-hint{font-size:.62rem;color:var(--ink3);text-align:right}.ci-cal-section{border-top:1.5px dashed var(--border2);padding-top:.9rem}.ci-cal-header{display:flex;align-items:center;gap:.6rem;margin-bottom:.6rem}.ci-cal-title{font-size:.72rem;font-weight:700;color:var(--ink2);flex:1}.ci-month-nav{display:flex;gap:.3rem;align-items:center}.ci-month-btn{background:var(--surface2);border:2px solid var(--ink);border-radius:999px;padding:.22rem .7rem;cursor:pointer;font-size:.72rem;color:var(--ink2);font-family:DM Sans,sans-serif;box-shadow:2px 2px 0 var(--ink);transition:transform .1s}.ci-month-btn:hover{transform:translateY(-1px)}.ci-month-lbl{font-size:.75rem;font-weight:700;color:var(--ink);min-width:90px;text-align:center}.cal-dow{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:2px}.cal-dow-lbl{font-size:.55rem;color:var(--ink3);text-align:center;font-weight:700;text-transform:uppercase}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.cal-day{height:28px;border-radius:5px;border:1.5px solid var(--border);background:var(--surface2);display:flex;align-items:center;justify-content:center;gap:3px;cursor:default;transition:all .12s;padding:0 2px}.cal-day.clickable{cursor:pointer}.cal-day.done{background:var(--teal-lt);border-color:var(--teal)}.cal-day.done:hover{background:var(--rose-lt);border-color:var(--rose)}.cal-day.today{border-color:var(--ink);border-width:2px}.cal-day.today.done{background:var(--amber-lt);border-color:var(--ink)}.cal-day.today.done:hover{background:var(--rose-lt);border-color:var(--rose)}.cal-day.empty{background:transparent;border-color:transparent}.cal-day.future{opacity:.35}.cal-day-num{font-size:.6rem;color:var(--ink2);font-weight:700;line-height:1}.cal-day-dot{font-size:.58rem;line-height:1;color:var(--teal)}.cal-day.today .cal-day-num{color:var(--ruby)}.pdf-strip{background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);padding:.95rem 1.3rem;margin-bottom:1.2rem;box-shadow:var(--shadow);display:flex;align-items:center;gap:.9rem;flex-wrap:wrap}.pdf-icon{font-size:1.35rem}.pdf-text{flex:1}.pdf-label{font-size:.78rem;font-weight:700;color:var(--ruby)}.pdf-sub{font-size:.67rem;color:var(--ink3);margin-top:2px}.pdf-import-btn{padding:.42rem 1rem;background:var(--ruby);color:var(--surface);border:2px solid var(--ink);border-radius:999px;font-size:.75rem;font-weight:800;cursor:pointer;font-family:DM Sans,sans-serif;box-shadow:2px 3px 0 var(--ink);transition:transform .15s,box-shadow .15s}.pdf-import-btn:hover{transform:translateY(-1px);box-shadow:3px 4px 0 var(--ink)}.pdf-loaded-badge{display:none;font-size:.65rem;color:var(--teal);background:var(--teal-lt);border:2px solid var(--teal);border-radius:999px;padding:.18rem .6rem;font-weight:700}#pdf-file-input{display:none}.hero{margin-bottom:1.5rem}.hero-eyebrow{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--ink3);margin-bottom:.4rem}.hero-title{font-family:Fraunces,Georgia,serif;font-size:clamp(1.9rem,5vw,3rem);font-weight:600;line-height:1.05;letter-spacing:-.01em;margin-bottom:.55rem}.hero-title em{font-style:italic;color:var(--ruby)}.hero-sub{font-size:.86rem;color:var(--ink2);line-height:1.6}.stats-row{display:grid;grid-template-columns:repeat(6,minmax(118px,1fr));gap:.65rem;margin-bottom:1.3rem}.stat-card{background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);padding:.85rem 1rem;text-align:center;flex:1;min-width:90px;box-shadow:var(--shadow)}.stat-val{font-family:Fraunces,Georgia,serif;font-size:1.7rem;font-weight:600;color:var(--ruby);line-height:1;display:block}.stat-lbl{font-size:.62rem;text-transform:uppercase;letter-spacing:.1em;color:var(--ink3);margin-top:3px}.countdown-card{border-color:var(--teal);box-shadow:4px 5px 0 var(--teal)}.countdown-card .stat-val{color:var(--teal)}@media(max-width:860px){.stats-row{grid-template-columns:repeat(2,minmax(0,1fr))}}.config-card{background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);padding:1.5rem;margin-bottom:1rem;box-shadow:var(--shadow)}.config-section-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.15em;color:var(--ink3);font-weight:700;margin-bottom:1rem}.mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin-bottom:1.2rem}.mode-btn{background:var(--surface2);border:2px solid var(--border2);border-radius:var(--radius);padding:.85rem .95rem;cursor:pointer;transition:all .15s;text-align:left;font-family:DM Sans,sans-serif}.mode-btn:hover{border-color:var(--ink);background:var(--amber-lt);box-shadow:2px 3px 0 var(--ink)}.mode-btn.selected{border-color:var(--ink);background:var(--amber);box-shadow:3px 4px 0 var(--ink)}.mode-icon{font-size:1.15rem;display:block;margin-bottom:.28rem}.mode-name{font-size:.78rem;font-weight:700;display:block;color:var(--ink)}.mode-desc{font-size:.65rem;color:var(--ink3);margin-top:2px}.config-row{display:flex;align-items:center;gap:.85rem;margin-bottom:.95rem;flex-wrap:wrap}.config-lbl{font-size:.7rem;font-weight:700;color:var(--ink2);min-width:60px;text-transform:uppercase;letter-spacing:.06em}.count-row{display:flex;gap:.38rem;flex-wrap:wrap}.count-btn{background:var(--surface);border:2px solid var(--border2);border-radius:999px;padding:.3rem .8rem;cursor:pointer;font-size:.78rem;color:var(--ink2);transition:all .12s;font-weight:600}.count-btn:hover{border-color:var(--ink);color:var(--ink)}.count-btn.selected{background:var(--amber);color:var(--ink);border-color:var(--ink);font-weight:800;box-shadow:2px 2px 0 var(--ink)}.cat-chips{display:flex;gap:.38rem;flex-wrap:wrap}.cat-chip{background:var(--surface);border:2px solid var(--border2);border-radius:999px;padding:.26rem .85rem;font-size:.67rem;cursor:pointer;transition:all .12s;color:var(--ink2);white-space:nowrap;font-weight:600}.cat-chip:hover{border-color:var(--ink);color:var(--ink)}.cat-chip.selected{background:var(--amber);border-color:var(--ink);color:var(--ink);font-weight:800;box-shadow:2px 2px 0 var(--ink)}.start-btn{width:100%;padding:1rem;background:var(--ruby);color:var(--surface);border:2px solid var(--ink);border-radius:999px;font-size:.95rem;font-weight:800;cursor:pointer;font-family:DM Sans,sans-serif;letter-spacing:.02em;transition:transform .15s,box-shadow .15s;box-shadow:4px 4px 0 var(--ink)}.start-btn:hover{transform:translateY(-2px);box-shadow:5px 6px 0 var(--ink)}@keyframes resumeGlow{0%,to{box-shadow:4px 4px 0 var(--ink),0 4px 16px color-mix(in srgb,var(--ruby) 30%,transparent)}50%{box-shadow:5px 6px 0 var(--ink),0 6px 24px color-mix(in srgb,var(--ruby) 50%,transparent)}}@keyframes rqbSlideIn{0%{opacity:0;transform:translate(-50%) translateY(-14px)}to{opacity:1;transform:translate(-50%) translateY(0)}}#continue-quiz-btn{background:var(--ruby);border-color:var(--ink);animation:resumeGlow 2.4s ease-in-out infinite;letter-spacing:.02em;font-size:.97rem}#continue-quiz-btn:hover{background:#c0392b;transform:translateY(-2px);box-shadow:6px 7px 0 var(--ink);animation:none}#resume-quiz-banner{position:fixed;top:72px;left:50%;transform:translate(-50%);z-index:115;width:-moz-max-content;width:max-content;max-width:min(420px,calc(100vw - 2rem));background:var(--surface);border:2px solid var(--ruby);border-radius:var(--radius);padding:.85rem 1.1rem;display:flex;align-items:center;gap:.9rem;box-shadow:4px 5px 0 var(--ruby);animation:rqbSlideIn .32s cubic-bezier(.22,1,.36,1);font-family:DM Sans,sans-serif}.rqb-icon{font-size:1.3rem;line-height:1;flex-shrink:0}.rqb-text{flex:1;min-width:0}.rqb-title{font-size:.82rem;font-weight:800;color:var(--ruby)}.rqb-sub{font-size:.75rem;color:var(--ink3);margin-top:.1rem}.rqb-btn{background:var(--ruby);color:var(--surface);border:2px solid var(--ink);border-radius:999px;padding:.42rem 1rem;font-weight:800;cursor:pointer;font-size:.82rem;white-space:nowrap;font-family:DM Sans,sans-serif;transition:transform .15s,box-shadow .15s;flex-shrink:0;box-shadow:2px 3px 0 var(--ink)}.rqb-btn:hover{transform:translateY(-1px);box-shadow:3px 4px 0 var(--ink)}.rqb-close{background:none;border:none;cursor:pointer;color:var(--ink3);font-size:1rem;padding:.2rem .35rem;border-radius:6px;line-height:1;flex-shrink:0;transition:color .15s}.rqb-close:hover{color:var(--ink)}.quick-links{display:flex;gap:.55rem;margin-top:.7rem}.profile-card{background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);padding:1rem 1.25rem;margin-bottom:1rem;box-shadow:var(--shadow)}.profile-top{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:.75rem}.profile-title{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--ink3);margin-right:auto}.profile-select{background:var(--surface2);border:2px solid var(--ink);border-radius:8px;padding:.45rem .65rem;font-family:DM Sans,sans-serif;color:var(--ink);font-weight:700;box-shadow:2px 2px 0 var(--ink)}.profile-actions{display:flex;gap:.45rem;flex-wrap:wrap}.profile-btn{background:var(--surface2);border:2px solid var(--border2);border-radius:999px;padding:.44rem .82rem;font-family:DM Sans,sans-serif;font-size:.74rem;font-weight:800;color:var(--ink2);cursor:pointer;transition:all .12s}.profile-btn:hover{border-color:var(--ink);color:var(--ink);box-shadow:2px 2px 0 var(--ink)}.profile-btn.primary{background:var(--teal-lt);border-color:var(--teal);color:var(--teal);box-shadow:2px 2px 0 var(--teal)}.profile-note{font-size:.72rem;color:var(--ink3);line-height:1.45}.quick-btn{flex:1;padding:.72rem;background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);cursor:pointer;font-size:.73rem;color:var(--ink2);transition:all .12s;font-family:DM Sans,sans-serif;text-align:center;font-weight:600;box-shadow:var(--shadow)}.quick-btn:hover{background:var(--amber-lt);color:var(--ink);transform:translateY(-1px)}.quick-btn .qi{display:block;font-size:.92rem;margin-bottom:.22rem}#quiz-screen{padding:0}.quiz-header{background:var(--surface);border-bottom:2px solid var(--ink);padding:.9rem 1.4rem;padding-right:max(1.4rem,160px);display:flex;align-items:center;gap:.9rem;position:sticky;top:0;z-index:10;box-shadow:0 3px 0 var(--ink);flex-wrap:wrap}.back-btn{background:var(--surface2);border:2px solid var(--ink);border-radius:999px;padding:.38rem .9rem;cursor:pointer;font-size:.76rem;color:var(--ink);transition:all .12s;font-family:DM Sans,sans-serif;font-weight:700;box-shadow:2px 3px 0 var(--ink)}.back-btn:hover{transform:translateY(-1px);box-shadow:3px 4px 0 var(--ink)}.prog-wrap{flex:1}.prog-txt{display:flex;justify-content:space-between;font-size:.68rem;color:var(--ink3);margin-bottom:.32rem;font-weight:600}.prog-bar{height:5px;background:var(--surface2);border-radius:100px;overflow:hidden;border:1.5px solid var(--border2)}.prog-fill{height:100%;background:linear-gradient(90deg,var(--ruby),var(--amber));border-radius:100px;transition:width .4s ease}.quiz-actions{display:flex;gap:.4rem}.icon-btn{background:var(--surface2);border:2px solid var(--border2);border-radius:8px;padding:.4rem .7rem;cursor:pointer;font-size:.92rem;transition:all .12s;color:var(--ink3);font-family:DM Sans,sans-serif;font-weight:700}.icon-btn:hover{border-color:var(--ink);color:var(--ink);box-shadow:2px 2px 0 var(--ink)}.icon-btn.active{color:var(--ink);border-color:var(--ink);background:var(--amber);box-shadow:2px 2px 0 var(--ink)}.icon-btn.mark-active{color:var(--surface);border-color:var(--ruby);background:var(--ruby);box-shadow:2px 2px 0 var(--ink)}.exam-timer-widget{margin:.95rem 0 1rem;background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);padding:.9rem;box-shadow:var(--shadow)}.timer-head{display:flex;align-items:center;gap:.45rem;margin-bottom:.75rem;font-size:.74rem;font-weight:800;color:var(--ink);letter-spacing:.02em}.timer-head-icon{display:inline-flex;width:20px;height:20px;align-items:center;justify-content:center;border-radius:50%;background:var(--teal-lt);color:var(--teal);font-size:.86rem}.timer-area{display:flex;align-items:center;justify-content:center;gap:.28rem;margin-bottom:.85rem}.timer-box{width:62px;text-align:center;background:var(--surface);border:2px solid var(--ink);border-radius:8px;padding:.45rem .3rem;font-family:DM Sans,monospace;font-size:1.05rem;font-weight:900;color:var(--ink);outline:none;box-shadow:2px 2px 0 var(--ink)}.timer-box:focus{border-color:var(--ruby);box-shadow:2px 2px 0 var(--ruby)}.timer-box::-webkit-outer-spin-button,.timer-box::-webkit-inner-spin-button{-webkit-appearance:none;appearance:none;margin:0}.timer-box[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.timer-sep{color:var(--ink3);font-weight:900}.timer-controls{display:grid;grid-template-columns:1fr 1fr;gap:.38rem}.timer-chip{border:2px solid var(--border2);background:var(--surface);border-radius:8px;padding:.45rem .4rem;font-family:DM Sans,sans-serif;font-size:.67rem;font-weight:800;color:var(--ink2);cursor:pointer;transition:all .12s}.timer-chip:hover{border-color:var(--ink);color:var(--ink);box-shadow:2px 2px 0 var(--ink)}.timer-chip.primary{background:var(--teal);border-color:var(--ink);color:var(--surface);box-shadow:2px 2px 0 var(--ink)}.timer-chip.primary.paused{background:var(--amber);border-color:var(--ink);color:var(--ink);box-shadow:2px 2px 0 var(--ink)}.timer-chip.icon-only{font-size:.85rem}@media(max-width:920px){.timer-controls{grid-template-columns:repeat(4,1fr)}.timer-box{min-width:54px}}.question-actions{display:flex;gap:.55rem;flex-wrap:wrap;margin:-.2rem 0 1.1rem}.q-action-btn{border:2px solid var(--border2);background:var(--surface);border-radius:12px;padding:.85rem 1rem;font-family:DM Sans,sans-serif;font-size:.84rem;font-weight:800;color:var(--ink2);cursor:pointer;box-shadow:3px 4px 0 var(--ink);transition:all .12s;display:inline-flex;align-items:center;gap:.7rem;min-height:64px}.q-action-btn:hover{border-color:var(--ink);color:var(--ink);transform:translateY(-2px);box-shadow:4px 6px 0 var(--ink)}.q-action-btn.saved{border-color:var(--ink);background:var(--amber);color:var(--ink)}.q-action-btn.marked{border-color:var(--ruby);background:var(--rose-lt);color:var(--ruby)}.q-action-icon{width:42px;height:42px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:1.55rem;background:var(--surface2);border:1.5px solid var(--border2);flex-shrink:0}.q-action-btn.saved .q-action-icon{background:var(--ink);border-color:var(--ink);color:var(--amber)}.q-action-btn.marked .q-action-icon{background:var(--ruby);border-color:var(--ruby);color:var(--surface)}.q-action-copy{display:flex;flex-direction:column;align-items:flex-start;line-height:1.12}.q-action-sub{font-size:.64rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3);margin-top:.18rem}.quiz-main{flex:1;display:grid;grid-template-columns:minmax(0,860px) 230px;gap:1rem;align-items:start;width:100%;max-width:1160px;margin:0 auto;padding:1.7rem 1.4rem}.quiz-body{width:100%}.quiz-side{position:sticky;top:86px;background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);padding:.85rem;box-shadow:var(--shadow)}.side-title{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--ink3);margin-bottom:.55rem}.side-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.36rem;margin-bottom:1rem}.side-q{height:32px;border:2px solid var(--border2);background:var(--surface2);border-radius:7px;font-size:.7rem;font-weight:700;color:var(--ink2);cursor:pointer;position:relative;font-family:DM Sans,sans-serif;transition:all .12s}.side-q:hover{border-color:var(--ink);color:var(--ink);box-shadow:2px 2px 0 var(--ink)}.side-q.current{background:var(--ruby);border-color:var(--ink);color:var(--surface);box-shadow:2px 2px 0 var(--ink)}.side-q.done:not(.current){background:var(--correct-lt);border-color:var(--correct);color:var(--teal)}.side-q.saved:before{content:"★";position:absolute;left:4px;top:1px;font-size:.55rem;color:var(--ink)}.side-q.marked:after{content:"";position:absolute;right:4px;top:4px;width:6px;height:6px;background:var(--ruby);border-radius:50%}.marked-list{display:flex;flex-direction:column;gap:.38rem}.marked-item{border:2px solid var(--ruby);background:var(--rose-lt);color:var(--ruby);border-radius:8px;padding:.42rem .55rem;font-size:.72rem;font-weight:800;cursor:pointer;text-align:left;font-family:DM Sans,sans-serif;box-shadow:2px 2px 0 var(--ruby);transition:transform .1s}.marked-item:hover{transform:translateY(-1px)}.marked-empty{font-size:.72rem;color:var(--ink3);line-height:1.45}@media(max-width:920px){.quiz-main{display:block;max-width:760px}.quiz-side{position:static;margin-top:1rem}.side-grid{grid-template-columns:repeat(8,1fr)}}.q-meta{display:flex;gap:.42rem;align-items:center;margin-bottom:.95rem;flex-wrap:wrap}.q-num-badge{background:var(--surface2);border:2px solid var(--border2);border-radius:999px;padding:.16rem .6rem;font-size:.65rem;color:var(--ink3);font-weight:700}.pdf-badge{background:var(--teal-lt);border:2px solid var(--teal);border-radius:999px;padding:.16rem .6rem;font-size:.65rem;color:var(--teal);cursor:pointer;transition:all .12s;display:inline-flex;align-items:center;gap:4px;font-weight:700}.pdf-badge:hover{background:var(--teal);color:var(--surface)}.pdf-badge.no-pdf{cursor:default;opacity:.4}.cat-pill{border-radius:999px;padding:.18rem .7rem;font-size:.63rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.cat-pill.cc{background:#dbeafe;color:#1d4ed8;border:1.5px solid #93c5fd}.cat-pill.sc{background:var(--rose-lt);color:var(--ruby);border:1.5px solid color-mix(in srgb,var(--ruby) 30%,transparent)}.cat-pill.ct{background:var(--teal-lt);color:var(--teal);border:1.5px solid color-mix(in srgb,var(--teal) 40%,transparent)}.cat-pill.bp{background:var(--amber-lt);color:#92400e;border:1.5px solid var(--amber)}.cat-pill.mi{background:#ede9fe;color:#6d28d9;border:1.5px solid #c4b5fd}.q-text{font-size:1rem;line-height:1.72;margin-bottom:1.7rem;color:var(--ink)}.options{display:flex;flex-direction:column;gap:.62rem;margin-bottom:1.2rem}.opt{background:var(--surface);border:2px solid var(--border2);border-radius:var(--radius);padding:.88rem 1.05rem;cursor:pointer;transition:all .12s;display:flex;align-items:flex-start;gap:.65rem;box-shadow:3px 4px 0 var(--border2)}.opt:hover:not(.revealed){border-color:var(--ink);background:var(--amber-lt);box-shadow:3px 4px 0 var(--ink)}.opt-key{background:var(--surface2);border:2px solid var(--border2);border-radius:7px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:800;flex-shrink:0;transition:all .12s;margin-top:1px;color:var(--ink2)}.opt-text{font-size:.88rem;line-height:1.55;padding-top:2px;color:var(--ink)}.opt.selected{border-color:var(--ink);background:var(--amber-lt);box-shadow:3px 4px 0 var(--ink)}.opt.selected .opt-key{background:var(--amber);border-color:var(--ink);color:var(--ink)}.opt.correct{border-color:var(--correct);background:var(--correct-lt);box-shadow:3px 4px 0 var(--correct)}.opt.correct .opt-key{background:var(--correct);border-color:var(--correct);color:var(--surface)}.opt.wrong{border-color:var(--wrong);background:var(--wrong-lt);box-shadow:3px 4px 0 var(--wrong)}.opt.wrong .opt-key{background:var(--wrong);border-color:var(--wrong);color:var(--surface)}.opt.revealed{cursor:default;box-shadow:none}.feedback{background:var(--surface);border:2px solid var(--border2);border-radius:var(--radius);padding:1rem 1.25rem;margin-bottom:1.2rem;display:none;animation:slideUp .22s ease;box-shadow:var(--shadow)}.feedback.show{display:flex;align-items:flex-start;gap:.85rem}.fb-icon{font-size:1.45rem;margin-top:1px}.feedback.fb-correct{border-color:var(--correct);background:var(--correct-lt);box-shadow:4px 5px 0 var(--correct)}.feedback.fb-wrong{border-color:var(--wrong);background:var(--wrong-lt);box-shadow:4px 5px 0 var(--wrong)}.fb-title{font-weight:800;font-size:.87rem}.feedback.fb-correct .fb-title{color:var(--teal)}.feedback.fb-wrong .fb-title{color:var(--ruby)}.fb-sub{font-size:.76rem;color:var(--ink2);margin-top:3px;line-height:1.55}.pdf-link{display:inline-flex;align-items:center;gap:4px;font-size:.7rem;color:var(--teal);cursor:pointer;margin-top:7px;border:2px solid var(--teal);border-radius:999px;padding:.18rem .62rem;background:var(--teal-lt);transition:all .12s;font-weight:700}.pdf-link:hover{background:var(--teal);color:var(--surface)}.quiz-nav{display:flex;gap:.65rem}.nav-btn{flex:1;padding:.85rem;border-radius:999px;border:2px solid var(--ink);cursor:pointer;font-size:.83rem;font-family:DM Sans,sans-serif;font-weight:800;transition:all .15s;box-shadow:3px 4px 0 var(--ink)}.btn-ghost{background:var(--surface);color:var(--ink)}.btn-ghost:hover{background:var(--surface2);transform:translateY(-1px);box-shadow:4px 5px 0 var(--ink)}.btn-next{background:var(--teal);color:var(--surface);border-color:var(--ink)}.btn-next:hover{background:#59784a;transform:translateY(-1px);box-shadow:4px 5px 0 var(--ink)}#progress-screen{flex-direction:column}.list-header{background:var(--surface);border-bottom:2px solid var(--ink);padding:1rem 1.4rem;padding-right:max(1.4rem,160px);display:flex;align-items:center;gap:.9rem;box-shadow:0 3px 0 var(--ink)}.list-title{flex:1;font-size:.97rem;font-weight:700;font-family:Fraunces,Georgia,serif;color:var(--ink)}.week-nav{display:flex;align-items:center;gap:.5rem}.week-nav-btn{background:var(--surface2);border:2px solid var(--ink);border-radius:999px;padding:.27rem .8rem;cursor:pointer;font-size:.74rem;color:var(--ink2);font-family:DM Sans,sans-serif;box-shadow:2px 2px 0 var(--ink);transition:transform .1s}.week-nav-btn:hover{transform:translateY(-1px)}.week-lbl{font-size:.7rem;color:var(--ink3);min-width:95px;text-align:center;font-weight:600}.prog-body{flex:1;overflow-y:auto;padding:1.4rem;max-width:820px;width:100%;margin:0 auto}.summary-row{display:flex;gap:.65rem;margin-bottom:1.2rem;flex-wrap:wrap}.s-card{background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);padding:.9rem 1rem;flex:1;min-width:90px;text-align:center;box-shadow:var(--shadow)}.s-num{font-family:Fraunces,Georgia,serif;font-size:1.65rem;font-weight:600;display:block;line-height:1}.s-num.amber{color:var(--ruby)}.s-num.teal{color:var(--teal)}.s-num.rose{color:var(--rose)}.s-num.slate{color:var(--slate)}.s-lbl{font-size:.6rem;text-transform:uppercase;letter-spacing:.09em;color:var(--ink3);margin-top:3px}.chart-card{background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);padding:1.4rem;margin-bottom:1.15rem;box-shadow:var(--shadow)}.chart-title{font-size:.65rem;text-transform:uppercase;letter-spacing:.14em;color:var(--ink3);font-weight:700;margin-bottom:1.3rem}.bar-chart{display:flex;align-items:flex-end;gap:8px;height:140px}.bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:5px;height:100%}.bar-wrap{flex:1;width:100%;display:flex;align-items:flex-end}.bar{width:100%;border-radius:7px 7px 0 0;min-height:4px;transition:height .5s ease;background:linear-gradient(180deg,var(--teal),color-mix(in srgb,var(--teal) 30%,transparent));position:relative}.bar.today-bar{background:linear-gradient(180deg,var(--amber),color-mix(in srgb,var(--amber) 30%,transparent))}.bar.zero-bar{background:var(--surface2);border:2px solid var(--border2);min-height:4px;border-radius:6px}.bar-val{position:absolute;top:-20px;left:50%;transform:translate(-50%);font-size:.6rem;color:var(--ink3);white-space:nowrap;font-weight:700}.bar-val.active{color:var(--teal)}.bar-val.today{color:var(--ruby)}.bar-day{font-size:.63rem;color:var(--ink3);font-weight:700;white-space:nowrap}.bar-day.today{color:var(--ruby)}.bar-date{font-size:.54rem;color:var(--ink3)}.heatmap-card{background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);padding:1.3rem;margin-bottom:1.15rem;box-shadow:var(--shadow)}.hm-grid{display:flex;gap:4px;flex-wrap:wrap}.hm-cell{width:21px;height:21px;border-radius:4px;background:var(--surface2);border:1.5px solid var(--border);cursor:default;transition:all .12s;position:relative}.hm-cell:hover:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--ink);color:var(--surface);border-radius:7px;padding:.25rem .6rem;font-size:.6rem;white-space:nowrap;z-index:10}.hm-cell.lvl1{background:color-mix(in srgb,var(--teal) 15%,transparent);border-color:color-mix(in srgb,var(--teal) 30%,transparent)}.hm-cell.lvl2{background:color-mix(in srgb,var(--teal) 30%,transparent);border-color:color-mix(in srgb,var(--teal) 50%,transparent)}.hm-cell.lvl3{background:color-mix(in srgb,var(--teal) 55%,transparent);border-color:color-mix(in srgb,var(--teal) 70%,transparent)}.hm-cell.lvl4{background:var(--teal);border-color:var(--teal)}.hm-cell.today-cell{outline:2.5px solid var(--ruby);outline-offset:2px}.hm-legend{display:flex;align-items:center;gap:.45rem;margin-top:.85rem;font-size:.62rem;color:var(--ink3);font-weight:600}.lc{width:15px;height:15px;border-radius:4px;border:1.5px solid var(--border)}.lc.l0{background:var(--surface2)}.lc.l1{background:color-mix(in srgb,var(--teal) 15%,transparent);border-color:color-mix(in srgb,var(--teal) 30%,transparent)}.lc.l2{background:color-mix(in srgb,var(--teal) 30%,transparent);border-color:color-mix(in srgb,var(--teal) 50%,transparent)}.lc.l3{background:color-mix(in srgb,var(--teal) 55%,transparent);border-color:color-mix(in srgb,var(--teal) 70%,transparent)}.lc.l4{background:var(--teal);border-color:var(--teal)}.breakdown-card{background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);padding:1.3rem;margin-bottom:1.15rem;box-shadow:var(--shadow)}.bd-row{display:flex;align-items:center;gap:.8rem;margin-bottom:.75rem}.bd-label{font-size:.74rem;color:var(--ink2);min-width:120px;font-weight:700}.bd-bar-wrap{flex:1;height:8px;background:var(--surface2);border-radius:100px;overflow:hidden;border:1.5px solid var(--border2)}.bd-bar{height:100%;border-radius:100px;transition:width .6s ease}.bd-nums{font-size:.68rem;color:var(--ink3);min-width:82px;text-align:right;font-weight:600}#check-screen{flex-direction:column}.check-body{flex:1;overflow-y:auto;padding:1.5rem;max-width:820px;width:100%;margin:0 auto}.check-hero{background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);padding:1.5rem;margin-bottom:1.15rem;box-shadow:var(--shadow)}.check-hero-title{font-family:Fraunces,Georgia,serif;font-size:1.2rem;font-weight:600;margin-bottom:.35rem}.check-hero-sub{font-size:.8rem;color:var(--ink2);line-height:1.6}.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1.15rem}@media(max-width:500px){.check-grid{grid-template-columns:1fr}}.check-card{background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);padding:1.1rem 1.3rem;box-shadow:var(--shadow)}.check-card.pass{border-color:var(--correct);box-shadow:4px 5px 0 var(--correct)}.check-card.fail{border-color:var(--wrong);box-shadow:4px 5px 0 var(--wrong)}.check-card.warn{border-color:var(--amber);box-shadow:4px 5px 0 var(--ink)}.check-status{display:flex;align-items:center;gap:.6rem;margin-bottom:.35rem}.check-icon{font-size:1.3rem}.check-label{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--ink2)}.check-value{font-family:Fraunces,Georgia,serif;font-size:1.6rem;font-weight:600;color:var(--ink);line-height:1}.check-detail{font-size:.7rem;color:var(--ink3);margin-top:3px;line-height:1.5}.check-value.green{color:var(--correct)}.check-value.amber{color:var(--ruby)}.check-value.red{color:var(--wrong)}.check-run-btn{width:100%;padding:.95rem;background:var(--ruby);color:var(--surface);border:2px solid var(--ink);border-radius:999px;font-size:.9rem;font-weight:800;cursor:pointer;font-family:DM Sans,sans-serif;margin-bottom:1.15rem;transition:transform .15s,box-shadow .15s;box-shadow:4px 4px 0 var(--ink)}.check-run-btn:hover{transform:translateY(-2px);box-shadow:5px 6px 0 var(--ink)}.check-log{background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);padding:1.2rem;box-shadow:var(--shadow)}.check-log-title{font-size:.65rem;text-transform:uppercase;letter-spacing:.14em;color:var(--ink3);font-weight:700;margin-bottom:.85rem}.check-log-item{display:flex;align-items:flex-start;gap:.6rem;margin-bottom:.55rem;font-size:.78rem}.log-icon{flex-shrink:0;margin-top:1px}.log-text{color:var(--ink2);line-height:1.5}.log-text strong{color:var(--ink)}#result-screen{justify-content:center;align-items:center;padding:2rem}.result-inner{max-width:550px;width:100%;text-align:center}.score-wrap{position:relative;width:134px;height:134px;margin:0 auto 1.8rem}.score-wrap svg{position:absolute;top:0;left:0;transform:rotate(-90deg)}.score-center{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column}.score-pct{font-family:Fraunces,Georgia,serif;font-size:2.2rem;font-weight:600;color:var(--teal);line-height:1}.score-lbl{font-size:.63rem;text-transform:uppercase;letter-spacing:.1em;color:var(--ink3);margin-top:2px}.result-title{font-family:Fraunces,Georgia,serif;font-size:1.6rem;font-weight:600;margin-bottom:.45rem}.result-sub{color:var(--ink3);font-size:.8rem;margin-bottom:1.6rem}.result-stats{display:flex;gap:.65rem;margin-bottom:1.5rem}.rs{flex:1;background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);padding:.88rem;box-shadow:var(--shadow)}.rs-num{font-family:Fraunces,Georgia,serif;font-size:1.55rem;font-weight:600;display:block}.rs-num.g{color:var(--correct)}.rs-num.r{color:var(--wrong)}.rs-num.a{color:var(--ruby)}.rs-lbl{font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink3)}.result-btns{display:flex;flex-direction:column;gap:.55rem}.res-btn{padding:.85rem;border-radius:999px;border:2px solid var(--ink);cursor:pointer;font-size:.85rem;font-family:DM Sans,sans-serif;font-weight:800;transition:all .15s;box-shadow:3px 4px 0 var(--ink)}.res-btn.primary{background:var(--ruby);color:var(--surface)}.res-btn.primary:hover{transform:translateY(-2px);box-shadow:5px 6px 0 var(--ink)}.res-btn.ghost{background:var(--surface);color:var(--ink)}.res-btn.ghost:hover{background:var(--surface2);transform:translateY(-1px);box-shadow:4px 5px 0 var(--ink)}.filter-bar{padding:.8rem 1.3rem;display:flex;gap:.38rem;overflow-x:auto;border-bottom:2px solid var(--ink);background:var(--surface)}.filter-chip{background:var(--surface2);border:2px solid var(--border2);border-radius:999px;padding:.24rem .82rem;font-size:.66rem;cursor:pointer;white-space:nowrap;color:var(--ink2);transition:all .12s;font-weight:600}.filter-chip:hover{border-color:var(--ink);color:var(--ink)}.filter-chip.active{background:var(--amber);border-color:var(--ink);color:var(--ink);font-weight:800;box-shadow:2px 2px 0 var(--ink)}.filter-chip-week{border-style:dashed}.list-body{flex:1;overflow-y:auto;padding:1.1rem 1.3rem;max-width:760px;width:100%;margin:0 auto}.q-card{background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);padding:1rem 1.2rem;margin-bottom:.55rem;transition:all .12s;box-shadow:var(--shadow)}.q-card:hover{transform:translateY(-1px);box-shadow:5px 7px 0 var(--ink)}.q-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem;margin-bottom:.42rem}.q-card-txt{font-size:.83rem;line-height:1.5;color:var(--ink);flex:1;cursor:pointer}.q-card-badge{font-size:.6rem;color:var(--ink3);white-space:nowrap;font-weight:600}.q-card-meta{display:flex;gap:.35rem;align-items:center;flex-wrap:wrap}.tag{border-radius:999px;padding:.1rem .5rem;font-size:.61rem;font-weight:800}.tag.wrong-tag{background:var(--wrong-lt);color:var(--wrong);border:1.5px solid color-mix(in srgb,var(--wrong) 30%,transparent)}.tag.bm-tag{background:var(--amber-lt);color:var(--ink);border:1.5px solid var(--amber)}.tag.pdf-tag{background:var(--teal-lt);color:var(--teal);border:1.5px solid color-mix(in srgb,var(--teal) 40%,transparent)}.tag.tag-new{background:#f3f4f6;color:#6b7280;border:1px solid #d1d5db}.tag.tag-done{background:#dbeafe;color:#2563eb;border:1px solid #93c5fd}.tag.tag-mistake{background:#fee2e2;color:#dc2626;border:1px solid #fca5a5}.tag.tag-saved{background:#fef3c7;color:#d97706;border:1px solid #fde68a}.tag.tag-severe{background:#f3e8ff;color:#9333ea;border:1px solid #d8b4fe}.tag.tag-fix{background:#dcfce7;color:#16a34a;border:1px solid #86efac}.tag-bar-row:hover .tag-bar-fill{opacity:.85}.tag-chip{border-radius:999px;padding:.22rem .72rem;font-size:.72rem;font-weight:700;cursor:pointer;border:1.5px solid var(--border);background:var(--surface2);color:var(--ink2);font-family:DM Sans,sans-serif;transition:all .12s}.tag-chip.active,.tag-chip:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}.remove-btn{background:none;border:none;cursor:pointer;font-size:.8rem;color:var(--ink3);padding:.1rem .3rem;border-radius:5px;transition:all .12s;flex-shrink:0;margin-left:auto}.remove-btn:hover{background:var(--wrong-lt);color:var(--wrong)}.empty-state{text-align:center;padding:4rem 2rem;color:var(--ink3)}.empty-icon{font-size:3rem;display:block;margin-bottom:1rem}.modal-overlay{display:none;position:fixed;inset:0;background:color-mix(in srgb,var(--ink) 75%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;flex-direction:column;align-items:center;justify-content:center;padding:1rem}.modal-overlay.show{display:flex}.modal-box{background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);width:100%;max-width:900px;height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--shadow-md)}.modal-hdr{display:flex;align-items:center;gap:1rem;padding:.9rem 1.25rem;border-bottom:2px solid var(--ink)}.modal-ttl{flex:1;font-size:.88rem;font-weight:800}.modal-close{background:var(--surface2);border:2px solid var(--ink);border-radius:999px;padding:.3rem .72rem;cursor:pointer;font-size:.76rem;color:var(--ink);font-weight:700;box-shadow:2px 2px 0 var(--ink);transition:transform .1s}.modal-close:hover{transform:translateY(-1px)}.modal-nav{display:flex;align-items:center;gap:.62rem;padding:.62rem 1.25rem;border-bottom:2px solid var(--ink);background:var(--bg)}.pg-nav-btn{background:var(--surface);border:2px solid var(--ink);border-radius:999px;padding:.27rem .78rem;cursor:pointer;font-size:.74rem;color:var(--ink);font-family:DM Sans,sans-serif;font-weight:700;box-shadow:2px 2px 0 var(--ink);transition:transform .1s}.pg-nav-btn:hover{transform:translateY(-1px)}.pg-input-wrap{display:flex;align-items:center;gap:.42rem;font-size:.74rem;color:var(--ink2)}.pg-input{width:50px;background:var(--surface);border:2px solid var(--ink);border-radius:7px;padding:.24rem .46rem;color:var(--ink);font-size:.78rem;text-align:center;font-family:DM Sans,sans-serif;box-shadow:2px 2px 0 var(--ink)}.pdf-canvas-wrap{flex:1;overflow:auto;display:flex;align-items:flex-start;justify-content:center;padding:1.2rem;background:var(--bg)}#pdf-canvas{max-width:100%;border-radius:6px;box-shadow:var(--shadow)}.pdf-no-file{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--ink3);gap:1rem;padding:2rem;text-align:center}.pdf-no-file .big-icon{font-size:3rem}.pdf-no-file p{font-size:.84rem;line-height:1.6}.pdf-upload-here{padding:.52rem 1.15rem;background:var(--ruby);color:var(--surface);border:2px solid var(--ink);border-radius:999px;font-size:.78rem;font-weight:800;cursor:pointer;font-family:DM Sans,sans-serif;box-shadow:3px 3px 0 var(--ink);transition:transform .15s}.pdf-upload-here:hover{transform:translateY(-1px)}.multi-hint{font-size:.72rem;color:var(--ink);font-weight:800;background:var(--amber);border:2px solid var(--ink);border-radius:999px;padding:.3rem .85rem;display:inline-flex;align-items:center;gap:.4rem;margin-bottom:.85rem;box-shadow:2px 2px 0 var(--ink)}.opt.multi-selected{border-color:var(--ink);background:var(--amber-lt);box-shadow:3px 4px 0 var(--ink)}.opt.multi-selected .opt-key{background:var(--amber);border-color:var(--ink);color:var(--ink)}.opt.multi-correct{border-color:var(--correct);background:var(--correct-lt);box-shadow:3px 4px 0 var(--correct)}.opt.multi-correct .opt-key{background:var(--correct);border-color:var(--correct);color:var(--surface)}.opt.multi-wrong-sel{border-color:var(--wrong);background:var(--wrong-lt);box-shadow:3px 4px 0 var(--wrong)}.opt.multi-wrong-sel .opt-key{background:var(--wrong);border-color:var(--wrong);color:var(--surface)}.opt.multi-missed{border-color:var(--correct);background:var(--correct-lt);opacity:.7}.multi-submit-btn{width:100%;padding:.85rem;background:var(--ruby);color:var(--surface);border:2px solid var(--ink);border-radius:999px;font-size:.9rem;font-weight:800;cursor:pointer;font-family:DM Sans,sans-serif;margin-bottom:.75rem;transition:transform .15s,box-shadow .15s;box-shadow:4px 4px 0 var(--ink)}.multi-submit-btn:hover{transform:translateY(-2px);box-shadow:5px 6px 0 var(--ink)}.multi-submit-btn:disabled{background:var(--surface2);border-color:var(--border2);color:var(--ink3);cursor:default;box-shadow:none}.comment-section{margin-top:1.1rem;border-top:2px dashed var(--border2);padding:1rem .9rem .9rem}.comment-label{font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--ink3);margin-bottom:.45rem;display:flex;align-items:center;gap:.45rem}.comment-textarea{width:100%;min-height:170px;background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius);padding:.9rem 1rem;font-size:.9rem;font-family:DM Sans,sans-serif;color:var(--ink);line-height:1.65;resize:vertical;transition:box-shadow .12s;outline:none;box-shadow:3px 4px 0 var(--ink)}.comment-textarea:focus{box-shadow:4px 5px 0 var(--ink)}.comment-textarea::-moz-placeholder{color:var(--ink3)}.comment-textarea::placeholder{color:var(--ink3)}.comment-actions{display:flex;align-items:center;gap:.5rem;margin-top:.42rem}.comment-save-btn{padding:.32rem .88rem;background:var(--ruby);color:var(--surface);border:2px solid var(--ink);border-radius:999px;font-size:.73rem;font-weight:800;cursor:pointer;font-family:DM Sans,sans-serif;transition:transform .12s,box-shadow .12s;box-shadow:2px 2px 0 var(--ink)}.comment-save-btn:hover{transform:translateY(-1px);box-shadow:3px 3px 0 var(--ink)}.comment-clear-btn{padding:.3rem .72rem;background:var(--surface2);border:2px solid var(--border2);border-radius:999px;font-size:.73rem;color:var(--ink3);cursor:pointer;font-family:DM Sans,sans-serif;transition:all .12s}.comment-clear-btn:hover{color:var(--wrong);border-color:var(--wrong)}.comment-saved-badge{font-size:.67rem;color:var(--teal);margin-left:auto;opacity:0;transition:opacity .4s;font-weight:700}.comment-saved-badge.show{opacity:1}.comment-snippet{font-size:.7rem;color:var(--ink2);margin-top:.38rem;padding:.28rem .5rem;background:var(--amber-lt);border-left:3px solid var(--amber);border-radius:0 5px 5px 0;line-height:1.45;font-style:italic;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.toast{position:fixed;bottom:1.4rem;left:50%;transform:translate(-50%) translateY(100px);background:var(--ink);color:var(--surface);border-radius:999px;padding:.65rem 1.4rem;font-size:.8rem;font-weight:700;z-index:200;transition:transform .3s ease;white-space:nowrap;box-shadow:var(--shadow)}.toast.show{transform:translate(-50%) translateY(0)}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pop{0%{transform:scale(1)}50%{transform:scale(1.04)}to{transform:scale(1)}}.pop{animation:pop .2s ease}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border2);border-radius:100px}.fb-explanation{margin-top:.55rem;font-size:.81rem;line-height:1.55;color:var(--ink2);border-left:3px solid var(--teal);padding-left:.7rem}.session-review-section{margin-top:1.5rem;padding:0 .25rem;text-align:left}.srr-title{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--ink3);margin-bottom:.7rem}.srr-item{border:2px solid var(--ink);border-radius:10px;padding:.85rem 1rem;margin-bottom:.65rem;box-shadow:3px 4px 0 var(--ink)}.srr-num{font-size:.68rem;background:var(--surface2);border-radius:999px;padding:.1rem .45rem;margin-right:.4rem;color:var(--ink3);font-weight:800}.srr-q{font-size:.82rem;font-weight:700;color:var(--ink);margin-bottom:.35rem;line-height:1.4}.srr-ans{font-size:.77rem;color:var(--teal);font-weight:800;margin-bottom:.3rem}.srr-exp{font-size:.77rem;line-height:1.55;color:var(--ink2);border-left:3px solid var(--teal);padding-left:.6rem;margin-top:.35rem}.list-item-exp{font-size:.76rem;line-height:1.5;color:var(--ink2);margin-top:.4rem;padding-top:.4rem;border-top:1.5px dashed var(--border2)}
