*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:.95rem;line-height:1.5;color:#3d1900;background-color:#fff}a{color:inherit;text-decoration:none;transition:color .3s ease-in-out}a:hover{color:#1e3a8a}button{font-family:inherit;cursor:pointer;border:none;background:none}input,textarea,select{font-family:inherit;font-size:inherit}ul,ol{list-style:none}img{max-width:100%;height:auto;display:block}.header{position:sticky;top:0;z-index:1000}.header:before{content:"";display:block;height:8px;background-color:#1e3a8a}.header{background-color:#0f1e4a}.header__container{max-width:1200px;margin:0 auto;padding:.6rem 20px;display:flex;justify-content:space-between;align-items:center}.header__logo{display:flex;align-items:center;gap:8px;color:#fff}.header__logo-icon{width:24px;height:24px;flex-shrink:0}.header__logo-text{font-size:1rem;font-weight:700;letter-spacing:1.5px}.header__nav{display:flex;gap:1.5rem}.header__link{color:#fff;font-weight:400;font-size:.85rem;padding:.5rem .75rem;transition:opacity .3s ease-in-out}.header__link:hover{opacity:.8;color:#fff}.header__lang{display:flex;align-items:center;gap:.5rem}.header__lang-btn{background:transparent;border:none;color:#fff;font-size:.85rem;font-weight:400;padding:.5rem .75rem;cursor:pointer;transition:all .3s ease-in-out;text-transform:uppercase}.header__lang-btn:hover{opacity:.8}.header__lang-btn--active{font-weight:700;text-decoration:underline}.header__lang-separator{color:#fff;opacity:.5;font-size:.85rem}.header__hamburger{display:none;flex-direction:column;gap:4px;background:transparent;border:none;cursor:pointer;padding:.5rem}.header__hamburger span{display:block;width:24px;height:2px;background-color:#fff;transition:all .3s ease-in-out}.header__hamburger--open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.header__hamburger--open span:nth-child(2){opacity:0}.header__hamburger--open span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}@media (max-width: 768px){.header__container{padding:.4rem 12px;position:relative}.header__logo{font-size:.9rem}.header__hamburger{display:flex;order:2}.header__nav{position:absolute;top:100%;left:0;right:0;background-color:#0f1e4a;flex-direction:column;gap:0;padding:0;max-height:0;overflow:hidden;transition:max-height .3s ease-in-out;z-index:1500}.header__nav--open{max-height:300px;border-top:1px solid rgba(255,255,255,.1)}.header__link{font-size:.85rem;padding:1rem;border-bottom:1px solid rgba(255,255,255,.1)}.header__link:last-child{border-bottom:none}.header__lang{order:1;margin-right:auto;margin-left:1rem}}.footer{background-color:#4a2511;color:#fff;margin-top:auto}.footer__container{max-width:1200px;margin:0 auto;padding:2rem 1.5rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.footer__section{display:flex;flex-direction:column;gap:1rem}.footer__title{display:flex;align-items:center;gap:8px;font-size:1.5rem;font-weight:700;margin-bottom:.75rem}.footer__logo-icon{width:24px;height:24px;flex-shrink:0}.footer__subtitle{font-size:1.125rem;font-weight:600;margin-bottom:.5rem}.footer__text{color:#fffc}.footer__links{display:flex;flex-direction:column;gap:.75rem}.footer__links a{color:#fffc;transition:color .3s ease-in-out}.footer__links a:hover{color:#fff}.footer__link--admin{margin-top:1rem;color:#fff6!important;font-size:.875rem}.footer__link--admin:hover{color:#ffffffb3!important}.footer__social{display:flex;gap:1rem}.footer__social a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background-color:#ffffff1a;transition:background-color .3s ease-in-out}.footer__social a:hover{background-color:#fff3}.footer__social a svg{width:20px;height:20px}.footer__bottom{border-top:1px solid rgba(255,255,255,.1);padding:1rem 1.5rem;text-align:center;color:#fff9;font-size:.875rem}@media (max-width: 768px){.footer__container{padding:1.5rem 12px;grid-template-columns:1fr}.footer__bottom{padding:.75rem 12px}}.main{max-width:1200px;margin:0 auto;padding:1.5rem 2rem;min-height:calc(100vh - 300px);background-color:#fff}@media (max-width: 768px){.main{padding:1rem}}.card{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:2rem;margin-bottom:1.5rem}@media (max-width: 768px){.card{padding:1rem}}.btn{display:inline-block;padding:.75rem 2rem;border-radius:4px;font-weight:600;text-align:center;transition:all .3s ease-in-out;cursor:pointer;border:none;font-size:1rem}.btn--primary{background-color:#4a2511;color:#fff}.btn--primary:hover{background-color:#6b3a1e;color:#fff}.btn--secondary{background-color:transparent;border:2px solid #1e3a8a;color:#1e3a8a}.btn--secondary:hover{background-color:#1e3a8a;color:#fff}.btn--full{width:100%}@media (max-width: 768px){.btn{width:100%;padding:1rem 1.5rem}}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:500;margin-bottom:.5rem;color:#3d1900}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem 1rem;border:1px solid #dddddd;border-radius:4px;font-size:1rem;background-color:#fff;transition:border-color .3s ease-in-out,box-shadow .3s ease-in-out}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#1e3a8a;box-shadow:0 0 0 3px #1e3a8a1a}.form-group .error{color:#dc2626;font-size:.875rem;margin-top:.5rem}.grid{display:grid;gap:1.5rem}.grid--2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid--3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}@media (max-width: 768px){.grid--2,.grid--3{grid-template-columns:1fr}}.my-orders{max-width:1200px;margin:0 auto;padding:2rem 1.5rem}.my-orders__top{margin-bottom:3rem}@media (min-width: 768px){.my-orders__top{display:flex;align-items:center;gap:1.5rem}}.my-orders__back{margin-bottom:1.5rem}@media (min-width: 768px){.my-orders__back{margin-bottom:0;flex-shrink:0}}.my-orders__back .btn{display:inline-flex;align-items:center;gap:.5rem}.my-orders__header{text-align:center;flex-grow:1}.my-orders__header h1{font-size:2rem;color:#1e3a8a;margin-bottom:.75rem}.my-orders__header p{color:#666;font-size:1.125rem}.my-orders__explanation{color:#666;font-size:1rem;line-height:1.6;max-width:600px;margin:1rem auto 0}.my-orders__status{padding:1rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:500;margin:0 auto;max-width:600px}.my-orders__status--pending{background-color:#fef3c7;color:#92400e;border:1px solid #fbbf24}.my-orders__status--paid{background-color:#d1fae5;color:#065f46;border:1px solid #10b981}.my-orders__status--redeemed{background-color:#e0e7ff;color:#3730a3;border:1px solid #818cf8}.my-orders__auto-refresh{margin-top:.75rem;text-align:center;color:#666}.my-orders__auto-refresh small{font-size:.875rem;opacity:.8}.my-orders__instructions{color:#666;font-size:.875rem;margin-top:1rem}.my-orders__no-order,.my-orders__no-orders,.my-orders__error{max-width:600px;margin:0 auto;text-align:center;padding:2rem}.my-orders__no-order .btn,.my-orders__no-orders .btn,.my-orders__error .btn{margin-top:1.5rem}.my-orders__content{display:grid;grid-template-columns:1fr 2fr;gap:1.5rem}.my-orders__content .card{margin-bottom:0}.my-orders__content .my-orders__qr{grid-column:1;grid-row:1}.my-orders__content .my-orders__order-info{grid-column:1;grid-row:2}.my-orders__content .my-orders__details{grid-column:2;grid-row:1/3}.my-orders__content:not(:has(.my-orders__qr)) .my-orders__order-info{grid-row:1}.my-orders__content:not(:has(.my-orders__qr)) .my-orders__details{grid-row:1}@media (max-width: 1024px){.my-orders__content{grid-template-columns:1fr}.my-orders__content .my-orders__qr{order:1;grid-column:auto;grid-row:auto}.my-orders__content .my-orders__details{order:2;grid-column:auto;grid-row:auto}.my-orders__content .my-orders__order-info{order:3;grid-column:auto;grid-row:auto}}.my-orders__email-form{max-width:500px;margin:0 auto 2rem;padding:2rem}.my-orders__email-form h2{font-size:1.25rem;color:#1e3a8a;margin-bottom:1.5rem;text-align:center}.my-orders__email-form .form-group{margin-bottom:1.5rem}.my-orders__email-form .form-group label{display:block;margin-bottom:.75rem;font-weight:500;color:#1e3a8a}.my-orders__email-form input[type=email]{width:100%;padding:1rem;border:1px solid #dddddd;border-radius:8px;font-size:1rem}.my-orders__email-form input[type=email]:focus{outline:none;border-color:#1e3a8a;box-shadow:0 0 0 3px #1e3a8a1a}.my-orders__email-form .btn{width:100%}.my-orders__email-form .forget-email-link{display:block;margin-top:.75rem;margin-left:auto;text-align:right;width:fit-content;font-size:.875rem;color:#666;background:none;border:none;cursor:pointer;text-decoration:underline;padding:0;transition:color .2s ease-in-out}.my-orders__email-form .forget-email-link:hover{color:#1e3a8a}.my-orders__loading{text-align:center;padding:2rem;color:#666}.my-orders__list{display:grid;gap:1rem;margin-top:2rem}@media (min-width: 768px){.my-orders__list{grid-template-columns:repeat(2,1fr)}}.my-orders__list-card{padding:1rem;transition:box-shadow .2s ease}.my-orders__list-card:hover{box-shadow:0 4px 12px #0000001a}.my-orders__list-card:only-child{grid-column:1/-1;width:50%;margin:0 auto}.my-orders__list-card-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.5rem;min-height:24px}.my-orders__list-card-row:last-child{margin-bottom:0}.my-orders__list-card-label{font-size:.875rem;color:#666;font-weight:500;flex-shrink:0}.my-orders__list-card-value{display:flex;align-items:center;justify-content:flex-end;font-size:.875rem;color:#3d1900}.my-orders__list-card-value code{background-color:#f5f5f5;padding:2px 6px;border-radius:3px;font-family:monospace;font-size:.85em;line-height:1.4}.my-orders__list-card-meta{display:flex;align-items:center;gap:.75rem;font-size:.875rem;color:#3d1900;flex-wrap:wrap}.my-orders__list-card-meta span{white-space:nowrap}.my-orders__list-card-actions{margin-top:1rem;padding-top:.75rem;border-top:1px solid #dddddd;text-align:right}.my-orders .btn--small{font-size:.875rem;padding:.5rem 1rem}.my-orders__qr{padding:2rem;text-align:center}.my-orders__qr h2{font-size:1.25rem;color:#1e3a8a;margin-bottom:1.5rem}.my-orders__qr-code{margin:1.5rem 0;display:flex;justify-content:center}.my-orders__qr-code img{max-width:300px;width:100%;height:auto;border:2px solid #dddddd;border-radius:8px;padding:.75rem}.my-orders__order-id{color:#666;font-size:.875rem;margin-top:1rem}.my-orders__details{padding:2rem}.my-orders__details h3{font-size:1.125rem;color:#1e3a8a;margin-bottom:1rem}.my-orders__order-info{padding:2rem}.my-orders__info p{margin-bottom:.75rem;color:#3d1900}.my-orders__info p strong{color:#1e3a8a}.my-orders__info p code{background-color:#f5f5f5;padding:2px 6px;border-radius:3px;font-family:monospace;font-size:.9em}.my-orders .status-badge{display:inline-block;padding:4px 12px;border-radius:4px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.my-orders .status-badge--pending{background-color:#fef3c7;color:#92400e}.my-orders .status-badge--paid{background-color:#d1fae5;color:#065f46}.my-orders .status-badge--redeemed{background-color:#e0e7ff;color:#3730a3}.my-orders__item{padding:1rem;background-color:#faeade;border-radius:8px;margin-bottom:1rem}.my-orders__item:last-child{margin-bottom:0}.my-orders__item--inactive{background-color:#f5f5f5}.my-orders__item-date{font-weight:600;color:#1e3a8a;margin-bottom:.75rem}.my-orders__item ul{list-style:none;padding:0;margin:0}.my-orders__item ul li{color:#3d1900;margin-bottom:.5rem;padding-left:.75rem}.my-orders__item ul li:last-child{margin-bottom:0}.my-orders__item ul li strong{color:#1e3a8a}.my-orders .order-id-group{display:inline-flex;align-items:center;background-color:#f5f5f5;border-radius:3px;padding:2px;gap:2px;line-height:1.4}.my-orders .order-id-group code{background-color:transparent;padding:4px 0 0 5px;margin:0}.my-orders .copy-btn{background-color:#f5f5f5;border:none;cursor:pointer;padding:2px 6px;font-size:.9rem;border-radius:3px;transition:all .2s ease-in-out;vertical-align:middle;line-height:1.4;display:inline-flex;align-items:center}.my-orders .copy-btn:hover{background-color:#e8e8e8;transform:scale(1.1)}.my-orders .copy-btn:active{transform:scale(.95)}@media (max-width: 768px){.my-orders{padding:1.5rem 1rem}.my-orders__header{margin-bottom:2rem}.my-orders__header h1{font-size:1.5rem}.my-orders__header p{font-size:1rem}.my-orders__explanation{font-size:.875rem;padding:0 .75rem}.my-orders__email-form,.my-orders__qr,.my-orders__details,.my-orders__order-info{padding:1.5rem}.my-orders__qr-code img{max-width:250px}}.scanner{max-width:800px;margin:0 auto;padding:2rem 1rem}.scanner__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1rem;background:#fff;border-radius:8px;box-shadow:0 1px 2px #0000000d}@media (max-width: 768px){.scanner__header{flex-direction:column;gap:1rem;align-items:flex-start}}.scanner__welcome{font-size:1.125rem;font-weight:600;color:#3d1900}.scanner__role{font-size:.875rem;font-weight:400;color:#666;margin-left:.5rem}.scanner__qr-section{margin-bottom:2rem;padding:1.5rem;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;text-align:center}.scanner__today-date{margin-bottom:1.5rem;font-size:1rem;color:#3d1900}.scanner__qr-container{margin-top:1rem}.scanner__qr-video-wrapper{position:relative;max-width:500px;margin:0 auto 1rem;border-radius:8px;overflow:hidden;background:#000}.scanner__qr-video{width:100%;height:auto;display:block}.scanner__qr-overlay{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.scanner__qr-frame{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:250px;height:250px;border:3px solid rgba(255,255,255,.8);border-radius:8px;box-shadow:0 0 0 9999px #0000004d}@media (max-width: 768px){.scanner__qr-frame{width:200px;height:200px}}.scanner__qr-frame:before,.scanner__qr-frame:after{content:"";position:absolute;width:40px;height:40px;border:4px solid #10b981;border-radius:4px}.scanner__qr-frame:before{top:-4px;left:-4px;border-right:none;border-bottom:none}.scanner__qr-frame:after{bottom:-4px;right:-4px;border-left:none;border-top:none}.scanner__qr-status{margin:1rem 0;font-size:1rem;color:#666;font-weight:600}.scanner__manual{margin-bottom:2rem;padding:1.5rem;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a}.scanner__manual h2{margin-top:0;margin-bottom:1rem;font-size:1.25rem;color:#1e3a8a}.scanner__search-tabs{display:flex;gap:.5rem;margin-bottom:1rem;border-bottom:2px solid #dddddd}.scanner__tab{flex:1;padding:.75rem 1rem;background:transparent;border:none;border-bottom:2px solid transparent;font-size:.875rem;font-weight:400;color:#666;cursor:pointer;transition:all .2s ease-in-out;margin-bottom:-2px}.scanner__tab:hover{color:#1e3a8a;background:#1e3a8a0d}.scanner__tab--active{color:#1e3a8a;border-bottom-color:#1e3a8a;background:transparent}.scanner__search-form{display:flex;gap:1rem;align-items:flex-end}@media (max-width: 768px){.scanner__search-form{flex-direction:column;align-items:stretch}}.scanner__search-form .form-group{flex:1;margin-bottom:0}.scanner__search-form button{white-space:nowrap}.scanner__input-wrapper{position:relative;display:flex;align-items:center}.scanner__input-wrapper input{flex:1}.scanner__clear-btn{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:24px;height:24px;padding:0;border:none;background:#0000001a;color:#666;border-radius:50%;font-size:16px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.scanner__clear-btn:hover{background:#0003;color:#3d1900}.scanner__clear-btn:active{transform:translateY(-50%) scale(.9)}.scanner__orders-list{margin-top:1.5rem}.scanner__orders-list h3{margin-top:0;margin-bottom:1rem;font-size:1.125rem;color:#3d1900}.scanner__orders-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.scanner__order-card{padding:1rem;background:#f5f5f5;border-radius:8px;border:1px solid #dddddd;transition:all .2s ease-in-out}.scanner__order-card:hover{box-shadow:0 2px 8px #0000001a;border-color:#1e3a8a}.scanner__order-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.scanner__order-card-header code{font-family:Courier New,monospace;font-size:.875rem;color:#3d1900}.scanner__order-card-body{margin-bottom:1rem}.scanner__order-card-body p{margin:.5rem 0;font-size:.875rem;color:#3d1900}.scanner__order-card-body p strong{color:#666;font-weight:400}.scanner__select-order-btn{width:100%}.scanner__order-details{padding:1.5rem;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem}.scanner__order-details h2{margin-top:0;margin-bottom:1rem;font-size:1.25rem;color:#1e3a8a}.scanner__today-order{margin-bottom:1.5rem;padding:1.5rem;background:linear-gradient(135deg,#d1fae5,#a7f3d0);border:2px solid #10b981;border-radius:8px;box-shadow:0 4px 6px #10b9811a}.scanner__today-order h3{margin-top:0;margin-bottom:1rem;font-size:1.25rem;font-weight:700;color:#065f46;text-align:center}.scanner__today-order--redeemed{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border-color:#9ca3af;box-shadow:0 4px 6px #9ca3af1a}.scanner__today-order--redeemed h3{color:#4b5563}.scanner__today-items{background:#ffffffb3;padding:1rem;border-radius:4px}.scanner__today-info{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;margin-bottom:.5rem}.scanner__today-info .label{font-weight:600;color:#374151;font-size:.875rem}.scanner__today-info .value{font-size:1rem;color:#1f2937}.scanner__today-info .value strong{font-weight:700;color:#065f46}.scanner__product-list{list-style:none;padding:0;margin:1rem 0 0;border-top:2px solid rgba(0,0,0,.1);padding-top:1rem}.scanner__product-list li{display:flex;justify-content:space-between;align-items:baseline;padding:.75rem 0;margin-bottom:.5rem}.scanner__product-list li:last-child{margin-bottom:0}@media (max-width: 768px){.scanner__product-list li{flex-direction:column;gap:.5rem}}.scanner__product-label{font-weight:600;color:#6b7280;font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;min-width:80px}.scanner__product-name{font-weight:600;color:#065f46;font-size:1.125rem;text-align:right;flex:1}@media (max-width: 768px){.scanner__product-name{text-align:left;font-size:1rem}}.scanner .scanner__today-order--redeemed .scanner__product-name{color:#4b5563}.scanner .scanner__today-order--redeemed .scanner__today-info .value strong{color:#6b7280}.scanner__alerts{margin-top:1.5rem}.scanner__login{display:flex;justify-content:center;align-items:center;min-height:70vh;padding:1rem}.scanner__login-card{width:100%;max-width:400px;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 4px 16px #00000026}.scanner__login-card h1{margin-top:0;margin-bottom:1.5rem;font-size:1.5rem;color:#1e3a8a;text-align:center}.scanner__login-form .form-group{margin-bottom:1rem}.scanner__login-form button[type=submit]{width:100%;margin-top:1rem}.scanner__login-form .alert{margin-top:1rem}.order-info{margin-bottom:1.5rem}.order-info__row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid #dddddd}.order-info__row:last-child{border-bottom:none}@media (max-width: 768px){.order-info__row{flex-direction:column;align-items:flex-start;gap:.5rem}}.order-info__row .label{font-weight:600;color:#666;font-size:.875rem}.order-info__row .value{font-weight:400;color:#3d1900}.order-info__row .value code{font-family:Courier New,monospace;background:#f5f5f5;padding:2px 6px;border-radius:4px;font-size:.875rem}.status-badge{display:inline-block;padding:4px 12px;border-radius:4px;font-size:.875rem;font-weight:600;text-transform:uppercase}.status-badge--redeemed{background-color:#e5e7eb;color:#374151}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#3d1900;font-size:.875rem}.form-group input[type=text],.form-group input[type=password],.form-group input[type=email]{width:100%;padding:.75rem 1rem;border:1px solid #dddddd;border-radius:4px;font-size:1rem;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;transition:border-color .2s ease-in-out}.form-group input[type=text]:focus,.form-group input[type=password]:focus,.form-group input[type=email]:focus{outline:none;border-color:#1e3a8a;box-shadow:0 0 0 3px #1e3a8a1a}.form-group input[type=text]:disabled,.form-group input[type=password]:disabled,.form-group input[type=email]:disabled{background-color:#f5f5f5;cursor:not-allowed}.btn{display:inline-block;padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:1rem;font-weight:600;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;cursor:pointer;transition:all .2s ease-in-out;text-decoration:none;text-align:center}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:#4a2511;color:#fff}.btn-primary:hover:not(:disabled){background-color:#6b3a1e}.btn-secondary{background-color:transparent;color:#1e3a8a;border:2px solid #1e3a8a}.btn-secondary:hover:not(:disabled){background-color:#1e3a8a;color:#fff}.btn-success{background-color:#10b981;color:#fff}.btn-success:hover:not(:disabled){background-color:#059669}.btn-danger{background-color:#ef4444;color:#fff}.btn-danger:hover:not(:disabled){background-color:#dc2626}.btn-large{width:100%;padding:1rem 2rem;font-size:1.125rem}.btn-small{padding:4px .75rem;font-size:.875rem}.alert{padding:1rem;border-radius:4px;margin-bottom:1rem;font-size:.875rem}.alert-success{background-color:#d1fae5;color:#065f46;border:1px solid #10b981}.alert-error{background-color:#fee2e2;color:#991b1b;border:1px solid #ef4444}.alert-warning{background-color:#fef3c7;color:#92400e;border:1px solid #f59e0b}.scanner__input-wrapper input[type=text],.scanner__input-wrapper input[type=email]{padding-right:40px}.admin{max-width:1200px;margin:0 auto;padding:2rem 1rem}.admin__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1.5rem;background:#fff;border-radius:8px;box-shadow:0 1px 2px #0000000d}.admin__header h1{margin:0;font-size:2rem;color:#1e3a8a}@media (max-width: 768px){.admin__header h1{font-size:1.5rem}}@media (max-width: 768px){.admin__header{flex-direction:column;gap:1rem;align-items:flex-start}}.admin__user-info{display:flex;align-items:center;gap:1rem}@media (max-width: 768px){.admin__user-info{flex-direction:column;align-items:flex-start;width:100%}}@media (max-width: 768px){.admin__user-info button{width:100%}}.admin__welcome{font-size:1rem;color:#666}.admin__content{display:grid;grid-template-columns:1fr 2fr;gap:2rem}@media (max-width: 1024px){.admin__content{grid-template-columns:1fr}}.admin__section{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:1.5rem;overflow:hidden}.admin__section h2{margin-top:0;margin-bottom:1rem;font-size:1.25rem;color:#1e3a8a}@media (max-width: 768px){.admin__section{padding:.75rem}}.admin__form .form-group{margin-bottom:1rem}.admin__form .form-group:last-of-type{margin-bottom:1.5rem}.admin__form label{display:block;margin-bottom:.5rem;font-weight:600;color:#3d1900;font-size:.875rem}.admin__form input[type=text],.admin__form input[type=password],.admin__form select{width:100%;padding:.75rem 1rem;border:1px solid #dddddd;border-radius:4px;font-size:1rem;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;transition:border-color .2s ease-in-out}.admin__form input[type=text]:focus,.admin__form input[type=password]:focus,.admin__form select:focus{outline:none;border-color:#1e3a8a;box-shadow:0 0 0 3px #1e3a8a1a}.admin__form select{cursor:pointer;background-color:#fff}.admin__form button[type=submit]{width:100%}.admin__alert{margin-top:1rem}@media (max-width: 1024px){.admin__user-list{order:-1}}.admin__list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.admin__list-header h2{margin-bottom:0}@media (max-width: 768px){.admin__list-header{flex-direction:column;align-items:flex-start;gap:.75rem}}@media (max-width: 768px){.admin__list-header button{width:100%}}.admin__loading{text-align:center;padding:2rem;color:#666;font-style:italic}.admin__table-wrapper{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%;max-width:100%}.admin__table{width:100%;border-collapse:collapse;font-size:.875rem;table-layout:auto}.admin__table thead{background-color:#f5f5f5}.admin__table thead th{text-align:left;padding:.75rem 1rem;font-weight:600;color:#3d1900;border-bottom:2px solid #dddddd;white-space:nowrap}.admin__table tbody tr{border-bottom:1px solid #dddddd;transition:background-color .2s ease-in-out}.admin__table tbody tr:hover{background-color:#1e3a8a08}.admin__table tbody tr:last-child{border-bottom:none}.admin__table tbody td{padding:1rem;color:#3d1900}.admin__table tbody td:last-child{text-align:right}@media (max-width: 768px){.admin__table tbody td:last-child{text-align:left}}@media (max-width: 768px){.admin__table tbody td:last-child{display:flex;flex-direction:column;gap:.5rem;align-items:flex-start}.admin__table tbody td:last-child button{width:100%}}@media (max-width: 768px){.admin__table{font-size:.8rem}.admin__table th,.admin__table td{padding:.5rem .75rem}}.admin__error{display:flex;justify-content:center;align-items:center;min-height:50vh;padding:1rem}.admin__error .alert{max-width:500px}.btn-icon{padding:.5rem .75rem;min-width:auto;font-size:1.1em;outline:none!important;border:1px solid #e5e7eb!important;background-color:#fff}.btn-icon:focus{outline:none!important;border-color:#d1d5db!important;box-shadow:0 0 0 2px #1e3a8a1a!important}.btn-icon:active{outline:none!important}.btn-icon.delete-order-btn,.btn-icon.delete-user-btn{color:#dc2626;background-color:#fff;border:1px solid #e5e7eb!important}.btn-icon.delete-order-btn:hover,.btn-icon.delete-user-btn:hover{background-color:#fee2e2;border-color:#fca5a5!important}.btn-icon.delete-order-btn:focus,.btn-icon.delete-user-btn:focus{outline:none!important;border-color:#fca5a5!important;box-shadow:0 0 0 2px #dc26261a!important}.btn-icon.delete-order-btn:active,.btn-icon.delete-user-btn:active{outline:none!important}.btn-icon.delete-order-btn:disabled,.btn-icon.delete-user-btn:disabled{opacity:.4;cursor:not-allowed}.role-badge{display:inline-block;padding:4px .75rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.role-badge--staff{background-color:#dbeafe;color:#1e40af}.role-badge--admin{background-color:#fce7f3;color:#9f1239}.text-muted{color:#666;font-size:.875rem;font-style:italic}.admin__tabs{display:flex;gap:.75rem;margin-bottom:2rem;border-bottom:2px solid #dddddd}.admin__tab{padding:1rem 1.5rem;background:transparent;border:none;border-bottom:3px solid transparent;font-size:1rem;font-weight:600;color:#666;cursor:pointer;transition:all .2s ease-in-out;margin-bottom:-2px}.admin__tab:hover{color:#1e3a8a;background-color:#1e3a8a0d}.admin__tab--active{color:#1e3a8a;border-bottom-color:#1e3a8a}@media (max-width: 768px){.admin__tab{padding:.75rem 1rem;font-size:.875rem}}.admin__form--inline{display:grid;grid-template-columns:2fr 1fr;gap:1rem;padding:1.5rem;background-color:#1e3a8a05;border-radius:4px;border:1px solid rgba(30,58,138,.08)}.admin__form--inline .form-group{display:flex;flex-direction:column;margin:0;padding:0}.admin__form--inline .form-group label{display:block;margin:0 0 .5rem;padding:0;font-size:.875rem;font-weight:600;color:#1e3a8a;height:20px;line-height:20px}.admin__form--inline .form-group input,.admin__form--inline .form-group select{height:42px;margin:0;padding:.75rem 1rem;border:1px solid #dddddd;border-radius:4px;font-size:1rem;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;transition:border-color .2s ease-in-out}.admin__form--inline .form-group input:focus,.admin__form--inline .form-group select:focus{outline:none;border-color:#1e3a8a;box-shadow:0 0 0 3px #1e3a8a1a}.admin__form--inline .form-group select{cursor:pointer;background-color:#fff}.admin__form--inline button{white-space:nowrap;height:42px;padding:0 2rem;justify-self:start}.admin__form--inline button.btn-primary{min-width:110px}.admin__form--inline button.btn-secondary{min-width:90px}@media (max-width: 1024px){.admin__form--inline .form-group{min-width:150px}.admin__form--inline button{min-width:auto;flex:0 1 auto}}@media (max-width: 768px){.admin__form--inline{grid-template-columns:1fr}.admin__form--inline .form-group{width:100%;min-width:100%}.admin__form--inline button{width:100%}}.admin__order-search{grid-column:1/-1}@media (max-width: 1024px){.admin__order-search{grid-column:auto}}.admin__orders-list{grid-column:1/-1}@media (max-width: 1024px){.admin__orders-list{grid-column:auto}}.admin__table--orders code{font-size:.85em;color:#666;background-color:#f5f5f5;padding:2px 6px;border-radius:3px}.admin__table--orders th:first-child,.admin__table--orders td:first-child{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-badge{display:inline-block;padding:4px .75rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge--pending{background-color:#fef3c7;color:#92400e}.status-badge--paid{background-color:#d1fae5;color:#065f46}.status-badge--redeemed{background-color:#e0e7ff;color:#3730a3}.modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:1rem}.modal__overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal__content{position:relative;z-index:10000;background:#fff;border-radius:8px;box-shadow:0 4px 16px #00000026;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;margin:auto}@media (max-width: 768px){.modal__content{max-width:100%;max-height:95vh}}.modal__header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #dddddd}.modal__header h2{margin:0;font-size:1.25rem;color:#1e3a8a}.modal__close{background:transparent;border:none;font-size:2rem;line-height:1;color:#666;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease-in-out}.modal__close:hover{background-color:#f5f5f5;color:#3d1900}.modal__form{padding:1.5rem}.modal__form .form-group{margin-bottom:1rem}.modal__form .form-group:last-of-type{margin-bottom:1.5rem}.modal__form label{display:block;margin-bottom:.5rem;font-weight:600;color:#3d1900;font-size:.875rem}.modal__form input[type=text],.modal__form input[type=email],.modal__form input[type=date],.modal__form input[type=number],.modal__form select{width:100%;padding:.75rem 1rem;border:1px solid #dddddd;border-radius:4px;font-size:1rem;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;transition:border-color .2s ease-in-out}.modal__form input[type=text]:focus,.modal__form input[type=email]:focus,.modal__form input[type=date]:focus,.modal__form input[type=number]:focus,.modal__form select:focus{outline:none;border-color:#1e3a8a;box-shadow:0 0 0 3px #1e3a8a1a}.modal__actions{display:flex;gap:.75rem;margin-top:1.5rem}.modal__actions button{flex:1}@media (max-width: 768px){.modal__actions{flex-direction:column}}.edit-days-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem;padding:.75rem;background-color:#f5f5f5;border-radius:4px;max-height:300px;overflow-y:auto}.edit-day-item label{display:flex;align-items:center;gap:.5rem;padding:.5rem;cursor:pointer;font-size:.875rem;font-weight:400;transition:background-color .2s ease-in-out;border-radius:4px}.edit-day-item label:hover{background-color:#1e3a8a0d}.edit-day-item label input[type=checkbox]{width:auto;cursor:pointer}.edit-day-item label em{color:#666;font-size:.85em}.day-product-info{color:#10b981;font-size:.9em;margin-left:4px;cursor:help}.admin-menu{max-width:900px;margin:0 auto;padding:3rem 1rem;min-height:60vh;display:flex;align-items:center;justify-content:center}.admin-menu__container{width:100%;text-align:center}.admin-menu__title{font-size:2rem;color:#1e3a8a;margin:0 0 .75rem}@media (max-width: 768px){.admin-menu__title{font-size:1.5rem}}.admin-menu__subtitle{font-size:1.125rem;color:#3d1900;margin:0 0 3rem;opacity:.8}@media (max-width: 768px){.admin-menu__subtitle{font-size:1rem}}.admin-menu__buttons{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;margin-top:3rem}@media (max-width: 1024px){.admin-menu__buttons{grid-template-columns:1fr;gap:1.5rem}}.admin-menu__button{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;background:#fff;border:2px solid transparent;border-radius:8px;box-shadow:0 2px 8px #0000001a;text-decoration:none;transition:all .3s ease;min-height:250px;position:relative;overflow:hidden}.admin-menu__button:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:#1e3a8a;transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.admin-menu__button:hover{transform:translateY(-4px);box-shadow:0 4px 16px #00000026;border-color:#1e3a8a}.admin-menu__button:hover:before{transform:scaleX(1)}.admin-menu__button:hover .admin-menu__icon{transform:scale(1.1)}.admin-menu__button:active{transform:translateY(-2px)}.admin-menu__button--staff:before{background:#1e3a8a}.admin-menu__button--staff:hover{border-color:#1e3a8a}.admin-menu__button--staff .admin-menu__icon{color:#1e3a8a}.admin-menu__button--preparation:before{background:#059669}.admin-menu__button--preparation:hover{border-color:#059669}.admin-menu__button--preparation .admin-menu__icon{color:#059669}.admin-menu__button--admin:before{background:#4a2511}.admin-menu__button--admin:hover{border-color:#4a2511}.admin-menu__button--admin .admin-menu__icon{color:#4a2511}@media (max-width: 768px){.admin-menu__button{min-height:200px;padding:2rem 1.5rem}}.admin-menu__icon{width:80px;height:80px;margin-bottom:1.5rem;stroke-width:1.5;transition:transform .3s ease}@media (max-width: 768px){.admin-menu__icon{width:60px;height:60px}}.admin-menu__button-title{font-size:1.5rem;font-weight:600;color:#3d1900;margin-bottom:.75rem;display:block}@media (max-width: 768px){.admin-menu__button-title{font-size:1.25rem}}.admin-menu__button-desc{font-size:1rem;color:#3d1900;opacity:.7;line-height:1.5;display:block}@media (max-width: 768px){.admin-menu__button-desc{font-size:.875rem}}.preparation{min-height:100vh;padding:1.5rem 1rem;background-color:#f5f5f5}.preparation__container{max-width:1400px;margin:0 auto}.preparation__title{font-size:1.5rem;font-weight:700;color:#1e3a8a;margin-bottom:1.5rem;text-align:center}.preparation__date-range{background:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:1.5rem}.preparation__date-range h2{font-size:1.125rem;margin-bottom:1rem;color:#3d1900}.preparation__quick-buttons{display:flex;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.preparation__custom-range{display:grid;grid-template-columns:1fr 1fr auto;gap:1rem;align-items:center}@media (max-width: 1024px){.preparation__custom-range{grid-template-columns:1fr;gap:.5rem}}@media (max-width: 1024px){.preparation__button-wrapper label{display:none}}.preparation__loading,.preparation__error,.preparation__no-orders{text-align:center;padding:2rem;background:#fff;border-radius:8px;margin-bottom:1.5rem}.preparation__loading{color:#666;font-style:italic}.preparation__no-orders{font-size:1.125rem;color:#666}.preparation__results{margin-bottom:1.5rem}.preparation__cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;margin-bottom:1.5rem}@media (max-width: 1024px){.preparation__cards{grid-template-columns:1fr}}.preparation__card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.preparation__card:hover{transform:translateY(-2px);box-shadow:0 8px 16px #00000026}.preparation__card-header{background:linear-gradient(135deg,#1e3a8a,#152860);color:#fff;padding:1rem;display:flex;justify-content:space-between;align-items:center}.preparation__card-date{display:flex;flex-direction:column;gap:.5rem}.preparation__card-date strong{font-size:1.125rem;font-weight:700}.preparation__day-name{font-size:.875rem;opacity:.9}.preparation__card-total{background:#fff3;padding:.75rem 1rem;border-radius:4px;font-size:1.25rem;font-weight:700;text-align:center}.preparation__card-body{padding:1rem;display:flex;flex-direction:column;gap:1rem}.preparation__category{border-bottom:1px solid #dddddd;padding-bottom:1rem}.preparation__category:last-child{border-bottom:none;padding-bottom:0}.preparation__category-title{font-size:1rem;font-weight:600;color:#1e3a8a;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}.preparation__category-items{display:flex;flex-direction:column;gap:.5rem}.preparation__product-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem;background:#f5f5f5;border-radius:4px}.preparation__product-name{font-size:.875rem;color:#3d1900}.preparation__product-qty{font-size:.875rem;font-weight:600;color:#1e3a8a;background:#fff;padding:2px 8px;border-radius:4px}.preparation__no-items{text-align:center;color:#666;font-style:italic;padding:.75rem}.preparation__footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid #dddddd}@media (max-width: 1024px){.preparation__footer{flex-direction:column;gap:.75rem}}.preparation__last-updated{color:#666;font-size:.875rem}@media print{.preparation{padding:0}.preparation__date-range{box-shadow:none;border:1px solid #ccc;page-break-after:avoid;margin-bottom:1rem}.preparation__quick-buttons,.preparation__custom-range button,.preparation__footer button{display:none}.preparation__cards{gap:1rem}.preparation__card{box-shadow:none;border:1px solid #ccc;page-break-inside:avoid;margin-bottom:1rem}.preparation__card:hover{transform:none;box-shadow:none}.preparation__card-header{background:#fff!important;color:#000!important;border-bottom:2px solid black}.preparation__card-body{padding:.75rem}.preparation__category{padding-bottom:.75rem;margin-bottom:.75rem}.preparation__category-title{font-size:.875rem}.preparation__product-item{padding:2px .5rem;background:#fff!important;border:1px solid #ddd}.preparation__product-name,.preparation__product-qty{font-size:.875rem}.preparation__product-qty{background:#f5f5f5!important}header,footer,.header,.footer{display:none}}.cookie-consent{position:fixed;bottom:0;left:0;right:0;background-color:#0f1e4af2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;padding:1rem 1.5rem;box-shadow:0 -4px 16px #0003;z-index:3000;transform:translateY(0);opacity:1;transition:transform .3s ease-in-out,opacity .3s ease-in-out}.cookie-consent--hidden{transform:translateY(100%);opacity:0}.cookie-consent__content{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}@media (max-width: 768px){.cookie-consent__content{flex-direction:column;align-items:stretch;gap:1rem}}.cookie-consent__message{flex:1;margin:0;font-size:.875rem;line-height:1.5;color:#fffffff2}.cookie-consent__message a{color:#fff;text-decoration:underline;font-weight:600}.cookie-consent__message a:hover{color:#fffc}.cookie-consent__button{background-color:#fff;color:#0f1e4a;border:none;padding:.75rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .2s ease-in-out;flex-shrink:0}.cookie-consent__button:hover{background-color:#f5f5f5;transform:translateY(-2px);box-shadow:0 2px 8px #0000001a}.cookie-consent__button:active{transform:translateY(0)}@media (max-width: 768px){.cookie-consent__button{width:100%;padding:1rem}}#app{display:flex;flex-direction:column;min-height:100vh}.hero{text-align:left;padding:2rem 0;max-width:800px}.hero__title{font-size:1.8rem;font-weight:700;color:#3d1900;margin-bottom:1rem}.hero__description{font-size:.95rem;color:#3d1900;margin-bottom:1.5rem}@media (max-width: 768px){.hero{padding:1.5rem 0}.hero__title{font-size:1.5rem}.hero__description{font-size:.9rem}}.order__header{text-align:center;margin-bottom:2rem}.order__header h1{font-size:2rem;color:#1e3a8a;margin-bottom:.75rem}.order__header p{color:#666}.order__form{max-width:800px;margin:0 auto}.order__dates{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 768px){.order__dates{grid-template-columns:1fr}}.form-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}@media (max-width: 768px){.form-header{gap:.75rem}}.form-notice{font-size:.875rem;color:#666;margin:0;font-style:italic}.terms-acceptance{background-color:#f5f5f5;padding:1rem;border-radius:8px;border:1px solid #dddddd}.terms-acceptance__label{display:flex;align-items:flex-start;gap:1rem;cursor:pointer;font-size:1rem;color:#3d1900;line-height:1.6;margin:0}.terms-acceptance__checkbox{margin-top:.15rem;width:20px;height:20px;min-width:20px;min-height:20px;cursor:pointer;flex-shrink:0;accent-color:#1e3a8a}.terms-acceptance__text{flex:1}.terms-acceptance__text a{color:#1e3a8a;text-decoration:underline;font-weight:600}.terms-acceptance__text a:hover{color:#4a2511}@media (max-width: 768px){.terms-acceptance{padding:.75rem}.terms-acceptance__label{font-size:.875rem}}.day-card{background-color:#fff;border:1px solid #dddddd;border-radius:8px;padding:1rem;margin-bottom:1rem;transition:opacity .3s ease-in-out,background-color .3s ease-in-out}.day-card__toggle{margin-bottom:.75rem}.day-card__header{display:flex;justify-content:space-between;align-items:center;font-size:1.125rem;font-weight:600;color:#1e3a8a;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:2px solid #f5f5f5;gap:1rem}@media (max-width: 768px){.day-card__header{font-size:1rem}}.day-card__date{flex:1}.day-card__price{font-weight:700;color:#dc2626;font-size:1.125rem;white-space:nowrap}@media (max-width: 768px){.day-card__price{font-size:1rem}}.day-card__items{display:flex;flex-direction:column;gap:1rem}.day-card--excluded{opacity:.5;background-color:#f9fafb}.day-card--excluded .day-card__header{color:#666}.day-card--excluded .day-card__price{text-decoration:line-through;color:#666}.day-card--excluded .menu-item-display{pointer-events:none}.day-card--excluded .btn--change{opacity:.5;cursor:not-allowed;pointer-events:none}.day-toggle{display:flex;align-items:center;gap:.75rem;cursor:pointer;-webkit-user-select:none;user-select:none}.day-toggle__checkbox{width:20px;height:20px;cursor:pointer;flex-shrink:0}.day-toggle__label{font-size:1rem;font-weight:500;color:#3d1900}.day-toggle:hover .day-toggle__label{color:#1e3a8a}.menu-item-group{display:flex;flex-direction:column;gap:.75rem}.menu-item-label{font-weight:600;color:#3d1900;font-size:1rem}.menu-item-display{display:flex;align-items:center;gap:1rem;justify-content:space-between}@media (min-width: 769px){.menu-item-display{background-color:#faeade;border-radius:8px;padding:.75rem}}@media (max-width: 768px){.menu-item-display{flex-direction:column;align-items:stretch}}.menu-item-card{display:flex;align-items:center;gap:1rem;flex:1}@media (max-width: 768px){.menu-item-card{background-color:#faeade;border-radius:8px;padding:.75rem}}.menu-item-card__image{width:80px;height:80px;border-radius:4px;overflow:hidden;background-color:#fff;flex-shrink:0}.menu-item-card__image picture,.menu-item-card__image img{width:100%;height:100%;object-fit:cover;display:block}.menu-item-card__info{flex:1}.menu-item-card__name{font-weight:600;color:#3d1900;font-size:1rem}.btn--change{flex-shrink:0;white-space:nowrap;padding:.5rem 1rem;font-size:.875rem;border-color:#4a2511;color:#4a2511}.btn--change:hover{background-color:#4a2511;color:#fff}@media (max-width: 768px){.btn--change{width:100%;padding:.75rem 1rem}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:2000;display:flex;align-items:center;justify-content:center;padding:1.5rem;opacity:0;transition:opacity .3s ease-in-out}.modal-overlay--active{opacity:1}.modal-overlay--active .modal-content{transform:scale(1);opacity:1}.modal-content{background-color:#fff;border-radius:12px;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;transform:scale(.9);opacity:0;transition:all .3s ease-in-out;display:flex;flex-direction:column}@media (max-width: 768px){.modal-content{max-height:85vh}}.modal-header{position:sticky;top:0;z-index:10;background-color:#fff;display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;border-bottom:1px solid #dddddd}@media (max-width: 768px){.modal-header{padding:1rem 1.5rem}}.modal-title{font-size:1.25rem;font-weight:600;color:#3d1900;margin:0}@media (max-width: 768px){.modal-title{font-size:1.125rem}}.modal-close{background:none;border:none;font-size:2rem;color:#666;cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease-in-out;flex-shrink:0}.modal-close:hover{background-color:#f5f5f5;color:#3d1900}.product-list{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;padding:2rem}@media (max-width: 768px){.product-list{padding:1.5rem}}@media (min-width: 768px){.product-list{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1024px){.product-list{grid-template-columns:repeat(4,1fr)}}.product-item{background-color:#fff;border:2px solid #dddddd;border-radius:8px;padding:.75rem;cursor:pointer;transition:all .3s ease-in-out;display:flex;flex-direction:column;gap:.5rem}.product-item:hover{border-color:#1e3a8a;box-shadow:0 2px 8px #0000001a;transform:translateY(-2px)}.product-item--selected{border-color:#1e3a8a;box-shadow:0 0 0 3px #1e3a8a26;background-color:#1e3a8a05}.product-item__image{width:100%;aspect-ratio:1;border-radius:4px;overflow:hidden;background-color:#f5f5f5}.product-item__image picture,.product-item__image img{width:100%;height:100%;object-fit:cover;display:block}.product-item__info{display:flex;flex-direction:column;gap:.5rem}.product-item__name{font-weight:600;color:#3d1900;font-size:.875rem;line-height:1.3}.product-item__description{font-size:.75rem;color:#666;line-height:1.3}.product-item__ingredients,.product-item__allergens{font-size:.7rem;color:#666;line-height:1.4;margin-top:.5rem}.product-item__ingredients strong,.product-item__allergens strong{color:#3d1900;font-weight:600}.product-item__allergens{color:#d97706}.product-item__allergens strong{color:#b45309}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{margin-bottom:1rem;color:#3d1900}.markdown-content h1{font-size:1.8rem;font-weight:700}.markdown-content h2{font-size:1.3rem;font-weight:600;margin-top:1.5rem}.markdown-content h3{font-size:1.1rem;font-weight:600}.markdown-content p{margin-bottom:1rem;line-height:1.6;font-size:.95rem}.markdown-content ul,.markdown-content ol{margin-bottom:1rem;padding-left:2rem}.markdown-content ul{list-style:disc}.markdown-content ol{list-style:decimal}.markdown-content li{margin-bottom:.5rem}.markdown-content strong{font-weight:600;color:#3d1900}.markdown-content a{color:#1e3a8a;text-decoration:underline}.markdown-content a:hover{color:#4a2511}.order-summary{margin-top:2rem;padding:2rem;background-color:#fff;border-radius:8px;border:2px solid #1e3a8a}.order-summary h3{font-size:1.25rem;font-weight:600;color:#1e3a8a;margin-bottom:1.5rem;text-align:center}.order-summary__row{display:flex;justify-content:space-between;padding:.75rem 0;color:#3d1900;border-bottom:1px solid #dddddd}.order-summary__row span:first-child{color:#666}.order-summary__row span:last-child{font-weight:600}.order-summary__total{display:flex;justify-content:space-between;padding:1rem 0;margin-top:1rem;border-top:2px solid #1e3a8a;font-size:1.25rem;font-weight:700;color:#1e3a8a}@media (max-width: 768px){.order-summary{padding:1.5rem}.order-summary h3,.order-summary__total{font-size:1.125rem}}.clear-form-container{margin-top:1rem;text-align:center}.clear-form-btn{background:none;border:none;color:#666;font-size:.875rem;cursor:pointer;padding:.5rem .75rem;text-decoration:underline;transition:color .2s ease-in-out;white-space:nowrap;flex-shrink:0}.clear-form-btn:hover{color:#1e3a8a}.billing-info{background-color:#f5f5f5;border:1px solid #dddddd;border-radius:8px;padding:0;margin:0;max-height:0;overflow:hidden;opacity:0;transform:translateY(-10px);transition:max-height .4s ease-out,opacity .3s ease-out,transform .3s ease-out,margin .4s ease-out,padding .4s ease-out}.billing-info--visible{max-height:2000px;opacity:1;transform:translateY(0);padding:1.5rem;margin:2rem 0}@media (max-width: 768px){.billing-info--visible{padding:1rem}}.billing-info__title{font-size:1.125rem;font-weight:600;color:#1e3a8a;margin:0 0 .75rem}.billing-info__explanation{font-size:.875rem;color:#666;line-height:1.5;margin:0 0 1.5rem;font-style:italic}.billing-info__grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 768px){.billing-info__grid{grid-template-columns:1fr}}.billing-info .checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;-webkit-user-select:none;user-select:none}.billing-info .checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer;flex-shrink:0;accent-color:#1e3a8a}.billing-info .checkbox-label span{font-weight:500;color:#3d1900}.billing-info .checkbox-label:hover span{color:#1e3a8a}
