:root{--medical-primary: #3b82f6;--medical-primary-light: #60a5fa;--medical-primary-dark: #1d4ed8;--medical-secondary: #10b981;--medical-secondary-light: #34d399;--medical-accent: #ef4444;--medical-accent-light: #f87171;--medical-warning: #f59e0b;--medical-warning-light: #fbbf24;--medical-success: #22c55e;--medical-success-light: #4ade80;--medical-white: #ffffff;--medical-gray-50: #f8fafc;--medical-gray-100: #f1f5f9;--medical-gray-200: #e2e8f0;--medical-gray-300: #cbd5e1;--medical-gray-400: #94a3b8;--medical-gray-500: #64748b;--medical-gray-600: #475569;--medical-gray-700: #334155;--medical-gray-800: #1e293b;--medical-gray-900: #0f172a;--medical-normal: #22c55e;--medical-elevated: #f59e0b;--medical-high: #ef4444;--medical-critical: #dc2626;--medical-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans Thai", "Helvetica Neue", Arial, sans-serif;--medical-font-size-xs: 1rem;--medical-font-size-sm: 1.125rem;--medical-font-size-base: 1.25rem;--medical-font-size-lg: 1.5rem;--medical-font-size-xl: 1.75rem;--medical-font-size-2xl: 2rem;--medical-font-size-3xl: 2.25rem;--medical-spacing-1: .375rem;--medical-spacing-2: .75rem;--medical-spacing-3: 1rem;--medical-spacing-4: 1.25rem;--medical-spacing-5: 1.5rem;--medical-spacing-6: 2rem;--medical-spacing-8: 2.5rem;--medical-spacing-10: 3rem;--medical-spacing-12: 4rem;--medical-radius-sm: .5rem;--medical-radius-md: .75rem;--medical-radius-lg: 1rem;--medical-radius-xl: 1.25rem;--medical-radius-2xl: 1.5rem;--medical-shadow-sm: 0 2px 4px 0 rgba(0, 0, 0, .08);--medical-shadow-md: 0 6px 12px -2px rgba(0, 0, 0, .12);--medical-shadow-lg: 0 12px 20px -4px rgba(0, 0, 0, .15);--medical-shadow-xl: 0 24px 32px -8px rgba(0, 0, 0, .18);--medical-transition: all .3s cubic-bezier(.4, 0, .2, 1);--medical-transition-fast: all .15s cubic-bezier(.4, 0, .2, 1);--medical-touch-target: 56px;--medical-card-padding: 2rem;--medical-input-height: 4rem;--liff-tall-height: 100vh;--liff-header-height: 4.5rem;--liff-content-height: calc(100vh - 4.5rem) ;--liff-compact-spacing: .75rem;--liff-compact-padding: 1.25rem}*{box-sizing:border-box;margin:0;padding:0}.medical-liff-tall{min-height:100vh!important;height:auto!important;overflow:auto!important}.medical-liff-content.medical-liff-scrollable{flex:1!important;overflow-y:auto!important;min-height:100vh!important;-webkit-overflow-scrolling:touch!important;position:relative!important;z-index:1!important}@media (max-width: 768px){.medical-liff-tall{height:auto!important;min-height:100vh!important;overflow:auto!important;-webkit-overflow-scrolling:touch!important}.medical-liff-content.medical-liff-scrollable{height:auto!important;min-height:100vh!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important}}html{font-size:16px;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;height:100%;overflow:auto}body{font-family:var(--medical-font-family);font-size:var(--medical-font-size-base);line-height:1.6;color:var(--medical-gray-900);background:linear-gradient(135deg,var(--medical-gray-50) 0%,var(--medical-gray-100) 100%);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100%;overflow:auto}.medical-liff-tall{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,var(--medical-gray-50) 0%,var(--medical-gray-100) 100%)}.medical-liff-header{flex-shrink:0;height:var(--liff-header-height);background:var(--medical-white);border-bottom:2px solid var(--medical-gray-200);display:flex;align-items:center;justify-content:center;padding:0 var(--liff-compact-padding);box-shadow:var(--medical-shadow-sm);position:relative}.medical-liff-header:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,var(--medical-primary-light) 50%,transparent 100%)}.medical-liff-content{flex:1;display:flex;flex-direction:column;padding:var(--liff-compact-spacing);overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--medical-gray-300) transparent}.medical-liff-content::-webkit-scrollbar{width:6px}.medical-liff-content::-webkit-scrollbar-track{background:transparent}.medical-liff-content::-webkit-scrollbar-thumb{background:var(--medical-gray-300);border-radius:3px}.medical-liff-content::-webkit-scrollbar-thumb:hover{background:var(--medical-gray-400)}.medical-liff-scrollable{flex:1;overflow-y:auto;padding:var(--liff-compact-spacing);scrollbar-width:thin;scrollbar-color:var(--medical-gray-300) transparent}.medical-liff-scrollable::-webkit-scrollbar{width:6px}.medical-liff-scrollable::-webkit-scrollbar-track{background:transparent}.medical-liff-scrollable::-webkit-scrollbar-thumb{background:var(--medical-gray-300);border-radius:3px}.medical-liff-scrollable::-webkit-scrollbar-thumb:hover{background:var(--medical-gray-400)}.medical-liff-compact-card{background:var(--medical-white);border-radius:var(--medical-radius-lg);box-shadow:var(--medical-shadow-md);padding:var(--liff-compact-padding);margin-bottom:var(--liff-compact-spacing);flex-shrink:0;border:1px solid var(--medical-gray-200);position:relative;overflow:hidden}.medical-liff-compact-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--medical-primary) 0%,var(--medical-secondary) 100%)}.medical-liff-compact-header{text-align:center;margin-bottom:var(--liff-compact-spacing)}.medical-liff-compact-icon{width:3.5rem;height:3.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto var(--liff-compact-spacing);background:linear-gradient(135deg,var(--medical-primary) 0%,var(--medical-primary-light) 100%);color:var(--medical-white);box-shadow:var(--medical-shadow-md);position:relative}.medical-liff-compact-icon:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:50%;background:linear-gradient(135deg,var(--medical-primary-light) 0%,var(--medical-secondary) 100%);z-index:-1;opacity:.3}.medical-liff-compact-icon svg{width:1.75rem;height:1.75rem;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.medical-liff-compact-title{font-size:var(--medical-font-size-xl);font-weight:700;margin-bottom:var(--liff-compact-spacing);color:var(--medical-gray-900);text-shadow:0 1px 2px rgba(0,0,0,.05)}.medical-liff-compact-subtitle{font-size:var(--medical-font-size-sm);color:var(--medical-gray-600);line-height:1.5}.medical-liff-form{display:flex;flex-direction:column;height:100%;gap:var(--liff-compact-spacing)}.medical-liff-form-group{margin-bottom:var(--liff-compact-spacing);position:relative}.medical-liff-form-group:last-child{margin-bottom:0}.medical-liff-label{display:block;font-size:var(--medical-font-size-base);font-weight:600;color:var(--medical-gray-700);margin-bottom:.75rem;line-height:1.4}.medical-liff-label:after{content:"";position:absolute;bottom:-2px;left:0;width:2rem;height:2px;background:linear-gradient(90deg,var(--medical-primary) 0%,transparent 100%);border-radius:1px}.medical-liff-input{width:100%;height:var(--medical-input-height);padding:.875rem 1rem;border:2px solid var(--medical-gray-300);border-radius:var(--medical-radius-md);font-family:inherit;font-size:var(--medical-font-size-base);line-height:1.5;color:var(--medical-gray-900);background:var(--medical-white);transition:var(--medical-transition);-webkit-appearance:none;-moz-appearance:none;appearance:none}.medical-liff-input:focus{outline:none;border-color:var(--medical-primary);box-shadow:0 0 0 3px #3b82f626}.medical-liff-input::placeholder{color:var(--medical-gray-400);font-size:var(--medical-font-size-sm)}.medical-liff-input:hover{border-color:var(--medical-primary-light)}.medical-liff-textarea{width:100%;min-height:5rem;padding:.875rem 1rem;border:2px solid var(--medical-gray-300);border-radius:var(--medical-radius-md);font-family:inherit;font-size:var(--medical-font-size-base);line-height:1.5;color:var(--medical-gray-900);background:var(--medical-white);resize:vertical;transition:var(--medical-transition);-webkit-appearance:none;-moz-appearance:none;appearance:none}.medical-liff-textarea:focus{outline:none;border-color:var(--medical-primary);box-shadow:0 0 0 3px #3b82f626}.medical-liff-textarea:hover{border-color:var(--medical-primary-light)}.medical-liff-textarea::placeholder{color:var(--medical-gray-400);font-size:var(--medical-font-size-sm)}.medical-liff-grid{display:grid;gap:.75rem}.medical-liff-grid-2{grid-template-columns:repeat(2,1fr)}.medical-liff-grid-3{grid-template-columns:repeat(3,1fr)}.medical-liff-grid-4{grid-template-columns:repeat(4,1fr)}.medical-liff-form-option{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem .75rem;border:2px solid var(--medical-gray-300);border-radius:var(--medical-radius-md);background:var(--medical-white);cursor:pointer;transition:var(--medical-transition);min-height:4.5rem;position:relative;overflow:hidden;width:100%}.medical-liff-form-option:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,var(--medical-primary) 0%,var(--medical-primary-light) 100%);opacity:0;transition:var(--medical-transition);z-index:0}.medical-liff-form-option:hover{border-color:var(--medical-primary);transform:translateY(-2px);box-shadow:var(--medical-shadow-lg)}.medical-liff-form-option:hover:before{opacity:.05}.medical-liff-form-option.selected{border-color:var(--medical-primary);background:linear-gradient(135deg,#3b82f61a,#60a5fa1a);box-shadow:0 0 0 3px #3b82f626;transform:translateY(-1px)}.medical-liff-form-option.selected:before{opacity:.1}.medical-liff-form-option-icon{font-size:1.5rem;margin-bottom:.375rem;line-height:1;position:relative;z-index:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.medical-liff-form-option-label{font-size:var(--medical-font-size-sm);font-weight:600;text-align:center;line-height:1.2;margin:0;position:relative;z-index:1;color:var(--medical-gray-700)}.medical-liff-form-option.selected .medical-liff-form-option-label{color:var(--medical-primary);font-weight:700}.medical-liff-btn{display:inline-flex;align-items:center;justify-content:center;min-height:4rem;min-width:4rem;padding:1rem 2rem;border:none;border-radius:var(--medical-radius-md);font-family:inherit;font-size:var(--medical-font-size-base);font-weight:600;text-decoration:none;cursor:pointer;transition:var(--medical-transition);user-select:none;-webkit-user-select:none;position:relative;overflow:hidden}.medical-liff-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.2) 50%,transparent 100%);transition:var(--medical-transition)}.medical-liff-btn:hover:before{left:100%}.medical-liff-btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.medical-liff-btn-primary{background:linear-gradient(135deg,var(--medical-primary) 0%,var(--medical-primary-light) 100%);color:var(--medical-white);box-shadow:var(--medical-shadow-md)}.medical-liff-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--medical-primary-dark) 0%,var(--medical-primary) 100%);transform:translateY(-2px);box-shadow:var(--medical-shadow-lg)}.medical-liff-btn-secondary{background:linear-gradient(135deg,var(--medical-secondary) 0%,var(--medical-secondary-light) 100%);color:var(--medical-white);box-shadow:var(--medical-shadow-md)}.medical-liff-btn-secondary:hover:not(:disabled){background:linear-gradient(135deg,#059669 0%,var(--medical-secondary) 100%);transform:translateY(-2px);box-shadow:var(--medical-shadow-lg)}.medical-liff-btn-danger{background:linear-gradient(135deg,var(--medical-accent) 0%,var(--medical-accent-light) 100%);color:var(--medical-white);box-shadow:var(--medical-shadow-md)}.medical-liff-btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#dc2626 0%,var(--medical-accent) 100%);transform:translateY(-2px);box-shadow:var(--medical-shadow-lg)}.medical-liff-btn-success{background:linear-gradient(135deg,var(--medical-success) 0%,var(--medical-success-light) 100%);color:var(--medical-white);box-shadow:var(--medical-shadow-md)}.medical-liff-btn-success:hover:not(:disabled){background:linear-gradient(135deg,#16a34a 0%,var(--medical-success) 100%);transform:translateY(-2px);box-shadow:var(--medical-shadow-lg)}.medical-liff-btn-full{width:100%}.medical-liff-btn-lg{padding:1rem 2rem;font-size:var(--medical-font-size-lg);min-height:3.75rem}.medical-liff-alert{padding:1rem 1.25rem;border-radius:var(--medical-radius-md);font-size:var(--medical-font-size-base);line-height:1.5;margin-bottom:1rem;border-left:4px solid;position:relative;overflow:hidden}.medical-liff-alert p{margin:0;font-size:var(--medical-font-size-base);line-height:1.5}.medical-liff-alert:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(255,255,255,.1) 0%,transparent 100%);pointer-events:none}.medical-liff-alert-success{background:linear-gradient(135deg,#22c55e1a,#4ade801a);border-left-color:var(--medical-success);color:var(--medical-success)}.medical-liff-alert-warning{background:linear-gradient(135deg,#f59e0b1a,#fbbf241a);border-left-color:var(--medical-warning);color:var(--medical-warning)}.medical-liff-alert-danger{background:linear-gradient(135deg,#ef44441a,#f871711a);border-left-color:var(--medical-accent);color:var(--medical-accent)}.medical-liff-alert-info{background:linear-gradient(135deg,#3b82f61a,#60a5fa1a);border-left-color:var(--medical-primary);color:var(--medical-primary)}.medical-liff-loading-compact{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:1rem;text-align:center;background:linear-gradient(135deg,var(--medical-gray-50) 0%,var(--medical-white) 100%);gap:1.5rem}.medical-liff-loading-header{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem}.medical-liff-loading-logo-compact{position:relative;width:50px;height:50px;display:flex;align-items:center;justify-content:center}.medical-liff-loading-spinner-compact{width:40px;height:40px;border:3px solid var(--medical-gray-200);border-top:3px solid var(--medical-primary);border-radius:50%;animation:spin 1.5s linear infinite;position:absolute}.medical-liff-loading-logo-image-compact{width:40px;height:40px;position:relative;z-index:1;animation:pulse 2s ease-in-out infinite;border-radius:50%;object-fit:cover;box-shadow:var(--medical-shadow-sm)}.medical-liff-loading-logo-fallback{width:40px;height:40px;position:relative;z-index:1;animation:pulse 2s ease-in-out infinite;font-size:1.5rem;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--medical-primary);color:var(--medical-white);box-shadow:var(--medical-shadow-sm)}.medical-liff-loading-title-compact{text-align:left}.medical-liff-loading-title-compact h2{font-size:1.25rem;font-weight:700;color:var(--medical-primary);margin:0 0 .25rem;line-height:1.2}.medical-liff-loading-title-compact p{font-size:.875rem;color:var(--medical-gray-600);margin:0;line-height:1.2}.medical-liff-loading-progress-compact{display:flex;flex-direction:column;align-items:center;gap:.5rem;width:100%;max-width:250px}.medical-liff-loading-progress-bar-compact{width:100%;height:8px;background:var(--medical-gray-200);border-radius:4px;overflow:hidden;box-shadow:inset 0 1px 2px #0000001a}.medical-liff-loading-progress-fill-compact{height:100%;background:linear-gradient(90deg,var(--medical-primary) 0%,var(--medical-accent) 100%);border-radius:4px;transition:width .5s ease;box-shadow:0 1px 2px #0003}.medical-liff-loading-progress-text-compact{font-size:.875rem;font-weight:600;color:var(--medical-primary)}.medical-liff-loading-status-compact{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--medical-primary-light);border:1px solid var(--medical-primary);border-radius:8px;box-shadow:var(--medical-shadow-sm)}.medical-liff-loading-status-icon{font-size:1rem}.medical-liff-loading-status-text{font-size:.875rem;font-weight:600;color:var(--medical-white)}.medical-liff-loading-instructions-compact{display:flex;flex-direction:column;gap:.5rem;width:100%;max-width:250px}.medical-liff-loading-instruction-compact{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--medical-white);border:1px solid var(--medical-gray-200);border-radius:6px;box-shadow:var(--medical-shadow-sm);font-size:.75rem;color:var(--medical-gray-700)}.medical-liff-loading-instruction-compact span{font-size:.875rem}.medical-liff-loading-support-compact{padding:.5rem .75rem;background:var(--medical-warning-light);border:1px solid var(--medical-warning);border-radius:6px;font-size:.75rem;color:var(--medical-gray-800)}.medical-liff-loading-support-compact strong{color:var(--medical-gray-900);font-weight:700}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.medical-liff-loading-progress{width:100%;max-width:300px;margin-bottom:1.5rem;animation:fade-in-up .8s ease-out .4s both}.medical-liff-loading-progress-bar{width:100%;height:8px;background:var(--medical-gray-200);border-radius:4px;overflow:hidden;position:relative}.medical-liff-loading-progress-fill{height:100%;background:var(--medical-primary);border-radius:4px;position:relative}.medical-liff-loading-steps{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem;animation:fade-in-up .8s ease-out .6s both}.medical-liff-loading-step{display:flex;align-items:center;gap:.75rem;padding:.5rem;border-radius:8px;background:var(--medical-gray-50);transition:all .3s ease}.medical-liff-loading-step.active{background:var(--medical-primary-light);border-left:4px solid var(--medical-primary)}.medical-liff-loading-step.completed{background:var(--medical-success-light);border-left:4px solid var(--medical-success)}.medical-liff-loading-step-icon{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.875rem;color:#fff;background:var(--medical-gray-400);transition:all .3s ease}.medical-liff-loading-step.active .medical-liff-loading-step-icon{background:var(--medical-primary)}.medical-liff-loading-step.completed .medical-liff-loading-step-icon{background:var(--medical-success)}.medical-liff-loading-step-text{font-size:.875rem;color:var(--medical-gray-600);flex:1}.medical-liff-loading-step.active .medical-liff-loading-step-text{color:var(--medical-primary);font-weight:500}.medical-liff-loading-step.completed .medical-liff-loading-step-text{color:var(--medical-success);font-weight:500}.medical-liff-loading-dots{display:flex;gap:.5rem;justify-content:center;margin-top:1rem}.medical-liff-loading-dot{width:8px;height:8px;border-radius:50%;background:var(--medical-primary);animation:loading-dots 1.4s ease-in-out infinite both}.medical-liff-loading-dot:nth-child(1){animation-delay:-.32s}.medical-liff-loading-dot:nth-child(2){animation-delay:-.16s}.medical-liff-loading-dot:nth-child(3){animation-delay:0s}.medical-liff-loading-message{font-size:.875rem;color:var(--medical-gray-600);margin-top:1rem;animation:fade-in-up .8s ease-out .8s both}.medical-liff-spinner{width:50px;height:50px;border:4px solid var(--medical-gray-200);border-top:4px solid var(--medical-primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem;position:relative}.medical-liff-spinner:after{content:"";position:absolute;top:-4px;left:-4px;right:-4px;bottom:-4px;border:4px solid transparent;border-top:4px solid var(--medical-secondary);border-radius:50%;animation:spin 1.5s linear infinite reverse}.medical-liff-text-xs{font-size:var(--medical-font-size-xs)}.medical-liff-text-sm{font-size:var(--medical-font-size-sm)}.medical-liff-text-base{font-size:var(--medical-font-size-base)}.medical-liff-text-lg{font-size:var(--medical-font-size-lg)}.medical-liff-text-xl{font-size:var(--medical-font-size-xl)}.medical-liff-font-normal{font-weight:400}.medical-liff-font-medium{font-weight:500}.medical-liff-font-semibold{font-weight:600}.medical-liff-font-bold{font-weight:700}.medical-liff-text-center{text-align:center}.medical-liff-text-left{text-align:left}.medical-liff-text-right{text-align:right}.medical-liff-p-1{padding:var(--liff-compact-spacing)}.medical-liff-p-2{padding:var(--medical-spacing-2)}.medical-liff-p-3{padding:var(--medical-spacing-3)}.medical-liff-m-1{margin:var(--liff-compact-spacing)}.medical-liff-m-2{margin:var(--medical-spacing-2)}.medical-liff-m-3{margin:var(--medical-spacing-3)}.medical-liff-mb-1{margin-bottom:var(--liff-compact-spacing)}.medical-liff-mb-2{margin-bottom:var(--medical-spacing-2)}.medical-liff-mb-3{margin-bottom:var(--medical-spacing-3)}.medical-liff-mt-1{margin-top:var(--liff-compact-spacing)}.medical-liff-mt-2{margin-top:var(--medical-spacing-2)}.medical-liff-mt-3{margin-top:var(--medical-spacing-3)}.medical-liff-text-primary{color:var(--medical-primary)}.medical-liff-text-secondary{color:var(--medical-secondary)}.medical-liff-text-success{color:var(--medical-success)}.medical-liff-text-warning{color:var(--medical-warning)}.medical-liff-text-danger{color:var(--medical-accent)}.medical-liff-text-muted{color:var(--medical-gray-500)}.medical-liff-bg-primary{background-color:var(--medical-primary)}.medical-liff-bg-secondary{background-color:var(--medical-secondary)}.medical-liff-bg-success{background-color:var(--medical-success)}.medical-liff-bg-warning{background-color:var(--medical-warning)}.medical-liff-bg-danger{background-color:var(--medical-accent)}.medical-liff-bg-white{background-color:var(--medical-white)}@media (max-width: 480px){.medical-liff-grid-4{grid-template-columns:repeat(4,1fr);gap:.5rem}.medical-liff-grid-2,.medical-liff-grid-3{grid-template-columns:1fr}.medical-liff-compact-title{font-size:var(--medical-font-size-lg)}.medical-liff-compact-icon{width:3.5rem;height:3.5rem}.medical-liff-compact-icon svg{width:1.75rem;height:1.75rem}.medical-liff-form-option{min-height:3.5rem;padding:.5rem .25rem}.medical-liff-form-option-icon{font-size:1.125rem;margin-bottom:.125rem}.medical-liff-form-option-label{font-size:var(--medical-font-size-xs)}.medical-liff-input{height:3.5rem;font-size:var(--medical-font-size-base)}.medical-liff-textarea{min-height:4rem;font-size:var(--medical-font-size-base)}.medical-liff-btn{min-height:3.5rem;font-size:var(--medical-font-size-base)}.medical-liff-label{font-size:var(--medical-font-size-base);margin-bottom:.75rem}.medical-liff-alert{padding:1.25rem;font-size:var(--medical-font-size-base)}.medical-liff-alert p{font-size:var(--medical-font-size-base)}.medical-liff-loading{min-height:50vh;padding:1.5rem}.medical-liff-loading-logo{width:60px;height:60px}.medical-liff-loading-title{font-size:1.25rem}.medical-liff-loading-subtitle{font-size:.875rem}.medical-liff-loading-steps{gap:.5rem}.medical-liff-loading-step{padding:.375rem}.medical-liff-loading-step-icon{width:20px;height:20px;font-size:.75rem}.medical-liff-loading-step-text{font-size:.75rem}}@media (prefers-contrast: high){:root{--medical-gray-300: #000000;--medical-gray-500: #000000;--medical-gray-700: #000000}.medical-liff-compact-card,.medical-liff-input,.medical-liff-textarea,.medical-liff-form-option{border:2px solid #000000}}@keyframes medical-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse-glow{0%{transform:scale(1);filter:drop-shadow(0 0 5px rgba(59,130,246,.3))}to{transform:scale(1.05);filter:drop-shadow(0 0 15px rgba(59,130,246,.6))}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes progress-fill{0%{width:0%}50%{width:70%}to{width:100%}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes loading-dots{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.medical-liff-pulse{animation:medical-pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes medical-pulse{0%,to{opacity:1}50%{opacity:.7}}.medical-liff-loading.initializing,.medical-liff-loading.connecting,.medical-liff-loading.ready{background:var(--medical-white)}.medical-liff-loading-success{animation:success-bounce .6s ease-out}@keyframes success-bounce{0%{transform:scale(.3);opacity:0}50%{transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1);opacity:1}}.medical-liff-hidden{display:none!important}.medical-liff-block{display:block!important}.medical-liff-inline-block{display:inline-block!important}.medical-liff-inline{display:inline!important}.medical-liff-w-full{width:100%!important}.medical-liff-h-full{height:100%!important}.medical-liff-rounded{border-radius:var(--medical-radius-md)}.medical-liff-rounded-lg{border-radius:var(--medical-radius-lg)}.medical-liff-rounded-xl{border-radius:var(--medical-radius-xl)}.medical-liff-shadow{box-shadow:var(--medical-shadow-md)}.medical-liff-shadow-lg{box-shadow:var(--medical-shadow-lg)}.medical-liff-transition{transition:var(--medical-transition)}.medical-container{max-width:1200px;margin:0 auto;padding:var(--medical-spacing-6)}.medical-card{background:var(--medical-white);border-radius:var(--medical-radius-xl);box-shadow:var(--medical-shadow-lg);padding:var(--medical-card-padding);border:2px solid var(--medical-gray-200);position:relative;overflow:hidden}.medical-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--medical-primary) 0%,var(--medical-secondary) 100%)}.medical-card-primary{border-color:var(--medical-primary)}.medical-card-secondary{border-color:var(--medical-gray-300)}.medical-card-success{border-color:var(--medical-success)}.medical-card-warning{border-color:var(--medical-warning)}.medical-card-accent{border-color:var(--medical-accent)}.medical-heading{font-family:var(--medical-font-family);font-weight:700;line-height:1.2;color:var(--medical-gray-900);margin-bottom:var(--medical-spacing-4)}.medical-heading-base{font-size:var(--medical-font-size-base)}.medical-heading-lg{font-size:var(--medical-font-size-lg)}.medical-heading-xl{font-size:var(--medical-font-size-xl)}.medical-heading-2xl{font-size:var(--medical-font-size-2xl)}.medical-heading-3xl{font-size:var(--medical-font-size-3xl)}.medical-text{font-family:var(--medical-font-family);line-height:1.6;color:var(--medical-gray-700)}.medical-text-sm{font-size:var(--medical-font-size-sm)}.medical-text-base{font-size:var(--medical-font-size-base)}.medical-text-lg{font-size:var(--medical-font-size-lg)}.medical-text-muted{color:var(--medical-gray-500)}.medical-text-primary{color:var(--medical-primary)}.medical-text-success{color:var(--medical-success)}.medical-text-warning{color:var(--medical-warning)}.medical-text-accent{color:var(--medical-accent)}.medical-button{display:inline-flex;align-items:center;justify-content:center;min-height:var(--medical-touch-target);padding:var(--medical-spacing-4) var(--medical-spacing-6);border:none;border-radius:var(--medical-radius-lg);font-family:inherit;font-size:var(--medical-font-size-base);font-weight:600;text-decoration:none;cursor:pointer;transition:var(--medical-transition);-webkit-user-select:none;user-select:none;position:relative;overflow:hidden}.medical-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.2) 50%,transparent 100%);transition:var(--medical-transition)}.medical-button:hover:before{left:100%}.medical-button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.medical-button-primary{background:linear-gradient(135deg,var(--medical-primary) 0%,var(--medical-primary-light) 100%);color:var(--medical-white);box-shadow:var(--medical-shadow-md)}.medical-button-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--medical-primary-dark) 0%,var(--medical-primary) 100%);transform:translateY(-2px);box-shadow:var(--medical-shadow-lg)}.medical-button-warning{background:linear-gradient(135deg,var(--medical-warning) 0%,var(--medical-warning-light) 100%);color:var(--medical-white);box-shadow:var(--medical-shadow-md)}.medical-button-warning:hover:not(:disabled){background:linear-gradient(135deg,#d97706 0%,var(--medical-warning) 100%);transform:translateY(-2px);box-shadow:var(--medical-shadow-lg)}.medical-icon-container{display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:var(--medical-radius-lg);background:var(--medical-gray-100);color:var(--medical-gray-600);transition:var(--medical-transition)}.medical-icon-container-primary{background:var(--medical-primary);color:var(--medical-white)}.medical-icon-container-success{background:var(--medical-success);color:var(--medical-white)}.medical-icon-container-warning{background:var(--medical-warning);color:var(--medical-white)}.medical-icon-container-accent{background:var(--medical-accent);color:var(--medical-white)}.medical-icon{width:1.5rem;height:1.5rem}.medical-loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;padding:var(--medical-spacing-12);text-align:center}.medical-loading-spinner{width:3rem;height:3rem;border:3px solid var(--medical-gray-200);border-top:3px solid var(--medical-primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:var(--medical-spacing-6)}.medical-loading-spinner-lg{width:4rem;height:4rem;border-width:4px}.medical-loading-spinner-xl{width:5rem;height:5rem;border-width:5px}.medical-flex{display:flex!important}.medical-items-center{align-items:center!important}.medical-justify-between{justify-content:space-between!important}.medical-justify-center{justify-content:center!important}.medical-text-center{text-align:center!important}.medical-text-left{text-align:left!important}.medical-text-right{text-align:right!important}.medical-profile-image{width:6rem;height:6rem;border-radius:50%;overflow:hidden;margin:0 auto var(--medical-spacing-6);box-shadow:var(--medical-shadow-lg);border:4px solid var(--medical-white);background:var(--medical-gray-100)}.medical-profile-image-img{width:100%;height:100%;object-fit:cover}.medical-icon-container-xl{width:6rem;height:6rem;font-size:2rem}.medical-icon-container-2xl{width:8rem;height:8rem;font-size:2.5rem}.medical-text-bold{font-weight:700!important}.medical-text-semibold{font-weight:600!important}.medical-mb-6{margin-bottom:var(--medical-spacing-6)!important}.medical-mb-8{margin-bottom:var(--medical-spacing-8)!important}.medical-mb-10{margin-bottom:var(--medical-spacing-10)!important}.medical-mt-3{margin-top:var(--medical-spacing-3)!important}.medical-mt-4{margin-top:var(--medical-spacing-4)!important}.medical-mt-6{margin-top:var(--medical-spacing-6)!important}.medical-mr-2{margin-right:var(--medical-spacing-2)!important}.medical-grid{display:grid!important}.medical-grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))!important}@media (min-width: 768px){.medical-grid-cols-md-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media (min-width: 1024px){.medical-grid-cols-lg-4{grid-template-columns:repeat(4,minmax(0,1fr))!important}}.medical-gap-4{gap:var(--medical-spacing-4)!important}.medical-gap-6{gap:var(--medical-spacing-6)!important}.medical-space-y-4>*+*{margin-top:var(--medical-spacing-4)!important}.medical-space-y-6>*+*{margin-top:var(--medical-spacing-6)!important}.medical-icon-sm{width:1.25rem;height:1.25rem}.medical-icon-lg{width:2rem;height:2rem}.medical-badge{display:inline-flex;align-items:center;padding:var(--medical-spacing-2) var(--medical-spacing-4);border-radius:var(--medical-radius-lg);font-size:var(--medical-font-size-sm);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.medical-badge-primary{background-color:var(--medical-primary);color:var(--medical-white)}.medical-badge-success{background-color:var(--medical-success);color:var(--medical-white)}.medical-badge-warning{background-color:var(--medical-warning);color:var(--medical-white)}.medical-badge-accent{background-color:var(--medical-accent);color:var(--medical-white)}.medical-icon-text{font-size:2rem;line-height:1}.medical-empty-state,.medical-error-state{text-align:center;padding:var(--medical-spacing-12) var(--medical-spacing-6)}.medical-hover-shadow:hover{box-shadow:var(--medical-shadow-lg);transform:translateY(-2px);transition:var(--medical-transition)}.medical-card-light{background-color:var(--medical-gray-50);border:2px solid var(--medical-gray-200);padding:var(--medical-spacing-6);border-radius:var(--medical-radius-lg);margin-top:var(--medical-spacing-4)}.medical-icon-container-muted{background-color:var(--medical-gray-400);color:var(--medical-white)}.medical-liff-stats-mobile{display:flex;flex-direction:column;gap:var(--medical-spacing-4);margin-bottom:var(--medical-spacing-6)}.medical-liff-primary-stat{background:linear-gradient(135deg,var(--medical-primary),var(--medical-primary-light));border-radius:var(--medical-radius-xl);padding:var(--medical-spacing-6);color:var(--medical-white);box-shadow:var(--medical-shadow-lg);display:flex;align-items:center;gap:var(--medical-spacing-4);min-height:120px}.medical-liff-stat-icon{font-size:3rem;flex-shrink:0}.medical-liff-stat-content{flex:1;text-align:center}.medical-liff-stat-value{font-size:3.5rem;font-weight:800;line-height:1;margin-bottom:var(--medical-spacing-1)}.medical-liff-stat-unit{font-size:var(--medical-font-size-lg);opacity:.9;margin-left:var(--medical-spacing-2)}.medical-liff-stat-label{font-size:var(--medical-font-size-xl);font-weight:600;margin-top:var(--medical-spacing-2)}.medical-liff-stat-status{background:#fff3;border-radius:var(--medical-radius-lg);padding:var(--medical-spacing-3) var(--medical-spacing-4);font-size:var(--medical-font-size-lg);font-weight:700;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(255,255,255,.3)}.medical-liff-stat-status.normal{background:#22c55e33;border-color:#22c55e66}.medical-liff-stat-status.elevated{background:#f59e0b33;border-color:#f59e0b66}.medical-liff-stat-status.high{background:#ef444433;border-color:#ef444466}.medical-liff-secondary-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--medical-spacing-3)}.medical-liff-stat-item{background:var(--medical-white);border-radius:var(--medical-radius-lg);padding:var(--medical-spacing-5);text-align:center;box-shadow:var(--medical-shadow-md);border:2px solid var(--medical-gray-100)}.medical-liff-stat-number{font-size:2.5rem;font-weight:800;color:var(--medical-primary);line-height:1;display:block;margin-bottom:var(--medical-spacing-2)}.medical-liff-stat-text{font-size:var(--medical-font-size-base);font-weight:600;color:var(--medical-gray-700)}.medical-liff-info-stack{display:flex;flex-direction:column;gap:var(--medical-spacing-5);margin-bottom:var(--medical-spacing-6)}.medical-liff-info-card{background:var(--medical-white);border-radius:var(--medical-radius-xl);box-shadow:var(--medical-shadow-md);border:2px solid var(--medical-gray-100);overflow:hidden}.medical-liff-info-header{background:var(--medical-gray-50);padding:var(--medical-spacing-5);display:flex;align-items:center;gap:var(--medical-spacing-3);border-bottom:2px solid var(--medical-gray-200)}.medical-liff-info-icon{font-size:2rem;flex-shrink:0}.medical-liff-info-title{font-size:var(--medical-font-size-xl);font-weight:700;color:var(--medical-gray-800)}.medical-liff-range-guide{padding:var(--medical-spacing-5);display:flex;flex-direction:column;gap:var(--medical-spacing-4)}.medical-liff-range-item{display:flex;justify-content:space-between;align-items:center;padding:var(--medical-spacing-4);border-radius:var(--medical-radius-lg);border:3px solid}.medical-liff-range-item.normal{background:#22c55e1a;border-color:var(--medical-success)}.medical-liff-range-item.elevated{background:#f59e0b1a;border-color:var(--medical-warning)}.medical-liff-range-item.high{background:#ef44441a;border-color:var(--medical-accent)}.medical-liff-range-status{font-size:var(--medical-font-size-lg);font-weight:700}.medical-liff-range-value{font-size:var(--medical-font-size-xl);font-weight:800;color:var(--medical-gray-800)}.medical-liff-summary-list{padding:var(--medical-spacing-5);display:flex;flex-direction:column;gap:var(--medical-spacing-3)}.medical-liff-summary-item{display:flex;justify-content:space-between;align-items:center;padding:var(--medical-spacing-4);background:var(--medical-gray-50);border-radius:var(--medical-radius-lg);border:2px solid var(--medical-gray-200)}.medical-liff-summary-label{font-size:var(--medical-font-size-lg);font-weight:600;color:var(--medical-gray-700)}.medical-liff-summary-count{font-size:var(--medical-font-size-xl);font-weight:800;color:var(--medical-primary)}.medical-liff-empty-state{padding:var(--medical-spacing-8);text-align:center}.medical-liff-empty-icon{font-size:4rem;margin-bottom:var(--medical-spacing-4)}.medical-liff-empty-title{font-size:var(--medical-font-size-2xl);font-weight:700;color:var(--medical-gray-800);margin-bottom:var(--medical-spacing-2)}.medical-liff-empty-subtitle{font-size:var(--medical-font-size-lg);color:var(--medical-gray-600);margin-bottom:var(--medical-spacing-6)}.medical-liff-readings-list{padding:var(--medical-spacing-5);display:flex;flex-direction:column;gap:var(--medical-spacing-4)}.medical-liff-reading-item{padding:var(--medical-spacing-5);background:var(--medical-gray-50);border-radius:var(--medical-radius-lg);border:2px solid var(--medical-gray-200)}.medical-liff-reading-main{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--medical-spacing-3)}.medical-liff-reading-value{display:flex;align-items:baseline;gap:var(--medical-spacing-2)}.medical-liff-reading-number{font-size:2.5rem;font-weight:800;color:var(--medical-gray-800);line-height:1}.medical-liff-reading-unit{font-size:var(--medical-font-size-lg);font-weight:600;color:var(--medical-gray-600)}.medical-liff-reading-status{display:flex;align-items:center;gap:var(--medical-spacing-2);padding:var(--medical-spacing-2) var(--medical-spacing-4);background:var(--medical-white);border-radius:var(--medical-radius-lg);border:2px solid var(--medical-gray-300)}.medical-liff-reading-emoji{font-size:var(--medical-font-size-xl)}.medical-liff-reading-text{font-size:var(--medical-font-size-lg);font-weight:700;color:var(--medical-gray-800)}.medical-liff-reading-details{display:flex;justify-content:space-between;align-items:center;font-size:var(--medical-font-size-base);color:var(--medical-gray-600)}.medical-liff-reading-tag{font-weight:600}.medical-liff-reading-time{font-weight:500}.medical-liff-trend-list{padding:var(--medical-spacing-5);display:flex;flex-direction:column;gap:var(--medical-spacing-3)}.medical-liff-trend-item{display:flex;justify-content:space-between;align-items:center;padding:var(--medical-spacing-4);background:var(--medical-gray-50);border-radius:var(--medical-radius-lg);border:2px solid var(--medical-gray-200)}.medical-liff-trend-date{font-size:var(--medical-font-size-lg);font-weight:600;color:var(--medical-gray-700)}.medical-liff-trend-value{display:flex;align-items:center;gap:var(--medical-spacing-2)}.medical-liff-trend-emoji{font-size:var(--medical-font-size-xl)}.medical-liff-trend-number{font-size:var(--medical-font-size-xl);font-weight:800;color:var(--medical-gray-800)}.medical-liff-trend-unit{font-size:var(--medical-font-size-base);font-weight:600;color:var(--medical-gray-600)}.medical-liff-btn-primary-large{background:linear-gradient(135deg,var(--medical-success),var(--medical-success-light));color:var(--medical-white);border:none;border-radius:var(--medical-radius-xl);padding:var(--medical-spacing-5) var(--medical-spacing-8);font-size:var(--medical-font-size-xl);font-weight:700;min-height:var(--medical-touch-target);box-shadow:var(--medical-shadow-lg);transition:var(--medical-transition);cursor:pointer;width:100%;max-width:300px;margin:0 auto}.medical-liff-btn-primary-large:hover,.medical-liff-btn-primary-large:focus{transform:translateY(-2px);box-shadow:var(--medical-shadow-xl)}.medical-liff-btn-secondary{background:var(--medical-gray-100);color:var(--medical-gray-700);border:2px solid var(--medical-gray-300);border-radius:var(--medical-radius-lg);padding:var(--medical-spacing-4) var(--medical-spacing-6);font-size:var(--medical-font-size-lg);font-weight:600;min-height:48px;transition:var(--medical-transition);cursor:pointer;width:100%}.medical-liff-btn-secondary:hover,.medical-liff-btn-secondary:focus{background:var(--medical-gray-200);border-color:var(--medical-gray-400)}.medical-liff-see-more{text-align:center;padding-top:var(--medical-spacing-4);border-top:2px solid var(--medical-gray-200)}@media (max-width: 480px){.medical-liff-secondary-stats{grid-template-columns:1fr;gap:var(--medical-spacing-2)}.medical-liff-stat-item{padding:var(--medical-spacing-4)}.medical-liff-stat-number{font-size:2rem}.medical-liff-primary-stat{flex-direction:column;text-align:center;padding:var(--medical-spacing-5)}.medical-liff-stat-value{font-size:3rem}.medical-liff-reading-number{font-size:2rem}.medical-liff-range-item{flex-direction:column;text-align:center;gap:var(--medical-spacing-2)}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast: high){.medical-liff-info-card,.medical-liff-stat-item,.medical-liff-reading-item,.medical-liff-trend-item,.medical-liff-summary-item{border-width:3px}.medical-liff-range-item{border-width:4px}}.medical-liff-loading-elderly{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:var(--medical-spacing-8);text-align:center;background:linear-gradient(135deg,var(--medical-gray-50) 0%,var(--medical-white) 100%);gap:var(--medical-spacing-8)}.medical-liff-loading-icon-large{position:relative;width:120px;height:120px;display:flex;align-items:center;justify-content:center;margin-bottom:var(--medical-spacing-4)}.medical-liff-loading-spinner-large{width:100px;height:100px;border:6px solid var(--medical-gray-200);border-top:6px solid var(--medical-primary);border-radius:50%;animation:spin 2s linear infinite;position:absolute}.medical-liff-loading-emoji{font-size:4rem;position:relative;z-index:1;animation:pulse 2s ease-in-out infinite}.medical-liff-loading-text-large{text-align:center;margin-bottom:var(--medical-spacing-6)}.medical-liff-loading-text-large h2{font-size:2.5rem;font-weight:800;color:var(--medical-primary);margin:0 0 var(--medical-spacing-3) 0;line-height:1.2}.medical-liff-loading-text-large p{font-size:var(--medical-font-size-xl);color:var(--medical-gray-700);margin:0;line-height:1.4;font-weight:600}.medical-liff-loading-status-simple{display:flex;flex-direction:column;align-items:center;gap:var(--medical-spacing-4);padding:var(--medical-spacing-6);background:var(--medical-white);border-radius:var(--medical-radius-xl);box-shadow:var(--medical-shadow-lg);border:3px solid var(--medical-gray-200);min-width:280px}.medical-liff-loading-dots-large{display:flex;gap:var(--medical-spacing-3);justify-content:center}.medical-liff-loading-dots-large span{width:16px;height:16px;border-radius:50%;background:var(--medical-primary);animation:loading-dots-large 1.6s ease-in-out infinite both}.medical-liff-loading-dots-large span:nth-child(1){animation-delay:-.32s}.medical-liff-loading-dots-large span:nth-child(2){animation-delay:-.16s}.medical-liff-loading-dots-large span:nth-child(3){animation-delay:0s}.medical-liff-loading-status-simple p{font-size:var(--medical-font-size-xl);font-weight:600;color:var(--medical-gray-700);margin:0;text-align:center}@keyframes loading-dots-large{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1.2);opacity:1}}@keyframes spin-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse-gentle{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.9}}@media (max-width: 480px){.medical-liff-loading-elderly{padding:var(--medical-spacing-6);gap:var(--medical-spacing-6)}.medical-liff-loading-icon-large{width:100px;height:100px}.medical-liff-loading-spinner-large{width:80px;height:80px;border-width:5px}.medical-liff-loading-emoji{font-size:3rem}.medical-liff-loading-text-large h2{font-size:2rem}.medical-liff-loading-text-large p{font-size:var(--medical-font-size-lg)}.medical-liff-loading-status-simple{min-width:240px;padding:var(--medical-spacing-5)}.medical-liff-loading-status-simple p{font-size:var(--medical-font-size-lg)}}@media (prefers-reduced-motion: reduce){.medical-liff-loading-spinner-large{animation:none;border:6px solid var(--medical-primary)}.medical-liff-loading-emoji{animation:none}.medical-liff-loading-dots-large span{animation:none;background:var(--medical-primary);opacity:1}}@media (prefers-contrast: high){.medical-liff-loading-status-simple{border-width:4px;border-color:var(--medical-gray-800)}.medical-liff-loading-spinner-large{border-width:8px;border-color:var(--medical-gray-300);border-top-color:var(--medical-primary)}}.medical-liff-profile-header{background:linear-gradient(135deg,var(--medical-primary),var(--medical-primary-light));border-radius:var(--medical-radius-xl);padding:var(--medical-spacing-6);margin-bottom:var(--medical-spacing-6);color:var(--medical-white);box-shadow:var(--medical-shadow-lg);display:flex;flex-direction:column;gap:var(--medical-spacing-5)}.medical-liff-profile-section{display:flex;align-items:center;gap:var(--medical-spacing-4);padding-bottom:var(--medical-spacing-4);border-bottom:2px solid rgba(255,255,255,.2)}.medical-liff-profile-avatar{position:relative;width:80px;height:80px;flex-shrink:0}.medical-liff-profile-image{width:100%;height:100%;border-radius:50%;object-fit:cover;border:4px solid rgba(255,255,255,.3);box-shadow:var(--medical-shadow-lg)}.medical-liff-profile-fallback{width:100%;height:100%;border-radius:50%;background:#fff3;border:4px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.medical-liff-profile-emoji{font-size:2.5rem;color:var(--medical-white)}.medical-liff-profile-info{flex:1;text-align:left}.medical-liff-profile-greeting{font-size:var(--medical-font-size-lg);font-weight:600;opacity:.9;margin-bottom:var(--medical-spacing-1)}.medical-liff-profile-name{font-size:var(--medical-font-size-2xl);font-weight:800;line-height:1.2}.medical-liff-dashboard-title{display:flex;align-items:center;gap:var(--medical-spacing-4);text-align:center;justify-content:center}.medical-liff-title-icon{font-size:3rem;flex-shrink:0}.medical-liff-title-text{text-align:center}.medical-liff-title-text h1{font-size:2.5rem;font-weight:800;margin:0 0 var(--medical-spacing-2) 0;line-height:1.1}.medical-liff-title-text p{font-size:var(--medical-font-size-lg);font-weight:600;opacity:.9;margin:0;line-height:1.3}.medical-liff-header-actions{display:flex;gap:var(--medical-spacing-3);justify-content:center}.medical-liff-btn-action-primary,.medical-liff-btn-action-secondary{display:flex;align-items:center;gap:var(--medical-spacing-2);padding:var(--medical-spacing-4) var(--medical-spacing-5);border-radius:var(--medical-radius-lg);font-size:var(--medical-font-size-lg);font-weight:700;min-height:56px;transition:var(--medical-transition);cursor:pointer;border:2px solid transparent;flex:1;max-width:160px;justify-content:center}.medical-liff-btn-action-primary{background:#22c55e33;color:var(--medical-white);border-color:#22c55e66;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.medical-liff-btn-action-primary:hover,.medical-liff-btn-action-primary:focus{background:#22c55e4d;border-color:#22c55e99;transform:translateY(-2px)}.medical-liff-btn-action-secondary{background:#fff3;color:var(--medical-white);border-color:#ffffff4d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.medical-liff-btn-action-secondary:hover,.medical-liff-btn-action-secondary:focus{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-2px)}.medical-liff-btn-action-secondary:disabled{opacity:.6;cursor:not-allowed;transform:none}.medical-liff-btn-icon{font-size:var(--medical-font-size-xl);flex-shrink:0}@media (max-width: 480px){.medical-liff-profile-header{padding:var(--medical-spacing-5);gap:var(--medical-spacing-4)}.medical-liff-profile-section{flex-direction:column;text-align:center;gap:var(--medical-spacing-3);padding-bottom:var(--medical-spacing-3)}.medical-liff-profile-avatar{width:70px;height:70px}.medical-liff-profile-name{font-size:var(--medical-font-size-xl)}.medical-liff-dashboard-title{gap:var(--medical-spacing-3)}.medical-liff-title-icon{font-size:2.5rem}.medical-liff-title-text h1{font-size:2rem}.medical-liff-header-actions{flex-direction:column;gap:var(--medical-spacing-2)}.medical-liff-btn-action-primary,.medical-liff-btn-action-secondary{max-width:none;width:100%}}.medical-liff-profile-header-simple{display:flex;align-items:center;gap:var(--medical-spacing-4);padding:var(--medical-spacing-5);background:linear-gradient(135deg,var(--medical-primary-light),var(--medical-primary));border-radius:var(--medical-radius-xl);color:var(--medical-white);box-shadow:var(--medical-shadow-md)}.medical-liff-profile-photo{position:relative;width:80px;height:80px;flex-shrink:0}.medical-liff-profile-image-large{width:100%;height:100%;border-radius:50%;object-fit:cover;border:4px solid rgba(255,255,255,.3);box-shadow:var(--medical-shadow-lg)}.medical-liff-profile-fallback-large{width:100%;height:100%;border-radius:50%;background:#fff3;border:4px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;font-size:2.5rem;color:var(--medical-white)}.medical-liff-profile-welcome{flex:1}.medical-liff-greeting-text{font-size:var(--medical-font-size-lg);font-weight:600;opacity:.9;margin-bottom:var(--medical-spacing-1)}.medical-liff-user-name{font-size:var(--medical-font-size-2xl);font-weight:800;line-height:1.2}@media (max-width: 480px){.medical-liff-profile-header-simple{flex-direction:column;text-align:center;gap:var(--medical-spacing-3);padding:var(--medical-spacing-4)}.medical-liff-profile-photo{width:70px;height:70px}.medical-liff-user-name{font-size:var(--medical-font-size-xl)}}.medical-liff-header-lively{margin-bottom:var(--medical-spacing-6)}.medical-liff-welcome-banner{position:relative;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:var(--medical-radius-2xl);padding:var(--medical-spacing-6);color:var(--medical-white);overflow:hidden;box-shadow:var(--medical-shadow-xl);margin-bottom:var(--medical-spacing-4)}.medical-liff-welcome-decoration{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.medical-liff-floating-heart,.medical-liff-floating-star,.medical-liff-floating-sparkle{position:absolute;font-size:1.5rem;animation:float 6s ease-in-out infinite;opacity:.3}.medical-liff-floating-heart{top:20%;right:15%;animation-delay:0s}.medical-liff-floating-star{top:60%;right:10%;animation-delay:2s}.medical-liff-floating-sparkle{top:40%;left:10%;animation-delay:4s}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(5deg)}}.medical-liff-profile-showcase{display:flex;align-items:center;gap:var(--medical-spacing-5);margin-bottom:var(--medical-spacing-5);position:relative;z-index:2}.medical-liff-profile-ring{position:relative;width:100px;height:100px;flex-shrink:0}.medical-liff-profile-hero{width:100%;height:100%;border-radius:50%;object-fit:cover;border:5px solid rgba(255,255,255,.4);box-shadow:0 8px 24px #0003;animation:gentle-pulse 4s ease-in-out infinite}.medical-liff-profile-hero-fallback{width:100%;height:100%;border-radius:50%;background:#fff3;border:5px solid rgba(255,255,255,.4);display:flex;align-items:center;justify-content:center;font-size:3rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.medical-liff-profile-status{position:absolute;bottom:5px;right:5px;background:var(--medical-white);border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:.8rem;box-shadow:var(--medical-shadow-md)}@keyframes gentle-pulse{0%,to{transform:scale(1);box-shadow:0 8px 24px #0003}50%{transform:scale(1.02);box-shadow:0 12px 32px #00000040}}.medical-liff-welcome-message{flex:1;text-align:left}.medical-liff-greeting-warm{font-size:var(--medical-font-size-xl);font-weight:600;margin-bottom:var(--medical-spacing-2);opacity:.95}.medical-liff-name-highlight{font-size:2.5rem;font-weight:800;line-height:1.1;margin-bottom:var(--medical-spacing-2);text-shadow:0 2px 4px rgba(0,0,0,.1)}.medical-liff-welcome-subtitle{font-size:var(--medical-font-size-lg);font-weight:500;opacity:.9;line-height:1.3}.medical-liff-dashboard-brand{display:flex;align-items:center;gap:var(--medical-spacing-4);padding:var(--medical-spacing-4) 0;border-top:2px solid rgba(255,255,255,.2);position:relative;z-index:2}.medical-liff-brand-icon{font-size:3rem;animation:gentle-bounce 3s ease-in-out infinite}@keyframes gentle-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.medical-liff-brand-text h1{font-size:2.25rem;font-weight:800;margin:0 0 var(--medical-spacing-1) 0;line-height:1.1;text-shadow:0 2px 4px rgba(0,0,0,.1)}.medical-liff-brand-text p{font-size:var(--medical-font-size-lg);font-weight:600;margin:0;opacity:.9}.medical-liff-action-buttons{display:flex;gap:var(--medical-spacing-3);justify-content:center;padding:var(--medical-spacing-4) 0}.medical-liff-btn-lively-primary,.medical-liff-btn-lively-secondary{display:flex;align-items:center;gap:var(--medical-spacing-3);padding:var(--medical-spacing-4) var(--medical-spacing-6);border-radius:var(--medical-radius-xl);font-size:var(--medical-font-size-lg);font-weight:700;min-height:64px;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;border:3px solid transparent;flex:1;max-width:180px;justify-content:center;position:relative;overflow:hidden}.medical-liff-btn-lively-primary{background:linear-gradient(135deg,var(--medical-success),var(--medical-success-light));color:var(--medical-white);box-shadow:0 4px 15px #22c55e4d}.medical-liff-btn-lively-primary:hover,.medical-liff-btn-lively-primary:focus{transform:translateY(-3px) scale(1.02);box-shadow:0 8px 25px #22c55e66}.medical-liff-btn-lively-secondary{background:linear-gradient(135deg,var(--medical-primary),var(--medical-primary-light));color:var(--medical-white);box-shadow:0 4px 15px #3b82f64d}.medical-liff-btn-lively-secondary:hover,.medical-liff-btn-lively-secondary:focus{transform:translateY(-3px) scale(1.02);box-shadow:0 8px 25px #3b82f666}.medical-liff-btn-lively-secondary:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:0 4px 15px #3b82f633}.medical-liff-btn-emoji{font-size:var(--medical-font-size-2xl);flex-shrink:0}.medical-liff-btn-text{flex:1;text-align:center}.medical-liff-btn-arrow{font-size:var(--medical-font-size-xl);font-weight:800;opacity:.8}@media (max-width: 480px){.medical-liff-welcome-banner{padding:var(--medical-spacing-5)}.medical-liff-profile-showcase{flex-direction:column;text-align:center;gap:var(--medical-spacing-4)}.medical-liff-profile-ring{width:90px;height:90px}.medical-liff-name-highlight{font-size:2rem}.medical-liff-dashboard-brand{flex-direction:column;text-align:center;gap:var(--medical-spacing-2)}.medical-liff-brand-text h1{font-size:2rem}.medical-liff-action-buttons{flex-direction:column;gap:var(--medical-spacing-2)}.medical-liff-btn-lively-primary,.medical-liff-btn-lively-secondary{max-width:none;width:100%}.medical-liff-floating-heart,.medical-liff-floating-star,.medical-liff-floating-sparkle{font-size:1.2rem}}@media (prefers-reduced-motion: reduce){.medical-liff-floating-heart,.medical-liff-floating-star,.medical-liff-floating-sparkle,.medical-liff-profile-hero,.medical-liff-brand-icon{animation:none}}.medical-liff-header-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:var(--medical-radius-2xl);padding:var(--medical-spacing-6);margin-bottom:var(--medical-spacing-6);color:var(--medical-white);box-shadow:0 8px 32px #667eea4d;position:relative;overflow:hidden}.medical-liff-header-card:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);animation:gentle-rotate 20s linear infinite;pointer-events:none}@keyframes gentle-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.medical-liff-welcome-section{display:flex;align-items:center;gap:var(--medical-spacing-4);margin-bottom:var(--medical-spacing-5);position:relative;z-index:2}.medical-liff-profile-circle{position:relative;width:90px;height:90px;flex-shrink:0}.medical-liff-profile-img{width:100%;height:100%;border-radius:50%;object-fit:cover;border:4px solid rgba(255,255,255,.4);box-shadow:0 8px 24px #0003;animation:profile-glow 3s ease-in-out infinite}@keyframes profile-glow{0%,to{box-shadow:0 8px 24px #0003}50%{box-shadow:0 12px 32px #ffffff4d}}.medical-liff-profile-backup{width:100%;height:100%;border-radius:50%;background:#fff3;border:4px solid rgba(255,255,255,.4);display:flex;align-items:center;justify-content:center;font-size:2.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.medical-liff-welcome-text{flex:1}.medical-liff-greeting{font-size:var(--medical-font-size-xl);font-weight:600;margin-bottom:var(--medical-spacing-1);opacity:.95}.medical-liff-username{font-size:2.25rem;font-weight:800;line-height:1.1;text-shadow:0 2px 4px rgba(0,0,0,.1)}.medical-liff-title-section{text-align:center;margin-bottom:var(--medical-spacing-5);position:relative;z-index:2}.medical-liff-title-main{display:flex;align-items:center;justify-content:center;gap:var(--medical-spacing-3);margin-bottom:var(--medical-spacing-2)}.medical-liff-title-emoji{font-size:3rem;animation:title-bounce 2s ease-in-out infinite}@keyframes title-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.medical-liff-title-main h1{font-size:2.5rem;font-weight:800;margin:0;line-height:1.1;text-shadow:0 2px 4px rgba(0,0,0,.1)}.medical-liff-title-subtitle{font-size:var(--medical-font-size-xl);font-weight:600;opacity:.9;margin:0}.medical-liff-quick-actions{display:flex;gap:var(--medical-spacing-3);justify-content:center;position:relative;z-index:2}.medical-liff-btn-quick-primary,.medical-liff-btn-quick-secondary{display:flex;align-items:center;gap:var(--medical-spacing-2);padding:var(--medical-spacing-4) var(--medical-spacing-5);border-radius:var(--medical-radius-xl);font-size:var(--medical-font-size-lg);font-weight:700;min-height:60px;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;border:2px solid transparent;flex:1;max-width:150px;justify-content:center}.medical-liff-btn-quick-primary{background:#22c55e33;color:var(--medical-white);border-color:#22c55e66;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 15px #22c55e4d}.medical-liff-btn-quick-primary:hover,.medical-liff-btn-quick-primary:focus{background:#22c55e4d;transform:translateY(-3px) scale(1.05);box-shadow:0 8px 25px #22c55e66}.medical-liff-btn-quick-secondary{background:#fff3;color:var(--medical-white);border-color:#ffffff4d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 15px #fff3}.medical-liff-btn-quick-secondary:hover,.medical-liff-btn-quick-secondary:focus{background:#ffffff4d;transform:translateY(-3px) scale(1.05);box-shadow:0 8px 25px #ffffff4d}.medical-liff-btn-quick-secondary:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (max-width: 480px){.medical-liff-header-card{padding:var(--medical-spacing-5)}.medical-liff-welcome-section{flex-direction:column;text-align:center;gap:var(--medical-spacing-3)}.medical-liff-profile-circle{width:80px;height:80px}.medical-liff-username,.medical-liff-title-main h1{font-size:2rem}.medical-liff-quick-actions{flex-direction:column;gap:var(--medical-spacing-2)}.medical-liff-btn-quick-primary,.medical-liff-btn-quick-secondary{max-width:none;width:100%}}@media (prefers-reduced-motion: reduce){.medical-liff-header-card:before{animation:none}.medical-liff-profile-img,.medical-liff-title-emoji{animation:none}}.medical-liff-profile-circle-large{position:relative;width:110px;height:110px;flex-shrink:0}.medical-liff-profile-img-large{width:100%;height:100%;border-radius:50%;object-fit:cover;border:5px solid rgba(255,255,255,.4);box-shadow:0 12px 32px #00000040;animation:profile-glow-large 3s ease-in-out infinite}@keyframes profile-glow-large{0%,to{box-shadow:0 12px 32px #00000040;transform:scale(1)}50%{box-shadow:0 16px 40px #fff6;transform:scale(1.02)}}.medical-liff-profile-backup-large{width:100%;height:100%;border-radius:50%;background:#fff3;border:5px solid rgba(255,255,255,.4);display:flex;align-items:center;justify-content:center;font-size:3rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.medical-liff-bot-photo{width:60px;height:60px;border-radius:50%;object-fit:cover;border:3px solid rgba(255,255,255,.6);box-shadow:0 8px 24px #0003;animation:bot-gentle-pulse 4s ease-in-out infinite;margin-right:var(--medical-spacing-3)}@keyframes bot-gentle-pulse{0%,to{transform:scale(1);box-shadow:0 8px 24px #0003}50%{transform:scale(1.03);box-shadow:0 12px 32px #ffffff4d}}.medical-liff-actions-centered{display:flex;gap:var(--medical-spacing-3);justify-content:center;align-items:center;padding:var(--medical-spacing-4) 0;width:100%}@media (max-width: 480px){.medical-liff-profile-circle-large{width:100px;height:100px}.medical-liff-bot-photo{width:50px;height:50px;margin-right:var(--medical-spacing-2)}.medical-liff-actions-centered{flex-direction:column;gap:var(--medical-spacing-2)}.medical-liff-btn-quick-primary,.medical-liff-btn-quick-secondary{width:100%;max-width:none}.medical-liff-guidelines{gap:var(--medical-spacing-4)}.medical-liff-guideline-title{font-size:var(--medical-font-size-lg)}.medical-liff-advice{flex-direction:column;text-align:center;gap:var(--medical-spacing-2)}}.medical-liff-guidelines{padding:var(--medical-spacing-5);display:flex;flex-direction:column;gap:var(--medical-spacing-6)}.medical-liff-guideline-section{display:flex;flex-direction:column;gap:var(--medical-spacing-3)}.medical-liff-guideline-title{font-size:var(--medical-font-size-xl);font-weight:700;color:var(--medical-gray-800);text-align:center;padding:var(--medical-spacing-3);background:var(--medical-gray-100);border-radius:var(--medical-radius-lg);border:2px solid var(--medical-gray-300)}.medical-liff-advice{display:flex;align-items:flex-start;gap:var(--medical-spacing-3);padding:var(--medical-spacing-4);background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:var(--medical-radius-lg);border:2px solid #f59e0b;margin-top:var(--medical-spacing-4)}.medical-liff-advice-icon{font-size:var(--medical-font-size-2xl);flex-shrink:0}.medical-liff-advice-text{font-size:var(--medical-font-size-base);font-weight:600;color:var(--medical-gray-800);line-height:1.4}@media (max-width: 480px){.medical-liff-guidelines{gap:var(--medical-spacing-4)}.medical-liff-guideline-title{font-size:var(--medical-font-size-lg)}.medical-liff-advice{flex-direction:column;text-align:center;gap:var(--medical-spacing-2)}}
