@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Playfair+Display:wght@600;700;800&display=swap";:root{--color-primary: #8B3A3A;--color-primary-dark: #6B2D2D;--color-primary-light: #A54747;--color-bg-main: #FAF8F5;--color-bg-secondary: #F5F2ED;--color-bg-white: #FFFFFF;--color-text-primary: #2D2D2D;--color-text-secondary: #5A5A5A;--color-text-light: #8A8A8A;--color-accent: #8B3A3A;--color-border: #E5E0D8;--color-shadow: rgba(45, 45, 45, .08);--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-heading: "Playfair Display", Georgia, serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--border-radius-sm: 4px;--border-radius-md: 8px;--border-radius-lg: 12px;--border-radius-xl: 16px;--transition-fast: .15s ease-in-out;--transition-normal: .25s ease-in-out;--transition-slow: .35s ease-in-out}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-body);font-size:var(--font-size-base);line-height:1.6;color:var(--color-text-primary);background-color:var(--color-bg-main);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-primary);font-weight:700;line-height:1.2;margin-bottom:var(--spacing-md)}h1{font-size:var(--font-size-5xl)}h2{font-size:var(--font-size-4xl)}h3{font-size:var(--font-size-3xl)}h4{font-size:var(--font-size-2xl)}h5{font-size:var(--font-size-xl)}h6{font-size:var(--font-size-lg)}p{margin-bottom:var(--spacing-md);color:var(--color-text-primary)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-dark)}button,.btn{font-family:var(--font-body);font-size:var(--font-size-base);font-weight:500;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-md);border:2px solid transparent;cursor:pointer;transition:all var(--transition-normal);background-color:var(--color-primary);color:var(--color-bg-white)}button:hover,.btn:hover{background-color:var(--color-primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px var(--color-shadow)}button:active,.btn:active{transform:translateY(0)}button:disabled,.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-outline{background-color:transparent;color:var(--color-primary);border-color:var(--color-primary)}.btn-outline:hover{background-color:var(--color-primary);color:var(--color-bg-white)}input,textarea,select{font-family:var(--font-body);font-size:var(--font-size-base);padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--border-radius-md);background-color:var(--color-bg-white);color:var(--color-text-primary);transition:border-color var(--transition-fast);width:100%}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-primary)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--spacing-lg)}.text-center{text-align:center}.text-primary{color:var(--color-primary)}.text-secondary{color:var(--color-text-secondary)}.mb-0{margin-bottom:0}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.mt-0{margin-top:0}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.header{background-color:var(--color-bg-white);border-bottom:1px solid var(--color-border);padding:var(--spacing-lg) 0;position:sticky;top:0;z-index:100;box-shadow:0 2px 8px var(--color-shadow)}.header-content{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-xl)}.logo{text-decoration:none}.logo-text{font-family:var(--font-heading);font-size:var(--font-size-2xl);color:var(--color-primary);margin:0;transition:color var(--transition-fast)}.logo:hover .logo-text{color:var(--color-primary-dark)}.nav{display:flex;gap:var(--spacing-xl);align-items:center}.nav-link{font-family:var(--font-body);font-size:var(--font-size-base);font-weight:500;color:var(--color-text-primary);text-decoration:none;transition:color var(--transition-fast);position:relative;padding:var(--spacing-sm) 0}.nav-link:hover,.nav-link.active{color:var(--color-primary)}.nav-dropdown{position:relative}.nav-dropdown-trigger{display:contents}.dropdown-chevron{display:none}.nav-dropdown-arrow{display:inline-block;font-size:.75em;margin-left:2px;transform:rotate(90deg);transition:transform var(--transition-fast)}.nav-dropdown:hover .nav-dropdown-arrow{transform:rotate(270deg)}.nav-dropdown-menu{position:absolute;top:100%;left:50%;transform:translate(-50%);min-width:240px;background-color:var(--color-bg-white);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);box-shadow:0 8px 24px var(--color-shadow);padding:0;opacity:0;visibility:hidden;transition:opacity var(--transition-fast),visibility var(--transition-fast);z-index:200}.nav-dropdown:hover .nav-dropdown-menu{opacity:1;visibility:visible}.nav-dropdown-item{display:block;padding:var(--spacing-sm) var(--spacing-lg);color:var(--color-text-primary);text-decoration:none;font-size:var(--font-size-sm);font-weight:500;white-space:nowrap;transition:background-color var(--transition-fast),color var(--transition-fast)}.nav-dropdown-item.active{color:var(--color-primary)}.nav-dropdown-item:hover{background-color:var(--color-bg-secondary);color:var(--color-primary)}.burger{display:none;background:none;border:none;cursor:pointer;padding:6px;z-index:310;flex-direction:column;justify-content:center;gap:8px;width:32px;height:32px}.burger:hover{background-color:transparent;transform:none;box-shadow:none}.burger-line{display:block;width:100%;height:2.5px;background-color:var(--color-primary);border-radius:2px;transition:transform .3s ease,opacity .3s ease;transform-origin:center}.burger.open .burger-line:nth-child(1){transform:translateY(5.25px) rotate(45deg)}.burger.open .burger-line:nth-child(2){transform:translateY(-5.25px) rotate(-45deg)}.nav-overlay{display:none}@media(max-width:768px){.header-content{flex-direction:row;gap:var(--spacing-md)}.burger{display:flex}.nav-overlay{display:block;position:fixed;inset:0;background-color:#0000004d;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:290}.nav{position:fixed;top:0;right:0;width:280px;height:100dvh;background-color:var(--color-bg-white);flex-direction:column;align-items:flex-start;padding:80px var(--spacing-xl) var(--spacing-xl);gap:0;box-shadow:-4px 0 24px var(--color-shadow);z-index:300;transform:translate(100%);transition:transform .3s ease;overflow-y:auto}.nav.nav-open{transform:translate(0)}.nav-link{font-size:var(--font-size-lg);width:100%;padding:var(--spacing-md) 0}.nav-link.active{color:var(--color-primary)}.nav-link:after{display:none}.nav-dropdown{width:100%}.nav-dropdown-trigger{display:flex;align-items:center;width:100%}.nav-dropdown-trigger .nav-link{flex:1}.nav-dropdown-arrow{display:none}.dropdown-chevron{display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;padding:var(--spacing-md) var(--spacing-sm);color:var(--color-text-secondary);transition:transform .3s ease,color .2s}.dropdown-chevron:hover{background:none;box-shadow:none}.nav-dropdown.dropdown-open .dropdown-chevron{transform:rotate(180deg);color:var(--color-primary)}.nav-dropdown-menu{position:static;transform:none;box-shadow:none;border:none;border-radius:0;min-width:0;padding:0;background-color:transparent;max-height:0;overflow:hidden;opacity:0;visibility:hidden;transition:max-height .3s ease,opacity .3s ease,visibility .3s}.nav-dropdown.dropdown-open .nav-dropdown-menu{max-height:200px;opacity:1;visibility:visible}.nav-dropdown-item{padding:var(--spacing-sm) 0 var(--spacing-sm) var(--spacing-lg);font-size:.9rem}.nav-dropdown-item.active{color:var(--color-primary)}}.footer{background-color:var(--color-bg-secondary);border-top:1px solid var(--color-border);padding:var(--spacing-2xl) 0 var(--spacing-xl);margin-top:auto}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.footer-section{display:flex;flex-direction:column;gap:var(--spacing-md)}.footer-title{font-family:var(--font-heading);font-size:var(--font-size-xl);color:var(--color-primary);margin:0}.footer-subtitle{font-family:var(--font-heading);font-size:var(--font-size-lg);color:var(--color-primary);margin:0}.footer-text{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0;line-height:1.6}.footer-nav{display:flex;flex-direction:column;gap:var(--spacing-sm)}.footer-link{color:var(--color-text-secondary);font-size:var(--font-size-sm);text-decoration:none;transition:color var(--transition-fast)}.footer-link:hover{color:var(--color-primary)}.footer-bottom{padding-top:var(--spacing-lg);border-top:1px solid var(--color-border);text-align:center}.footer-copyright{color:var(--color-text-light);font-size:var(--font-size-sm);margin:0}@media(max-width:768px){.footer-content{grid-template-columns:1fr;gap:var(--spacing-lg)}}.chatbot-bubble{position:fixed;bottom:24px;right:24px;width:56px;height:56px;border-radius:50%;background-color:var(--color-primary);color:#fff;border:none;cursor:pointer;box-shadow:0 4px 16px #8b3a3a59;display:flex;align-items:center;justify-content:center;font-size:24px;z-index:1000;transition:transform var(--transition-fast),background-color var(--transition-fast)}.chatbot-bubble:hover{background-color:var(--color-primary-dark);transform:scale(1.08)}.chatbot-bubble.open{background-color:var(--color-primary-dark)}.chatbot-window{position:fixed;bottom:92px;right:24px;width:380px;max-height:520px;background-color:var(--color-bg-white);border:1px solid var(--color-border);border-radius:var(--border-radius-xl);box-shadow:0 12px 40px #00000026;display:flex;flex-direction:column;z-index:1000;animation:chatbot-slide-up .25s ease-out;overflow:hidden}@keyframes chatbot-slide-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.chatbot-header{background-color:var(--color-primary);color:#fff;padding:var(--spacing-md) var(--spacing-lg);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.chatbot-header-title{font-family:var(--font-heading);font-size:var(--font-size-lg);font-weight:600;margin:0}.chatbot-header-close{background:none;border:none;color:#fff;font-size:20px;cursor:pointer;padding:4px;line-height:1;opacity:.8;transition:opacity var(--transition-fast)}.chatbot-header-close:hover{opacity:1}.chatbot-messages{flex:1;overflow-y:auto;padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-md);min-height:200px;max-height:340px;background-color:var(--color-bg-main)}.chatbot-msg{max-width:88%;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-lg);font-size:var(--font-size-sm);line-height:1.5;word-wrap:break-word}.chatbot-msg.user{align-self:flex-end;background-color:var(--color-primary);color:#fff;border-bottom-right-radius:4px}.chatbot-msg.assistant{align-self:flex-start;background-color:var(--color-bg-white);color:var(--color-text-primary);border:1px solid var(--color-border);border-bottom-left-radius:4px}.chatbot-msg.assistant a{color:var(--color-primary);text-decoration:underline;font-weight:500}.chatbot-msg.assistant a:hover{color:var(--color-primary-dark)}.chatbot-references{margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:4px}.chatbot-reference-link{font-size:var(--font-size-xs);color:var(--color-primary);text-decoration:none;display:flex;align-items:center;gap:4px}.chatbot-reference-link:hover{text-decoration:underline;color:var(--color-primary-dark)}.chatbot-loading{align-self:flex-start;display:flex;gap:4px;padding:var(--spacing-sm) var(--spacing-md)}.chatbot-loading-dot{width:8px;height:8px;border-radius:50%;background-color:var(--color-text-light);animation:chatbot-bounce 1.2s infinite}.chatbot-loading-dot:nth-child(2){animation-delay:.2s}.chatbot-loading-dot:nth-child(3){animation-delay:.4s}@keyframes chatbot-bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px)}}.chatbot-input-form{display:flex;gap:var(--spacing-sm);padding:var(--spacing-md);border-top:1px solid var(--color-border);background-color:var(--color-bg-white);flex-shrink:0}.chatbot-input{flex:1;border:1px solid var(--color-border);border-radius:var(--border-radius-md);padding:var(--spacing-sm) var(--spacing-md);font-family:var(--font-body);font-size:var(--font-size-sm);color:var(--color-text-primary);background-color:var(--color-bg-main);outline:none;transition:border-color var(--transition-fast);resize:none}.chatbot-input:focus{border-color:var(--color-primary)}.chatbot-input::placeholder{color:var(--color-text-light)}.chatbot-send-btn{width:40px;height:40px;border-radius:var(--border-radius-md);background-color:var(--color-primary);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;transition:background-color var(--transition-fast)}.chatbot-send-btn:hover:not(:disabled){background-color:var(--color-primary-dark)}.chatbot-send-btn:disabled{opacity:.5;cursor:not-allowed}.chatbot-welcome{text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-sm);padding:var(--spacing-lg) var(--spacing-md);line-height:1.6}.chatbot-welcome strong{color:var(--color-primary);display:block;font-family:var(--font-heading);font-size:var(--font-size-base);margin-bottom:var(--spacing-sm)}@media(max-width:480px){.chatbot-window{width:calc(100vw - 16px);right:8px;bottom:80px;max-height:70vh}.chatbot-bubble{bottom:16px;right:16px;width:50px;height:50px;font-size:20px}}.search-bar-wrapper{position:relative;width:100%;max-width:700px;margin:0 auto}.search-bar{display:flex;gap:var(--spacing-sm);width:100%}.search-input{flex:1;padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-lg);border:2px solid var(--color-border);border-radius:var(--border-radius-lg);background-color:var(--color-bg-white);color:var(--color-text-primary);transition:all var(--transition-fast)}.search-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #8b3a3a1a;outline:none}.search-button{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-base);font-weight:600;white-space:nowrap;border-radius:var(--border-radius-lg)}.search-button svg{width:20px;height:20px}.search-suggestions{position:absolute;top:calc(100% + var(--spacing-xs));left:0;right:0;background-color:var(--color-bg-white);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);box-shadow:0 8px 24px var(--color-shadow);z-index:1000;overflow:hidden}.suggestion-item{display:flex;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);cursor:pointer;transition:background-color var(--transition-fast);border-bottom:1px solid var(--color-border)}.suggestion-item:last-child{border-bottom:none}.suggestion-item:hover{background-color:var(--color-bg-secondary)}.suggestion-number{flex-shrink:0;font-weight:700;color:var(--color-primary);font-size:var(--font-size-sm)}.suggestion-content{flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs)}.suggestion-title{font-size:var(--font-size-base);color:var(--color-text-primary);font-weight:500;text-align:left}.suggestion-snippet{font-size:var(--font-size-sm);color:var(--color-text-secondary);text-align:left;line-height:1.4}.search-highlight{background-color:var(--color-primary);color:#fff;font-weight:700;padding:0 2px;border-radius:2px}.suggestion-tags{display:flex;gap:var(--spacing-xs);flex-wrap:wrap}.suggestion-tag{font-size:var(--font-size-xs);color:var(--color-primary);background-color:#8b3a3a1a;padding:2px var(--spacing-sm);border-radius:var(--border-radius-sm)}.suggestion-loading,.suggestion-no-result{padding:var(--spacing-md) var(--spacing-lg);text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-sm)}@media(max-width:768px){.search-bar{flex-direction:column}.search-input{font-size:var(--font-size-base)}.search-button{justify-content:center;width:100%}.suggestion-item{padding:var(--spacing-sm) var(--spacing-md)}}.question-card{display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-lg);background-color:var(--color-bg-white);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);text-decoration:none;transition:all var(--transition-normal);cursor:pointer}.question-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px var(--color-shadow);border-color:var(--color-primary-light)}.question-card-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.question-category{font-size:var(--font-size-sm);font-weight:600;color:var(--color-primary);background-color:#8b3a3a1a;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius-sm)}.question-number{font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-light)}.question-title{font-family:var(--font-heading);font-size:var(--font-size-xl);color:var(--color-text-primary);margin:0;line-height:1.4;transition:color var(--transition-fast)}.question-card:hover .question-title{color:var(--color-primary)}.question-card-footer{display:flex;flex-direction:column;gap:var(--spacing-md);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border)}.question-meta{display:flex;gap:var(--spacing-lg);flex-wrap:wrap}.question-meta-item{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.question-meta-item svg{color:var(--color-primary);width:16px;height:16px}.question-tags{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.question-tag{font-size:var(--font-size-xs);color:var(--color-text-secondary);background-color:var(--color-bg-secondary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm)}@media(max-width:768px){.question-card{padding:var(--spacing-md)}.question-title{font-size:var(--font-size-lg)}}.home{width:100%}.hero{background:linear-gradient(135deg,var(--color-bg-secondary) 0%,var(--color-bg-main) 100%);padding:var(--spacing-3xl) 0;border-bottom:1px solid var(--color-border)}.hero-content{max-width:900px;margin:0 auto;text-align:center}.hero-title{font-family:var(--font-heading);font-size:var(--font-size-5xl);color:var(--color-primary);margin-bottom:var(--spacing-md)}.hero-subtitle{font-size:var(--font-size-xl);color:var(--color-text-secondary);margin-bottom:var(--spacing-2xl);line-height:1.6}.recent-questions{padding:var(--spacing-3xl) 0}.popular-questions{padding:var(--spacing-3xl) 0;background-color:var(--color-bg-main);border-top:1px solid var(--color-border)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-2xl)}.section-title{font-family:var(--font-heading);font-size:var(--font-size-3xl);color:var(--color-primary);margin:0}.view-all-link{font-size:var(--font-size-base);font-weight:600;color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}.questions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--spacing-lg)}.loading{text-align:center;padding:var(--spacing-2xl);color:var(--color-text-secondary);font-size:var(--font-size-lg)}.stats{background-color:var(--color-bg-secondary);padding:var(--spacing-3xl) 0;border-top:1px solid var(--color-border)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-xl);max-width:900px;margin:0 auto}.stat-card{text-align:center;padding:var(--spacing-xl);background-color:var(--color-bg-white);border-radius:var(--border-radius-lg);border:1px solid var(--color-border);transition:all var(--transition-normal)}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px var(--color-shadow)}.stat-number{font-family:var(--font-heading);font-size:var(--font-size-4xl);font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-sm)}.stat-label{font-size:var(--font-size-lg);color:var(--color-text-secondary);font-weight:500}@media(max-width:768px){.hero{padding:var(--spacing-2xl) 0}.hero-title{font-size:var(--font-size-3xl)}.hero-subtitle{font-size:var(--font-size-lg)}.section-header{flex-direction:column;gap:var(--spacing-md);align-items:flex-start}.section-title{font-size:var(--font-size-2xl)}.questions-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.stat-number{font-size:var(--font-size-3xl)}}.questions-page{padding:var(--spacing-3xl) 0;min-height:60vh}.page-header{text-align:center;margin-bottom:var(--spacing-2xl)}.page-title{font-family:var(--font-heading);font-size:var(--font-size-4xl);color:var(--color-primary);margin-bottom:var(--spacing-md)}.page-subtitle{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin:0}.search-section{margin-bottom:var(--spacing-2xl)}.questions-list{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.loading,.no-results{text-align:center;padding:var(--spacing-3xl);color:var(--color-text-secondary);font-size:var(--font-size-lg)}.pagination{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);padding:var(--spacing-xl) 0}.pagination-btn{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-base);font-weight:600;border-radius:var(--border-radius-md);background-color:var(--color-bg-white);color:var(--color-primary);border:2px solid var(--color-primary);cursor:pointer;transition:all var(--transition-normal)}.pagination-btn:hover:not(:disabled){background-color:var(--color-primary);color:var(--color-bg-white)}.pagination-btn:disabled{opacity:.5;cursor:not-allowed;border-color:var(--color-border);color:var(--color-text-light)}.pagination-pages{display:flex;gap:var(--spacing-xs)}.pagination-page{width:40px;height:40px;padding:0;font-size:var(--font-size-base);font-weight:600;border-radius:var(--border-radius-md);background-color:var(--color-bg-white);color:var(--color-text-primary);border:2px solid var(--color-border);cursor:pointer;transition:all var(--transition-fast)}.pagination-page:hover{border-color:var(--color-primary);color:var(--color-primary)}.pagination-page.active{background-color:var(--color-primary);color:var(--color-bg-white);border-color:var(--color-primary)}@media(max-width:768px){.questions-page{padding:var(--spacing-2xl) 0}.page-title{font-size:var(--font-size-3xl)}.page-subtitle{font-size:var(--font-size-base)}.pagination{flex-wrap:wrap}.pagination-pages{flex-wrap:wrap;justify-content:center}.pagination-btn{font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-md)}}.question-detail-page{padding:var(--spacing-2xl) 0 var(--spacing-3xl);min-height:60vh}.breadcrumb{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl);font-size:var(--font-size-sm)}.breadcrumb a{color:var(--color-text-secondary);text-decoration:none;transition:color var(--transition-fast)}.breadcrumb a:hover{color:var(--color-primary)}.breadcrumb .separator{color:var(--color-text-light)}.breadcrumb .current{color:var(--color-text-primary);font-weight:500}.question-header{background-color:var(--color-bg-white);padding:var(--spacing-2xl);border-radius:var(--border-radius-lg);border:1px solid var(--color-border);margin-bottom:var(--spacing-xl)}.question-meta-top{display:flex;justify-content:flex-end;align-items:center;margin-bottom:var(--spacing-lg)}.question-category-badge{font-size:var(--font-size-sm);font-weight:600;color:var(--color-primary);background-color:#8b3a3a1a;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius-sm);text-decoration:none;transition:all var(--transition-fast)}.question-category-badge:hover{background-color:#8b3a3a33}.question-title-detail{font-family:var(--font-heading);font-size:var(--font-size-3xl);color:var(--color-primary);margin:0 0 var(--spacing-lg) 0;line-height:1.3}.question-info{display:flex;gap:var(--spacing-xl);flex-wrap:wrap;margin-bottom:var(--spacing-lg)}.info-item{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.info-item svg{color:var(--color-primary);flex-shrink:0;margin-top:-1px}.question-tags-detail{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.tag{font-size:var(--font-size-xs);color:var(--color-text-secondary);background-color:var(--color-bg-secondary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm)}.question-content{background-color:var(--color-bg-white);padding:var(--spacing-2xl);border-radius:var(--border-radius-lg);border:1px solid var(--color-border);margin-bottom:var(--spacing-xl)}.section-title{font-family:var(--font-heading);font-size:var(--font-size-xl);color:var(--color-primary);margin:0 0 var(--spacing-lg) 0}.question-text{color:var(--color-text-primary);font-size:var(--font-size-base);line-height:1.8}.question-text p{margin-bottom:var(--spacing-md)}.question-text p:last-child{margin-bottom:0}.answers-section{background-color:var(--color-bg-white);padding:var(--spacing-2xl);border-radius:var(--border-radius-lg);border:1px solid var(--color-border)}.answers-list{display:flex;flex-direction:column;gap:var(--spacing-xl)}.answer-card{padding:var(--spacing-xl);background-color:var(--color-bg-main);border-radius:var(--border-radius-md);border:1px solid var(--color-border)}.answer-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border)}.teacher-info{display:flex;align-items:center;gap:var(--spacing-md)}.teacher-avatar-small{flex-shrink:0}.teacher-avatar-small img,.avatar-placeholder-small{width:48px;height:48px;border-radius:50%;object-fit:cover}.avatar-placeholder-small{display:flex;align-items:center;justify-content:center;background-color:var(--color-primary);color:var(--color-bg-white);font-family:var(--font-heading);font-size:var(--font-size-xl);font-weight:700}.teacher-name-link{font-weight:600;font-size:var(--font-size-base);color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}.teacher-name-link:hover{color:var(--color-primary-dark)}.answer-date{font-size:var(--font-size-xs);color:var(--color-text-light);margin-top:var(--spacing-xs)}.upvote-btn{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-bg-white);border:2px solid var(--color-border);border-radius:var(--border-radius-md);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.upvote-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background-color:#8b3a3a0d}.upvote-btn.upvoted{border-color:var(--color-primary);color:var(--color-bg-white);background-color:var(--color-primary)}.upvote-btn.upvoted:hover{opacity:.85}.upvote-btn svg{stroke:currentColor}.upvote-btn span{font-weight:600;font-size:var(--font-size-sm)}.answer-content{color:var(--color-text-primary);font-size:var(--font-size-base);line-height:1.8}.answer-content p{margin-bottom:var(--spacing-md);white-space:pre-line}.answer-content p:last-child{margin-bottom:0}.markdown-content h1{font-size:var(--font-size-2xl)}.markdown-content h2{font-size:var(--font-size-xl)}.markdown-content h3{font-size:var(--font-size-lg)}.markdown-content h4{font-size:var(--font-size-base)}.markdown-content pre{background-color:var(--color-bg-secondary);padding:var(--spacing-md);border-radius:var(--border-radius-md);overflow-x:auto;margin-bottom:var(--spacing-md)}.markdown-content pre code{background-color:transparent;padding:0}.markdown-content blockquote{border-left:4px solid var(--color-primary);padding-left:var(--spacing-md);margin-left:0;margin-bottom:var(--spacing-md);color:var(--color-text-secondary);font-style:italic}.markdown-content a{color:var(--color-primary);text-decoration:underline}.markdown-content a:hover{color:var(--color-primary-dark)}.answer-source{margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--color-border);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.answer-source strong{color:var(--color-primary)}.no-answers{text-align:center;padding:var(--spacing-2xl);color:var(--color-text-secondary)}.loading,.error{text-align:center;padding:var(--spacing-3xl);color:var(--color-text-secondary);font-size:var(--font-size-lg)}.error{color:var(--color-primary)}@media(max-width:768px){.question-detail-page{padding:var(--spacing-lg) 0 var(--spacing-2xl)}.question-header,.question-content,.answers-section{padding:var(--spacing-lg)}.question-title-detail{font-size:var(--font-size-2xl)}.question-info{gap:var(--spacing-md)}.answer-card{padding:var(--spacing-md)}.answer-header{flex-direction:column;gap:var(--spacing-md)}.upvote-btn{flex-direction:row;width:100%;justify-content:center}}.question-aleatoire-page{padding:var(--spacing-3xl) 0;min-height:60vh;display:flex;align-items:center;justify-content:center}.loading-random{text-align:center;padding:var(--spacing-3xl)}.spinner{width:60px;height:60px;margin:0 auto var(--spacing-xl);border:4px solid var(--color-border);border-top:4px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-random p{color:var(--color-text-secondary);font-size:var(--font-size-lg);font-weight:500}.categories-page{padding:var(--spacing-3xl) 0;min-height:60vh}.categories-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-lg)}.category-card{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:var(--spacing-2xl) var(--spacing-lg);background-color:var(--color-bg-white);border:2px solid var(--color-border);border-radius:var(--border-radius-lg);text-decoration:none;text-align:center;transition:all var(--transition-normal);min-height:150px}.category-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px var(--color-shadow);border-color:var(--color-primary)}.category-title{font-family:var(--font-heading);font-size:var(--font-size-xl);color:var(--color-primary);margin:0 0 var(--spacing-md) 0;transition:color var(--transition-fast)}.category-card:hover .category-title{color:var(--color-primary-dark)}.category-count{font-size:var(--font-size-base);color:var(--color-text-secondary);font-weight:500}@media(max-width:768px){.categories-page{padding:var(--spacing-2xl) 0}.categories-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--spacing-md)}.category-card{padding:var(--spacing-xl) var(--spacing-md);min-height:120px}.category-title{font-size:var(--font-size-lg)}}.category-detail-page{padding:var(--spacing-2xl) 0 var(--spacing-3xl);min-height:60vh}.category-header{background-color:var(--color-bg-white);padding:var(--spacing-2xl);border-radius:var(--border-radius-lg);border:1px solid var(--color-border);margin-bottom:var(--spacing-2xl);text-align:center}.category-title{font-family:var(--font-heading);font-size:var(--font-size-4xl);color:var(--color-primary);margin:0 0 var(--spacing-md) 0}.category-description{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin:0 0 var(--spacing-lg) 0;line-height:1.6}.category-stats{display:flex;justify-content:center;gap:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.stat-badge{font-size:var(--font-size-base);font-weight:600;color:var(--color-primary);background-color:#8b3a3a1a;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-md)}.questions-list{display:flex;flex-direction:column;gap:var(--spacing-lg)}.no-questions{text-align:center;padding:var(--spacing-3xl);color:var(--color-text-secondary)}@media(max-width:768px){.category-detail-page{padding:var(--spacing-lg) 0 var(--spacing-2xl)}.category-header{padding:var(--spacing-lg)}.category-title{font-size:var(--font-size-3xl)}.category-description{font-size:var(--font-size-base)}}.enseignants-page{padding:var(--spacing-3xl) 0;min-height:60vh}.teachers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--spacing-xl)}.teacher-card{display:flex;gap:var(--spacing-lg);padding:var(--spacing-xl);background-color:var(--color-bg-white);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);transition:all var(--transition-normal);text-decoration:none;color:inherit;cursor:pointer}.teacher-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px var(--color-shadow);border-color:var(--color-primary-light)}.teacher-avatar{flex-shrink:0;width:80px;height:80px;border-radius:50%;overflow:hidden}.teacher-avatar img{width:100%;height:100%;object-fit:cover;display:block}.teacher-avatar-placeholder{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;background-color:var(--color-primary);color:var(--color-bg-white);font-family:var(--font-heading);font-size:var(--font-size-3xl);font-weight:700}.teacher-info{flex:1;display:flex;flex-direction:column;gap:var(--spacing-sm);align-items:flex-start}.teacher-name{font-family:var(--font-heading);font-size:var(--font-size-xl);color:var(--color-primary);margin:0}.teacher-bio{color:var(--color-text-secondary);font-size:var(--font-size-base);line-height:1.6;margin:0}.teacher-stats{display:flex;gap:var(--spacing-md);padding-top:var(--spacing-sm)}.teacher-stat{font-size:var(--font-size-sm);color:var(--color-primary);font-weight:600;background-color:#8b3a3a1a;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius-sm)}@media(max-width:768px){.enseignants-page{padding:var(--spacing-2xl) 0}.teachers-grid{grid-template-columns:1fr;gap:var(--spacing-lg)}.teacher-card{flex-direction:column;align-items:center;text-align:center}.teacher-stats{justify-content:center}}.enseignant-detail-page{padding:var(--spacing-xl) 0}.teacher-profile{background:#fff;border-radius:var(--border-radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl);box-shadow:var(--shadow-sm)}.teacher-header{display:flex;gap:var(--spacing-lg);align-items:flex-start;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-xl);border-bottom:1px solid var(--color-border)}.teacher-avatar-large{width:120px;height:120px;border-radius:50%;overflow:hidden;flex-shrink:0;background:var(--color-primary-light);display:flex;align-items:center;justify-content:center}.teacher-avatar-large img{width:100%;height:100%;object-fit:cover}.avatar-placeholder-large{font-size:48px;font-weight:600;color:var(--color-primary);font-family:var(--font-heading)}.teacher-header-info{flex:1}.teacher-name{font-size:2rem;font-family:var(--font-heading);color:var(--color-text);margin-bottom:var(--spacing-sm)}.teacher-stats{display:flex;gap:var(--spacing-lg);color:var(--color-text-secondary);font-size:.95rem}.stat-item{display:flex;align-items:center;gap:var(--spacing-xs)}.stat-item svg{color:var(--color-primary)}.teacher-bio{margin-top:var(--spacing-lg)}.bio-content p{margin-bottom:var(--spacing-md);line-height:1.7;color:var(--color-text-secondary)}.markdown-content{line-height:1.8}.markdown-content p{margin-bottom:var(--spacing-md)}.markdown-content p:last-child{margin-bottom:0}.markdown-content strong{font-weight:700;color:var(--color-primary)}.markdown-content em{font-style:italic}.markdown-content ul,.markdown-content ol{margin-left:var(--spacing-lg);margin-bottom:var(--spacing-md)}.markdown-content li{margin-bottom:var(--spacing-xs)}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4{font-family:var(--font-heading);color:var(--color-primary);margin-top:var(--spacing-lg);margin-bottom:var(--spacing-md)}.markdown-content code{background-color:var(--color-bg-secondary);padding:2px 6px;border-radius:var(--border-radius-sm);font-family:Courier New,monospace;font-size:.9em}.recent-answers-section{margin-top:var(--spacing-xl)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.view-all-link{color:var(--color-primary);text-decoration:none;font-weight:500;transition:var(--transition-base)}.view-all-link:hover{color:var(--color-primary-dark)}.recent-answers-list{display:flex;flex-direction:column;gap:var(--spacing-md)}@media(max-width:768px){.teacher-header{flex-direction:column;align-items:center;text-align:center}.teacher-name{font-size:1.5rem}}.enseignant-reponses-page{padding:var(--spacing-xl) 0}.teacher-info-compact{margin-bottom:var(--spacing-lg)}.teacher-info-row{display:flex;align-items:center;gap:var(--spacing-md)}.teacher-avatar-small{width:60px;height:60px;border-radius:50%;overflow:hidden;flex-shrink:0;background:var(--color-primary-light);display:flex;align-items:center;justify-content:center}.teacher-avatar-small img{width:100%;height:100%;object-fit:cover}.avatar-placeholder-small{font-size:24px;font-weight:600;color:var(--color-primary);font-family:var(--font-heading)}@media(max-width:768px){.teacher-info-row{justify-content:center}.teacher-info-compact{text-align:center}}.le-projet-page{padding:var(--spacing-3xl) 0;min-height:60vh}.content-section{max-width:800px;margin:0 auto}.project-section{margin-bottom:var(--spacing-3xl);padding:var(--spacing-xl);background-color:var(--color-bg-white);border-radius:var(--border-radius-lg);border:1px solid var(--color-border)}.project-section h2{font-family:var(--font-heading);font-size:var(--font-size-2xl);color:var(--color-primary);margin-bottom:var(--spacing-lg)}.project-section p{color:var(--color-text-primary);font-size:var(--font-size-base);line-height:1.8;margin-bottom:var(--spacing-md)}.mission-list{list-style:none;padding-left:0;margin:var(--spacing-lg) 0}.mission-list li{position:relative;padding-left:var(--spacing-xl);margin-bottom:var(--spacing-md);color:var(--color-text-primary);line-height:1.6}.mission-list li:before{content:"✓";position:absolute;left:0;color:var(--color-primary);font-weight:700;font-size:var(--font-size-lg)}@media(max-width:768px){.le-projet-page{padding:var(--spacing-2xl) 0}.project-section{padding:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.project-section h2{font-size:var(--font-size-xl)}}.contact-page{padding:var(--spacing-3xl) 0;min-height:60vh}.contact-content{display:flex;flex-direction:column;gap:var(--spacing-xl);max-width:1000px;margin:0 auto}.contact-form{background-color:var(--color-bg-white);padding:var(--spacing-xl);border-radius:var(--border-radius-lg);border:1px solid var(--color-border)}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;font-weight:600;color:var(--color-primary);margin-bottom:var(--spacing-sm);font-size:var(--font-size-base)}.form-group input,.form-group textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--border-radius-md);font-size:var(--font-size-base);font-family:var(--font-body);color:var(--color-text-primary);transition:border-color var(--transition-fast)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary)}.form-group textarea{resize:vertical;min-height:150px}.submit-btn{width:100%;padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-base);font-weight:600;border:none;border-radius:var(--border-radius-md);background-color:var(--color-primary);color:var(--color-bg-white);cursor:pointer;transition:all var(--transition-normal)}.submit-btn:hover{background-color:var(--color-primary-dark);transform:translateY(-2px);box-shadow:0 4px 12px var(--color-shadow)}.success-message{padding:var(--spacing-md);background-color:#8b3a3a1a;color:var(--color-primary);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-lg);text-align:center;font-weight:500}.error-message{padding:var(--spacing-md);background-color:#dc26261a;color:#dc2626;border-radius:var(--border-radius-md);margin-bottom:var(--spacing-lg);text-align:center;font-weight:500}.turnstile-wrapper{margin-bottom:var(--spacing-lg);display:flex;justify-content:start}.submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}@media(max-width:768px){.contact-page{padding:var(--spacing-2xl) 0}.contact-form{padding:var(--spacing-lg)}}.mentions-legales-page{padding:var(--spacing-3xl) 0;min-height:60vh}.ml-section{margin-bottom:var(--spacing-2xl);padding:var(--spacing-xl);background-color:var(--color-bg-white);border-radius:var(--border-radius-lg);border:1px solid var(--color-border)}.ml-section h2{font-family:var(--font-heading);font-size:var(--font-size-2xl);color:var(--color-primary);margin-bottom:var(--spacing-lg)}.ml-section p{color:var(--color-text-primary);font-size:var(--font-size-base);line-height:1.8;margin-bottom:var(--spacing-md)}.ml-section p:last-child{margin-bottom:0}.ml-section a{color:var(--color-primary);text-decoration:underline;transition:color var(--transition-fast)}.ml-section a:hover{color:var(--color-primary-dark)}.ml-section code{font-family:monospace;font-size:.9em;background-color:var(--color-bg-secondary);padding:2px 6px;border-radius:var(--border-radius-sm)}.ml-list{list-style:disc;padding-left:var(--spacing-xl);margin:var(--spacing-md) 0}.ml-list li{color:var(--color-text-primary);line-height:1.7;margin-bottom:var(--spacing-sm)}@media(max-width:768px){.mentions-legales-page{padding:var(--spacing-2xl) 0}.ml-section{padding:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.ml-section h2{font-size:var(--font-size-xl)}}.outils-page{padding:var(--spacing-3xl) 0;min-height:60vh}.outils-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-xl);max-width:900px;margin:0 auto}.outil-card{display:flex;flex-direction:column;padding:var(--spacing-xl);background-color:var(--color-bg-white);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);text-decoration:none;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.outil-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px var(--color-shadow)}.outil-title{font-family:var(--font-heading);font-size:var(--font-size-2xl);color:var(--color-primary);margin-bottom:var(--spacing-md)}.outil-description{color:var(--color-text-secondary);font-size:var(--font-size-base);line-height:1.7;flex:1;margin-bottom:var(--spacing-lg)}.outil-link{font-weight:600;color:var(--color-primary);font-size:var(--font-size-base);transition:color var(--transition-fast)}.outil-card:hover .outil-link{color:var(--color-primary-dark)}@media(max-width:768px){.outils-page{padding:var(--spacing-2xl) 0}.outils-grid{grid-template-columns:1fr}.outil-card{padding:var(--spacing-lg)}.outil-title{font-size:var(--font-size-xl)}}.calculateur-heritage-page{padding:var(--spacing-3xl) 0;min-height:60vh}.calculateur-heritage-page .breadcrumb{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl);font-size:var(--font-size-sm)}.calculateur-heritage-page .breadcrumb a{color:var(--color-text-secondary);text-decoration:none;transition:color var(--transition-fast)}.calculateur-heritage-page .breadcrumb a:hover{color:var(--color-primary)}.calculateur-heritage-page .breadcrumb .separator{color:var(--color-text-light)}.calculateur-heritage-page .breadcrumb .current{color:var(--color-text-primary);font-weight:500}.calc-error{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background-color:#fef2f2;border:1px solid #fca5a5;border-radius:var(--border-radius-lg);color:#991b1b;font-weight:500;margin-bottom:var(--spacing-xl)}.calc-error button{background:none;border:none;color:#991b1b;cursor:pointer;font-size:var(--font-size-lg);padding:0}.calc-layout{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl);align-items:start}.calc-section{background-color:var(--color-bg-white);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.calc-section-title{font-family:var(--font-heading);font-size:var(--font-size-xl);color:var(--color-primary);margin-bottom:var(--spacing-lg)}.calc-subsection-title{font-size:var(--font-size-base);font-weight:600;color:var(--color-text-secondary);margin-top:var(--spacing-lg);margin-bottom:var(--spacing-md);text-transform:uppercase;letter-spacing:.05em}.calc-field{margin-bottom:var(--spacing-md)}.calc-field label{display:block;font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm)}.calc-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--border-radius-lg);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-bg-white);transition:border-color var(--transition-fast);box-sizing:border-box}.calc-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #8b3a3a1a}.calc-input-lg{font-size:var(--font-size-xl);padding:var(--spacing-md) var(--spacing-lg);font-weight:700}.calc-deductions-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--spacing-md)}.calc-gender-toggle{display:flex;background-color:var(--color-bg-secondary);border-radius:var(--border-radius-lg);padding:3px;border:2px solid var(--color-border)}.calc-gender-btn{flex:1;padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--border-radius-lg);font-weight:600;cursor:pointer;background:transparent;color:var(--color-text-secondary);transition:all var(--transition-fast);font-size:var(--font-size-base)}.calc-gender-btn.active{background-color:var(--color-primary);color:#fff;box-shadow:0 2px 4px var(--color-shadow)}.heirs-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm)}.heir-input-card{padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--border-radius-lg);background-color:var(--color-bg-white);transition:all var(--transition-fast)}.heir-input-card.heir-active{border-color:#16a34a;background-color:#f0fdf4}.heir-input-card.heir-blocked{border-color:#dc2626;background-color:#fef2f2;opacity:.7}.heir-label{display:block;font-weight:600;font-size:var(--font-size-sm);color:var(--color-text-primary);margin-bottom:var(--spacing-xs)}.heir-blocked .heir-label{color:#991b1b}.heir-active .heir-label{color:#166534}.heir-limit{font-weight:400;color:var(--color-text-light);font-size:var(--font-size-xs)}.heir-input{width:100%;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--border-radius-sm);font-size:var(--font-size-base);font-weight:600;background:var(--color-bg-white);box-sizing:border-box}.heir-input:focus{outline:none;border-color:var(--color-primary)}.heir-blocked-msg{font-size:var(--font-size-xs);color:#991b1b;font-style:italic;font-weight:500}.calc-actions{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.calc-btn-primary{flex:2;padding:var(--spacing-md) var(--spacing-xl);background-color:var(--color-primary);color:#fff;font-weight:700;font-size:var(--font-size-lg);border:none;border-radius:var(--border-radius-lg);cursor:pointer;transition:background-color var(--transition-fast)}.calc-btn-primary:hover{background-color:var(--color-primary-dark)}.calc-btn-secondary{flex:1;padding:var(--spacing-md) var(--spacing-xl);background-color:var(--color-bg-secondary);color:var(--color-text-secondary);font-weight:600;font-size:var(--font-size-base);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);cursor:pointer;transition:all var(--transition-fast)}.calc-btn-secondary:hover{background-color:var(--color-border)}.calc-empty{background-color:var(--color-bg-white);border:2px dashed var(--color-border);border-radius:var(--border-radius-lg);padding:var(--spacing-3xl);text-align:center;position:sticky;top:120px}.calc-empty h3{font-family:var(--font-heading);font-size:var(--font-size-2xl);color:var(--color-text-primary);margin-bottom:var(--spacing-sm)}.calc-empty p{color:var(--color-text-secondary)}.calc-results-col{position:relative}.calc-results{position:sticky;top:100px;max-height:calc(100vh - 120px);overflow-y:auto;padding-right:var(--spacing-xs)}.calc-summary-card{background:var(--color-primary);color:#fff;padding:var(--spacing-xl);border-radius:var(--border-radius-lg);margin-bottom:var(--spacing-xl)}.calc-summary-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xs) 0;font-size:var(--font-size-base)}.calc-summary-row strong{font-size:var(--font-size-xl)}.calc-summary-row.deduction{opacity:.8;font-size:var(--font-size-sm)}.calc-summary-row.net strong{font-size:var(--font-size-2xl)}.calc-summary-divider{height:1px;background:#ffffff4d;margin:var(--spacing-sm) 0}.calc-table-wrapper{overflow-x:auto}.calc-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.calc-table th{text-align:left;padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-bg-secondary);color:var(--color-text-secondary);font-weight:600;border-bottom:2px solid var(--color-border);white-space:nowrap}.calc-table td{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border);vertical-align:middle}.calc-table td.amount{font-weight:700;white-space:nowrap}.heir-name{display:block;font-weight:600;color:var(--color-text-primary)}.heir-badge{display:inline-block;font-size:var(--font-size-xs);padding:1px var(--spacing-xs);border-radius:var(--border-radius-sm);background-color:#8b3a3a1a;color:var(--color-primary);font-weight:500;margin-top:2px}.heir-badge.residuary{background-color:#dbeafe;color:#1d4ed8}.heir-badge.treasury{background-color:#fef3c7;color:#92400e}.calc-explanations{display:flex;flex-direction:column;gap:var(--spacing-sm)}.calc-explanation-card{padding:var(--spacing-md);background-color:var(--color-bg-secondary);border-radius:var(--border-radius-lg)}.explanation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs)}.explanation-header strong{color:var(--color-text-primary)}.quran-ref{font-size:var(--font-size-xs);background-color:#8b3a3a1a;color:var(--color-primary);padding:2px var(--spacing-sm);border-radius:var(--border-radius-sm);font-weight:500}.calc-explanation-card p{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0;line-height:1.5}.calc-blocked-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.calc-blocked-card{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background-color:#fef2f2;border:1px solid #fca5a5;border-radius:var(--border-radius-lg)}.calc-blocked-card strong{color:#991b1b}.calc-blocked-card span{font-size:var(--font-size-sm);color:#991b1b;font-style:italic}.term-tooltip{color:var(--color-primary);text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px;text-decoration-thickness:1px;cursor:help;position:relative}.term-tooltip:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background-color:var(--color-text-primary);color:#fff;font-size:var(--font-size-xs);font-weight:400;line-height:1.4;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-sm);white-space:normal;width:max-content;max-width:240px;text-align:center;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .15s,visibility .15s;z-index:50;box-shadow:0 4px 12px var(--color-shadow)}.term-tooltip:before{content:"";position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--color-text-primary);pointer-events:none;opacity:0;visibility:hidden;transition:opacity .15s,visibility .15s;z-index:50}.term-tooltip:hover:after,.term-tooltip:hover:before,.term-tooltip:active:after,.term-tooltip:active:before{opacity:1;visibility:visible}.calc-disclaimer{margin-top:var(--spacing-xl);padding:var(--spacing-lg);background-color:var(--color-bg-secondary);border-radius:var(--border-radius-lg);font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.6;text-align:center;border:1px dashed var(--color-border)}.calc-credit{margin-top:var(--spacing-md);text-align:center;font-size:var(--font-size-xs);color:var(--color-text-light)}.calc-credit a{color:var(--color-primary);text-decoration:none;font-weight:500}.calc-credit a:hover{text-decoration:underline}@media(max-width:1024px){.calc-layout{grid-template-columns:1fr}.calc-results{position:static;max-height:none}.calc-empty{position:static}}@media(max-width:768px){.calculateur-heritage-page{padding:var(--spacing-2xl) 0}.calc-deductions-grid,.heirs-grid{grid-template-columns:1fr}.calc-actions{flex-direction:column}.calc-table{font-size:var(--font-size-xs)}.calc-table th,.calc-table td{padding:var(--spacing-xs) var(--spacing-sm)}}.calculateur-menstrues-page{padding:var(--spacing-3xl) 0;min-height:60vh;user-select:none;-webkit-user-select:none}.calculateur-menstrues-page .breadcrumb{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl);font-size:var(--font-size-sm)}.calculateur-menstrues-page .breadcrumb a{color:var(--color-text-secondary);text-decoration:none;transition:color var(--transition-fast)}.calculateur-menstrues-page .breadcrumb a:hover{color:var(--color-primary)}.calculateur-menstrues-page .breadcrumb .separator{color:var(--color-text-light)}.calculateur-menstrues-page .breadcrumb .current{color:var(--color-text-primary);font-weight:500}.calculateur-menstrues-page .back-link:hover{color:var(--color-primary-dark)}.cm-section{background-color:var(--color-bg-white);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.cm-section-title{font-family:var(--font-heading);font-size:var(--font-size-xl);color:var(--color-primary);margin-bottom:var(--spacing-lg)}.cm-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.cm-section-header .cm-section-title{margin-bottom:0}.cm-sub-title{font-family:var(--font-heading);font-size:var(--font-size-lg);color:var(--color-text-primary);margin-bottom:var(--spacing-md)}.cm-config-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg)}.cm-field{display:flex;flex-direction:column;gap:var(--spacing-xs)}.cm-label{font-weight:600;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.cm-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--border-radius-lg);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-bg-white);transition:border-color var(--transition-fast);box-sizing:border-box}.cm-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #8b3a3a1a}.cm-hint{font-size:var(--font-size-xs);color:var(--color-text-light);margin:0}.cm-toggle{display:flex;background-color:var(--color-bg-secondary);border-radius:var(--border-radius-lg);padding:3px;border:2px solid var(--color-border);width:fit-content}.cm-toggle-btn{padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--border-radius-lg);font-weight:600;cursor:pointer;background:transparent;color:var(--color-text-secondary);transition:all var(--transition-fast);font-size:var(--font-size-base)}.cm-toggle-btn.active{background-color:var(--color-primary);color:#fff;box-shadow:0 2px 4px var(--color-shadow)}.cm-toggle-btn:hover:not(.active){background-color:var(--color-border)}.cm-btn-outline{padding:var(--spacing-xs) var(--spacing-lg);background:transparent;color:var(--color-text-secondary);font-weight:600;font-size:var(--font-size-sm);border:2px solid var(--color-border);border-radius:var(--border-radius-lg);cursor:pointer;transition:all var(--transition-fast)}.cm-btn-outline:hover{background-color:var(--color-bg-secondary);border-color:var(--color-text-light);transform:none}.cm-instruction{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--spacing-md)}.cm-legend-input{display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.cm-legend-item{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.cm-dot{width:14px;height:14px;border-radius:50%;flex-shrink:0}.cm-dot.blood{background-color:#dc2626}.cm-dot.no-blood{background-color:var(--color-bg-secondary);border:2px solid var(--color-border)}.cm-day-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--spacing-sm);touch-action:none}.cm-day-cell{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:1;border:2px solid var(--color-border);border-radius:var(--border-radius-md);background-color:var(--color-bg-white);cursor:pointer;transition:all var(--transition-fast);padding:var(--spacing-xs);min-height:52px}.cm-day-cell:hover{border-color:var(--color-primary-light);transform:scale(1.05);box-shadow:0 2px 8px var(--color-shadow);background-color:transparent}.cm-day-cell.blood{background-color:#dc262620;border-color:#991b1b}.cm-day-num{font-weight:700;font-size:var(--font-size-base);color:var(--color-text-primary);line-height:1}.cm-day-date{font-size:.6rem;color:var(--color-text-primary);line-height:1;margin-top:2px}.cm-results-section{border-color:var(--color-primary);border-width:2px}.cm-summary-grid{display:flex;flex-wrap:wrap;gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.cm-summary-card{flex:1 1 120px;display:flex;flex-direction:column;align-items:center;padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--border-radius-lg);text-align:center;min-width:120px}.cm-summary-val{font-size:var(--font-size-3xl);font-weight:800;line-height:1.1}.cm-summary-lbl{font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.03em;margin-top:var(--spacing-xs)}.card-hayd{background-color:#fef2f2;color:#991b1b;border:1px solid #fca5a5}.card-istidhar{background-color:#fff7ed;color:#9a3412;border:1px solid #fb923c}.card-istihada{background-color:#fffbeb;color:#92400e;border:1px solid #fcd34d}.card-nopray{background-color:var(--color-bg-secondary);color:var(--color-primary);border:1px solid var(--color-border)}.card-cycles{background-color:#f0fdf4;color:#166534;border:1px solid #86efac}.cm-timeline-wrap{margin-bottom:var(--spacing-xl)}.cm-timeline{display:flex;flex-wrap:wrap;gap:3px;margin-bottom:var(--spacing-md)}.cm-tl-day{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--border-radius-sm);cursor:default;transition:transform var(--transition-fast)}.cm-tl-day:hover{transform:scale(1.2);z-index:1}.cm-tl-num{font-size:var(--font-size-xs);font-weight:700;line-height:1}.cm-tl-day.st-hayd{background-color:#dc2626;color:#fff}.cm-tl-day.st-istidhar{background-color:#ea580c;color:#fff}.cm-tl-day.st-istihada{background-color:#f59e0b;color:#fff}.cm-tl-day.st-tuhr{background-color:#86efac;color:#166534}.cm-tl-day.st-clean{background-color:#f0fdf4;color:#166534;border:1px solid #d1fae5}.cm-legend-results{display:flex;flex-wrap:wrap;gap:var(--spacing-sm) var(--spacing-lg)}.cm-legend-row{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.cm-legend-box{width:18px;height:18px;border-radius:var(--border-radius-sm);flex-shrink:0}.cm-legend-box.st-hayd{background-color:#dc2626}.cm-legend-box.st-istidhar{background-color:#ea580c}.cm-legend-box.st-istihada{background-color:#f59e0b}.cm-legend-box.st-tuhr{background-color:#86efac}.cm-legend-box.st-clean{background-color:#f0fdf4;border:1px solid #d1fae5}.cm-explanation{margin-bottom:var(--spacing-xl)}.cm-cycle-card{background-color:var(--color-bg-secondary);border-radius:var(--border-radius-lg);padding:var(--spacing-md) var(--spacing-lg);margin-bottom:var(--spacing-md)}.cm-cycle-card h4{font-size:var(--font-size-base);color:var(--color-primary);margin-bottom:var(--spacing-xs)}.cm-cycle-card p{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--spacing-xs)}.cm-cycle-card p:last-child{margin-bottom:0}.cm-note-warn{background-color:#fffbeb;border-left:3px solid #f59e0b;padding:var(--spacing-sm) var(--spacing-md);border-radius:0 var(--border-radius-sm) var(--border-radius-sm) 0;color:#92400e!important}.cm-note-ok{background-color:#f0fdf4;border-left:3px solid #22c55e;padding:var(--spacing-sm) var(--spacing-md);border-radius:0 var(--border-radius-sm) var(--border-radius-sm) 0;color:#166534!important}.cm-note-info{background-color:#eff6ff;border:1px solid #93c5fd;border-radius:var(--border-radius-lg);padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-sm);color:#1e40af}.cm-detail-wrap{margin-top:var(--spacing-md)}.cm-detail-toggle{cursor:pointer;font-weight:600;color:var(--color-primary);padding:var(--spacing-sm) 0;font-size:var(--font-size-base);list-style:none}.cm-detail-toggle::-webkit-details-marker{display:none}.cm-detail-toggle:before{content:"▸ "}details[open]>.cm-detail-toggle:before{content:"▾ "}.cm-detail-table{margin-top:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);overflow:hidden}.cm-detail-header{display:grid;grid-template-columns:1fr 60px 1fr 1fr;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-bg-secondary);font-weight:700;font-size:var(--font-size-sm);color:var(--color-text-secondary);border-bottom:2px solid var(--color-border)}.cm-detail-row{display:grid;grid-template-columns:1fr 60px 1fr 1fr;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);border-bottom:1px solid var(--color-border);align-items:center}.cm-detail-row:last-child{border-bottom:none}.cm-detail-row.st-hayd{background-color:#fef2f2}.cm-detail-row.st-istidhar{background-color:#fff7ed}.cm-detail-row.st-istihada{background-color:#fffbeb}.cm-detail-row.st-tuhr{background-color:#f0fdf4}.cm-detail-row.st-clean{background-color:var(--color-bg-white)}.cm-detail-status{font-weight:600}.cm-rules-section{background-color:var(--color-bg-secondary);border:none}.cm-rules-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md)}.cm-rule-card{background-color:var(--color-bg-white);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);padding:var(--spacing-lg)}.cm-rule-card h4{font-family:var(--font-heading);font-size:var(--font-size-base);color:var(--color-primary);margin-bottom:var(--spacing-sm)}.cm-rule-card p{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:0}@media(max-width:992px){.cm-rules-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.calculateur-menstrues-page{padding:var(--spacing-2xl) 0}.cm-section{padding:var(--spacing-lg)}.cm-config-grid{grid-template-columns:1fr}.cm-day-grid{grid-template-columns:repeat(5,1fr);gap:4px}.cm-day-cell{min-height:44px}.cm-day-num{font-size:var(--font-size-sm)}.cm-summary-grid{gap:var(--spacing-sm)}.cm-summary-card{flex:1 1 100px;min-width:100px;padding:var(--spacing-sm) var(--spacing-md)}.cm-summary-val{font-size:var(--font-size-2xl)}.cm-tl-day{width:28px;height:28px}.cm-tl-num{font-size:.6rem}.cm-rules-grid{grid-template-columns:1fr}.cm-legend-results{flex-direction:column;gap:var(--spacing-xs)}.cm-detail-header,.cm-detail-row{grid-template-columns:70px 40px 1fr 100px;font-size:var(--font-size-xs);gap:var(--spacing-xs)}}@media(max-width:480px){.cm-day-grid{grid-template-columns:repeat(5,1fr);gap:3px}.cm-day-cell{min-height:38px;padding:2px}.cm-day-num{font-size:var(--font-size-xs)}.cm-day-date{display:none}.cm-tl-day{width:24px;height:24px}.cm-summary-card{flex:1 1 80px;min-width:80px}.cm-detail-header,.cm-detail-row{grid-template-columns:50px 30px 1fr 80px}}#root{width:100%}@media(max-width:1200px){.container{max-width:960px}}@media(max-width:992px){.container{max-width:720px}}@media(max-width:768px){.container{max-width:540px}}@media(max-width:576px){.container{padding:0 var(--spacing-md)}}
