@import"https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Space+Mono:wght@400;700&display=swap";.fab[data-v-4048c379]{position:fixed;bottom:1.5rem;right:1.5rem;width:48px;height:48px;background:var(--color-primary, #E63946);color:var(--color-cream, #FAF9F6);border:2px solid var(--color-black, #1A1A1A);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-md);text-decoration:none;transition:all var(--transition-fast);z-index:1000;cursor:pointer}.fab[data-v-4048c379]:hover{transform:translate(-2px,-2px);box-shadow:var(--shadow-hover);background:var(--color-black, #1A1A1A)}.fab[data-v-4048c379]:active{transform:translate(0);box-shadow:var(--shadow-sm)}.fab-icon[data-v-4048c379]{font-size:1.5rem;font-weight:400;line-height:1;-webkit-user-select:none;user-select:none}@media (max-width: 768px){.fab[data-v-4048c379]{bottom:1rem;right:1rem;width:44px;height:44px}.fab-icon[data-v-4048c379]{font-size:1.25rem}}.modal-overlay[data-v-ddd6ea62]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content[data-v-ddd6ea62]{background:var(--color-background);border-radius:var(--radius-md);width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px #0003}.modal-large[data-v-ddd6ea62]{max-width:700px}.modal-header[data-v-ddd6ea62]{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--color-border)}.modal-header h3[data-v-ddd6ea62]{margin:0;font-size:1.25rem;font-family:var(--font-heading)}.modal-close[data-v-ddd6ea62]{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--color-text-light);line-height:1;padding:.25rem}.modal-close[data-v-ddd6ea62]:hover{color:var(--color-text)}.modal-body[data-v-ddd6ea62]{padding:1.5rem}.form-field[data-v-ddd6ea62]{display:flex;flex-direction:column;gap:.5rem}.form-label[data-v-ddd6ea62]{font-size:.9rem;font-weight:500;color:var(--color-text)}.required[data-v-ddd6ea62]{color:var(--color-error)}.form-input[data-v-ddd6ea62],.form-select[data-v-ddd6ea62]{padding:.375rem .625rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px;font-family:var(--font-body);background:var(--color-surface);color:var(--color-text);width:100%}.form-input[data-v-ddd6ea62]:focus,.form-select[data-v-ddd6ea62]:focus{outline:none;border-color:var(--color-primary)}.loading-state[data-v-ddd6ea62]{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem;color:var(--color-text-light)}.loading-spinner[data-v-ddd6ea62]{width:32px;height:32px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin-ddd6ea62 .8s linear infinite}@keyframes spin-ddd6ea62{to{transform:rotate(360deg)}}.note-form[data-v-ddd6ea62]{display:flex;flex-direction:column;gap:1.5rem}.file-upload-area[data-v-ddd6ea62]{border:2px dashed var(--color-border);border-radius:var(--radius-sm);padding:2rem;text-align:center;cursor:pointer;transition:all var(--transition-fast);background:var(--color-surface)}.file-upload-area[data-v-ddd6ea62]:hover{border-color:var(--color-primary);background:var(--color-primary-light)}.file-input-hidden[data-v-ddd6ea62]{display:none}.upload-prompt[data-v-ddd6ea62]{display:flex;flex-direction:column;gap:.25rem;color:var(--color-text);font-size:1rem}.upload-hint[data-v-ddd6ea62]{font-size:.875rem;color:var(--color-text-light)}.image-preview-grid[data-v-ddd6ea62]{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.75rem;margin-top:.75rem}.image-preview-item[data-v-ddd6ea62]{position:relative;aspect-ratio:1;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--color-border)}.image-preview-item img[data-v-ddd6ea62]{width:100%;height:100%;object-fit:cover}.heic-placeholder[data-v-ddd6ea62]{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--color-surface);padding:.5rem;text-align:center}.heic-icon[data-v-ddd6ea62]{font-size:1.5rem;margin-bottom:.25rem}.heic-label[data-v-ddd6ea62]{font-size:.7rem;font-weight:600;color:var(--color-primary);background:var(--color-primary-light);padding:.125rem .375rem;border-radius:var(--radius-sm)}.heic-name[data-v-ddd6ea62]{font-size:.6rem;color:var(--color-text-light);margin-top:.25rem;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.remove-image-btn[data-v-ddd6ea62]{position:absolute;top:.25rem;right:.25rem;background:#000000b3;color:#fff;border:none;border-radius:50%;width:24px;height:24px;cursor:pointer;font-size:1.25rem;line-height:1;display:flex;align-items:center;justify-content:center}.audio-preview[data-v-ddd6ea62]{margin-top:.75rem;padding:.75rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:.5rem}.audio-preview audio[data-v-ddd6ea62]{width:100%}.audio-controls[data-v-ddd6ea62]{display:flex;flex-direction:column;gap:1rem}.audio-buttons[data-v-ddd6ea62]{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.audio-divider[data-v-ddd6ea62]{color:var(--color-text-light);font-size:.875rem}.btn-record[data-v-ddd6ea62]{background:var(--color-primary);color:#fff;border:none;padding:.75rem 1.25rem;border-radius:var(--radius-md);cursor:pointer;font-weight:500;transition:all var(--transition-fast)}.btn-record[data-v-ddd6ea62]:hover{background:var(--color-primary-dark);transform:translateY(-1px)}.recording-active[data-v-ddd6ea62]{display:flex;align-items:center;gap:1rem;padding:1rem;background:#dc35451a;border-radius:var(--radius-md);border:1px solid rgba(220,53,69,.3)}.recording-indicator[data-v-ddd6ea62]{display:flex;align-items:center;gap:.5rem}.recording-dot[data-v-ddd6ea62]{width:12px;height:12px;background:#dc3545;border-radius:50%;animation:pulse-recording-ddd6ea62 1s ease-in-out infinite}@keyframes pulse-recording-ddd6ea62{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.1)}}.recording-time[data-v-ddd6ea62]{font-family:monospace;font-size:1.1rem;font-weight:600;color:#dc3545}.btn-stop[data-v-ddd6ea62]{background:#dc3545;color:#fff;border:none;padding:.5rem 1rem;border-radius:var(--radius-md);cursor:pointer;font-weight:500;transition:all var(--transition-fast)}.btn-stop[data-v-ddd6ea62]:hover{background:#bb2d3b}.error-message[data-v-ddd6ea62]{padding:.75rem;background:#cc00001a;color:var(--color-error);border-radius:var(--radius-sm);font-size:.9rem}.edit-mode-note[data-v-ddd6ea62]{padding:.75rem;background:var(--color-primary-light);border-radius:var(--radius-sm);font-size:.85rem;color:var(--color-text-light)}.edit-mode-note p[data-v-ddd6ea62]{margin:0}.checkbox-label[data-v-ddd6ea62]{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox-label input[type=checkbox][data-v-ddd6ea62]{width:auto;cursor:pointer}.modal-actions[data-v-ddd6ea62]{display:flex;gap:.75rem;margin-top:1rem;justify-content:flex-end}.btn[data-v-ddd6ea62]{padding:.75rem 1.5rem;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:.9rem;font-weight:500;cursor:pointer;border:none;transition:all var(--transition-fast)}.btn-primary[data-v-ddd6ea62]{background:var(--color-primary);color:var(--color-background)}.btn-primary[data-v-ddd6ea62]:hover:not(:disabled){background:var(--color-secondary)}.btn-primary[data-v-ddd6ea62]:disabled{opacity:.6;cursor:not-allowed}.btn-secondary[data-v-ddd6ea62]{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary[data-v-ddd6ea62]:hover{background:var(--color-background);border-color:var(--color-primary)}.btn-sm[data-v-ddd6ea62]{padding:.5rem 1rem;font-size:.85rem}.fab-note[data-v-c670d45b]{position:fixed;bottom:5rem;right:2rem;width:56px;height:56px;background:var(--color-accent);color:var(--color-text);border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #d4af374d;cursor:pointer;transition:all var(--transition-normal);z-index:999;font-size:1.5rem}.fab-note[data-v-c670d45b]:hover{transform:scale(1.1);box-shadow:0 6px 16px #d4af3766;background:#c49f2f}.fab-note[data-v-c670d45b]:active{transform:scale(.95)}.fab-icon[data-v-c670d45b]{line-height:1;-webkit-user-select:none;user-select:none}@media (max-width: 768px){.fab-note[data-v-c670d45b]{bottom:5rem;right:1.5rem;width:52px;height:52px;font-size:1.25rem}}.notification-badge[data-v-6afb7e11]{position:relative;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;color:var(--text-color, #333);transition:color .2s}.notification-badge[data-v-6afb7e11]:hover{color:var(--primary-color, #3498db)}.notification-badge svg[data-v-6afb7e11]{width:24px;height:24px}.badge-count[data-v-6afb7e11]{position:absolute;top:4px;right:4px;background-color:#e74c3c;color:#fff;border-radius:10px;padding:2px 6px;font-size:11px;font-weight:700;min-width:18px;text-align:center;line-height:16px}.notification-item[data-v-0692f6ba]{display:flex;padding:12px 16px;border-bottom:1px solid #e5e5e5;cursor:pointer;transition:background-color .2s;position:relative}.notification-item[data-v-0692f6ba]:hover{background-color:#f5f5f5}.notification-item.is-unread[data-v-0692f6ba]{background-color:#f0f7ff}.notification-avatar[data-v-0692f6ba]{width:40px;height:40px;border-radius:50%;margin-right:12px;flex-shrink:0;overflow:hidden}.notification-avatar img[data-v-0692f6ba]{width:100%;height:100%;object-fit:cover}.avatar-placeholder[data-v-0692f6ba]{width:100%;height:100%;background-color:#3498db;color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600}.notification-content[data-v-0692f6ba]{flex:1;min-width:0}.notification-header[data-v-0692f6ba]{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.commenter-name[data-v-0692f6ba]{font-weight:600;color:#2c3e50}.notification-time[data-v-0692f6ba]{font-size:12px;color:#7f8c8d;white-space:nowrap}.notification-text[data-v-0692f6ba]{font-size:14px;color:#555;margin-bottom:4px}.comment-snippet[data-v-0692f6ba]{font-size:13px;color:#7f8c8d;font-style:italic;margin-top:6px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.unread-indicator[data-v-0692f6ba]{position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:40px;background-color:#3498db;border-radius:0 2px 2px 0}.notification-center-overlay[data-v-924ebe8c]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:1000;display:flex;align-items:flex-start;justify-content:flex-end;padding:20px}.notification-center[data-v-924ebe8c]{background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;width:100%;max-width:450px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}.notification-center-header[data-v-924ebe8c]{padding:16px 20px;border-bottom:1px solid #e5e5e5;display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.notification-center-header h2[data-v-924ebe8c]{margin:0;font-size:20px;font-weight:600;color:#2c3e50}.header-actions[data-v-924ebe8c]{display:flex;align-items:center;gap:12px}.mark-all-read-btn[data-v-924ebe8c]{padding:6px 12px;font-size:13px;background-color:#3498db;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background-color .2s}.mark-all-read-btn[data-v-924ebe8c]:hover:not(:disabled){background-color:#2980b9}.mark-all-read-btn[data-v-924ebe8c]:disabled{opacity:.6;cursor:not-allowed}.close-btn[data-v-924ebe8c]{width:32px;height:32px;border:none;background:none;font-size:24px;color:#7f8c8d;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.close-btn[data-v-924ebe8c]:hover{background-color:#f0f0f0}.notification-list[data-v-924ebe8c]{flex:1;overflow-y:auto;min-height:0}.loading[data-v-924ebe8c],.empty-state[data-v-924ebe8c]{padding:40px 20px;text-align:center;color:#7f8c8d}.load-more[data-v-924ebe8c]{padding:16px;text-align:center}.load-more-btn[data-v-924ebe8c]{padding:8px 16px;background-color:#f5f5f5;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .2s}.load-more-btn[data-v-924ebe8c]:hover:not(:disabled){background-color:#e5e5e5}.load-more-btn[data-v-924ebe8c]:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.notification-center-overlay[data-v-924ebe8c]{padding:0}.notification-center[data-v-924ebe8c]{max-width:100%;max-height:100vh;border-radius:0}}.logo[data-v-74705efd]{display:inline-block}.logo[data-v-74705efd]:hover{animation:wiggle-74705efd .5s ease-in-out}@keyframes wiggle-74705efd{0%,to{transform:rotate(0)}25%{transform:rotate(-2deg)}75%{transform:rotate(2deg)}}.user-info[data-v-74705efd]{display:flex!important;align-items:center;gap:.375rem;color:var(--color-cream)!important;font-size:.65rem;text-transform:uppercase;letter-spacing:.5px;text-decoration:none!important;padding:.25rem .5rem;transition:opacity var(--transition-fast)}.user-info[data-v-74705efd]:hover{opacity:.85;color:var(--color-cream)!important;text-decoration:none!important}.user-info span[data-v-74705efd]{color:inherit}.user-avatar[data-v-74705efd]{width:26px;height:26px;background:var(--color-pink);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.65rem;color:var(--color-black);border-radius:50% 50% 50% 0;transform:rotate(-8deg);overflow:hidden;transition:transform var(--transition-fast)}.user-info:hover .user-avatar[data-v-74705efd]{transform:rotate(0)}.user-avatar img[data-v-74705efd]{width:100%;height:100%;object-fit:cover}.dropdown[data-v-74705efd]{position:relative;display:flex;align-items:center}.dropdown-trigger[data-v-74705efd]{color:var(--color-muted);font-size:.65rem;font-weight:700;cursor:pointer;transition:all var(--transition-fast);padding:.375rem .625rem;letter-spacing:.5px;text-transform:uppercase;-webkit-user-select:none;user-select:none}.dropdown-trigger[data-v-74705efd]:hover{color:var(--color-cream)}.dropdown-open .dropdown-trigger[data-v-74705efd]{color:var(--color-black);background:var(--color-yellow)}.dropdown-menu[data-v-74705efd]{display:none;position:absolute;top:100%;left:0;background:var(--color-cream);min-width:160px;border:1px solid var(--color-black);box-shadow:var(--shadow-md);margin-top:.25rem;padding:.25rem 0;z-index:1000}.dropdown-open .dropdown-menu[data-v-74705efd]{display:block}.dropdown-menu a[data-v-74705efd]{display:block;padding:.5rem .75rem;color:var(--color-text);text-decoration:none;transition:all var(--transition-fast);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px}.dropdown-menu a[data-v-74705efd]:hover{background:var(--color-beige);color:var(--color-primary);text-decoration:none}.dropdown-menu a.router-link-active[data-v-74705efd]{background:var(--color-yellow);color:var(--color-black)}.mobile-menu-toggle[data-v-74705efd]{display:none;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:36px;height:36px;background:transparent;border:none;cursor:pointer;padding:6px;z-index:1001}.hamburger-line[data-v-74705efd]{display:block;width:20px;height:2px;background:var(--color-cream);transition:all .25s ease}.mobile-menu-toggle.is-open .hamburger-line[data-v-74705efd]:nth-child(1){transform:translateY(6px) rotate(45deg)}.mobile-menu-toggle.is-open .hamburger-line[data-v-74705efd]:nth-child(2){opacity:0}.mobile-menu-toggle.is-open .hamburger-line[data-v-74705efd]:nth-child(3){transform:translateY(-6px) rotate(-45deg)}@media (max-width: 768px){.mobile-menu-toggle[data-v-74705efd]{display:flex}.nav[data-v-74705efd]{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--color-black);flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:2rem;transform:translate(100%);transition:transform .25s ease;z-index:1000;margin-left:0;width:100%}.nav.nav-open[data-v-74705efd]{transform:translate(0)}.nav a[data-v-74705efd]{font-size:.8rem;padding:.75rem 1.25rem;width:100%;text-align:center}.nav a[data-v-74705efd]:hover{background:#ffffff1a}.user-info[data-v-74705efd]{flex-direction:column;gap:.5rem;padding:1rem;margin-top:1rem;border-top:1px solid rgba(255,255,255,.15);width:100%;justify-content:center}.user-info span[data-v-74705efd]{font-size:.75rem}.user-avatar[data-v-74705efd]{width:32px;height:32px;font-size:.75rem}.dropdown[data-v-74705efd]{width:100%;flex-direction:column}.dropdown-trigger[data-v-74705efd]{font-size:.8rem;padding:.75rem 1.25rem;display:block;text-align:center;width:100%}.dropdown-menu[data-v-74705efd]{position:static;background:#ffffff0d;border:none;box-shadow:none;margin-top:.25rem;width:100%}.dropdown-menu a[data-v-74705efd]{text-align:center;color:var(--color-cream);font-size:.7rem;padding:.625rem 1rem}.dropdown-menu a[data-v-74705efd]:hover{background:#ffffff1a;color:var(--color-cream)}.dropdown-menu a.router-link-active[data-v-74705efd]{background:var(--color-yellow);color:var(--color-black)}}:root{--color-black: #1A1A1A;--color-charcoal: #2D2D2D;--color-cream: #FAF9F6;--color-beige: #F5F5DC;--color-muted: #8B8B8B;--color-red: #E63946;--color-blue: #457B9D;--color-green: #2A9D8F;--color-gold: #D4A574;--color-yellow: #F4D03F;--color-pink: #FF6B9D;--color-purple: #9B59B6;--color-primary: var(--color-red);--color-primary-light: rgba(230, 57, 70, .1);--color-secondary: var(--color-blue);--color-secondary-light: rgba(69, 123, 157, .1);--color-accent: var(--color-gold);--color-background: var(--color-cream);--color-surface: var(--color-cream);--color-text: var(--color-black);--color-text-light: var(--color-muted);--color-border: var(--color-black);--color-border-light: rgba(26, 26, 26, .15);--color-top-bar: var(--color-black);--color-error: #c00;--color-success: #2A9D8F;--font-serif: "Lora", Georgia, serif;--font-mono: "Space Mono", "SF Mono", "Monaco", monospace;--font-heading: var(--font-serif);--font-body: var(--font-mono);--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 1.5rem;--spacing-lg: 2rem;--spacing-xl: 3rem;--shadow-sm: 2px 2px 6px rgba(26, 26, 26, .08);--shadow-md: 3px 3px 10px rgba(26, 26, 26, .1);--shadow-lg: 4px 4px 16px rgba(26, 26, 26, .12);--shadow-hover: 5px 5px 20px rgba(26, 26, 26, .15);--border-thin: 1px solid var(--color-black);--border-thick: 2px solid var(--color-black);--transition-fast: .15s ease;--transition-normal: .25s ease}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-background);line-height:1.6;font-size:12px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:400;line-height:1.2;margin-bottom:var(--spacing-sm);color:var(--color-text)}h1{font-size:2.5rem}h1 .accent{font-style:italic;color:var(--color-primary)}h2{font-size:1.75rem}h3{font-size:1.25rem}h4{font-size:1rem}p{margin-bottom:var(--spacing-sm)}a{color:var(--color-text);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary);text-decoration:underline;text-decoration-style:wavy;text-underline-offset:3px}.label-text{font-family:var(--font-mono);font-size:.6rem;text-transform:uppercase;letter-spacing:1px;color:var(--color-muted)}.section-title{font-family:var(--font-serif);font-size:1.125rem;font-weight:400;margin-bottom:.75rem;display:flex;align-items:baseline;gap:.5rem}.section-title-icon{font-size:1rem}.container{max-width:1100px;margin:0 auto;padding:1.75rem 1.5rem}.top-bar{background:var(--color-black);padding:.5rem 1.5rem;display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid var(--color-yellow);position:sticky;top:0;z-index:100}.logo{font-family:var(--font-serif);font-size:1.25rem;font-style:italic;color:var(--color-cream);text-decoration:none}.logo:hover{color:var(--color-cream);opacity:.9;text-decoration:none}.logo-wiggle{display:inline-block;animation:wiggle 3s ease-in-out infinite}@keyframes wiggle{0%,to{transform:rotate(-1deg)}50%{transform:rotate(1deg)}}.nav{display:flex;gap:0;align-items:center}.nav a{color:var(--color-muted);text-decoration:none;font-size:.65rem;font-weight:700;padding:.375rem .625rem;letter-spacing:.5px;text-transform:uppercase;transition:all var(--transition-fast)}.nav a:hover{color:var(--color-cream);text-decoration:none}.nav a.router-link-active,.nav a.active{color:var(--color-black);background:var(--color-yellow)}.user-info{display:flex;align-items:center;gap:.375rem;color:var(--color-cream);font-size:.65rem;text-transform:uppercase;letter-spacing:.5px;text-decoration:none}.user-info:hover{color:var(--color-cream);text-decoration:none}.user-avatar{width:26px;height:26px;background:var(--color-pink);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.65rem;color:var(--color-black);border-radius:50% 50% 50% 0;transform:rotate(-8deg)}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:var(--border-thick);position:relative}.page-subtitle{font-size:.65rem;color:var(--color-muted);text-transform:uppercase;letter-spacing:1.5px;margin-top:.375rem}.card{background:var(--color-surface);border:var(--border-thin);padding:var(--spacing-md);box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-md);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.card:hover{transform:translate(-2px,-2px);box-shadow:var(--shadow-md)}.card-header{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border-light)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;padding:.5rem 1rem;background:var(--color-cream);color:var(--color-black);border:var(--border-thin);font-family:var(--font-mono);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;box-shadow:var(--shadow-sm);transition:all var(--transition-fast)}.btn:hover:not(:disabled){transform:translate(-2px,-2px);box-shadow:var(--shadow-md)}.btn:active:not(:disabled){transform:translate(0);box-shadow:var(--shadow-sm)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:var(--color-primary);color:var(--color-cream)}.btn-secondary{background:var(--color-beige)}.btn-accent{background:var(--color-yellow)}.btn-pink{background:var(--color-pink)}.btn-small{padding:.375rem .625rem;font-size:.55rem}.btn-quirky{transform:rotate(1deg)}.btn-quirky:hover:not(:disabled){transform:rotate(0) translate(-2px,-2px)}.form-group{margin-bottom:var(--spacing-md)}.form-group label{display:block;margin-bottom:var(--spacing-xs);font-weight:700;font-size:.6rem;text-transform:uppercase;letter-spacing:.5px;color:var(--color-muted)}.form-group input[type=text],.form-group input[type=email],.form-group input[type=password],.form-group input[type=date],.form-group input[type=number],.form-group select,.form-group textarea{width:100%;padding:.5rem .625rem;border:var(--border-thin);font-family:var(--font-mono);font-size:.7rem;background:var(--color-cream);color:var(--color-text);transition:box-shadow var(--transition-fast)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;box-shadow:var(--shadow-md)}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background:var(--color-beige);cursor:not-allowed}.field-hint{font-size:.6rem;color:var(--color-muted);margin-top:.25rem;font-style:italic}.field-hint.warning{color:var(--color-error)}.control-select{font-family:var(--font-mono);font-size:.65rem;padding:.25rem .5rem;border:var(--border-thin);background:var(--color-cream);cursor:pointer}.control-input{font-family:var(--font-mono);font-size:.6rem;padding:.25rem .375rem;border:var(--border-thin);background:var(--color-cream);width:100px}.badge{display:inline-block;padding:.25rem .5rem;font-size:.55rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px;border:1px solid var(--color-black)}.badge-red{background:var(--color-red);color:var(--color-cream)}.badge-blue{background:var(--color-blue);color:var(--color-cream)}.badge-green{background:var(--color-green);color:var(--color-cream)}.badge-yellow{background:var(--color-yellow);color:var(--color-black)}.badge-pink{background:var(--color-pink);color:var(--color-black)}.badge-muted{background:var(--color-beige);color:var(--color-charcoal)}.status-badge{display:inline-block;padding:.25rem .625rem;font-size:.55rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;border:1px solid var(--color-black)}.status-active,.status-finished{background:var(--color-green);color:var(--color-cream)}.status-inactive,.status-abandoned{background:var(--color-red);color:var(--color-cream)}.status-reading,.status-in-progress{background:var(--color-yellow);color:var(--color-black)}.error{color:var(--color-error);padding:var(--spacing-sm);background:#cc000014;border:1px solid var(--color-error);margin-bottom:var(--spacing-md);font-size:.7rem}.success{color:var(--color-success);padding:var(--spacing-sm);background:#2a9d8f14;border:1px solid var(--color-success);margin-bottom:var(--spacing-md);font-size:.7rem}.loading{text-align:center;padding:var(--spacing-lg);color:var(--color-text-light);font-style:italic}.auth-container{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 200px);padding:var(--spacing-xl) var(--spacing-md)}.auth-card{background:var(--color-surface);border:var(--border-thick);padding:var(--spacing-xl);box-shadow:var(--shadow-md);width:100%;max-width:400px}.auth-title{font-family:var(--font-serif);font-size:1.75rem;font-weight:400;margin-bottom:var(--spacing-xs);color:var(--color-text)}.auth-subtitle{color:var(--color-text-light);margin-bottom:var(--spacing-lg);font-size:.7rem}.password-strength{margin-top:.5rem;height:3px;background:var(--color-border-light);overflow:hidden}.password-strength-bar{height:100%;transition:width var(--transition-fast),background-color var(--transition-fast)}.password-strength-weak{width:33%;background:var(--color-error)}.password-strength-medium{width:66%;background:var(--color-gold)}.password-strength-strong{width:100%;background:var(--color-success)}.profile-card{padding:var(--spacing-xl)}.profile-field{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border-light)}.profile-field:last-of-type{border-bottom:none;margin-bottom:var(--spacing-md)}.profile-label{display:block;font-size:.6rem;font-weight:700;color:var(--color-muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:var(--spacing-xs)}.profile-value{font-size:.85rem;color:var(--color-text);font-family:var(--font-serif)}.profile-actions{margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:var(--border-thin)}.list-item{display:flex;align-items:center;gap:.75rem;padding:.5rem;background:var(--color-cream);border:var(--border-thin);transition:all var(--transition-fast)}.list-item:hover{transform:translate(3px);background:var(--color-beige)}.list-item+.list-item{margin-top:.5rem}.item-rank{font-family:var(--font-serif);font-size:.9rem;font-style:italic;color:var(--color-primary);min-width:30px}.item-info{flex:1}.item-name{font-family:var(--font-serif);font-size:.8rem;color:var(--color-black);text-decoration:none}.item-name:hover{text-decoration:underline;text-decoration-style:wavy;color:var(--color-primary)}.item-stats{font-size:.55rem;color:var(--color-muted);display:block}.view-more-link{display:inline-block;font-size:.6rem;color:var(--color-muted);text-transform:uppercase;letter-spacing:.5px;margin-top:.75rem;text-decoration:none}.view-more-link:hover{color:var(--color-primary);text-decoration:underline;text-decoration-style:wavy}.hide-mobile{display:block}.show-mobile{display:none}.grid{display:grid;gap:1rem}.grid-2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}@media (max-width: 768px){body{font-size:11px}.hide-mobile{display:none!important}.show-mobile{display:block!important}.top-bar{padding:.5rem .75rem}.logo{font-size:1rem}.container{padding:var(--spacing-sm) .75rem}.card{padding:var(--spacing-sm)}.auth-card{padding:var(--spacing-md)}h1{font-size:1.75rem}h2{font-size:1.375rem}h3{font-size:1rem}.btn{padding:.5rem .875rem;width:100%;justify-content:center}.btn+.btn{margin-top:.5rem}.page-header{flex-direction:column;gap:1rem}.form-group input[type=text],.form-group input[type=email],.form-group input[type=password],.form-group input[type=date],.form-group select,.form-group textarea{font-size:16px}}@media (max-width: 375px){.container{padding:var(--spacing-xs) .5rem}.top-bar{padding:.5rem}.logo{font-size:.9rem}h1{font-size:1.5rem}h2{font-size:1.125rem}}
