:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--cream:#FDFBF7;--cream-2:#F4EFE9;--cream-3:#EDE5DC;--espresso:#2C1E16;--espresso-mid:#5C4A3D;--espresso-muted:#8C7B70;--border:rgba(44,30,22,0.1);--border-strong:rgba(44,30,22,0.18);--orange:#E65100;--orange-dark:#CC4800;--orange-light:rgba(230,81,0,0.08);--orange-mid:rgba(230,81,0,0.15);--success:#2D7A41;--success-bg:rgba(45,122,65,0.08);--error:#C0392B;--error-bg:rgba(192,57,43,0.08);--shadow-sm:0 2px 8px rgba(44,30,22,0.06);--shadow-md:0 8px 24px rgba(44,30,22,0.10);--shadow-lg:0 20px 48px rgba(44,30,22,0.14);--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:24px;--sidebar-w:272px;color:var(--espresso);background-color:var(--cream)}body,html{margin:0;min-width:320px;min-height:100vh;width:100%}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme:light){:root{color:#213547;background-color:#ffffff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.pdf-document{display:flex;justify-content:center;width:100%}.pdf-document.horizontal{width:fit-content;min-width:100%;justify-content:flex-start;align-items:flex-start}.pdf-pages{display:flex;flex-direction:column;align-items:center;gap:20px;padding:20px}.pdf-pages.horizontal{flex-direction:row;align-items:flex-start;width:max-content;flex-wrap:nowrap}.page-wrapper{margin-bottom:0;flex-shrink:0}.pdf-page-canvas{display:block;max-width:100%;height:auto;background-color:#ffffff;border-radius:4px}.floating-actions{position:fixed;top:16px;right:16px;display:flex;gap:12px;z-index:1000}.floating-actions--compact{flex-direction:column;align-items:flex-end}.floating-action-button{width:40px;height:40px;background-color:var(--espresso);color:var(--cream);border-radius:9999px;text-decoration:none;font-size:1rem;box-shadow:var(--shadow-sm);display:flex;align-items:center;justify-content:center;border:none;cursor:pointer;transition:background-color .12s ease-in-out,transform .12s ease-in-out}.floating-action-button img{width:18px;height:18px}.floating-action-button--menu{padding:0}.floating-action-button__icon{width:18px;height:18px}.floating-action-button:hover{background-color:var(--espresso-dark,#3a261e);transform:translateY(-2px)}.map-button{padding:0}.floating-actions__menu{margin-top:8px;background-color:var(--espresso);color:var(--cream);border-radius:12px;padding:8px;display:flex;flex-direction:column;gap:6px;box-shadow:var(--shadow-md);min-width:180px}.floating-actions__menu-item{display:flex;align-items:center;gap:8px;background:transparent;border:none;color:var(--cream);text-decoration:none;font-size:.9rem;padding:8px 10px;border-radius:8px;cursor:pointer;transition:background-color .12s ease-in-out,color .12s}.floating-actions__menu-item img{width:18px;height:18px}.floating-actions__menu-item:focus,.floating-actions__menu-item:hover{background-color:rgba(255,255,255,.06);outline:none;color:var(--cream)}.menu-divider{height:1px;background-color:rgba(255,255,255,.1);margin:4px 10px}.floating-actions-divider{width:1px;height:24px;background-color:rgba(255,255,255,.15);margin:0 4px;align-self:center}.floating-actions__menu-item--link{display:flex}.pagination-controls{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:12px;background-color:var(--espresso);padding:10px 16px;border-radius:9999px;color:var(--cream);box-shadow:var(--shadow-sm);z-index:1000;font-size:.9rem}.pagination-controls button{border:none;background:#ffffff;color:#1a1a1a;padding:6px 12px;border-radius:16px;cursor:pointer;font-size:.85rem;font-weight:600}.pagination-controls button:disabled{background:#d0d0d0;color:#777777;cursor:not-allowed}.pagination-status{min-width:60px;text-align:center;font-weight:600}.overlay-modal{z-index:1100}.overlay-modal__backdrop{background-color:rgba(0,0,0,.55);padding:0;margin:0}.overlay-modal__content{position:relative;background-color:#ffffff;width:min(90vw,720px);max-height:90vh;display:flex;flex-direction:column;border-radius:12px;box-shadow:0 12px 32px rgba(0,0,0,.3);overflow:hidden;z-index:1}.overlay-modal__header{padding:16px 20px;background-color:var(--espresso);color:var(--cream)}.overlay-modal__header h2{font-size:1rem}.overlay-modal__close{background:none;color:#ffffff;line-height:1}.overlay-modal__content iframe{border:0;width:100%;flex:1 1 auto;min-height:360px}.overlay-modal__body{padding:16px 20px;gap:16px}.overlay-modal__fallback{padding:16px 20px;margin:0;color:#1a1a1a}.overlay-modal__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:12px;padding:0 20px 20px}.overlay-modal__cta{align-self:flex-end;padding:10px 18px;background-color:#1a73e8;color:#ffffff;border-radius:6px;text-decoration:none;font-weight:600;transition:background-color .2s ease-in-out}.overlay-modal__cta:hover{background-color:#1558b0}.wifi-button{padding:0}.wifi-modal__body{display:grid;gap:20px}.wifi-credentials{display:grid;gap:12px}.wifi-credentials__row{display:flex;flex-direction:column;gap:4px}.wifi-credentials__label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#555555;font-weight:600}.wifi-credentials__value{font-size:1rem;font-weight:600;color:#1a1a1a}.wifi-qr{display:flex;flex-direction:column;align-items:center;gap:8px}.wifi-qr img{height:auto;box-shadow:0 6px 16px rgba(0,0,0,.15)}.wifi-qr img,.wifi-qr__placeholder{width:min(220px,50vw);border-radius:12px}.wifi-qr__placeholder{aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;background:#f2f2f2;color:#777777;border:1px dashed #cccccc;font-size:.85rem;text-align:center;padding:12px}.wifi-actions{gap:10px;justify-content:center}.wifi-actions a,.wifi-actions button{border:none;padding:10px 18px;border-radius:6px;font-weight:600;cursor:pointer;transition:background-color .2s ease-in-out}.wifi-actions button{background-color:#1a73e8;color:#ffffff}.wifi-actions button:hover{background-color:#1558b0}.wifi-secondary-button{background-color:#f0f0f0;color:#1a1a1a}.wifi-secondary-button:hover{background-color:#e0e0e0}.wifi-feedback{margin:0;font-size:.85rem;color:#1a73e8}.side-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:12px 18px;background:var(--espresso);color:var(--cream);border-radius:10px;box-shadow:var(--shadow-md);font-size:.9rem;line-height:1.4;max-width:280px;z-index:1200;pointer-events:none}@media (max-width:640px){.side-toast{right:16px;bottom:24px;left:16px;transform:none;text-align:center}}.pdf-error-message{margin-top:16px;padding:12px 16px;background-color:rgba(220,53,69,.12);color:#b00020;border-radius:8px;max-width:min(420px,90vw);text-align:center;font-weight:600}.overlay-modal{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px;background-color:rgba(0,0,0,.65);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:modal-backdrop-in .4s ease-out}@keyframes modal-backdrop-in{0%{background-color:rgba(0,0,0,0);-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}to{background-color:rgba(0,0,0,.65);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}}.overlay-modal__backdrop{position:absolute;inset:0;background:transparent;border:none;cursor:pointer}.overlay-modal__content--premium{position:relative;background:#ffffff;width:100%;max-width:500px;max-height:90vh;border-radius:28px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04),0 0 0 1px rgba(0,0,0,.05);display:flex;flex-direction:column;animation:modal-slide-up .5s cubic-bezier(.16,1,.3,1);box-sizing:border-box;overflow-x:hidden}@keyframes modal-slide-up{0%{transform:translateY(40px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.overlay-modal__header{padding:20px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(0,0,0,.05);flex-shrink:0}.overlay-modal__header--indigo{background:linear-gradient(135deg,#6366f1,#4f46e5);color:white}.overlay-modal__header--red{background:linear-gradient(135deg,#ef4444,#dc2626);color:white}.overlay-modal__header--green{background:linear-gradient(135deg,#10b981,#059669);color:white}.overlay-modal__header--blue{background:linear-gradient(135deg,#3b82f6,#2563eb);color:white}.overlay-modal__header--orange{background:linear-gradient(135deg,#f97316,#ea580c);color:white}.overlay-modal__title-group{display:flex;align-items:center;gap:16px}.overlay-modal__icon-circle{width:42px;height:42px;background:rgba(255,255,255,.2);border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}.overlay-modal__header h2{font-size:1.35rem;font-weight:800;margin:0;letter-spacing:-.03em}.overlay-modal__close{width:36px;height:36px;border-radius:12px;background:rgba(0,0,0,.1);border:none;color:white;display:flex;align-items:center;justify-content:center;font-size:1.5rem;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}.overlay-modal__close:hover{background:rgba(0,0,0,.2);transform:rotate(90deg) scale(1.1)}.overlay-modal__body{padding:16px;display:flex;flex-direction:column;gap:10px;flex:1 1 auto;overflow-y:auto;overflow-x:hidden;box-sizing:border-box;width:100%}.overlay-modal__body--location{padding:0;gap:0}.wifi-modal__body{align-items:center}.wifi-qr__wrapper{padding:16px;background:white;border-radius:24px;text-align:center;transition:transform .3s ease}.wifi-qr__wrapper:hover{transform:scale(1.02)}.wifi-qr__wrapper img{width:200px;height:200px;max-width:100%;display:block}.wifi-qr__scan-hint{margin-top:16px;font-size:.75rem;font-weight:800;color:#64748b;text-transform:uppercase;letter-spacing:.15em;background:#f1f5f9;padding:6px 16px;border-radius:20px;display:inline-block}.wifi-credentials--premium{width:100%;display:grid;grid-template-columns:1fr;gap:12px}.wifi-credentials__pill{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f8fafc;border-radius:16px;border:1px solid #e2e8f0;transition:all .2s cubic-bezier(.4,0,.2,1);flex-wrap:wrap;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.wifi-credentials__pill:focus,.wifi-credentials__pill:hover{background:#f1f5f9;border-color:#cbd5e1;transform:translateY(-2px);box-shadow:0 4px 12px -2px rgba(0,0,0,.05)}.wifi-credentials__pill:active{transform:translateY(0)}.wifi-copy-indicator{font-size:1rem;opacity:.3;transition:opacity .2s ease;margin-left:auto}.wifi-credentials__pill:hover .wifi-copy-indicator{opacity:1}.wifi-credentials__label{font-size:.85rem;font-weight:700;color:#64748b}.wifi-credentials__value{font-size:1.05rem;font-weight:800;color:#1e293b;word-break:break-all;text-align:right;flex:1 1;min-width:120px}.overlay-modal__address-bar{padding:20px 32px;background:#ecfdf5;border-bottom:1px solid #d1fae5}.overlay-modal__address-bar p{margin:0;font-size:1rem;color:#065f46;font-weight:700;line-height:1.5;text-align:center}.overlay-modal__map-container{width:100%;height:350px;background:#f1f5f9;position:relative;overflow:hidden}.overlay-modal__map-container iframe{width:100%;height:100%;border:0}.overlay-modal__fallback-preview{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#94a3b8;padding:40px;text-align:center}.download-modal__intro{margin:0;color:#64748b;font-size:1rem;line-height:1.6;text-align:center}.download-options{display:grid;gap:16px}.download-card{display:flex;align-items:center;gap:20px;padding:24px;background:#ffffff;border:2px solid #f1f5f9;border-radius:24px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-align:left;width:100%;position:relative}.download-card:hover:not(:disabled){border-color:#3b82f6;background:#f0f7ff;transform:translateY(-4px);box-shadow:0 12px 20px -5px rgba(59,130,246,.15)}.download-card:active:not(:disabled){transform:translateY(-1px)}.download-card:disabled{opacity:.6;cursor:not-allowed;filter:grayscale(.5)}.download-card__icon{width:64px;height:64px;border-radius:18px;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:.9rem;color:white;flex-shrink:0;box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}.download-card__icon--pdf{background:linear-gradient(135deg,#ef4444,#b91c1c)}.download-card__icon--img{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.download-card__content{flex:1 1}.download-card__title{display:block;font-size:1.2rem;font-weight:800;color:#1e293b;margin-bottom:6px;letter-spacing:-.01em}.download-card__desc{display:block;font-size:.9rem;color:#64748b;line-height:1.5}.download-card__progress{position:absolute;top:24px;right:24px;font-size:.75rem;font-weight:800;color:#2563eb;background:#dbeafe;padding:6px 12px;border-radius:12px;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.download-status-bar{margin-top:8px;width:100%;height:8px;background:#f1f5f9;border-radius:4px;overflow:hidden}.download-status-bar__fill{height:100%;background:linear-gradient(90deg,#3b82f6,#60a5fa);transition:width .3s cubic-bezier(.4,0,.2,1)}.delivery-modal__body{align-items:center}.delivery-info{width:100%;padding:20px 16px;background:#fff7ed;border:1px dashed #fed7aa;border-radius:20px;text-align:center;transition:all .3s ease;cursor:pointer;box-sizing:border-box}.delivery-info:hover{background:#ffedd5;border-color:#fb923c;transform:translateY(-2px);box-shadow:0 4px 12px -2px rgba(249,115,22,.1)}.delivery-info__label{font-size:.7rem;font-weight:800;color:#c2410c;text-transform:uppercase;letter-spacing:.12em;margin-bottom:4px}.delivery-info__number{font-size:1.5rem;font-weight:900;color:#7c2d12;letter-spacing:-.01em}.overlay-modal__actions--center{padding:24px 32px 32px;display:flex;justify-content:center;gap:12px;flex-shrink:0;box-sizing:border-box;width:100%}.overlay-modal__actions--wifi{gap:12px;margin-top:12px}.overlay-modal__actions--wifi,.premium-button{width:100%;display:flex;justify-content:center}.premium-button{padding:16px 28px;border-radius:20px;border:none;font-weight:800;font-size:1.1rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);align-items:center;text-decoration:none;box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}.premium-button:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(0,0,0,.2)}.premium-button:active{transform:translateY(0)}.premium-button--indigo{background:#4f46e5;color:white}.premium-button--red{background:#ef4444;color:white}.premium-button--green{background:#10b981;color:white}.premium-button--orange{background:#f97316;color:white}.premium-button--orange:hover{background:#ea580c}.premium-button--secondary{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.premium-button--secondary:hover{background:#e2e8f0;color:#1e293b}@media (max-width:640px){.overlay-modal{padding:12px}.overlay-modal__content--premium{border-radius:20px;max-height:92vh}.overlay-modal__header{padding:10px 14px}.overlay-modal__header h2{font-size:1.05rem}.overlay-modal__icon-circle{width:30px;height:30px;font-size:1rem;border-radius:8px}.overlay-modal__body{padding:12px;gap:8px}.delivery-info{padding:14px 12px}.delivery-info__number{font-size:1.25rem}.delivery-modal__intro{font-size:.8rem;margin:0;line-height:1.3}.wifi-qr__wrapper{padding:10px;border-radius:18px;width:fit-content;box-sizing:border-box}.wifi-qr__wrapper img{width:140px;height:140px}.wifi-credentials__pill{padding:10px 12px;border-radius:12px}.wifi-credentials__label{font-size:.75rem}.wifi-credentials__value{font-size:.85rem;word-break:break-all}.overlay-modal__address-bar{padding:14px 20px}.overlay-modal__address-bar p{font-size:.85rem}.overlay-modal__map-container{height:240px}.download-modal__intro{font-size:.85rem;margin-bottom:4px}.download-card{padding:16px;gap:14px;border-radius:18px}.download-card__icon{width:48px;height:48px;border-radius:12px}.download-card__title{font-size:1rem}.download-card__desc{font-size:.75rem}.download-card__progress{top:14px;right:14px;padding:4px 8px;font-size:.65rem}.overlay-modal__actions--wifi{flex-direction:column;gap:8px;margin-top:8px}.premium-button{padding:12px 20px;font-size:.95rem;border-radius:14px}}.side-toast.premium-toast{background:rgba(15,23,42,.95);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);padding:16px 24px;border-radius:24px;box-shadow:0 20px 25px -5px rgba(0,0,0,.3);gap:14px;font-weight:700;min-width:300px}.side-toast.premium-toast,.toast-icon{display:flex;align-items:center;color:white}.toast-icon{width:24px;height:24px;background:#10b981;border-radius:50%;justify-content:center;font-size:.85rem}