@font-face{font-family:Inter;src:url(/assets/fonts/inter-regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/assets/fonts/inter-bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--bg-color: #F9FAFB;--text-primary: #111827;--text-secondary: #4B5563;--card-bg: #FFFFFF;--accent-color: #0F172A;--accent-hover: #1E293B;--surface-color: #F3F4F6;--surface-hover: #E5E7EB;--danger-color: #B91C1C;--danger-bg: #FEF2F2;--danger-border: #FCA5A5;--success-color: #047857;--success-bg: #ECFDF5;--success-border: #6EE7B7;--border-color: #E5E7EB;--banner-bg: #111827;--banner-text: #FFFFFF;--font-family: "Inter", system-ui, sans-serif;--font-base: 18px;--radius-sm: 12px;--radius-md: 20px;--shadow-subtle: 0 4px 6px -1px rgba(0, 0, 0, .05), 0 2px 4px -1px rgba(0, 0, 0, .03);--shadow-float: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04)}.high-contrast{--bg-color: #030712;--text-primary: #F9FAFB;--text-secondary: #9CA3AF;--card-bg: #111827;--accent-color: #F9FAFB;--accent-hover: #E5E7EB;--surface-color: #1F2937;--surface-hover: #374151;--danger-color: #F87171;--danger-bg: rgba(239, 68, 68, .1);--danger-border: #991B1B;--success-color: #34D399;--success-bg: rgba(16, 185, 129, .1);--success-border: #065F46;--border-color: #374151;--banner-bg: #1F2937;--banner-text: #F9FAFB;--shadow-subtle: 0 4px 6px -1px rgba(0, 0, 0, .4)}.sun-mode{--bg-color: #FFFFFF;--text-primary: #000000;--text-secondary: #000000;--card-bg: #FFFFFF;--accent-color: #000000;--accent-hover: #000000;--surface-color: #FFFFFF;--surface-hover: #E5E7EB;--danger-color: #000000;--danger-bg: #FFFFFF;--danger-border: #000000;--success-color: #000000;--success-bg: #FFFFFF;--success-border: #000000;--border-color: #000000;--banner-bg: #FFFFFF;--banner-text: #000000;--shadow-subtle: none}.sun-mode .card,.sun-mode .meal-card,.sun-mode .danger-box-elegant{border:2px solid #000;box-shadow:none}.sun-mode .minimal-header{border-bottom:2px solid #000}.sun-mode .bottom-nav{border-top:2px solid #000}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}body{font-family:var(--font-family);font-size:var(--font-base);color:var(--text-primary);background-color:var(--bg-color);line-height:1.6;transition:background-color .3s ease,color .3s ease}.hidden{display:none!important}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.5rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:1rem}.mt-4{margin-top:1.5rem}.text-center{text-align:center}.text-danger{color:var(--danger-color)}.text-secondary{color:var(--text-secondary)}.font-bold{font-weight:700}.w-100{width:100%}.d-flex{display:flex}.justify-between{justify-content:space-between}.align-center{align-items:center}.gap-2{gap:8px}.app-container{max-width:600px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column}.minimal-header{position:sticky;top:0;z-index:90;background:var(--bg-color);border-bottom:1px solid var(--border-color);padding-bottom:12px}.banner-medicamento{background:var(--banner-bg);color:var(--banner-text);padding:10px 16px;text-align:center;font-weight:700;font-size:1rem;letter-spacing:.5px}.top-nav{display:flex;justify-content:space-between;align-items:center;padding:16px 16px 0}.nav-btn{background:transparent;border:none;color:var(--text-primary);padding:8px;border-radius:50%;display:flex;justify-content:center;align-items:center;cursor:pointer;transition:background .2s}.nav-btn:hover{background:var(--surface-color)}.nav-btn:disabled{opacity:.3;cursor:not-allowed}.day-selector{flex:1;text-align:center;position:relative}.day-selector h1{font-size:1.4rem;font-weight:700;margin:0;color:var(--text-primary)}#day-select{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.main-content{padding:24px 20px;flex:1}.spacer-bottom{height:120px}.card{background:var(--card-bg);border-radius:var(--radius-md);padding:24px;box-shadow:var(--shadow-subtle);border:1px solid var(--border-color);margin-bottom:24px}.location-badge{text-align:center;font-size:1.8rem;font-weight:700;margin-bottom:24px;color:var(--text-primary);letter-spacing:-.5px}.hotel-info{display:flex;align-items:center;gap:16px}.hotel-icon svg{width:32px;height:32px;color:var(--text-secondary)}.hotel-details p{font-weight:700;font-size:1.2rem;margin-bottom:4px;color:var(--text-primary)}.hotel-details button{padding:0;font-size:1rem;color:var(--text-secondary);text-decoration:underline;font-weight:400}.meals-container{display:flex;flex-direction:column;gap:32px}.meal-card{background:var(--card-bg);border-radius:var(--radius-md);padding:28px 24px;box-shadow:var(--shadow-subtle);border:1px solid var(--border-color);position:relative}.meal-card.completed{opacity:.5}.meal-header-elegant{font-size:.9rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:2px;margin-bottom:16px;display:flex;align-items:center;gap:8px}.meal-header-elegant:after{content:"";flex:1;height:1px;background:var(--border-color)}.meal-plats{font-size:1.8rem;font-weight:700;color:var(--text-primary);line-height:1.3;margin-bottom:12px;letter-spacing:-.5px}.meal-restaurant{font-size:1.1rem;font-weight:400;color:var(--text-secondary);margin-bottom:24px;display:flex;align-items:center;gap:8px}.danger-box-elegant{background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:var(--radius-sm);padding:16px;margin-bottom:24px;font-size:1.1rem;display:flex;align-items:flex-start;gap:12px}.danger-box-elegant svg{width:24px;height:24px;color:var(--danger-color);flex-shrink:0;margin-top:2px}.danger-box-elegant div{color:var(--text-primary)}.danger-box-elegant strong{color:var(--danger-color);font-weight:700}.plan-b-card{background:var(--surface-color);border-radius:var(--radius-sm);padding:16px;margin-top:24px}.plan-b-title{font-weight:700;font-size:1.1rem;display:flex;justify-content:space-between;cursor:pointer;color:var(--text-primary)}.plan-b-content{margin-top:12px;display:none;font-size:1.1rem;color:var(--text-secondary)}.plan-b-content.show{display:block}.check-container{display:flex;align-items:center;gap:16px;padding:16px;background:var(--surface-color);border-radius:var(--radius-sm);cursor:pointer;font-weight:700;font-size:1.1rem;transition:background .2s}.check-container:hover{background:var(--surface-hover)}.check-container input{width:28px;height:28px;accent-color:var(--success-color)}button{font-family:inherit;font-size:1.1rem;min-height:54px;padding:0 24px;border-radius:var(--radius-sm);border:none;cursor:pointer;font-weight:700;display:inline-flex;justify-content:center;align-items:center;gap:10px;transition:all .2s ease}.btn-primary{background:var(--accent-color);color:var(--bg-color)}.btn-secondary{background:var(--surface-color);color:var(--text-primary)}.btn-secondary:active{background:var(--surface-hover)}.btn-outline{background:transparent;color:var(--text-primary);border:1px solid var(--border-color)}.btn-text{background:transparent;color:var(--text-primary);min-height:auto;padding:8px}textarea,input[type=text],input[type=number]{width:100%;font-family:inherit;font-size:1.1rem;padding:16px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--card-bg);color:var(--text-primary);resize:vertical}textarea:focus,input:focus{outline:none;border-color:var(--text-secondary)}.bottom-nav{position:fixed;bottom:0;left:0;right:0;max-width:600px;margin:0 auto;background:var(--card-bg);border-top:1px solid var(--border-color);display:flex;justify-content:space-around;padding:12px 8px 24px;z-index:90}.nav-item{background:transparent;flex-direction:column;min-height:auto;padding:8px;gap:6px;color:var(--text-secondary);flex:1;border-radius:12px;font-weight:700;font-size:.9rem}.nav-item svg{width:28px;height:28px;stroke-width:2;transition:stroke .2s}.nav-item.active{color:var(--accent-color)}.nav-item.active svg{stroke-width:2.5}.nav-item.text-danger.active{color:var(--danger-color)}.sheet-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:100;opacity:0;transition:opacity .3s ease}.sheet-overlay.show{opacity:1}.bottom-sheet{position:fixed;bottom:0;left:0;right:0;max-width:600px;margin:0 auto;background:var(--bg-color);border-radius:24px 24px 0 0;z-index:101;transform:translateY(100%);transition:transform .4s cubic-bezier(.22,1,.36,1);box-shadow:var(--shadow-float);display:flex;flex-direction:column;max-height:90vh}.bottom-sheet.show{transform:translateY(0)}.sub-sheet{z-index:102}.sheet-handle{width:40px;height:5px;background:var(--border-color);border-radius:10px;margin:16px auto}.sheet-content{padding:0 24px 40px;overflow-y:auto}.sheet-content h2{margin-bottom:24px;font-size:1.6rem;font-weight:700}.translator-box{background:var(--card-bg);padding:24px;border-radius:var(--radius-md);margin-top:32px;border:1px solid var(--border-color)}.huge-number{font-size:56px;font-weight:700;color:var(--danger-color);text-decoration:none;display:block;margin:16px 0}@media (min-width: 768px){.app-container{max-width:100%;flex-direction:row;justify-content:center;gap:40px;padding:40px;background:var(--surface-color)}.minimal-header,.main-content{background:var(--bg-color);border-radius:var(--radius-md);box-shadow:var(--shadow-subtle)}.minimal-header{width:400px;height:fit-content;padding:24px;position:static}.main-content{width:600px;padding:32px;max-height:90vh;overflow-y:auto}.bottom-nav{display:none}}
