.header{position:fixed;inset:0 0 auto;z-index:var(--z-sticky);height:var(--header-height);display:flex;align-items:center;justify-content:center;padding:0 var(--space-5)}.header-container{position:relative;height:calc(var(--header-height) - 12px);display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);transition:height var(--transition-normal)}.header-container:before{content:"";position:absolute;inset:0;z-index:-1;border-radius:var(--radius-full);background:color-mix(in srgb,var(--color-bg-secondary) 88%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid var(--color-border);box-shadow:var(--shadow-lg);transition:background var(--transition-normal)}.header-container.is-scrolled{height:calc(var(--header-height) - 22px)}.header-container.is-scrolled:before{background:color-mix(in srgb,var(--color-bg-secondary) 97%,transparent)}.logo{flex:0 0 auto;display:flex;align-items:center;gap:var(--space-3);min-height:44px}.logo-icon,.theme-toggle,.mobile-menu-btn{display:inline-flex;align-items:center;justify-content:center}.logo-icon{width:38px;height:38px;background:var(--color-accent-primary);border-radius:var(--radius-md);color:#fff}.logo-text{color:var(--color-text-primary);font-family:var(--font-display);font-size:var(--text-xl);font-weight:750}.logo-accent{color:var(--color-accent-secondary)}.nav,.nav-list,.header-actions{display:flex;align-items:center}.nav-list{gap:var(--space-1)}.nav-link{display:inline-flex;align-items:center;min-height:42px;padding:0 var(--space-4);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:600;transition:background var(--transition-fast),color var(--transition-fast)}.nav-link:hover,.nav-link-active{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.header-actions{gap:var(--space-2)}.theme-toggle,.mobile-menu-btn,.settings-btn{min-width:42px;height:42px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-tertiary);color:var(--color-text-primary);transition:border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast)}.theme-toggle:hover,.mobile-menu-btn:hover,.settings-btn:hover{border-color:var(--color-border-hover);color:var(--color-accent-secondary)}.lang-code{font-size:var(--text-xs)}.lang-option{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:42px;padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--color-text-secondary);text-align:left}.lang-option:hover,.lang-option-active{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.lang-option-active .lang-code{color:var(--color-accent-secondary)}.header-settings{position:relative}.settings-btn{display:inline-flex;align-items:center;justify-content:center}.settings-popover{position:absolute;top:calc(100% + var(--space-2));right:0;width:320px;max-height:min(480px,calc(100dvh - var(--header-height) - 24px));overflow-y:auto;padding:var(--space-3);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-xl);z-index:var(--z-dropdown)}.settings-theme-row{width:100%;display:flex;align-items:center;gap:var(--space-2);min-height:42px;padding:0 var(--space-3);margin-bottom:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-tertiary);color:var(--color-text-primary);font-size:var(--text-sm);font-weight:600}.settings-theme-row:hover{border-color:var(--color-border-hover)}.lang-filter{width:100%;height:38px;padding:0 var(--space-3);margin-bottom:var(--space-2);background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:var(--text-sm)}.lang-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-1);max-height:260px;overflow-y:auto}.lang-empty{grid-column:1 / -1;padding:var(--space-3);color:var(--color-text-tertiary);font-size:var(--text-sm);text-align:center}.header-settings-inline,.mobile-menu-btn,.mobile-nav-cta{display:none}@media(max-width:1024px){.nav{position:fixed;top:var(--header-height);right:0;bottom:0;left:0;flex-direction:column;align-items:stretch;padding:var(--space-4) var(--container-padding) max(var(--space-8),env(safe-area-inset-bottom));overflow-y:auto;background:var(--color-bg-primary);border-top:1px solid var(--color-border);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity var(--transition-fast),transform var(--transition-fast),visibility var(--transition-fast)}.nav-open{opacity:1;visibility:visible;transform:translateY(0)}.nav-list{width:min(100%,560px);margin:0 auto;flex-direction:column;align-items:stretch;gap:var(--space-2)}.nav-link{width:100%;min-height:52px;justify-content:space-between;padding:0 var(--space-4);background:var(--color-bg-secondary);border:1px solid var(--color-border);font-size:var(--text-base)}.mobile-nav-cta{display:block;margin-top:var(--space-3)}.mobile-nav-cta .btn{width:100%;min-height:52px}.header-cta{display:none}.mobile-menu-btn{display:inline-flex}.header-settings{display:none}.header-settings-inline{display:block;width:min(100%,560px);margin:var(--space-5) auto 0;padding-top:var(--space-4);border-top:1px solid var(--color-border)}.header-settings-inline .settings-theme-row{margin-bottom:var(--space-3)}.header-settings-inline .lang-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}}@media(max-width:480px){.logo{gap:var(--space-2)}.logo-icon{width:34px;height:34px}.logo-text{font-size:var(--text-lg)}.header-actions{gap:6px}.theme-toggle,.mobile-menu-btn{min-width:40px;width:40px;height:40px;padding:0}}.footer{position:relative;margin-top:auto;padding:var(--space-16) 0 var(--space-8);background:var(--color-bg-secondary);border-top:1px solid var(--color-border)}.footer:before{content:"";position:absolute;top:-1px;left:0;right:0;height:2px;background:var(--color-accent-gradient)}.footer-main{display:grid;grid-template-columns:1.5fr 2fr;gap:var(--space-12);padding-bottom:var(--space-12);border-bottom:1px solid var(--color-border)}.footer-brand{display:flex;flex-direction:column;gap:var(--space-4)}.footer-logo{display:flex;align-items:center;gap:var(--space-3);text-decoration:none}.footer-logo-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--color-accent-gradient);border-radius:var(--radius-md);color:#fff}.footer-logo-text{font-family:var(--font-display);font-size:var(--text-lg);font-weight:700;color:var(--color-text-primary)}.footer-logo-accent{background:var(--color-accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.footer-tagline{color:var(--color-text-secondary);font-size:var(--text-sm);line-height:var(--leading-relaxed);max-width:280px}.footer-social{display:flex;gap:var(--space-3)}.social-link{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--color-bg-tertiary);border-radius:var(--radius-md);color:var(--color-text-secondary);transition:all var(--transition-fast)}.social-link:hover{background:var(--color-accent-primary);color:#fff;transform:translateY(-2px)}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-8)}.footer-links-title{font-size:var(--text-sm);font-weight:600;color:var(--color-text-primary);margin-bottom:var(--space-4);text-transform:uppercase;letter-spacing:.05em}.footer-links-list{display:flex;flex-direction:column;gap:var(--space-3)}.footer-links-list a{font-size:var(--text-sm);color:var(--color-text-secondary);transition:color var(--transition-fast)}.footer-links-list a:hover{color:var(--color-text-primary)}.footer-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:var(--space-8)}.footer-copyright{font-size:var(--text-sm);color:var(--color-text-tertiary)}.footer-made-with{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);color:var(--color-text-tertiary)}.heart-icon{color:#ef4444;animation:pulse 1.5s ease-in-out infinite}@media(max-width:768px){.footer-main{grid-template-columns:1fr;gap:var(--space-8)}.footer-links{grid-template-columns:repeat(2,1fr)}.footer-bottom{flex-direction:column;gap:var(--space-4);text-align:center}}@media(max-width:480px){.footer-links{grid-template-columns:1fr}}.layout{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1;padding-top:var(--header-height)}.error-boundary{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:linear-gradient(135deg,#667eea,#764ba2)}.error-boundary__content{max-width:600px;background:#fff;border-radius:16px;padding:3rem;box-shadow:0 20px 60px #0000004d;text-align:center;animation:slideIn .4s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.error-boundary__icon{font-size:4rem;margin-bottom:1rem;animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.error-boundary__title{font-size:2rem;font-weight:700;color:#1a202c;margin-bottom:1rem}.error-boundary__message{font-size:1.125rem;color:#4a5568;line-height:1.6;margin-bottom:2rem}.error-boundary__details{text-align:left;margin:2rem 0;padding:1rem;background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px}.error-boundary__details summary{cursor:pointer;font-weight:600;color:#2d3748;padding:.5rem;-webkit-user-select:none;user-select:none}.error-boundary__details summary:hover{color:#667eea}.error-boundary__stack{margin-top:1rem;padding:1rem;background:#2d3748;color:#f7fafc;border-radius:4px;overflow-x:auto;font-size:.875rem;line-height:1.5;white-space:pre-wrap;word-break:break-word}.error-boundary__actions{display:flex;gap:1rem;justify-content:center;margin-bottom:1.5rem}.error-boundary__button{padding:.75rem 1.5rem;font-size:1rem;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .2s}.error-boundary__button--primary{background:#667eea;color:#fff}.error-boundary__button--primary:hover{background:#5568d3;transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.error-boundary__button--secondary{background:#e2e8f0;color:#2d3748}.error-boundary__button--secondary:hover{background:#cbd5e0;transform:translateY(-2px)}.error-boundary__help{font-size:.875rem;color:#718096;margin-top:1rem}@media(max-width:640px){.error-boundary__content{padding:2rem}.error-boundary__title{font-size:1.5rem}.error-boundary__message{font-size:1rem}.error-boundary__actions{flex-direction:column}.error-boundary__button{width:100%}}.loading-spinner{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#fffffff2;z-index:9999}.loading-spinner__container{display:flex;flex-direction:column;align-items:center;gap:1.5rem}.loading-spinner__spinner{width:50px;height:50px;border:4px solid #e2e8f0;border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-spinner__message{font-size:1rem;color:#4a5568;font-weight:500;margin:0}.loading-spinner--dark{background:#000000b3}.loading-spinner--dark .loading-spinner__message{color:#fff}.loading-spinner--dark .loading-spinner__spinner{border-color:#fff3;border-top-color:#667eea}:root{--color-bg-primary: #0d1117;--color-bg-secondary: #151b23;--color-bg-tertiary: #202833;--color-bg-card: rgba(32, 40, 51, .88);--color-bg-glass: rgba(255, 255, 255, .03);--color-bg-input: #202833;--color-text-primary: #ffffff;--color-text-secondary: #b7c0cc;--color-text-tertiary: #8793a2;--color-text-accent: #66a3ff;--color-accent-primary: #2f7df6;--color-accent-primary-hover: #4d91ff;--color-accent-secondary: #31b6a6;--color-accent-gradient: linear-gradient(135deg, #2f7df6 0%, #168f86 100%);--color-accent-glow: rgba(47, 125, 246, .28);--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--color-border: rgba(255, 255, 255, .08);--color-border-hover: rgba(255, 255, 255, .15);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: "Outfit", var(--font-sans);--font-mono: "JetBrains Mono", "Fira Code", monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.75rem;--text-7xl: 4.5rem;--leading-tight: 1.1;--leading-normal: 1.5;--leading-relaxed: 1.75;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4), 0 2px 4px -2px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .4), 0 4px 6px -4px rgba(0, 0, 0, .3);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .4), 0 8px 10px -6px rgba(0, 0, 0, .3);--shadow-glow: 0 0 40px var(--color-accent-glow);--shadow-glow-sm: 0 0 20px var(--color-accent-glow);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--transition-bounce: .5s cubic-bezier(.68, -.55, .265, 1.55);--z-dropdown: 100;--z-sticky: 200;--z-modal: 300;--z-tooltip: 400;--container-max: 1280px;--container-padding: var(--space-6);--header-height: 72px;--theme-transition: background-color .3s ease, color .3s ease, border-color .3s ease, box-shadow .3s ease}[data-theme=light]{--color-bg-primary: #f8fafc;--color-bg-secondary: #ffffff;--color-bg-tertiary: #f1f5f9;--color-bg-card: rgba(255, 255, 255, .9);--color-bg-glass: rgba(255, 255, 255, .8);--color-bg-input: #ffffff;--color-text-primary: #172033;--color-text-secondary: #465267;--color-text-tertiary: #69758a;--color-text-accent: #155dcc;--color-accent-primary: #1769df;--color-accent-primary-hover: #0e56bd;--color-accent-secondary: #087f75;--color-accent-gradient: linear-gradient(135deg, #1769df 0%, #087f75 100%);--color-accent-glow: rgba(23, 105, 223, .16);--color-border: rgba(0, 0, 0, .1);--color-border-hover: rgba(0, 0, 0, .2);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .1)}.cv-preview-light{--cv-bg: #ffffff;--cv-text-primary: #1a1a1a;--cv-text-secondary: #4a4a4a;--cv-text-tertiary: #6b6b6b;--cv-accent: #2563eb;--cv-border: #e5e7eb}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:42px;padding:0 var(--space-5);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:700;transition:background var(--transition-fast),background-position var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.btn-primary{background:var(--color-accent-gradient);background-size:200% 200%;background-position:0 0;color:#fff;box-shadow:0 4px 20px var(--color-accent-glow)}.btn-primary:hover{background-position:100% 0;box-shadow:0 6px 28px var(--color-accent-glow);transform:translateY(-1px)}.btn-secondary{background:var(--color-bg-tertiary);border:1px solid var(--color-border);color:var(--color-text-primary)}.btn-secondary:hover{border-color:var(--color-border-hover);background:var(--color-bg-card)}.glass-panel{position:relative;background:color-mix(in srgb,var(--color-bg-secondary) 88%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--color-border);box-shadow:var(--shadow-xl)}.glow-backdrop{position:absolute;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at center,var(--color-accent-glow),transparent 70%);filter:blur(20px)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body{min-width:320px}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-primary);background:var(--color-bg-primary);min-height:100vh;overflow-x:hidden}#root{min-height:100vh;display:flex;flex-direction:column}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}input,textarea,select{font-family:inherit;font-size:inherit}img,svg{display:block;max-width:100%}ul,ol{list-style:none}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-secondary)}::-webkit-scrollbar-thumb{background:var(--color-bg-tertiary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}::selection{background:var(--color-accent-primary);color:#fff}:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--container-padding)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.text-gradient{background:var(--color-accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.glass{background:var(--color-bg-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--color-border)}.glow{box-shadow:var(--shadow-glow)}@media(max-width:768px){:root{--container-padding: var(--space-4);--header-height: 64px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in{animation:fadeIn .5s ease-out}.animate-fade-in-up{animation:fadeInUp .5s ease-out}.animate-fade-in-down{animation:fadeInDown .5s ease-out}.animate-scale-in{animation:scaleIn .3s ease-out}.animate-slide-in-right{animation:slideInRight .5s ease-out}.animate-float{animation:float 3s ease-in-out infinite}.animate-pulse{animation:pulse 2s ease-in-out infinite}.stagger>*{opacity:0;animation:fadeInUp .5s ease-out forwards}.stagger>*:nth-child(1){animation-delay:.1s}.stagger>*:nth-child(2){animation-delay:.2s}.stagger>*:nth-child(3){animation-delay:.3s}.stagger>*:nth-child(4){animation-delay:.4s}.stagger>*:nth-child(5){animation-delay:.5s}.stagger>*:nth-child(6){animation-delay:.6s}.scroll-reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out}.scroll-reveal.is-visible{opacity:1;transform:translateY(0)}.scroll-reveal-group>*{opacity:0}.scroll-reveal-group.is-visible>*{animation:fadeInUp .5s ease-out forwards}.scroll-reveal-group>*:nth-child(1){animation-delay:.05s}.scroll-reveal-group>*:nth-child(2){animation-delay:.1s}.scroll-reveal-group>*:nth-child(3){animation-delay:.15s}.scroll-reveal-group>*:nth-child(4){animation-delay:.2s}.scroll-reveal-group>*:nth-child(5){animation-delay:.25s}.scroll-reveal-group>*:nth-child(6){animation-delay:.3s}.cv-layout-one-page{font-size:10px;line-height:1.4}.cv-layout-one-page h1{font-size:22px;margin-bottom:4px}.cv-layout-one-page h2{font-size:16px;margin-bottom:6px;margin-top:12px}.cv-layout-one-page h3{font-size:13px;margin-bottom:4px}.cv-layout-one-page p,.cv-layout-one-page li{font-size:10px;margin-bottom:3px}.cv-layout-one-page section{margin-bottom:12px}.cv-layout-one-page .section-title{font-size:14px;margin-bottom:8px}.cv-layout-one-page .job-entry,.cv-layout-one-page .education-entry,.cv-layout-one-page .project-entry{margin-bottom:10px}.cv-layout-one-page ul{margin:4px 0 4px 16px;padding:0}.cv-layout-one-page li{margin-bottom:2px}@media print{.cv-layout-one-page{max-height:297mm;overflow:hidden}}@media(max-width:768px){.cv-layout-one-page{font-size:12px}.cv-layout-one-page h1{font-size:24px}}.cv-layout-one-page .skills-list{display:flex;flex-wrap:wrap;gap:6px}.cv-layout-one-page .skill-item{font-size:9px;padding:2px 8px}@media(max-width:1024px){button,a,input,select,textarea{touch-action:manipulation}input,select,textarea{font-size:16px}}@media(max-width:768px){.btn{min-height:46px}}@media(hover:none){.btn:hover,.action-btn:hover,.zoom-btn:hover{transform:none}}@supports (padding: max(0px)){@media(max-width:768px){.header-container,.container{padding-left:max(var(--container-padding),env(safe-area-inset-left));padding-right:max(var(--container-padding),env(safe-area-inset-right))}}}#print-root{display:none}@media print{@page{size:A4;margin:0}html,body{background:#fff!important}body>*:not(#print-root){display:none!important}#print-root{display:block!important}#print-root,#print-root *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;color-adjust:exact!important}#print-root .cv-document{width:210mm;min-height:297mm;margin:0;box-shadow:none;border-radius:0}}.cookie-banner{position:fixed;right:0;bottom:0;left:0;z-index:var(--z-modal);padding:var(--space-4) 0 max(var(--space-4),env(safe-area-inset-bottom));background:var(--color-bg-secondary);border-top:1px solid var(--color-border-hover);box-shadow:0 -8px 28px #0003}.cookie-content{position:relative;display:flex;align-items:center;gap:var(--space-6)}.cookie-text{flex:1}.cookie-text h3{margin-bottom:var(--space-1);color:var(--color-text-primary);font-size:var(--text-base)}.cookie-text p{max-width:820px;color:var(--color-text-secondary);font-size:var(--text-sm);line-height:1.55}.cookie-link{color:var(--color-accent-secondary);text-decoration:underline;text-underline-offset:2px}.cookie-actions{display:flex;flex:0 0 auto;gap:var(--space-2)}.cookie-close{width:40px;height:40px;display:none;align-items:center;justify-content:center;color:var(--color-text-secondary)}@media(min-width:900px){.cookie-content{padding-right:48px}.cookie-close{position:absolute;top:50%;right:var(--container-padding);display:flex;transform:translateY(-50%)}}@media(max-width:768px){.cookie-banner{padding:10px 0 max(10px,env(safe-area-inset-bottom))}.cookie-content{align-items:stretch;flex-direction:column;gap:8px}.cookie-text h3{display:none}.cookie-text p{display:-webkit-box;overflow:hidden;font-size:12px;line-height:1.3;-webkit-box-orient:vertical;-webkit-line-clamp:1}.cookie-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.cookie-actions .btn{min-height:36px}}
