:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh;width:100%}#root{width:100%;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.measurement-form{max-width:420px;margin:0 auto;padding:1.25rem;border-radius:12px;display:grid;gap:1rem;background-color:inherit;color:inherit}.measurement-form h2{font-size:1.1rem;margin:.5rem 0}.measurement-form input,.measurement-form select{width:100%;padding:.65rem .85rem;border:1px solid rgba(0,0,0,.2);border-radius:8px;font-size:.95rem;background-color:#ffffff0d;color:inherit}.measurement-form input:focus,.measurement-form select:focus{outline:none;border-color:#646cff;box-shadow:0 0 0 2px #646cff4d}.measurement-form button{width:100%;font-weight:600}@media (max-width: 480px){.measurement-form{padding:1rem;gap:.75rem}.measurement-form h2{font-size:1rem}}.measurement-form select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:var(--select-bg);color:var(--select-text);border-radius:8px;padding:.65rem .85rem;font-size:.95rem;cursor:pointer}.measurement-form select option{background-color:var(--option-bg);color:var(--option-text);padding:.5rem}:root{--select-bg: #f9f9f9;--select-text: #111;--option-bg: #fff;--option-text: #000;--border: #ccc}@media (prefers-color-scheme: dark){:root{--select-bg: rgba(255, 255, 255, .05);--select-text: #f0f0f0;--option-bg: #1e1e1e;--option-text: #f0f0f0;--border: #444}}.App{min-height:100vh;width:100%;max-width:100vw;overflow-x:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-sizing:border-box}.add-info-button{background:linear-gradient(135deg,#b31927,#8b1320);color:#fff;padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.add-info-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #b3192766}.personal-info-prompt{background:#eff6ff;border:1px solid #dbeafe;border-radius:8px;padding:16px;margin:20px;text-align:center;color:#1e40af}.personal-info-prompt p{margin:0 0 12px;font-size:14px}*{box-sizing:border-box}html,body{margin:0;padding:0;width:100%;overflow-x:hidden}body{margin:0;padding:0}@media (max-width: 768px){.personal-info-prompt{margin:10px}}.diagnosis-container{padding:1rem}:root{--panel-bg: #353535;--panel-border: #4a4a4a;--panel-text: #f2f2f2;--muted: #a0a0a0;--tooltip-bg: #333333;--tooltip-fg: #ffffff;--focus-ring: #646cff}@media (prefers-color-scheme: light){:root{--panel-bg: #ffffff;--panel-border: #d9d9d9;--panel-text: #213547;--muted: #555555;--tooltip-bg: #ffffff;--tooltip-fg: #213547;--focus-ring: #535bf2}}.grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}.raw-block,.measurement-block,.diff-block,.organ-block{padding:12px 10px;border:1px solid var(--panel-border);border-radius:6px;background:var(--panel-bg);color:var(--panel-text)}.organ-header{font-weight:700;text-align:center;margin-bottom:4px}.organ-sub{padding:8px 6px;border:1px solid var(--panel-border);border-radius:4px;background:var(--panel-bg);text-align:center;color:var(--panel-text)}.tooltip-wrapper{position:relative}.tooltip{position:fixed;z-index:999;background:var(--tooltip-bg);color:var(--tooltip-fg);padding:6px 10px;border-radius:4px;font-size:.85rem;pointer-events:none;box-shadow:0 2px 6px #00000040;border:1px solid var(--panel-border)}.view-buttons{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.view-buttons button{margin-right:.5rem}.diagnosis-summary{margin-top:1.5rem}.new-btn-wrapper{margin-top:12px;display:flex;justify-content:flex-start}.new-btn{width:100%;max-width:280px;padding:12px 16px;font-size:1rem;min-height:48px}.diag-section{margin-bottom:2rem}.diag-heading{font-size:1.25rem;margin:0 0 .75rem;line-height:1.2}.diag-subheading{font-size:1rem;margin:0 0 .5rem;opacity:.75}.new-btn-inline-wrapper{margin:2rem 0 3rem;display:flex;justify-content:flex-start}.secondary-new-btn{max-width:220px}.fab-new-measurement{position:fixed;bottom:calc(env(safe-area-inset-bottom,0) + 16px);right:calc(env(safe-area-inset-right,0) + 16px);z-index:1100;border-radius:32px;height:64px;padding:0 24px;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.25rem;line-height:1.2;box-shadow:0 6px 18px #00000059;border:1px solid var(--panel-border);background:var(--panel-bg);color:var(--panel-text);transition:background-color .2s,color .2s,transform .15s;white-space:nowrap}.fab-new-measurement:hover{transform:translateY(-2px);background:var(--panel-bg-hover, var(--panel-bg))}.fab-new-measurement:active{transform:translateY(0)}.fab-new-measurement:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.fab-new-measurement .fab-label{display:block;padding:0 4px;font-size:1.15em;transform:none}.fab-new-measurement .fab-label:before{content:attr(data-label)}@media (max-width: 640px){.diagnosis-container{padding-bottom:96px}.diag-heading{font-size:1.1rem}.new-btn-inline-wrapper{display:none}.fab-new-measurement{width:60px;height:60px;padding:0;border-radius:50%;font-size:1rem;font-weight:400;line-height:1;display:flex;align-items:center;justify-content:center}.fab-new-measurement .fab-label{position:relative;width:24px;height:24px}.fab-new-measurement .fab-label:before,.fab-new-measurement .fab-label:after{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.fab-new-measurement .fab-label:before{content:"NEW"}}@media (min-width: 1024px){.diag-heading{font-size:1.35rem}.diagnosis-container{max-width:980px;margin:0 auto}}@media (max-width: 768px){.grid{gap:1rem}.inner-grid{grid-template-columns:2fr 2fr}.view-buttons button{flex:1 1 45%}.diagnosis-container h2{font-size:1.1rem;text-align:center}.main-cell{padding:16px 14px}.sub-cell{padding:8px 4px}.new-btn-wrapper{justify-content:center}.new-btn{min-height:52px;font-size:1.05rem}}@media (max-width: 480px){.view-buttons button{flex:1 1 100%}.inner-grid{grid-template-columns:1fr 1fr;gap:4px}.main-cell{padding:10px 6px;font-size:.97rem}.cell-header{font-size:.9rem;margin-bottom:8px}.sub-cell{padding:6px 2px}.sub-title{font-size:.7rem;margin-bottom:2px}.sub-value{font-size:1rem}}.six-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.main-cell{border:1px solid var(--panel-border);border-radius:8px;padding:14px 12px;background:var(--panel-bg);color:var(--panel-text);display:flex;flex-direction:column;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.main-cell .cell-header{font-weight:600;font-size:.95rem;margin-bottom:12px}.inner-grid{display:grid;grid-template-columns:1fr 1fr}.sub-cell{padding:10px 6px;border-radius:6px;background:transparent;text-align:center}.sub-title{font-size:.75rem;color:var(--muted);margin-bottom:6px}.sub-value{font-size:1.1rem;font-weight:700;color:inherit}.sub-organ .sub-value{font-weight:600}@media (prefers-color-scheme: dark){.status-good{background:#254d25;border-color:#3a7a3a;color:#d6f8d6}.status-warn{background:#4d380f;border-color:#a47815;color:#ffe8b8}.status-bad{background:#4d1f1f;border-color:#a13d3d;color:#ffd6d6}.status-danger{background:#000;border-color:#000;color:#fff}.status-good .sub-title,.status-warn .sub-title,.status-bad .sub-title,.status-danger .sub-title{color:#fff}.status-good,.status-warn,.status-bad{color:var(--panel-text)!important}.status-danger{color:#fff!important}}@media (prefers-color-scheme: light){.status-good{background:#e6f9e6;border-color:#b2e2b2;color:#164016}.status-warn{background:#fff4da;border-color:#ffc979;color:#6a3e00}.status-bad{background:#ffe3e3;border-color:#ffb1b1;color:#7a0000}.status-danger{background:#000;border-color:#000;color:#fff}.status-good .sub-title,.status-warn .sub-title,.status-bad .sub-title{color:#000}.status-danger .sub-title{color:#fff}.status-good .sub-value,.status-good .sub-title,.status-warn .sub-value,.status-warn .sub-title,.status-bad .sub-value,.status-bad .sub-title,.status-danger .sub-value,.status-danger .sub-title{color:var(--panel-text)!important}.status-danger .sub-value,.status-danger .sub-title{color:#fff!important}}.main-cell.status-good .sub-value,.main-cell.status-warn .sub-value,.main-cell.status-bad .sub-value{color:#000}.main-cell.status-danger .sub-value{color:#fff}.overview-legend{margin-top:12px;font-size:.85rem;color:var(--muted, #666);display:flex;gap:16px}.expansion-index-table{margin-top:1rem;margin-bottom:1rem;width:100%;max-width:100%}.expansion-cell{background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:6px;padding:12px 8px;text-align:center;min-width:0;word-break:break-word}.expansion-label{font-size:.95em;color:var(--muted);margin-bottom:4px;white-space:normal}.expansion-value{font-size:1.25em;font-weight:700;color:var(--panel-text)}.lang-btn{background:var(--panel-bg);color:var(--panel-text);border:1px solid var(--panel-border);border-radius:6px;padding:6px 16px;font-size:1em;cursor:pointer;margin-left:0;transition:background .2s,color .2s}.lang-btn.active,.lang-btn:focus{background:var(--focus-ring);color:#fff;outline:none}.lang-btn:not(:first-child){margin-left:8px}@media (max-width: 640px){.expansion-index-table{grid-template-columns:1fr;gap:.75rem}}.sub-title,.sub-value{color:var(--panel-text)!important}.sub-organ .sub-title{display:none}@media (max-width: 480px){.main-cell{padding:10px 6px;font-size:.97rem}.cell-header{font-size:.9rem;margin-bottom:8px}.inner-grid{grid-template-columns:1fr 1fr;gap:4px}.sub-cell{padding:6px 2px}.sub-title{font-size:.7rem;margin-bottom:2px}.sub-value{font-size:1rem}}@media (prefers-color-scheme: dark){.status-good,.status-warn,.status-bad,.status-danger{color:var(--panel-text)!important}}@media (prefers-color-scheme: light){.status-good,.status-warn,.status-bad{color:var(--panel-text)!important}.status-danger{color:#fff!important}}.app-header{background:#fff;box-shadow:0 2px 4px #0000001a;position:static;z-index:100}.app-header__content{display:flex;justify-content:space-between;align-items:center;padding:4px 8px;min-height:50px}.app-header__logo{display:flex;align-items:center;gap:6px;cursor:pointer;-webkit-user-select:none;user-select:none}.app-header__logo-image{height:42px;width:auto;flex-shrink:0}.app-header__title{font-size:22px;font-weight:600;color:#b31927;margin:0}.app-header__actions{display:flex;gap:4px}.app-header__locale-button{background:#f3f4f6;color:#374151;border:1px solid #e5e7eb;padding:8px 14px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer}.app-header__locale-button:hover{background:#e5e7eb}.app-header__expand-button{background:none;border:none;cursor:pointer;padding:4px 6px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s;min-width:28px}.app-header__expand-button:hover{background-color:#f3f4f6}.expand-icon{font-size:14px;color:#666;transition:transform .2s ease}.expand-icon.expanded{transform:rotate(180deg)}.app-header__user-basic{display:flex;align-items:center;gap:4px;flex:1;justify-content:center;margin:0 4px}.user-email{font-weight:500;color:#333}.user-basic-info{color:#666;font-size:14px}.app-header__expanded{border-top:1px solid #e5e7eb;background:#f9fafb;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:200px}}.expanded-content{padding:8px;display:flex;flex-direction:column;gap:8px}.user-email-section{display:flex;justify-content:center;padding:8px 0;border-top:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb}.user-email-section .user-email{font-size:14px;color:#666;font-style:italic}.user-details h4{margin:0 0 12px;color:#333;font-size:16px;font-weight:600}.user-details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 16px}.detail-item{display:flex;gap:8px}.detail-label{font-weight:500;color:#666;min-width:50px}.detail-value{color:#333;font-weight:500}.expanded-actions{display:flex;gap:12px;flex-shrink:0}.edit-profile-button{background:#f3f4f6;color:#374151;border:none;padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.edit-profile-button:hover{background:#e5e7eb}.sign-out-button{background:#ef4444;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.sign-out-button:hover{background:#dc2626}@media (max-width: 768px){.app-header__content{padding:3px 6px;min-height:46px}.app-header__logo-image{height:38px;width:auto}.app-header__user-basic{margin:0 3px}.app-header__expand-button{padding:3px 5px;min-width:26px}.expand-icon{font-size:12px}.expanded-content{flex-direction:column;gap:6px;padding:6px}.user-details-grid{grid-template-columns:1fr;gap:6px}.expanded-actions{width:100%;justify-content:center}.edit-profile-button,.sign-out-button{flex:1;padding:8px 12px}}@media (max-width: 480px){.app-header__content{padding:2px 4px;min-height:42px}.app-header__logo-image{height:36px;width:auto}.user-email{font-size:12px}.expanded-content{padding:4px}}
