@import"https://fonts.googleapis.com/css2?family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&family=Source+Sans+3:wght@300;400;500;600&display=swap";:root{--color-bg: #F4EFE6;--color-surface: #FDFAF5;--color-surface-2: #EDE8DE;--color-accent: #2D5A3D;--color-accent-mid: #3D7A55;--color-accent-mute:#E8F0EB;--color-text: #1E2018;--color-text-muted: #6B6252;--color-border: #DDD5C4;--color-border-dark:#C8BCA8;--color-error: #8B2020;--font-display: "Libre Baskerville", Georgia, serif;--font-body: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 40px;--space-2xl: 64px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--shadow-sm: 0 1px 4px rgba(30, 32, 24, .08);--shadow-md: 0 4px 16px rgba(30, 32, 24, .1);--shadow-lg: 0 8px 32px rgba(30, 32, 24, .12)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;width:100%}body{background-color:transparent;color:var(--color-text);font-family:var(--font-body);font-size:16px;font-weight:400;line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;color:var(--color-text);line-height:1.25;letter-spacing:-.01em}h1{font-size:clamp(1.75rem,4vw,2.5rem)}h2{font-size:clamp(1.4rem,3vw,2rem)}h3{font-size:1.25rem}h4{font-size:1.05rem}p{font-family:var(--font-body);color:var(--color-text);line-height:1.75}a{color:var(--color-accent);text-decoration:none;transition:color .2s ease}a:hover{color:var(--color-accent-mid)}.app-wrapper{min-height:100vh;display:flex;flex-direction:column;background-color:var(--color-bg)}.page-content{flex:1;padding:120px var(--space-xl) var(--space-xl) var(--space-xl);max-width:1200px;margin:0 auto;width:100%}.navbar{position:fixed;top:0;left:0;width:100%;height:72px;background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-xl);z-index:1000;box-shadow:var(--shadow-sm)}.nav-left{display:flex;align-items:center;gap:var(--space-md)}.logo{width:36px;height:36px;background:var(--color-accent);color:var(--color-surface);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:.9rem;border-radius:var(--radius-sm);letter-spacing:.02em}.brand-name{font-family:var(--font-display);font-weight:700;font-size:1.15rem;color:var(--color-text);letter-spacing:.01em}.nav-links{display:flex;gap:var(--space-xl);align-items:center}.nav-links a{font-family:var(--font-body);font-size:.9rem;font-weight:500;color:var(--color-text-muted);letter-spacing:.02em;transition:color .2s ease;text-decoration:none}.nav-links a:hover{color:var(--color-accent)}.nav-links a.active{color:var(--color-accent);font-weight:600}.bg-1{background:var(--color-bg);color:var(--color-text)}.bg-2{background:var(--color-surface-2);color:var(--color-text)}.bg-3{background:var(--color-accent);color:var(--color-surface)}.primary-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);background:var(--color-accent);color:var(--color-surface);border:none;padding:11px 24px;border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-body);font-size:.9rem;font-weight:600;letter-spacing:.02em;transition:background .2s ease,box-shadow .2s ease,transform .15s ease;text-decoration:none}.primary-btn:hover{background:var(--color-accent-mid);box-shadow:0 4px 14px #2d5a3d40;transform:translateY(-1px)}.primary-btn:active{transform:translateY(0)}.secondary-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);background:transparent;color:var(--color-accent);border:1.5px solid var(--color-accent);padding:10px 24px;border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-body);font-size:.9rem;font-weight:600;letter-spacing:.02em;transition:all .2s ease;text-decoration:none}.secondary-btn:hover{background:var(--color-accent-mute);border-color:var(--color-accent-mid)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);width:100%;max-width:520px;box-shadow:var(--shadow-md)}.card-title{font-family:var(--font-display);font-size:1.6rem;font-weight:700;color:var(--color-text);margin-bottom:var(--space-lg);letter-spacing:-.01em}.input-field{width:100%;padding:11px var(--space-md);margin-bottom:var(--space-md);border-radius:var(--radius-sm);border:1.5px solid var(--color-border);background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:.95rem;font-weight:400;transition:border-color .2s ease,box-shadow .2s ease;outline:none}.input-field::placeholder{color:var(--color-text-muted);font-weight:300}.input-field:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #2d5a3d1a;background:var(--color-surface)}textarea.input-field{resize:vertical;min-height:120px;line-height:1.6}label{display:block;font-family:var(--font-body);font-size:.85rem;font-weight:600;color:var(--color-text);margin-bottom:var(--space-xs);letter-spacing:.03em;text-transform:uppercase}.form-hint{font-size:.8rem;color:var(--color-text-muted);margin-top:calc(var(--space-xs) * -1);margin-bottom:var(--space-md)}.divider{border:none;border-top:1px solid var(--color-border);margin:var(--space-lg) 0}.divider-label{display:flex;align-items:center;gap:var(--space-md);color:var(--color-text-muted);font-size:.8rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;margin:var(--space-lg) 0}.divider-label:before,.divider-label:after{content:"";flex:1;height:1px;background:var(--color-border)}.badge{display:inline-block;padding:3px 10px;border-radius:2px;font-family:var(--font-body);font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.badge-accent{background:var(--color-accent-mute);color:var(--color-accent);border:1px solid rgba(45,90,61,.2)}.badge-muted{background:var(--color-surface-2);color:var(--color-text-muted);border:1px solid var(--color-border)}.alert{padding:var(--space-md) var(--space-lg);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:.9rem;margin-bottom:var(--space-md);border-left:3px solid}.alert-error{background:#fbf0f0;color:var(--color-error);border-color:var(--color-error)}.alert-success{background:var(--color-accent-mute);color:var(--color-accent);border-color:var(--color-accent)}.alert-info{background:#f0f4f8;color:#2d4a6a;border-color:#2d4a6a}.section{padding:var(--space-2xl) 0}.section-label{font-family:var(--font-body);font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-sm)}.section-title{font-family:var(--font-display);font-size:clamp(1.6rem,3.5vw,2.4rem);font-weight:700;color:var(--color-text);margin-bottom:var(--space-md);letter-spacing:-.02em}.section-subtitle{font-family:var(--font-body);font-size:1rem;font-weight:300;color:var(--color-text-muted);max-width:520px;line-height:1.8}.score-ring{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;width:96px;height:96px;border-radius:50%;border:3px solid var(--color-accent);background:var(--color-accent-mute)}.score-ring .score-value{font-family:var(--font-display);font-size:1.6rem;font-weight:700;color:var(--color-accent);line-height:1}.score-ring .score-label{font-size:.65rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-accent);margin-top:2px}.text-accent{color:var(--color-accent)}.text-muted{color:var(--color-text-muted)}.text-center{text-align:center}.text-serif{font-family:var(--font-display)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mt-xl{margin-top:var(--space-xl)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.surface{background:var(--color-surface)}.surface-2{background:var(--color-surface-2)}.border-top{border-top:1px solid var(--color-border)}.border-bottom{border-bottom:1px solid var(--color-border)}@media(max-width:768px){.page-content{padding:96px var(--space-md) var(--space-lg) var(--space-md)}.navbar{height:64px;padding:0 var(--space-md)}.nav-links{gap:var(--space-lg)}.nav-links a{font-size:.82rem}.card{padding:var(--space-lg);max-width:100%}.section{padding:var(--space-xl) 0}}@media(max-width:480px){.nav-links{display:none}}
