:root{color-scheme:light;font-family:system-ui,-apple-system,Segoe UI,sans-serif;--r-sm:3px;--r-md:4px;--r-lg:6px;--paper-bg:#f1efe8;--paper-desk:#e7e4db;--paper-desk-edge:#d4cfc3;--paper-fg:#262521;--paper-muted:#6c695f;--paper-card:#fbfaf6;--paper-card-edge:#e5e1d6;--paper-ink:#262521;--paper-card-muted:#6f6c61;--paper-accent:#262521;--paper-solid:#262521;--paper-on-solid:#f6f4ee;--paper-danger:#262521;--paper-ink-fill:#262521;--paper-on-ink:#f6f4ee;--paper-hover:rgba(38,37,33,.07);--color-bg:var(--paper-bg);--color-surface:#fbfaf6;--color-border:#ddd8cc;--color-text:#262521;--color-muted:#6c695f;--color-primary:#262521;--color-danger:#262521}:root[data-theme=dark]{color-scheme:dark;--paper-bg:#191815;--paper-desk:#232320;--paper-desk-edge:#37362f;--paper-fg:#efece4;--paper-muted:#9b988d;--paper-accent:#efece4;--paper-solid:#efece4;--paper-on-solid:#1f1e1a;--paper-danger:#efece4;--paper-hover:rgba(239,236,228,.09);--color-surface:#242420;--color-border:#38372f;--color-text:#efece4;--color-muted:#9b988d;--color-primary:#efece4;--color-danger:#efece4}*{box-sizing:border-box}body{margin:0;background:var(--color-bg);color:var(--color-text)}.site-main{max-width:720px;margin:0 auto;padding:.75rem 1.5rem 2.5rem}h1,h2,h3{font-family:Fraunces,Georgia,serif;font-weight:600;color:var(--color-text)}a{color:var(--color-primary)}button{cursor:pointer;border:1px solid var(--color-primary);background:var(--color-primary);color:var(--paper-on-solid);border-radius:var(--r-md);padding:.5rem .9rem;font-size:.9rem}button:disabled{opacity:.6;cursor:not-allowed}button.danger{background:var(--color-danger);border-color:var(--color-danger)}input:not([type=checkbox]):not([type=file]),textarea{border:none;border-bottom:1px solid var(--color-border);border-radius:0;background:transparent;padding:.45rem .15rem;font-size:.95rem;font-family:inherit;color:var(--color-text);width:100%;transition:border-color .15s ease}input:not([type=checkbox]):not([type=file]):focus,textarea:focus{outline:none;border-bottom-color:var(--color-text)}.form{gap:.9rem;max-width:360px}.form,.form label{display:flex;flex-direction:column}.form label{gap:.3rem;font-size:.9rem;color:var(--color-muted)}.inline-form{flex-direction:row;align-items:center;max-width:none;flex-wrap:wrap}.error{color:var(--color-danger);font-size:.9rem}.flip-card{perspective:1000px}.flip-card-inner{position:relative;width:100%;height:200px;transition:transform .6s;transform-style:preserve-3d}.flip-card.flipped .flip-card-inner{transform:rotateY(180deg)}.flip-card-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden;text-align:center}.flip-card-back{transform:rotateY(180deg)}.flip-card-content{height:100%;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem}.settings-page{max-width:420px;margin:0 auto}.checkbox-label{flex-direction:row!important;align-items:center;gap:.5rem!important}.checkbox-label input{width:auto}.profile-page{max-width:480px;margin:0 auto}.profile-page .avatar{width:72px;height:72px;border-radius:50%;-o-object-fit:cover;object-fit:cover}.profile-page .username{color:var(--color-muted);margin-top:-.5rem}.profile-page .stats{color:var(--color-muted);font-size:.85rem}.achievement-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--color-border)}.achievement{display:flex;align-items:center;gap:.8rem;padding:.8rem .1rem;border-bottom:1px solid var(--color-border)}.achievement .icon{font-size:1.4rem}.analytics-page{max-width:640px;margin:0 auto}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1.75rem 1.5rem;margin:1.75rem 0 2.5rem}.stat-card{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem}.stat-value{font-family:Fraunces,Georgia,serif;font-size:2.1rem;font-weight:600;line-height:1;color:var(--color-text)}.stat-label{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-muted)}.sessions-table{width:100%;border-collapse:collapse}.sessions-table td,.sessions-table th{text-align:left;padding:.5rem .6rem;border-bottom:1px solid var(--color-border);font-size:.9rem}
