:root{--color-bg:#faf8f4;--color-surface:#faf8f4;--color-surface-hover:#f0ebde;--color-border:#d8d2c5;--color-text:#1a1a1a;--color-text-secondary:#6b6358;--color-primary:#8b2e1f;--color-primary-hover:#6b2317;--color-primary-light:#8b2e1f14;--font-serif:"Fraunces", "Source Serif Pro", Georgia, "Times New Roman", serif;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--font-sans);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.55}*,:before,:after{box-sizing:border-box}body{background:var(--color-bg);color:var(--color-text);margin:0}#root{min-height:100vh}h1,h2,h3{font-family:var(--font-serif);letter-spacing:-.015em;font-weight:500}::selection{background:var(--color-text);color:var(--color-bg)}input::placeholder,textarea::placeholder{color:var(--color-text-secondary);opacity:.55}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-border)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}.app-layout{flex-direction:column;min-height:100vh;display:flex}.app-header{background:var(--color-bg);border-bottom:1px solid var(--color-border);z-index:50;position:sticky;top:0}.header-content{justify-content:space-between;align-items:baseline;gap:2rem;max-width:1280px;margin:0 auto;padding:1.5rem 2rem;display:flex}.header-brand{flex-direction:column;align-items:flex-start;gap:.25rem;display:flex}.header-brand h1{font-family:var(--font-serif);color:var(--color-text);letter-spacing:-.025em;margin:0;font-size:1.625rem;font-weight:500;line-height:1}.header-byline{font-family:var(--font-serif);color:var(--color-text-secondary);letter-spacing:0;text-transform:none;font-size:.8125rem;font-weight:400}.header-nav{gap:1.75rem;display:flex}.header-nav a{color:var(--color-text-secondary);letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid #0000;border-radius:0;align-items:center;gap:.5rem;padding:.25rem 0;font-size:.8125rem;font-weight:400;text-decoration:none;transition:color .15s,border-color .15s;display:flex}.header-nav a:hover{color:var(--color-text);background:0 0}.header-nav a.active{color:var(--color-text);border-bottom-color:var(--color-text);background:0 0}.header-nav-logout{color:var(--color-text-secondary);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:0 0;border:none;border-bottom:1px solid #0000;border-radius:0;align-items:center;gap:.5rem;margin-left:.5rem;padding:.25rem 0;font-family:inherit;font-size:.8125rem;font-weight:400;transition:color .15s,border-color .15s;display:flex}.header-nav-logout:hover{color:var(--color-text);border-bottom-color:var(--color-text)}.app-main{flex:1;width:100%;max-width:1280px;margin:0 auto;padding:2.5rem 2rem 4rem}@media (width<=640px){.header-content{flex-direction:column;align-items:flex-start;gap:1rem;height:auto;padding:1rem 1.25rem}.header-nav{gap:1.25rem;width:100%}.header-nav a{flex:0;justify-content:flex-start;padding:.25rem 0}.header-nav a span{display:inline}.app-main{padding:1.5rem 1.25rem 3rem}}.auth-page{background:var(--color-bg);justify-content:center;align-items:center;min-height:100vh;padding:2rem 1.5rem;display:flex}.auth-container{flex-direction:column;align-items:center;gap:2.5rem;width:100%;max-width:380px;display:flex}.auth-brand{color:inherit;flex-direction:column;align-items:center;gap:.25rem;text-decoration:none;display:flex}.auth-brand h1{font-family:var(--font-serif);letter-spacing:-.025em;color:var(--color-text);margin:0;font-size:2rem;font-weight:500;line-height:1}.auth-brand span{font-family:var(--font-serif);color:var(--color-text-secondary);font-size:.875rem}.auth-card{border-top:1px solid var(--color-text);width:100%;padding:2rem 0 0}.auth-card h2{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--color-text);text-align:center;margin:0 0 .375rem;font-size:1.75rem;font-weight:500}.auth-subtitle{color:var(--color-text-secondary);text-align:center;margin:0 0 2rem;font-size:.9375rem}.auth-card form{flex-direction:column;gap:1.5rem;display:flex}.auth-field{flex-direction:column;gap:.5rem;display:flex}.auth-field label{letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary);font-size:.6875rem;font-weight:500}.auth-field input{border:none;border-bottom:1px solid var(--color-border);color:var(--color-text);background:0 0;border-radius:0;padding:.5rem 0;font-family:inherit;font-size:.9375rem;transition:border-color .15s}.auth-field input:focus{border-color:var(--color-text);box-shadow:none;outline:none}.auth-forgot{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);align-self:flex-end;margin-top:-.5rem;padding-bottom:1px;font-size:.6875rem;text-decoration:none;transition:color .15s,border-color .15s}.auth-forgot:hover{color:var(--color-text);border-bottom-color:var(--color-text)}.auth-error,.auth-info{border-left:2px solid;margin:-.5rem 0 0;padding:.5rem 0 .5rem .875rem;font-size:.8125rem;line-height:1.5}.auth-error{border-left-color:var(--color-primary);color:var(--color-primary)}.auth-info{border-left-color:var(--color-text);color:var(--color-text)}.auth-submit:disabled{opacity:.55;cursor:progress}.auth-submit{border:1px solid var(--color-text);background:var(--color-text);width:100%;color:var(--color-bg);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border-radius:0;margin-top:.75rem;padding:.875rem 1.5rem;font-family:inherit;font-size:.6875rem;font-weight:500;transition:background .15s,color .15s}.auth-submit:hover{background:var(--color-bg);color:var(--color-text)}.auth-toggle{border-top:1px dotted var(--color-border);color:var(--color-text-secondary);text-align:center;margin:2.5rem 0 0;padding-top:1.5rem;font-size:.875rem}.auth-toggle-btn{border:none;border-bottom:1px solid var(--color-text);color:var(--color-text);font-family:inherit;font-size:inherit;cursor:pointer;background:0 0;padding:0 0 1px;transition:color .15s,border-color .15s}.auth-toggle-btn:hover{color:var(--color-text-secondary);border-bottom-color:var(--color-text-secondary)}.app-loading{min-height:100vh;color:var(--color-text-secondary);letter-spacing:.1em;text-transform:uppercase;justify-content:center;align-items:center;font-size:.6875rem;display:flex}
