:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;font-size:18px;font-weight:400;color:var(--color-text);background-color:var(--color-background);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--content-width: 1200px;--content-padding: 2rem;--content-padding-half: 1rem;--content-padding-quarter: .5rem;--font-family: "Roboto", Inter, system-ui, Avenir, Helvetica, Arial, sans-serif;--header-font-family: "Roboto", Avenir, Montserrat, Corbel, "URW Gothic", source-sans-pro, sans-serif;--color-text: #161616;--color-text-muted: #161616;--color-background: #f8f8f8;--color-background-light: #f8f8f8;--color-background-dark: #f8f8f8;--color-primary: #224eab;--color-primary-dark: #224eab;--color-primary-light: #224eab;--color-primary-bright: #cdddff;--color-primary-rgb: 34, 78, 171;--color-primary-text: #fff;--color-secondary: #2d93fa;--color-secondary-dark: #2d93fa;--color-secondary-light: #2d93fa;--color-secondary-rgb: 45, 147, 250;--color-secondary-text: #242424;--color-correct: #3b7;--color-correct-dark: #1a4;--color-correct-light: #5fa;--color-correct-rgb: 59, 119, 123;--color-correct-text: #fff;--color-wrong: #b73;--color-wrong-dark: #a41;--color-wrong-light: #fa5;--color-wrong-rgb: 255, 107, 107;--color-wrong-text: #fff;--color-error: #e41;--color-error-dark: #d20;--color-error-light: #f41;--color-error-rgb: 255, 107, 107;--color-error-text: #fff}@font-face{font-family:Roboto;src:url(./Roboto-Regular-ia0dPpEo.ttf) format("truetype");font-weight:400;font-style:normal;font-display:fallback}@font-face{font-family:Roboto;src:url(./Roboto-Bold-CM98DFac.ttf) format("truetype");font-weight:700;font-style:normal;font-display:fallback}@font-face{font-family:Roboto;src:url(./Roboto-Light-BW8nAIZg.ttf) format("truetype");font-weight:300;font-style:normal;font-display:fallback}@font-face{font-family:Roboto;src:url(./Roboto-Italic-CPH5wpff.ttf) format("truetype");font-weight:400;font-style:italic;font-display:fallback}@font-face{font-family:Roboto;src:url(./Roboto-BoldItalic-Cj1Fcf4Z.ttf) format("truetype");font-weight:700;font-style:italic;font-display:fallback}footer,header{grid-area:header;position:relative;z-index:2;background:var(--color-background)}.logo img{display:block;width:auto;height:32px}.main-header{background-color:#fff;box-shadow:0 2px 5px #0000001a;padding:.5rem 0}.header-container{max-width:var(--content-width);margin:0 auto;padding:0 1rem;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem}.logo{text-decoration:none}.logo h3{font-size:2rem;color:#333;margin:0}.nav-links{display:flex;align-items:center;gap:2rem;margin-left:auto}@media (max-width: 480px){.logo img{width:120px}.header-container{padding:0 .5rem}.nav-menu{order:1;width:auto;max-width:none}.nav-links{display:flex;justify-content:center;margin:0;gap:1rem;width:100%;order:2;margin-top:.5rem}.nav-links a{font-size:.9rem;padding:.3rem .5rem}}.feedback-btn{margin:0;align-self:center}@media (max-width: 768px){header .nav-links{display:none}.header-container{padding:0 1rem}.logo img{width:120px}.main-header{position:relative;background:var(--color-background);z-index:91}}body.url2og header{display:none!important}body.url2og main{padding-top:0!important}footer{grid-area:footer;clear:both;width:100%;display:block;position:relative;z-index:2;margin-top:2rem}#footer{margin:0 auto;width:100%;max-width:var(--content-width);padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;font-size:.9rem}#footer p{margin:0;font-size:1rem}#footer nav{display:flex;gap:1.5rem;align-items:center;justify-content:center}@media only screen and (max-width: 600px){#footer{flex-direction:column;gap:1rem;text-align:center}#footer nav{justify-content:center}#footer nav a{font-size:.7rem}}h1{font-size:2.8rem;margin:0}h2{font-size:2.2rem;margin:0 0 1rem}h3{font-size:1.6rem;margin:0 0 1rem}h4{font-size:1.4rem;margin:0 0 .5rem}h5{font-size:1.2rem;margin:0 0 .5rem}h6{font-size:1rem;margin:0 0 .25rem}h1,h2,h3{font-family:var(--header-font-family);font-weight:300}body{font-family:var(--font-family)}p{font-size:1em;line-height:1.4em}a{text-decoration:none;color:var(--color-primary-dark);font-weight:700}.hl{color:var(--color-primary)}a:focus,a:hover{color:var(--color-primary)}@media (max-width: 768px){h1{font-size:2rem}h2{font-size:1.7rem}h3{font-size:1.4rem}}@media (max-width: 500px){h1{font-size:1.7rem}h2{font-size:1.5rem}h3,.btn-lg{font-size:1.3rem}}button,.btn{display:inline-block;padding:.25rem .5rem;font-size:1rem;font-weight:300;font-family:var(--font-family);line-height:1.5;text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;border:1px solid transparent;border-radius:.25rem;background-color:var(--color-primary);color:var(--color-primary-text, white);transition:background-color .15s ease-in-out}.btn-lg{font-size:1.4rem;padding:.5rem 1rem}button:hover,button:focus,button.active,.btn:hover,.btn:focus,.btn.active{background-color:var(--color-primary-dark);color:var(--color-primary-text, white)}button:focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(var(--color-primary-rgb),.25)}button:disabled,.btn:disabled,.btn.disabled{opacity:.65;cursor:not-allowed;pointer-events:none}.btn{color:var(--color-primary-text, white)!important}.btn:hover,.btn:focus,.btn.active{color:var(--color-primary-text, white)!important}.form-field{position:relative;margin-bottom:1.5rem}label{display:block;font-size:.875rem;color:var(--color-text);margin-bottom:.5rem;transition:all .2s ease-in-out}input[type=text],input[type=email],input[type=password],input[type=number],input[type=tel],textarea{width:100%;padding:.5rem 1rem;font-size:1rem;line-height:1.5;color:var(--color-text);background-color:transparent;border:1px solid var(--color-text);border-radius:.25rem;transition:all .2s ease-in-out}textarea{transition:none}input[type=text]:focus,input[type=email]:focus,input[type=password]:focus,input[type=number]:focus,input[type=tel]:focus,textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.form-field-float{position:relative}.form-field-float input{padding:1rem 1rem .25rem;height:3rem}.form-field-float label{position:absolute;top:.9rem;left:1rem;margin:0;padding:0;pointer-events:none;transform-origin:left top;transition:.2s cubic-bezier(0,0,.2,1) 0ms}.form-field-float input:focus~label,.form-field-float input:not(:placeholder-shown)~label{transform:translateY(-.5rem) scale(.75);color:var(--color-primary)}.form-field.error input{border-color:var(--color-error, #dc3545)}.form-field.error label{color:var(--color-error, #dc3545)}.error-message{color:var(--color-error, #dc3545);font-size:.875rem;margin-top:.25rem}input[readonly]{cursor:default;color:var(--color-text-muted, #6c757d);border-color:var(--color-text-muted)}input[readonly]:focus{border-color:var(--color-text);box-shadow:none}.btn-primary{background-color:var(--color-primary);border-color:var(--color-primary)}.btn svg{margin-right:.5rem;display:inline-block;width:1.5rem;height:1.5rem;vertical-align:middle}.btn-primary:hover,.btn-primary:focus,.btn-primary.active{background-color:var(--color-primary-dark);border-color:var(--color-primary-dark)}.btn-secondary{background-color:var(--color-secondary, #6c757d);border-color:var(--color-secondary, #6c757d)}.btn-secondary:hover,.btn-secondary:focus,.btn-secondary.active{background-color:var(--color-secondary-dark, #5a6268);border-color:var(--color-secondary-dark, #5a6268)}.btn-danger{background-color:var(--color-error, #dc3545);border-color:var(--color-error, #dc3545)}.btn-danger:hover,.btn-danger:focus,.btn-danger.active{background-color:var(--color-error-dark, #c82333);border-color:var(--color-error-dark, #c82333)}.btn-outline-primary{background-color:transparent;border-color:var(--color-primary);color:var(--color-primary)!important}.btn-outline-primary:hover,.btn-outline-primary:focus,.btn-outline-primary.active{background-color:var(--color-primary);color:var(--color-primary-text, white)!important}.btn-outline-secondary{background-color:transparent;border-color:var(--color-secondary, #6c757d);color:var(--color-secondary, #6c757d)!important}.btn-outline-secondary:hover,.btn-outline-secondary:focus,.btn-outline-secondary.active{background-color:var(--color-secondary, #6c757d);color:#fff!important}.btn-outline-error{background-color:transparent;border-color:var(--color-error, #dc3545);color:var(--color-error, #dc3545)!important}.btn-outline-error:hover,.btn-outline-error:focus,.btn-outline-error.active{background-color:var(--color-error, #dc3545);color:#fff!important}.btn-outline-danger{background-color:transparent;border-color:var(--color-error, #dc3545);color:var(--color-error, #dc3545)!important}.btn-outline-danger:hover,.btn-outline-danger:focus,.btn-outline-danger.active{background-color:var(--color-error, #dc3545);color:#fff!important}textarea{min-height:100px;resize:vertical;font-family:var(--font-family)}.form-field-float textarea{padding:1.5rem 1rem .25rem;min-height:120px}.form-field-float textarea~label{top:1.4rem}.form-field-float textarea:focus~label,.form-field-float textarea:not(:placeholder-shown)~label{transform:translateY(-1rem) scale(.75);color:var(--color-primary)}.alert{position:relative;padding:.5rem 1rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.btn-correct{background-color:var(--color-correct);border-color:var(--color-correct)}.btn-correct:hover,.btn-correct:focus,.btn-correct.active{background-color:var(--color-correct-dark);border-color:var(--color-correct-dark)}.btn-outline-correct{background-color:transparent;border-color:var(--color-correct);color:var(--color-correct)!important}.btn-outline-correct:hover,.btn-outline-correct:focus,.btn-outline-correct.active{background-color:var(--color-correct);color:var(--color-primary-text, white)!important}.btn-success{background-color:#28a745;border-color:#28a745;color:#fff}.btn-success:hover,.btn-success:focus,.btn-success.active{background-color:#218838;border-color:#1e7e34;color:#fff!important}.btn-outline-success{background-color:transparent;border-color:#28a745;color:#28a745!important}.btn-outline-success:hover,.btn-outline-success:focus,.btn-outline-success.active{background-color:#28a745;color:#fff!important}select,.form-select{display:block;width:100%;padding:.5rem 2.25rem .5rem 1rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--color-text);background-color:transparent;border:1px solid var(--color-primary);border-radius:.25rem;appearance:none;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;margin-bottom:1rem;cursor:pointer;background:linear-gradient(45deg,transparent 50%,var(--color-primary) 50%),linear-gradient(135deg,var(--color-primary) 50%,transparent 50%);background-position:calc(100% - 15px) calc(1em + 2px),calc(100% - 10px) calc(1em + 2px);background-size:5px 5px,5px 5px;background-repeat:no-repeat}select:focus,.form-select:focus{border-color:var(--color-primary);outline:0;box-shadow:0 0 0 .2rem rgba(var(--color-primary-rgb),.25);background:linear-gradient(45deg,transparent 50%,var(--color-primary) 50%),linear-gradient(135deg,var(--color-primary) 50%,transparent 50%);background-position:calc(100% - 15px) calc(1em + 2px),calc(100% - 10px) calc(1em + 2px);background-size:5px 5px,5px 5px;background-repeat:no-repeat}select:disabled,.form-select:disabled{background-color:var(--color-background-light);cursor:not-allowed}.login-actions{text-align:center;margin-top:1.5rem}.login-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:1.1rem}.dev-login-section{margin-top:1rem;padding:1rem;background-color:#0000000d;border-radius:.5rem;border:2px dashed rgba(0,0,0,.2)}.dev-login-section h3{margin:0 0 1rem;text-align:center;font-size:1.1rem;color:var(--color-text-muted)}.dev-login-buttons{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.dev-login-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.9rem;text-align:center;justify-content:center}@media (max-width: 480px){.dev-login-buttons{grid-template-columns:1fr}}.checkbox-group{display:grid;grid-template-columns:1fr;gap:.5rem;margin-top:.5rem}@media (min-width: 768px){.checkbox-group{grid-template-columns:repeat(2,1fr);gap:.75rem}}@media (min-width: 1024px){.checkbox-group{grid-template-columns:repeat(3,1fr);gap:1rem}}.checkbox-item{display:flex;align-items:center;gap:.5rem}.checkbox-item input[type=checkbox]{width:auto;margin:0}.checkbox-item label{margin-bottom:0;cursor:pointer;font-size:1rem}select{width:100%;padding:.5rem 1rem;font-size:1rem;line-height:1.5;color:var(--color-text);background-color:transparent;border:1px solid var(--color-text);border-radius:.25rem;transition:all .2s ease-in-out}select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 .2rem rgba(var(--color-primary-rgb),.25)}.help-text{font-size:.875rem;color:var(--color-text-light);margin-top:.5rem;margin-bottom:0;line-height:1.4}.feature-upgrade-note{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:1rem;margin-top:.5rem;border-left:4px solid #6c757d}.feature-upgrade-note p{margin:0 0 .5rem;color:var(--color-text);font-size:.9rem;line-height:1.4}.feature-upgrade-note p:last-child{margin-bottom:0}.feature-upgrade-note strong{color:var(--color-primary)}.digitize,.landing-page{position:relative;width:100%;max-width:900px;padding:1rem 2rem;overflow-x:hidden}.digitize .highlight{margin-top:1.5rem;font-size:.9rem;color:var(--color-primary)}.landing-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}@media only screen and (max-width: 600px){.landing-buttons{flex-direction:column;gap:.75rem}.landing-buttons .btn{width:100%}}.features{padding:3rem 0;background-color:transparent;box-shadow:none;overflow-x:hidden}.landing-page:first-of-type{margin-top:0}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;max-width:1200px;margin:0 auto;padding:0 2rem;width:100%}.feature-card{text-align:center;padding:1.5rem 1rem}.feature-icon{font-size:3rem;margin-bottom:1rem}.feature-card h2{margin-top:.75rem}.feature-card h3{color:var(--color-text);margin-bottom:1rem;font-size:1.5rem}.feature-card p{color:var(--color-text-muted)}.section-header{padding:0 1rem;margin-top:2rem;margin-bottom:-1rem}@media (max-width: 768px){.features-grid{grid-template-columns:1fr;gap:1rem;padding:0 2rem}.feature-card{padding:1.5rem 1rem}}.pricing-section{padding:2rem .5rem;background:transparent;box-shadow:none}.pricing-box{max-width:500px;margin:0 auto;padding:1.5rem 1rem;text-align:center}.price-tag{margin-bottom:1.5rem}.price-tag .amount{font-size:3.5rem;font-weight:700;color:var(--color-primary)}.price-tag .one-time{display:block;font-size:1.1rem;color:var(--color-text-muted);margin-top:-.5rem}.features-list{list-style:none;padding:0 1rem;margin:0 0 2rem;text-align:left;font-size:1.1rem}.features-list li{padding:.8rem 0;color:var(--color-text)}.features-list i{color:var(--color-primary)}@media (max-width: 480px){.landing-page{margin:2rem auto;padding:1rem 2rem}.features{padding:2rem 0}.pricing-section{padding:2rem .5rem}.pricing-box{margin:0 .5rem;padding:1.5rem 1rem}.pricing-section h2{font-size:2rem;margin-bottom:2rem}.pricing-section h2:after{width:80px}.pricing-box{padding:1.5rem}.price-tag .amount{font-size:3rem}.pricing-box h3{font-size:1.4rem}.features-list li{font-size:1rem}}.main-header{position:fixed;top:0;left:0;right:0;z-index:1000;background:#fffffff2;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 2px 8px #0000001a}.feature-card svg{width:3rem;height:3rem;color:var(--color-primary);display:block;margin:0 auto}.mockup-image{width:100%;max-width:800px;max-height:50vh;height:auto;object-fit:contain;margin:0 auto;display:block}.benefits .feature-card{position:relative;text-align:left;padding:1.5rem 1rem;min-height:200px}.benefits .feature-card svg{position:absolute;top:1.45rem;right:1.5rem;margin:0;width:2rem;height:2rem}.benefits .feature-card h3{padding-right:4rem;margin-top:0;font-size:1.3rem;line-height:1.4}.benefits .feature-card p{margin-top:1rem;line-height:1.5}@media (max-width: 768px){.benefits .feature-card{min-height:auto;padding:1.75rem 1rem 1.5rem}.benefits .feature-card svg{top:1.25rem;right:1.25rem;width:2.5rem;height:2.5rem}.benefits .feature-card h3{padding-right:3.5rem;font-size:1.2rem}}html .landing-page-small{text-align:center;padding:0;margin:0 auto 5rem}.landing-page-small h2{margin-bottom:1.5rem}.landing-page-small p{max-width:600px;margin:0 auto 2.5rem;line-height:1.6;color:var(--color-text-muted)}.landing-page-small .mockup-image{max-width:100vw;width:100%;padding:0;margin:0}@media (max-width: 768px){html .landing-page-small{padding:0}.landing-page-small h2{margin-bottom:1rem;font-size:1.5rem}.landing-page-small p{font-size:1rem;margin-bottom:2rem}}@media (max-width: 400px){.landing-page,.features-grid{padding:.5rem 1rem}}.landing-page.no-margin-bottom{margin-bottom:0}.landing-page.custom-margins{margin-top:1rem;margin-bottom:-2rem;padding-bottom:0}.landing-buttons.large-padding{padding-top:3rem}.landing-buttons.medium-padding{padding-top:1rem;padding-bottom:2rem}.landing-buttons.small-padding{padding-top:1rem;padding-bottom:1rem}.text-center.no-margin-bottom{margin-bottom:0}.hero-section{background:linear-gradient(135deg,rgba(var(--color-primary-rgb),.03),rgba(var(--color-primary-rgb),.08));min-height:80vh;display:flex;align-items:center;position:relative;overflow:hidden;width:100%;margin-left:calc(-50vw + 50%);max-width:none;padding:0}.hero-section:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at top right,rgba(var(--color-primary-rgb),.1) 0%,transparent 50%);pointer-events:none}.hero-container{display:grid;grid-template-columns:2fr 1fr;gap:2rem;align-items:center;max-width:var(--content-width);margin:0 auto;padding:4rem 2rem;position:relative;z-index:1}.hero-content{display:flex;flex-direction:column;gap:2rem}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:rgba(var(--color-primary-rgb),.1);color:var(--color-primary);border:1px solid rgba(var(--color-primary-rgb),.2);border-radius:2rem;font-size:.9rem;font-weight:500;width:fit-content;animation:fadeInUp .6s ease-out}.hero-badge svg{width:1.2rem;height:1.2rem}.hero-title{font-size:3.5rem;line-height:1.1;margin:0;animation:fadeInUp .8s ease-out .2s both}.hero-problem{display:block;color:var(--color-text-muted);font-size:.7em;margin-bottom:.5rem}.hero-solution{display:block;color:var(--color-text);background:linear-gradient(135deg,var(--color-primary) 0%,#667eea 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:1.3rem;line-height:1.5;color:var(--color-text-muted);margin:0;max-width:500px;animation:fadeInUp 1s ease-out .4s both}.hero-buttons{display:flex;gap:1rem;animation:fadeInUp 1.2s ease-out .6s both}.btn-hero{display:inline-flex;align-items:center;gap:.75rem;padding:1rem 2rem;font-size:1.1rem;font-weight:500;border-radius:.75rem;transition:all .3s ease;text-decoration:none;position:relative;overflow:hidden}.btn-hero svg{width:1.25rem;height:1.25rem;transition:transform .3s ease}.btn-hero:hover{transform:translateY(-2px);box-shadow:0 10px 25px #00000026}.btn-primary.btn-hero:hover svg{transform:translate(4px)}.btn-outline-primary.btn-hero:hover svg{transform:scale(1.1)}.hero-stats{display:flex;align-items:center;gap:2rem;padding:1.5rem 0;animation:fadeInUp 1.4s ease-out .8s both}.stat-item{text-align:center}.stat-number{font-size:2rem;font-weight:600;color:var(--color-primary);line-height:1}.stat-label{font-size:.9rem;color:var(--color-text-muted);margin-top:.25rem}.stat-divider{width:1px;height:2rem;background:rgba(var(--color-text-rgb),.2)}.hero-visual{display:flex;justify-content:end;align-items:center;position:relative;animation:fadeInRight 1s ease-out .4s both}.hero-phone-mockup{position:relative;z-index:2}.phone-frame{width:360px;height:650px;background:linear-gradient(145deg,#111,#222);border-radius:2.5rem;padding:1rem;box-shadow:4px 8px 16px #00000059;position:relative}.phone-frame:before{content:"";position:absolute;top:1rem;left:50%;transform:translate(-50%);width:4rem;height:.25rem;background:#333;border-radius:.125rem}.phone-screen{width:100%;height:100%;border-radius:1rem;overflow:hidden;position:relative}.demo-iframe{width:100%;height:100%;border:none;border-radius:1rem}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}@media (max-width: 1024px){.hero-container{grid-template-columns:1fr;gap:3rem;text-align:center}.hero-title{font-size:2.8rem}.hero-subtitle{max-width:600px;margin:0 auto}.phone-frame{width:340px;height:510px}}@media (max-width: 768px){.hero-section{min-height:70vh}.hero-container{padding:3rem 1rem;gap:2rem}.hero-title{font-size:2.2rem}.hero-subtitle{font-size:1.1rem}.hero-buttons{flex-direction:column;align-items:center}.btn-hero{width:100%;max-width:300px;justify-content:center}.hero-stats{gap:1.5rem;justify-content:center}.hero-visual{display:none}}@media (max-width: 480px){.hero-title{font-size:1.8rem}.hero-subtitle{font-size:1rem}.stat-number{font-size:1.5rem}.stat-label{font-size:.8rem}}.social-proof{background:rgba(var(--color-primary-rgb),.02);padding:4rem 1rem}.social-proof-container{max-width:800px;margin:0 auto;text-align:center}.social-proof-title{font-size:2.2rem;color:var(--color-text);margin-bottom:3rem;text-align:center}.social-proof-card{background:#fffc;border-radius:1.5rem;padding:3rem 2rem;box-shadow:0 10px 30px #00000014;border:1px solid rgba(var(--color-primary-rgb),.1);position:relative;overflow:hidden}.social-proof-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-primary) 0%,#667eea 100%)}.testimonial-content{display:flex;flex-direction:column;gap:2rem}.testimonial-quote{font-size:1.3rem;line-height:1.6;color:var(--color-text);font-style:italic;margin:0;position:relative}.testimonial-quote:before{content:'"';font-size:4rem;color:var(--color-primary);opacity:.3;position:absolute;top:-1rem;left:-.5rem;font-family:Georgia,serif}.testimonial-author{display:flex;align-items:center;justify-content:center;gap:1rem}.author-avatar{width:60px;height:60px;border-radius:50%;background:rgba(var(--color-primary-rgb),.1);border:2px solid rgba(var(--color-primary-rgb),.2);display:flex;align-items:center;justify-content:center;color:var(--color-primary);flex-shrink:0}.author-avatar svg{width:28px;height:28px}.author-info h4{font-size:1.1rem;color:var(--color-text);margin:0;font-weight:600}.author-info p{font-size:.95rem;color:var(--color-text-muted);margin:.25rem 0 0}@media (max-width: 768px){.social-proof{padding:3rem 1rem;margin:1rem 0}.social-proof-title{font-size:1.8rem;margin-bottom:2rem}.social-proof-card{padding:2rem 1.5rem}.testimonial-quote{font-size:1.1rem}.testimonial-quote:before{font-size:3rem;top:-.5rem;left:-.25rem}.author-avatar{width:50px;height:50px}.author-avatar svg{width:24px;height:24px}}@media (max-width: 480px){.social-proof{padding:2rem .5rem}.social-proof-card{padding:1.5rem 1rem}.testimonial-quote{font-size:1rem}}.founder-story{max-width:none;padding:3rem 1rem}.founder-story-container{max-width:1200px;margin:0 auto}.founder-story-title{text-align:center;margin-bottom:3rem;font-size:2.5rem;color:var(--color-text)}.founder-story-content{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem;padding:0 2rem;margin-bottom:3rem}.story-step{display:flex;flex-direction:column;align-items:center;text-align:center;border-radius:1rem;box-shadow:0 10px 30px #00000026}.story-image{width:100%;border-radius:1rem 1rem 0 0;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.story-image img{display:block;width:100%;height:auto}.story-caption{font-size:1.1rem;color:var(--color-text-muted);line-height:1.4}.story-thought{font-style:italic;position:relative;padding:1rem 1.5rem;background:#f0f0f0;margin-top:-1rem;border-radius:1rem;display:inline-block}.story-step-before .story-thought{color:#666}.story-step-after .story-thought{color:var(--color-primary)}.story-arrow{display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;color:var(--color-primary);background:rgba(var(--color-primary-rgb),.1);border-radius:50%;margin:0 auto}.story-arrow svg{width:1.5rem;height:1.5rem}.founder-story-text{text-align:center;max-width:700px;margin:0 auto;padding:2rem;background:#fff9;border-radius:1.5rem;box-shadow:0 8px 25px #00000014}.founder-story-text p{font-size:1.2rem;line-height:1.6;color:var(--color-text);margin:0}@media (max-width: 768px){.founder-story{padding:2rem 1rem}.founder-story-title{font-size:2rem;margin-bottom:2rem}.founder-story-content{grid-template-columns:1fr;gap:2rem;text-align:center}.story-step{max-width:400px;margin:0 auto}.story-arrow{transform:rotate(90deg);margin:1rem auto}.story-thought{font-size:1rem;padding:.8rem 1.2rem}.founder-story-text{padding:1.5rem;margin-top:1rem}.founder-story-text p{font-size:1.1rem}}@media (max-width: 480px){.founder-story{padding:1.5rem .5rem}.story-image{max-width:250px}.story-thought{font-size:.9rem;padding:.6rem 1rem}.founder-story-text{padding:1rem}.founder-story-text p{font-size:1rem}}.impressum-container{max-width:var(--content-width);margin:0 auto;padding:2rem;margin-bottom:3rem}.impressum-container h2{margin-top:2.5rem;padding-bottom:.5rem;border-bottom:2px solid var(--color-primary)}.impressum-container h3{margin-top:1.5rem;color:var(--color-primary-dark)}.impressum-container p{margin:1rem 0;line-height:1.6}.impressum-container ul{margin:1rem 0;padding-left:1.5rem}.impressum-container li{margin:.5rem 0;line-height:1.6}@media only screen and (max-width: 600px){.impressum-container{padding:1rem}.impressum-container h2{margin-top:2rem}.impressum-container h3{margin-top:1.25rem}}.shop-container{max-width:1200px;margin:0 auto 3rem;padding:2rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;align-items:start}.product-card{margin:0;padding:2rem;text-align:center;border-radius:1rem;height:fit-content}.product-header{margin-bottom:2rem}.product-header h2{margin:0}.price{font-size:4rem;font-weight:300;color:var(--color-text-muted);margin:1rem 0}.price sub{font-size:2rem;color:var(--color-text-muted)}.product-features{margin:2rem 0;text-align:left}.product-features ul{list-style:none;padding:0 1rem;margin:0}.product-features li{margin:1rem 0}.product-action{margin-top:2rem}@media (max-width: 768px){.shop-container{grid-template-columns:1fr;gap:1.5rem;padding:1rem}}@media (max-width: 480px){.shop-container{padding:1rem;gap:1rem}.product-card{padding:1.5rem}.price{font-size:2.5rem}.product-features li{font-size:1rem}}.btn.disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.btn.disabled:hover{opacity:.6}.checkout-container{max-width:800px;margin:0 auto 3rem;padding:2rem}.order-summary{margin:2rem auto;padding:2rem;max-width:600px;border-radius:1rem}.product-summary{display:flex;justify-content:space-between;align-items:flex-start;padding:1.5rem 0;border-bottom:1px solid var(--color-background-dark)}.product-info h3{margin:0 0 1rem;color:var(--color-primary)}.product-info ul{list-style:none;padding:0;margin:0}.product-info li{margin:.5rem 0;font-size:1rem}.product-price{font-size:1.5rem;font-weight:700;color:var(--color-wrong-dark);min-width:100px;text-align:right}.price-details{margin-top:2rem;padding:1.5rem;background:var(--color-background-light);border-radius:.5rem}.price-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;font-size:1rem}.price-row .price{min-width:100px;text-align:right;font-family:monospace;font-size:1.1rem}.price-row.total{margin-top:1rem;padding-top:1rem;border-top:2px solid var(--color-background-dark);font-weight:700;font-size:1.2rem}.price-row.total .price{font-size:1.3rem;color:var(--color-wrong-dark)}.checkout-actions{margin-top:2rem;display:flex;flex-direction:column;gap:1rem;align-items:center}@media (max-width: 480px){.checkout-container,.order-summary{padding:1rem}.product-price{font-size:1.2rem}.price-row .price{font-size:1rem}.price-row.total .price{font-size:1.2rem}}.cart-items{margin:2rem 0}.cart-item{display:flex;justify-content:space-between;align-items:flex-start;padding:1rem;margin-bottom:1rem;background:var(--color-background-light);border-radius:.5rem}.item-info{flex:1}.item-info h3{margin:0 0 .5rem;color:var(--color-primary)}.item-info p{margin:0;color:var(--color-text-muted);font-size:.9rem}.item-price{text-align:right;min-width:120px}.item-price .quantity{display:block;color:var(--color-text-muted);font-size:.9rem}.item-price .price{font-weight:300}.terms-section{margin:2rem 0;padding:1rem;background:var(--color-background-light);border-radius:.5rem}.digital-delivery-notice{margin:1rem 0;font-size:.9rem;color:var(--color-text-muted)}.form-check{margin-bottom:1rem;display:flex;align-items:flex-start;gap:.5rem}.form-check-input{margin-top:.25rem}.form-check-label{flex:1}.form-check-label a{text-decoration:underline}.error-message{color:var(--color-error);font-size:.9rem;margin-top:.5rem}.form-check{margin-bottom:.75rem}.terms-section{margin-bottom:1.5rem}.checkout-success-container{max-width:800px;margin:0 auto 3rem;padding:2rem}.success-message{margin:2rem auto;padding:2rem;max-width:600px;text-align:center;border-radius:1rem}.success-icon{font-size:4rem;margin-bottom:1rem}.next-steps{margin:2rem 0;text-align:left}.next-steps ol{margin:1rem 0;padding-left:1.5rem}.next-steps li{margin:.5rem 0;line-height:1.5}.action-buttons{margin-top:2rem;display:flex;flex-direction:column;gap:1rem;align-items:center}@media (max-width: 480px){.checkout-success-container,.success-message{padding:1rem}.success-icon{font-size:3rem}}.users-table-container{padding:1rem;overflow-x:auto;-webkit-overflow-scrolling:touch}.users-table{width:100%;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;border-collapse:collapse;overflow:hidden}.users-table th{background:var(--color-background-dark, #f8f9fa);padding:.75rem;text-align:left;font-weight:600;color:var(--color-text);border-bottom:1px solid rgba(0,0,0,.1)}.users-table td{padding:.75rem;border-bottom:1px solid rgba(0,0,0,.05);color:var(--color-text)}.user-row:hover{background:#00000005}.user-email-link{color:var(--color-primary, #224eab);text-decoration:none;font-weight:500;transition:color .2s ease}.user-email-link:hover{color:var(--color-primary-dark, #1a3a8a);text-decoration:underline}.restaurant-col{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.date-col{font-size:.9rem;color:var(--color-text-muted, #666)}.restaurants-col{text-align:center;font-weight:500}.newsletter-col{text-align:center}.feedback-section{margin-top:2rem}.feedback-section h2{margin-bottom:1rem;padding-left:1rem}.feedback-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;padding:1rem}.feedback-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;transition:transform .2s ease,box-shadow .2s ease}.feedback-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.feedback-card-header{padding:1rem;border-bottom:1px solid rgba(0,0,0,.1);border-radius:12px 12px 0 0}.feedback-id{font-size:.9rem;color:#666;margin-bottom:.5rem}.feedback-email{font-weight:600;color:var(--color-text);word-break:break-all}.feedback-card-body{padding:1rem}.feedback-message{margin-bottom:1.5rem}.message-content{margin-top:.5rem;padding:.75rem;background-color:var(--color-background-dark);border-radius:6px;white-space:pre-wrap;word-break:break-word}.feedback-info-group{margin-bottom:.75rem}.url-value,.agent-value{font-size:.9rem;word-break:break-all}@media (max-width: 640px){.feedback-grid{grid-template-columns:1fr;padding:.5rem}.feedback-card{margin-bottom:1rem}.feedback-section h2{padding-left:.5rem}}.admin-user-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.user-details{padding:1rem}.user-info-card{max-width:800px;margin:0 auto;background:var(--color-background-light);border-radius:12px;box-shadow:0 2px 8px #0000001a}.user-info-header{padding:1.5rem;border-bottom:1px solid rgba(0,0,0,.1)}.user-info-header h2{margin:0;color:var(--color-text)}.user-info-body{padding:1.5rem}.info-group{margin-bottom:1.25rem}.info-group:last-child{margin-bottom:0}.user-info-footer{padding:1.5rem;border-top:1px solid rgba(0,0,0,.1);display:flex;justify-content:space-between;align-items:center}.feature-list{margin-top:.5rem}.feature-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem;margin-bottom:.5rem;background:var(--color-background-dark);border-radius:4px}.feature-info{display:flex;flex-direction:column;flex:1}.feature-name{font-weight:500;color:var(--color-text);margin-bottom:.25rem}.feature-status{font-size:.9em;color:var(--color-correct)}.feature-status.pending{color:var(--color-error)}.remove-feature-form{margin-left:1rem}.remove-feature-form .btn-sm{padding:.25rem .5rem;font-size:.75rem;line-height:1.2}.feature-management{flex:1;margin-right:1rem}.add-feature-form{display:flex;gap:.75rem;align-items:center;height:38px}.add-feature-form .form-select{flex:1;height:100%;margin:0;padding:0 2.25rem 0 1rem;line-height:38px;background-position:calc(100% - 15px) 50%,calc(100% - 10px) 50%}.add-feature-form .btn{height:100%;white-space:nowrap;padding:0 1rem;line-height:36px}@media (max-width: 768px){.users-table-container{padding:.5rem}.users-table{font-size:.9rem;min-width:600px}.users-table th,.users-table td{padding:.5rem;white-space:nowrap}.restaurant-col{max-width:120px}}@media (max-width: 480px){.users-table{min-width:auto}.users-table th:not(:first-child),.users-table td:not(:first-child){display:none}.users-table th:first-child,.users-table td:first-child{width:100%}}@media (max-width: 640px){.user-details{padding:.5rem}.user-info-card{margin:0;border-radius:8px}.user-info-header{padding:1rem}.user-info-header h2{font-size:1.2rem;word-break:break-all}.user-info-body{padding:1rem}.user-info-footer{padding:1rem;flex-direction:column;gap:1rem}.feature-management{margin-right:0;width:100%}.add-feature-form{flex-direction:column;height:auto;gap:.5rem}.add-feature-form .form-select,.add-feature-form .btn,.menu-button{width:100%;height:48px;font-size:1rem}.admin-user-header{flex-direction:column;gap:1rem;align-items:stretch;margin-bottom:1rem}.admin-user-header h1{font-size:1.5rem;text-align:center}.admin-user-header .btn{width:100%;text-align:center;height:48px;font-size:1rem}.feature-item{flex-direction:column;align-items:stretch;gap:.75rem;padding:1rem}.feature-info{text-align:center}.feature-name{font-size:1.1rem}.feature-status{font-size:1rem}.remove-feature-form{margin-left:0;width:100%}.remove-feature-form .btn-sm{width:100%;padding:.75rem 1rem;font-size:1rem;height:48px}.info-group{margin-bottom:1.5rem;padding:.75rem;background:#00000005;border-radius:8px}.info-label{display:block;font-weight:600;margin-bottom:.5rem;font-size:1rem}.info-value{font-size:1rem;line-height:1.4}.menu-button{margin-top:.5rem;text-align:center;height:48px;font-size:1rem;display:flex;align-items:center;justify-content:center}.menu-button.disabled{background:#f5f5f5;color:#999;cursor:not-allowed}}.badges-container{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.plan-badge{display:inline-block;padding:.25rem .5rem;border-radius:12px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.admin-badge{display:inline-block;padding:.25rem .5rem;border-radius:12px;font-size:.8rem;font-weight:600;background-color:#fbbf24;color:#92400e;border:1px solid #fcd34d}.plan-badge.plan-free{background-color:#e5e7eb;color:#374151}.plan-badge.plan-standard{background-color:#fef3c7;color:#d97706}.plan-badge.plan-premium{background-color:#ddd6fe;color:#7c3aed}.plan-management{flex:1;margin-right:1rem}.change-plan-form{display:flex;gap:.75rem;align-items:center;height:38px}.change-plan-form .form-select{flex:1;height:100%;margin:0}.change-plan-form .btn{height:100%;white-space:nowrap}.info-label{color:var(--color-text-muted)}.price-row.discount{color:var(--color-correct)}.staff-form{margin-bottom:2rem}.form-row{display:grid;grid-template-columns:1fr 1fr auto;gap:1rem;align-items:end}.form-row .form-field{display:flex;flex-direction:column}.form-row-simple{display:flex;gap:1rem;align-items:end;flex-wrap:wrap}.form-row-simple .form-field{flex:1;min-width:200px;display:flex;flex-direction:column}.form-buttons{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.form-buttons .btn{padding:.5rem 1rem;font-size:1rem;line-height:1.5}.form-label{font-size:.9rem;font-weight:500;margin-bottom:.25rem;color:var(--color-text, #161616)}.form-input,.form-select{padding:.5rem 1rem;border:1px solid #e1e5e9;border-radius:4px;background:var(--color-background, #ffffff);color:var(--color-text, #161616);font-size:1rem;line-height:1.5;transition:border-color .2s ease;margin-bottom:0}.form-input:focus,.form-select:focus{outline:none;border-color:var(--color-primary, #224eab)}.form-row .form-field:last-child{justify-content:end}.staff-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.staff-card{border:1px solid #e1e5e9;border-radius:8px;padding:1rem;background:var(--color-background, #ffffff);position:relative}.staff-card-delete{position:absolute;top:.5rem;right:.5rem;width:24px;height:24px;border:none;background:#ef44441a;color:#ef4444;border-radius:50%;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;opacity:.7}.staff-card-delete:hover{background:#ef4444;color:#fff;opacity:1;transform:scale(1.1)}.staff-info h4{margin:0 0 .5rem;font-size:1.1rem;display:flex;align-items:center;flex-wrap:wrap}.staff-role{display:inline-block;padding:.375rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-left:.5rem}.staff-role-manager{background-color:#3b82f6;color:#fff;box-shadow:0 1px 3px #3b82f64d}.staff-role-waiter{background-color:#10b981;color:#fff;box-shadow:0 1px 3px #10b9814d}.staff-details{margin:.5rem 0}.staff-details p{margin:.25rem 0}.staff-actions{display:flex;gap:.5rem;margin-top:1rem;justify-content:flex-start;align-items:center}.btn-sm{padding:.25rem .5rem;font-size:.8rem}.no-staff{color:var(--color-text-muted, #666666);font-style:italic;text-align:center;padding:2rem}.notification-toast{position:fixed;top:20px;right:20px;z-index:1100;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;max-width:400px;padding:16px;animation:slideInNotification .3s ease;border:1px solid #e1e5e9;opacity:1}.notification-toast.success{border-left:4px solid #10b981}.notification-toast.error{border-left:4px solid #ef4444}.notification-toast.warning{border-left:4px solid #f59e0b}.notification-toast.info{border-left:4px solid #3b82f6}.notification-content{display:flex;align-items:flex-start;gap:12px}.notification-icon{width:24px;height:24px;flex-shrink:0}.notification-icon.success{color:#10b981}.notification-icon.error{color:#ef4444}.notification-icon.warning{color:#f59e0b}.notification-icon.info{color:#3b82f6}.notification-text h4{margin:0 0 4px;font-size:16px;font-weight:600;color:#1a1a1a}.notification-text p{margin:0;font-size:14px;color:#666;line-height:1.4}@keyframes slideInNotification{0%{transform:translate(100%) scale(.8);opacity:0}to{transform:translate(0) scale(1);opacity:1}}@keyframes slideOutNotification{0%{transform:translate(0) scale(1);opacity:1}to{transform:translate(100%) scale(.9);opacity:0}}.notification-toast.fadeout{animation:slideOutNotification .3s ease forwards}@media (max-width: 768px){.form-row{grid-template-columns:1fr;gap:1rem}.form-row .form-field{width:100%}.form-row-simple{flex-direction:column;align-items:stretch}.form-row-simple .form-field{min-width:100%}.form-buttons{justify-content:stretch}.form-buttons .btn{flex:1}.staff-actions{flex-wrap:wrap}.notification-toast{top:10px;right:10px;left:10px;max-width:none}}.tab-navigation{display:flex;justify-content:center;background:var(--color-primary-bright);padding:0 2rem 1rem;gap:.5rem}html .tab-section{border-radius:0;max-width:none;padding:0}.tab-btn{background:none;border:none;border-radius:1rem;padding:.5rem 1rem;font-size:1rem;font-weight:500;color:var(--color-text)!important;cursor:pointer;border:solid .5rem var(--color-primary-bright);transition:all .2s ease-in-out;position:relative;white-space:nowrap;outline:none;box-shadow:none!important;font-family:var(--font-family)}.tab-btn:before,.tab-btn:after{content:"";display:block;position:absolute;left:-.5rem;top:.5rem;height:100%;width:.5rem;background:var(--color-primary-bright);border-radius:0 0 .5rem}.tab-btn:after{left:auto;right:-.5rem;border-radius:0 0 0 .5rem}.tab-content{margin-top:-1rem;border-radius:1rem;width:100%;background:var(--color-background-light)}#addStaffForm .form-field{margin-bottom:0}.tab-btn:hover{background:rgba(var(--color-primary-rgb),.1)}.tab-btn.active{border-bottom-color:var(--color-background-light);background:var(--color-background-light);border-radius:1rem 1rem 0 0}.tab-panel{display:none}.tab-panel.active{display:block}.tab-select{display:none;width:calc(100% - 2rem);padding:1rem;font-size:1rem;font-weight:400;border:2px solid var(--color-primary);border-radius:.5rem;background:var(--color-background-light);color:var(--color-text);margin:1rem 1rem 0;cursor:pointer;box-sizing:border-box}.tab-select:focus{outline:none;box-shadow:0 0 0 2px rgba(var(--color-primary-rgb),.3)}@media (max-width: 800px) and (min-width: 641px){.tab-navigation{flex-wrap:wrap;gap:.25rem;padding:0 1rem;justify-content:center}.tab-btn{padding:.5rem .75rem;font-size:.85rem;flex:none;min-width:80px;max-width:140px}}@media (max-width: 640px){.tab-navigation{display:none}.tab-select{display:block}.tab-content{margin-top:0}}.restaurants-section{margin-top:2rem}.restaurants-section h3{margin-bottom:1rem;color:var(--color-text);font-size:1.3rem;text-align:center}.restaurants-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(500px,1fr));gap:1.5rem}.restaurant-card{background:var(--color-background-light);border-radius:12px;box-shadow:0 2px 8px #0000001a;transition:transform .2s ease,box-shadow .2s ease}.restaurant-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.restaurant-header{padding:1.5rem 1.5rem 1rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(0,0,0,.1)}.restaurant-header h4{margin:0;color:var(--color-text);font-size:1.1rem;flex:1;margin-right:1rem}.restaurant-actions{display:flex;gap:.5rem;flex-shrink:0}.restaurant-stats{padding:1rem 1.5rem 1.5rem;display:flex;gap:2rem;justify-content:center}.stat{text-align:center}.stat-label{display:block;font-size:.85rem;color:var(--color-text-muted, #666);margin-bottom:.25rem}.stat-value{display:block;font-size:1.5rem;font-weight:600;color:var(--color-primary, #224eab)}.no-restaurants{text-align:center;color:var(--color-text-muted, #666);font-style:italic;padding:2rem;background:var(--color-background-light);border-radius:12px;margin-top:1rem}@media (max-width: 768px){.restaurants-list{grid-template-columns:1fr;gap:1rem}.restaurant-header{flex-direction:column;gap:1rem;align-items:stretch;text-align:center}.restaurant-header h4{font-size:1.2rem;margin-bottom:.5rem}.restaurant-stats{flex-direction:column;gap:1rem}.stat{padding:.75rem;background:#00000005;border-radius:8px;display:flex;justify-content:space-between;align-items:center;text-align:left}.stat-label{margin-bottom:0;font-size:1rem}.stat-value{font-size:1.3rem}}.feature-locked{text-align:center;padding:3rem;background:#ffffff1a;border-radius:8px;margin:2rem 0;border-left:4px solid #ffc107}.feature-locked h2{margin-bottom:1rem;color:#333}.feature-locked p{color:#666;margin:0 0 1rem;line-height:1.6}.feature-locked .btn{margin-top:.5rem}.orders-controls{margin-bottom:1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.orders-controls__left,.orders-controls__right{display:flex;align-items:center;gap:1rem}.order-card--hidden{display:none}.orders-loading{text-align:center;padding:3rem;background:#ffffff1a;border-radius:8px;margin:2rem 0}.loading-spinner{width:40px;height:40px;border:4px solid rgba(0,0,0,.1);border-left:4px solid #007bff;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.orders-error{text-align:center;padding:3rem;background:#ffffff1a;border-radius:8px;margin:2rem 0;border-left:4px solid #dc3545}.orders-error__title{margin-bottom:1rem;color:#dc3545}.orders-error__text{color:#666;margin:0 0 1.5rem}.order-stats{margin-bottom:2rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{padding:1rem;background:#ffffff1a;border-radius:8px;text-align:center;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.stat-card__value{font-size:2rem;font-weight:700;color:#333;line-height:1;margin-bottom:.25rem}.stat-card__label{color:#666;font-size:.9rem}.stat-card--total{background:#fff}.stat-card--new{background:#ffc10733}.stat-card--new .stat-card__value{color:#d39e00}.stat-card--confirmed{background:#007bff33}.stat-card--confirmed .stat-card__value{color:#0056b3}.stat-card--done{background:#28a74533}.stat-card--done .stat-card__value{color:#155724}.orders-empty{text-align:center;padding:3rem;background:#ffffff1a;border-radius:8px;margin:2rem 0}.orders-empty__title{margin-bottom:1rem;color:#333}.orders-empty__text{color:#666;margin:0}.orders-list{display:flex;flex-direction:column;gap:1.5rem}.order-card{background:#fff;border-radius:8px;padding:1rem 2rem;margin-bottom:1rem;transition:transform .2s ease,box-shadow .2s ease,opacity .3s ease;border-left:4px solid var(--order-status-color, #007bff)}.order-card:hover{transform:translateY(-1px);box-shadow:0 4px 16px #0000001a}.order-card--entering{animation:slideInBounce .8s cubic-bezier(.68,-.55,.265,1.55) forwards;transform:translate(120%) scale(.9);opacity:0;box-shadow:0 8px 32px #ffc10766}@keyframes slideInBounce{0%{transform:translate(120%) scale(.9);opacity:0;box-shadow:0 8px 32px #ffc10766}70%{transform:translate(-3%) scale(1.02);opacity:1;box-shadow:0 12px 40px #ffc10799}to{transform:translate(0) scale(1);opacity:1;box-shadow:0 4px 16px #0000001a}}.order-card--new{--order-status-color: #ffc107;position:relative;overflow:hidden;animation:newOrderPulse 2s ease-in-out infinite;border:2px solid #ffc107;box-shadow:0 0 20px #ffc1074d}.order-card--new:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,193,7,.5),transparent);animation:shimmerGlow 2.5s ease-in-out infinite;pointer-events:none;z-index:1}@keyframes newOrderPulse{0%,to{transform:scale(1);box-shadow:0 0 20px #ffc1074d}50%{transform:scale(1.01);box-shadow:0 0 30px #ffc10780}}@keyframes shimmerGlow{0%,to{transform:translate(-100%);opacity:.3}50%{transform:translate(100%);opacity:.8}}@keyframes newBadgePulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.order-card--updating{transform:scale(1.02);box-shadow:0 6px 20px #00000026;transition:all .3s ease}.order-card__layout{display:flex;justify-content:space-between;align-items:start;flex-wrap:wrap;gap:1rem}.order-card__content{flex:1;min-width:200px}.order-card__actions{min-width:150px}.order-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;flex-wrap:wrap;gap:.5rem}.order-header__title{margin:0;color:#333;font-size:1.1rem}.status-badge{padding:.25rem .75rem;border-radius:15px;font-size:.8rem;font-weight:700;color:#fff;white-space:nowrap}.status-badge--new{background:#ffc107}.status-badge--confirmed{background:#007bff}.status-badge--done{background:#28a745}.status-badge--cancelled{background:#dc3545}.order-details{margin-bottom:1rem;color:#666;font-size:.9rem}.order-details__item{margin-bottom:.25rem}.order-details__label{font-weight:600;color:#333}.order-items__title{margin-bottom:.5rem;color:#333;font-size:1rem}.order-item{display:flex;justify-content:space-between;padding:.25rem 0}.order-item__details{flex:1}.order-item__price{font-weight:500}.order-item__notes{font-size:.8rem;color:#666;font-style:italic;margin-left:1rem;margin-bottom:.5rem}.order-item__total{border-top:solid 1px #666;margin-top:.25rem;padding-top:.25rem;text-align:right;font-weight:700}.order-actions__title{margin-bottom:.5rem;color:#333;font-size:1rem}.order-actions__buttons{display:flex;flex-direction:column;gap:.5rem}.order-action-btn{padding:.5rem 1rem;font-size:.85rem;border-radius:6px;border:1px solid;background:transparent;transition:all .2s ease;cursor:pointer;text-align:center;font-weight:500}.order-action-btn:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.order-action-btn:active{transform:translateY(0)}.order-action-btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.order-action-btn--confirmed{color:#007bff;border-color:#007bff}.order-action-btn--confirmed:hover,.order-action-btn--confirmed.active{background:#007bff;color:#fff}.order-action-btn--done{color:#28a745;border-color:#28a745}.order-action-btn--done:hover,.order-action-btn--done.active{background:#28a745;color:#fff}.order-action-btn--cancelled{color:#dc3545;border-color:#dc3545}.order-action-btn--cancelled:hover,.order-action-btn--cancelled.active{background:#dc3545;color:#fff}.order-card--confirmed{--order-status-color: #007bff}.order-card--done{--order-status-color: #28a745}.order-card--cancelled{--order-status-color: #dc3545}@media (max-width: 768px){.orders-list{gap:2rem}.order-card{padding:1.25rem;margin-bottom:.75rem;border-radius:12px}.order-card__layout{flex-direction:column}.order-card__actions{min-width:auto;width:100%}.order-header{flex-direction:column;align-items:flex-start;gap:.5rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.stat-card{padding:.75rem}.stat-card__value{font-size:1.5rem}.orders-controls{flex-direction:column;align-items:stretch;gap:.75rem}.orders-controls__left,.orders-controls__right{width:100%;justify-content:center}.btn{text-align:center;width:100%}.order-actions__buttons{flex-direction:column;gap:.75rem}.order-action-btn{width:100%;justify-content:center;padding:.75rem}.order-card--new:before{animation-duration:2.5s}.order-card--updating{transform:scale(1.01);box-shadow:0 4px 12px #0000001f}}@media (max-width: 480px){.orders-list{gap:1.75rem}.order-card{padding:1rem;border-radius:10px;margin-bottom:.5rem}.stats-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.order-details,.order-item{font-size:.85rem}.order-actions__title{font-size:.9rem;margin-bottom:.75rem}.order-action-btn{font-size:.8rem;padding:.4rem .8rem}.status-badge{font-size:.75rem;padding:.2rem .5rem}.connection-status{font-size:11px;padding:4px 6px;gap:4px;order:2}.connection-status__text{max-width:60px;overflow:hidden;text-overflow:ellipsis}.connection-status__dot{width:6px;height:6px;flex-shrink:0}.orders-controls__right{order:1;justify-content:flex-end;margin-bottom:.5rem}.orders-controls__left{order:2;justify-content:center}.order-card--new:before{animation-duration:3s;opacity:.6}.order-card--updating{transform:scale(1.005);box-shadow:0 2px 8px #0000001a}}.connection-status{background:#ffffffe6;border-radius:6px;padding:6px 10px;box-shadow:0 2px 4px #0000001a;border:1px solid #e0e0e0;font-size:13px;display:flex;align-items:center;gap:6px;white-space:nowrap}.connection-status__indicator{display:flex;align-items:center;gap:6px}.connection-status__dot{width:8px;height:8px;border-radius:50%;background:#ccc;transition:background-color .3s ease}.connection-status__text{font-weight:500}.connection-status--connected .connection-status__dot{background:#28a745}.connection-status--connecting .connection-status__dot{background:#ffc107;animation:pulse 1s infinite}.connection-status--reconnecting .connection-status__dot{background:#fd7e14;animation:pulse 1s infinite}.connection-status--failed .connection-status__dot{background:#dc3545}.connection-status--disconnected .connection-status__dot{background:#6c757d}.connection-status__retry-btn{background:#007bff;color:#fff;border:none;border-radius:4px;padding:4px 8px;font-size:12px;cursor:pointer;transition:background-color .2s ease}.connection-status__retry-btn:hover{background:#0056b3}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}#overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:500;opacity:0;pointer-events:none;transition:opacity .3s ease-in-out}#overlay.active{opacity:1;pointer-events:auto}.sidebar{position:fixed;top:0;right:-100%;padding-top:80px;width:320px;height:100%;background:#fff;z-index:900;transition:right .3s ease-in-out;display:none;overflow-y:auto}.sidebar.active{right:0}.sidebar .nav-links{display:flex;flex-direction:column;gap:1.25rem;padding:0 2rem}@media (max-width: 768px){.sidebar{display:block}}@media (max-width: 320px){.sidebar{padding-top:var(--header-height, 60px);width:100%}}.hamburger{display:none;background:none;border:none;padding:.5rem;cursor:pointer;margin-left:auto;background:transparent!important;box-shadow:none!important}.hamburger span{display:block;width:25px;height:3px;margin:5px 0;background:var(--color-text);transition:all .3s ease}.hamburger:focus span,.hamburger:hover span{background:var(--color-primary)}.hamburger span:nth-child(2){width:18px;margin-left:7px}@media (max-width: 768px){.hamburger{display:block;z-index:100}.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}}.sidebar .nav-links{align-items:flex-start}.nav-links svg{display:inline-block;width:2em;height:2em;margin-right:.5em}.nav-links a{display:flex;align-items:center}.user-info{text-align:center;width:100%}.modal{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:1000;pointer-events:none;transition:opacity .2s ease;opacity:0;background-color:#0006}.modal.active{opacity:1;pointer-events:all}.modal-content{position:relative;padding:2rem;border-radius:8px;max-width:900px;max-height:90vh;width:100%;overflow:auto;animation:slideIn .3s ease;pointer-events:all;background-color:#fff;box-shadow:0 4px 20px #00000026}.modal-close{position:absolute;top:10px;right:10px;cursor:pointer;font-size:24px;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:none;border:none;transition:background-color .2s ease}.modal-close:hover{background:#0000001a}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.restaurant-grid{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:1.5rem}.restaurant-card{background:var(--card-bg, rgba(255, 255, 255, .9));border:1px solid var(--border-color, rgba(0, 0, 0, .1));border-radius:12px;padding:1.25rem;position:relative;overflow:hidden;box-shadow:0 2px 10px #0000001a}.restaurant-main{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;gap:1rem}.restaurant-title h3{margin:0;font-size:1.3rem;font-weight:600;color:#1a1a1a;line-height:1.3;word-break:break-word}.restaurant-buttons{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.restaurant-info{margin-bottom:0}.social-links{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.75rem}.social-link{display:inline-flex;align-items:center;padding:.4rem .8rem;background:#0000000d;border:1px solid rgba(0,0,0,.1);border-radius:20px;text-decoration:none;color:#000000b3;font-size:.85rem;transition:all .2s ease}.social-link:hover{background:#0000001a;border-color:#0003;transform:translateY(-1px)}.btn-compact{display:flex;align-items:center;justify-content:center;padding:.5rem .75rem;font-size:.85rem;font-weight:500;transition:all .2s ease;white-space:nowrap}.btn-compact:hover{transform:translateY(-1px)}.btn-compact svg{width:16px;height:16px;margin-right:.4rem;flex-shrink:0}.btn svg{width:20px;height:20px;margin-right:.5rem}.modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;display:flex;justify-content:center;align-items:center;z-index:1000;backdrop-filter:blur(5px)}.modal-content{background:var(--bg-color);border:1px solid rgba(255,255,255,.12);padding:2rem;border-radius:12px;max-width:500px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.modal-header h2{margin:0;font-size:1.3rem;font-weight:600}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:inherit;opacity:.7;transition:opacity .2s ease;padding:.5rem;border-radius:50%}.modal-close:hover{opacity:1;background:#ffffff1a}.modal-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1.5rem}.empty-state{text-align:center;padding:3rem 1rem;color:#ffffffb3}.empty-state h3{margin-bottom:1rem;color:#fff}@media (max-width: 768px){.restaurant-grid{grid-template-columns:1fr;gap:1rem;margin-top:1rem}.restaurant-card{padding:1rem}.restaurant-main{flex-direction:column;align-items:stretch;gap:.75rem;margin-bottom:.75rem}.restaurant-title h3{font-size:1.2rem}.restaurant-buttons{justify-content:flex-start;gap:.5rem}.btn-compact{flex:1;min-width:0}.modal-content{padding:1.5rem;margin:1rem}}@media (max-width: 480px){.restaurant-card{padding:.875rem}.restaurant-title h3{font-size:1.1rem}.btn-compact{font-size:.8rem;padding:.4rem .6rem}.btn-compact svg{width:14px;height:14px;margin-right:.3rem}.social-links{gap:.25rem}.social-link{padding:.3rem .6rem;font-size:.8rem}#createRestaurantBtn{width:100%;justify-content:center}}.notification-toast{position:fixed;top:20px;right:20px;background:#fffffff2;color:#333;padding:1rem 1.5rem;border-radius:8px;box-shadow:0 4px 20px #00000026;z-index:1001;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.notification-toast.success{border-left:4px solid #4ade80}.notification-toast.error{border-left:4px solid #f87171}.notification-toast.warning{border-left:4px solid #fbbf24}.notification-toast.info{border-left:4px solid #60a5fa}.notification-content{display:flex;align-items:center;gap:.75rem}.notification-icon{width:20px;height:20px}.notification-icon.success{color:#4ade80}.notification-icon.error{color:#f87171}.notification-icon.warning{color:#fbbf24}.notification-icon.info{color:#60a5fa}.notification-text h4{margin:0 0 .25rem;font-size:.9rem;font-weight:600}.notification-text p{margin:0;font-size:.8rem;opacity:.8}.notification-toast.fadeout{opacity:0;transform:translate(100%);transition:all .3s ease}.qr-codes-section{margin-bottom:2rem}.qr-code-generator{margin-bottom:3rem}.qr-code-generator h4{margin-bottom:1.5rem;color:#1a1a1a;font-weight:600}.qr-code-generator .form-group{margin-bottom:1rem}.qr-code-generator label{display:block;margin-bottom:.5rem;font-weight:500;color:#374151}.qr-code-generator textarea{width:100%;border:1px solid #d1d5db;border-radius:.5rem;padding:.75rem;font-family:inherit;resize:vertical;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.qr-code-generator textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.qr-code-generator .form-text{margin-top:.25rem;font-size:.875rem;color:#6b7280}.qr-code-generator button{margin-top:.5rem}.existing-qr-codes h4{margin-bottom:1.5rem;color:#1a1a1a;font-weight:600}.qr-codes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-top:1rem}.qr-code-item{position:relative;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;background:#fff;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;transition:box-shadow .15s ease-in-out}.qr-code-item:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.qr-code-actions{display:flex;justify-content:space-between;margin-bottom:1rem}.qr-code-download,.qr-code-delete{flex:0 0 auto}.qr-code-download .btn,.qr-code-delete .btn{padding:.375rem .5rem;min-width:auto}.qr-code-delete .btn{padding:.375rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:1.25rem}.qr-code-display{text-align:center;margin-bottom:1rem;padding-top:1rem}.qr-code-title{text-align:center;margin-bottom:.75rem}.qr-code-title h5{margin:0;font-weight:600;color:#1f2937;font-size:1.125rem}.qr-code-image{max-width:180px;height:auto}.qr-code-url{text-align:center;word-break:break-all}.qr-code-url a{color:#6b7280;text-decoration:none;font-size:.875rem}.qr-code-url a:hover{color:#3b82f6;text-decoration:underline}.no-qr-codes{grid-column:1 / -1;text-align:center;padding:3rem 1rem;color:#6b7280;font-style:italic;background:#f9fafb;border-radius:.75rem;border:1px dashed #d1d5db}.general-qr-code-section{border-top:1px solid #e5e7eb;padding-top:2rem;margin-top:2rem}.general-qr-code-section h4{margin-bottom:1rem;color:#1a1a1a;font-weight:600}.btn-sm svg{width:14px;height:14px;margin-right:.25rem}.spinner-border-sm{width:1rem;height:1rem}@media (max-width: 768px){.qr-codes-grid{grid-template-columns:1fr;gap:1rem}.qr-code-item{padding:1rem}.qr-code-actions{position:static;flex-direction:row;gap:.5rem;margin-bottom:1rem;padding-top:0;align-items:center}.qr-code-download{display:flex!important;gap:.5rem!important;flex:1}.qr-code-download .btn{flex:1;font-size:.75rem;padding:.5rem .25rem;text-align:center;min-width:0;height:36px}.qr-code-delete{flex:0 0 auto}.qr-code-delete .btn{width:36px;height:36px;font-size:1.5rem;padding:0}.qr-code-display{padding-top:0;margin-bottom:1rem}.qr-code-image{max-width:150px}.existing-qr-codes>div:first-child{flex-direction:column;gap:1rem;align-items:stretch!important;text-align:center}.existing-qr-codes>div:first-child h4{margin:0!important}.existing-qr-codes .btn-outline-primary{align-self:center;max-width:280px}}*{box-sizing:border-box}html,body{margin:0;padding:0;display:block;height:100vh;background:var(--color-background);color:var(--color-text);font-family:var(--font-family);display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr auto;grid-template-areas:"header" "main" "footer"}body.no-scroll{overflow:hidden;position:fixed;width:100%;height:100%}main{grid-area:main;display:table;padding:3rem 0 0;box-sizing:border-box;margin:0 auto;position:relative;width:100%;z-index:1}.tab-section>.tab-content>.tab-panel,main>section{margin:0 auto;position:relative;width:100%;max-width:var(--content-width);padding:1rem;background:var(--color-background-light);box-shadow:0 0 4px 1px var(--color-background-dark);overflow-x:hidden}@media only screen and (max-width: 1280px){main>section{margin:0 auto;position:relative;width:100%;padding:1rem 2rem;background:var(--color-background-light);box-shadow:0 0 4px 1px var(--color-background-dark)}}@media only screen and (max-width: 960px){main{padding-left:0;padding-right:0}main>section{margin:0 auto;position:relative;width:100%;padding:1rem 1.5rem;background:var(--color-background-light);box-shadow:none}:root{background:var(--color-background-light)}#footer{padding:1rem 1.5rem}footer{background:var(--color-background)}}@media only screen and (max-width: 700px){#footer,main>section{padding:1rem}}@media print{header,footer,main>aside{display:none}main{padding:0;max-width:none;width:100%}main>section{width:100%;box-shadow:none}}main .background-image{position:fixed;top:0;left:0;width:100%;height:100vh;z-index:-2}main .background-image img,main .background-image picture{display:block;object-fit:cover;object-position:center;width:100%;height:100%}.text-center{text-align:center}.hidden{display:none}.error-message.hidden{display:none;color:var(--color-error);margin-top:.5rem}.milk-glass{background:#ffffffd9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:16px;box-shadow:0 8px 24px #0000001a}.modal-content.milk-glass{background:var(--color-background-light)}table{width:100%;border-collapse:collapse;margin:1rem 0}th,td{padding:.5rem;text-align:left;border-bottom:1px solid var(--color-primary-light)}th{font-weight:700;color:var(--color-text)}tr:hover{background-color:#00000005}.nav-links a,footer nav a{text-decoration:none;color:var(--color-text);font-weight:400;font-size:1rem;transition:color .3s ease}.nav-links a:hover,footer nav a:hover{color:var(--color-primary)}ul{list-style:none;padding-left:1.2rem}ul li:before{content:"";background-color:var(--color-primary);font-weight:700;display:inline-block;width:.5em;height:.5em;border-radius:50%;margin-left:-1em;margin-right:.75em;position:relative;top:-.05em}ul ul li:before{content:"•";color:var(--color-secondary)}ol{list-style:none;counter-reset:item;padding-left:1.2rem}ol li{counter-increment:item}ol li:before{content:counter(item) ".";color:var(--color-primary);font-weight:700;display:inline-block;width:1.5em;margin-left:-1.5em}ol ol li:before{content:counter(item) ".";color:var(--color-secondary)}.print-branding{display:none}@media print{.qr-print-view .milk-glass{box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:transparent!important}.qr-print-view .background-image{display:none!important}.qr-print-view .qr-code-section{padding:0}.qr-print-view .qr-code-container{text-align:center}.qr-print-view .qr-code-container img{width:300px;height:300px}.print-branding{display:flex;position:fixed;bottom:1rem;right:1rem;align-items:center;gap:.5rem;font-size:.8rem;color:#666}.print-branding img{width:24px;height:24px}}@media (max-width: 640px){.milk-glass{padding:1rem}.milk-glass h1{margin-bottom:1rem}.milk-glass h2{margin-top:1.5rem;margin-bottom:.75rem}.milk-glass p,.milk-glass ul,.milk-glass ol{font-size:.95rem;line-height:1.5}.milk-glass ul,.milk-glass ol{padding-left:1.25rem;margin-bottom:1rem}.milk-glass li{margin-bottom:.5rem}}.close-modal{position:absolute;right:1rem;top:1rem;background:none;border:none;font-size:1.5rem;line-height:1;cursor:pointer;padding:.2rem .5rem;color:var(--color-text);transition:color .2s ease;background:none!important}.close-modal:hover{color:var(--color-primary)}.error-container{width:100%;max-width:800px;margin:0 auto;padding:2rem 0}.error-container h1{font-size:4rem;font-weight:300}.form-group{margin-bottom:1.5rem}.ai-functions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-top:1rem}.ai-function-btn{padding:.75rem 1rem;height:auto;white-space:nowrap;text-align:left;display:flex;align-items:center;gap:.5rem;transition:all .2s ease}.ai-function-btn:disabled{opacity:.5;cursor:not-allowed}.ai-function-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.ai-function-btn svg{width:16px;height:16px;flex-shrink:0}.ai-function-btn.loading,#updateMenuButton.loading{pointer-events:none;opacity:.7}.ai-function-btn.loading:after,#updateMenuButton.loading:after{content:"";margin-left:auto;width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}@media (max-width: 768px){.ai-functions-grid{grid-template-columns:1fr}.ai-function-btn{justify-content:center;text-align:center}}.menu-editor-wrap{padding:1rem 0}.menu-section,.menu-item{margin:2rem 0;border:1px solid var(--color-primary-light);border-radius:4px;position:relative;overflow:hidden;transition:transform .3s ease,margin .3s ease}.menu-item{margin:0 0 .5rem;border-color:var(--color-secondary-light)}.menu-section .btn,.menu-item .btn{margin-right:.5rem}.menu-first-row{display:flex;align-items:center;background:var(--color-primary);padding:.5rem;margin-bottom:0;gap:.5rem}.menu-item .menu-first-row{background:var(--color-secondary)}.menu-section .menu-section-name,.menu-item .menu-item-name,.menu-item .menu-item-human-id{flex:1;margin:0;background:#ffffffd9}.menu-section .menu-section-desc,.menu-item .menu-item-desc{margin-left:.5rem;width:calc(100% - 1rem)}.menu-editor-wrap textarea,.menu-editor-wrap input{border-color:var(--color-background-dark)}.menu-editor-wrap .delete-btn{border:none;background:none;font-size:1.5rem;line-height:1;cursor:pointer;padding:.2rem .5rem;color:#fff;transition:color .2s ease}.menu-editor-wrap .menu-item-price{width:100px;margin:0;background:#ffffffd9}.menu-editor-wrap .delete-btn:hover{color:var(--color-error);background:none}.button-container{gap:.5rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap}.button-container .btn{flex:1;text-align:center;white-space:nowrap}.button-container .btn[type=submit]{flex:none;width:auto;min-width:150px;max-width:200px}.button-container:has(.btn:not([type=submit]):nth-child(2)) .btn{max-width:none}.button-container.action-buttons .btn{max-width:none}.button-container.action-buttons{flex-direction:row}.menu-editor-wrap input{padding:.5rem}.menu-editor-wrap textarea{resize:none;overflow:hidden;min-height:0;line-height:1.35em;box-sizing:border-box;width:100%;padding:.5rem;margin-top:0}.menu-items{padding:.5rem}.menu-editor-wrap .move-btn{border:none;background:none;font-size:1.2rem;line-height:1;cursor:pointer;padding:.2rem .5rem;color:#fff;transition:color .2s ease}.menu-editor-wrap .move-btn:hover{color:#ffffffb3;background:none}.menu-first-row .button-group{display:flex;gap:4px}.menu-section.moving,.menu-item.moving{transform:scale(1.02);box-shadow:0 4px 8px #0000001a;z-index:1}.menu-add-section{display:block;margin:0 .5rem .5rem auto}.menu-add-item{display:block;width:calc(100% - 1rem);margin:.5rem .5rem .5rem auto;text-align:center}.button-container .menu-add-section{margin:0}.image-upload-container{margin:1rem 0}.image-upload-container .btn{width:100%;margin-bottom:1rem}.spinner_a{display:block;width:14rem;height:14rem;position:absolute;top:50%;left:50%;margin-left:-7rem;margin-top:-7rem;border:2rem solid transparent;border-right-color:var(--color-primary);border-bottom-color:var(--color-primary);border-radius:50%;box-sizing:border-box;animation:spinner 2s linear infinite}.spinner_b{content:"";position:absolute;top:50%;left:50%;display:block;width:10rem;height:10rem;margin-left:-5rem;margin-top:-5rem;border:2rem solid transparent;border-right-color:var(--color-secondary);border-bottom-color:var(--color-secondary);border-radius:50%;box-sizing:border-box;animation:spinner-before 1s linear infinite}.spinner_c{content:"";position:absolute;top:50%;left:50%;display:block;width:6rem;height:6rem;margin-left:-3rem;margin-top:-3rem;border:2rem solid transparent;border-left-color:var(--color-primary);border-top-color:var(--color-primary);border-radius:50%;box-sizing:border-box;animation:spinner 1s linear infinite}@keyframes spinner{to{transform:rotate(360deg)}}@keyframes spinner-before{to{transform:rotate(-360deg)}}.loading-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.upload-progress{background:#fff;padding:2rem;border-radius:8px;text-align:center;min-width:300px;max-width:500px;margin:1rem}.upload-progress h3{margin:1rem 0;color:#333}.progress-container{margin:1rem 0}.progress-bar{width:100%;height:20px;background:#f0f0f0;border-radius:10px;overflow:hidden;margin-bottom:.5rem}.progress-fill{height:100%;background:linear-gradient(90deg,#4caf50,#45a049);border-radius:10px;transition:width .3s ease;position:relative;overflow:hidden}.progress-fill:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff0,#ffffff4d,#fff0);animation:progress-shine 1.5s infinite}@keyframes progress-shine{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-text{font-size:.9rem;color:#666;margin-top:.5rem;font-weight:500}.upload-progress p{margin:1rem 0 0;color:#666;font-size:.9rem}.progress-cancel-button{margin-top:1rem;padding:.5rem 1rem;background:#f44336;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem}.progress-cancel-button:hover{background:#d32f2f}.error-message{color:var(--color-error);margin:1rem 0;padding:.5rem;border:1px solid var(--color-error);border-radius:.25rem;background:rgba(var(--color-error-rgb),.1)}@media screen and (max-width: 600px){.button-container:not(.action-buttons){flex-direction:column;width:100%}.button-container:not(.action-buttons) .btn{width:100%;margin-right:0}.upload-progress{min-width:250px;max-width:calc(100vw - 2rem);margin:.5rem;padding:1rem}.asset-picker{min-width:200px;max-width:100%;padding:.5rem}.menu-editor-wrap,.menu-section,.menu-item{max-width:100%;overflow-x:hidden}.button-container.action-buttons{flex-direction:column;width:100%;gap:.5rem}.button-container.action-buttons .btn{width:100%;margin-right:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}.menu-sections-empty{position:relative;min-height:100px}.menu-sections-empty:before{content:"Noch keine Kategorien vorhanden. Klicke auf 'Neue Kategorie' um loszulegen!";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--color-text-light);text-align:center;font-style:italic;padding:1rem}.menu-metadata{margin-bottom:2rem;padding:1rem;background:var(--color-background-light);border-radius:4px}.menu-metadata input,.menu-metadata textarea{width:100%;margin-bottom:1rem}.menu-metadata input:last-child,.menu-metadata textarea:last-child{margin-bottom:0}.menu-name{font-size:1.2em;font-weight:700}.menu-description,.menu-header,.menu-footer{min-height:60px}.image-upload-section{margin:2rem 0;border-radius:8px}.image-upload-section h3{margin-bottom:1rem}.image-preview-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem;margin-top:1.5rem}.image-preview{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;border:2px solid var(--color-background-dark);transition:transform .2s ease}.image-preview:hover{transform:scale(1.02)}.image-preview img{width:100%;height:100%;object-fit:cover;object-position:center}.image-preview .remove-image{position:absolute;top:.5rem;right:.5rem;background:#ffffffe6;border:none;border-radius:50%;width:24px;height:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-error);transition:all .2s ease}.image-preview .remove-image:hover{background:var(--color-error);color:#fff}.image-upload-actions{display:flex;gap:1rem}.image-upload-actions button{flex:1}.image-preview .preview-number{position:absolute;top:.5rem;left:.5rem;background:#ffffffe6;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700}.menu-item-allergenes{width:150px;margin-right:8px}.menu-second-row{padding:.5rem;display:flex;flex-direction:column;gap:.5rem;max-height:0;overflow:hidden;transition:all .3s ease;padding:0 .5rem;opacity:0;visibility:hidden}.menu-second-row.show{max-height:none;padding:.5rem;opacity:1;visibility:visible}.allergene-checkboxes{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.5rem;margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--color-background-dark)}.allergene-checkbox-wrapper{display:flex;align-items:center;gap:.5rem}.allergene-checkbox-wrapper input[type=checkbox]{margin:0}.allergene-checkbox-wrapper label{font-size:.9em;cursor:pointer}.menu-item-allergenes{width:100%;margin:0;background:#ffffffd9}.allergene-btn{border:none;background:none;font-size:1.2rem;line-height:1;cursor:pointer;padding:.2rem .5rem;color:#fff;transition:color .2s ease}.allergene-btn:hover{color:#ffffffb3;background:none}.allergene-btn.active{color:var(--color-primary-light)}.asset-picker{padding:1rem;min-width:300px}.asset-picker-header{font-size:1.2em;margin-bottom:1rem;font-weight:700}.asset-picker-placeholder{background:var(--color-background-light);padding:2rem;text-align:center;border-radius:4px;margin-bottom:1rem;color:var(--color-text-secondary)}.asset-picker-actions{display:flex;gap:1rem;justify-content:flex-end}.asset-picker-upload-area{border:2px dashed var(--color-border);border-radius:8px;padding:2rem;margin:1rem 0;cursor:pointer;transition:all .2s ease}.asset-picker-upload-area:hover{border-color:var(--color-primary);background:var(--color-background-light)}.asset-picker-upload-content{display:flex;flex-direction:column;align-items:center;gap:1rem;color:var(--color-text-muted)}.asset-picker-upload-content svg{width:48px;height:48px;opacity:.7}.upload-text{text-align:center;font-size:.9em}.asset-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem;margin:1rem 0}.asset-picker-item{cursor:pointer;border-radius:8px;overflow:hidden;transition:all .2s ease;border:2px solid var(--color-border)}.asset-picker-item:hover{border-color:var(--color-primary);transform:scale(1.02)}.asset-picker-preview{width:100%;padding-bottom:100%;background-size:cover;background-position:center;background-color:var(--color-background-dark)}.asset-picker-filename{padding:.5rem;font-size:.8em;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.asset-picker-upload{border:2px dashed var(--color-border);background:var(--color-background-light);display:flex;align-items:center;justify-content:center;padding:1rem}.asset-picker-upload:hover{border-color:var(--color-primary);background:var(--color-background-dark)}.asset-picker-upload .asset-picker-upload-content{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem}.asset-picker-upload svg{width:32px;height:32px;opacity:.7}.header-image-container{display:flex;flex-direction:column;gap:1rem}.header-image-preview{flex:1;min-height:150px;border:2px dashed #ccc;border-radius:4px;overflow:hidden;position:relative}.image-thumbnail{width:100%;height:150px;background-size:cover;background-position:center;background-repeat:no-repeat}.no-image-placeholder{height:150px;display:flex;align-items:center;justify-content:center;color:#888}.remove-image-btn{position:absolute;top:8px;right:8px;width:24px;height:24px;background:#00000080;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:1;font-size:18px;line-height:1}.spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 480px){.button-container{flex-direction:column;align-items:stretch}.button-container .btn{width:100%;max-width:none}}.remove-image-btn:hover{background:#000000b3}.menu-image-row{padding:.5rem;display:flex;align-items:center;gap:1rem}.item-image-preview{width:100px;height:100px;border:2px dashed #ccc;border-radius:4px;overflow:hidden;position:relative;cursor:pointer;transition:border-color .2s ease;flex-shrink:0}.item-image-preview:hover{border-color:var(--color-primary)}.item-image-preview .image-thumbnail{width:100%;height:100%;background-size:cover;background-position:center;background-repeat:no-repeat}.item-image-preview .no-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#888;font-size:.8em;text-align:center;padding:.5rem}.item-image-preview .remove-image-btn{position:absolute;top:4px;right:4px;width:20px;height:20px;background:#00000080;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:1;font-size:14px;line-height:1}.item-image-preview .remove-image-btn:hover{background:#000000b3}.image-btn{border:none;background:none;cursor:pointer;padding:.2rem .5rem;color:#fff;transition:color .2s ease}.image-btn:hover{color:#ffffffb3;background:none}.image-btn svg{width:16px;height:16px}
