.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-bar{border-bottom:1px solid var(--border)}.app-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 1.5rem}.brand{display:flex;align-items:center;gap:.9rem}.brand-mark{width:36px;height:36px;border-radius:12px;background:linear-gradient(135deg,#0b728526,#0b728559);border:1px solid rgba(11,114,133,.3);display:grid;place-items:center;font-family:IBM Plex Mono,monospace;font-size:.85rem;color:var(--accent-strong)}.brand-text{display:flex;flex-direction:column;gap:.1rem}.app-subtitle{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.top-nav{align-items:center}.top-nav .MuiButton-root{text-transform:none;border-radius:999px}.app-meta{display:flex;align-items:center;gap:.6rem}.status-chip{padding:.35rem .75rem;border-radius:999px;font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;border:1px solid rgba(11,114,133,.25);background:#0b728514;color:var(--accent-strong)}.app-main{flex:1;display:flex;justify-content:center;padding:1.75rem 1.25rem 3rem;animation:fade-in .7s ease-out both}.content-shell{width:min(1640px,100%)}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:960px){.app-toolbar{padding:.8rem 1rem;flex-wrap:wrap;justify-content:center}.brand{width:100%;justify-content:center}.top-nav{width:100%;justify-content:center;flex-wrap:wrap}.app-main{padding:1.25rem 1rem 2.5rem}.app-meta{display:none}}.app-footer{border-top:1px solid var(--border);padding:1.25rem 2.5rem 1.5rem;background:#ffffffbf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.footer-shell{width:min(1400px,100%);margin:0 auto}.footer-title{margin-bottom:.75rem;text-align:center}.footer-logo-grid{display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center}.footer-logo-card{display:flex;justify-content:center;align-items:center;border:1px solid var(--border);border-radius:12px;min-height:84px;background:#fff;padding:.5rem .75rem}.footer-logo-image{width:100%;max-width:190px;max-height:56px;object-fit:contain}.footer-imprint{margin-top:1rem;text-align:center;display:grid;gap:.15rem}.footer-legal-links{display:grid;gap:.1rem}.footer-imprint-link{font-weight:600}@media(min-width:960px){.footer-logo-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:960px){.app-footer{padding:1rem 1rem 1.25rem}}.questionnaire-shell{justify-content:center}.questionnaire-panel{width:min(980px,100%)}.questionnaire-panel .panel-header{display:flex;align-items:flex-start}.questionnaire-header-content{width:100%;min-width:0}.questionnaire-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem;flex-wrap:wrap}.questionnaire-logout{margin-left:auto}.questionnaire-list{display:flex;flex-direction:column;gap:1rem;max-height:62vh;overflow-y:auto;padding-right:.25rem}.question-card{border:1px solid var(--border);border-radius:12px;padding:.85rem;background:#fff}.question-card h3{margin:0 0 .6rem;font-size:1rem}.question-options{display:flex;flex-direction:column;gap:.45rem}.question-option{display:grid;grid-template-columns:auto auto 1fr;align-items:start;gap:.5rem;font-size:.92rem}.option-score{font-weight:700;color:var(--accent-strong)}.questionnaire-error{color:#c92a2a;margin:.9rem 0}.questionnaire-submit{width:100%;border:none;background:#0b7285;color:#fff;border-radius:8px;padding:.75rem;font-size:1rem;cursor:pointer}.questionnaire-submit:disabled{opacity:.7;cursor:wait}.language-toggle{display:inline-flex;gap:.5rem}.language-toggle-button{border:1px solid var(--border);background:#fff;color:var(--text);border-radius:999px;padding:.35rem .85rem;font-size:.85rem;cursor:pointer}.language-toggle-button.active{background:#0b7285;border-color:#0b7285;color:#fff}@media(max-width:700px){.questionnaire-toolbar{flex-direction:column;align-items:flex-start}.questionnaire-logout{width:fit-content;margin-left:0}}.progressmap-wrap{margin-top:1.25rem;border:1px solid var(--border);border-radius:12px;padding:1rem;background:#fff}.progressmap-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.85rem;flex-wrap:wrap}.progressmap-title{margin:0;font-size:.95rem}.progressmap-subtitle{margin:.25rem 0 0;font-size:.8rem;color:var(--muted)}.progressmap-legend{display:flex;align-items:center;gap:.45rem;font-size:.75rem;color:var(--muted)}.progressmap-legend-swatches{display:inline-flex;gap:0}.progressmap-legend-swatch{width:12px;height:12px;border-radius:0;border:1px solid rgba(0,0,0,.2)}.progressmap-scroll{overflow-x:auto;width:100%;padding-inline:.4rem}.progressmap-grid-shell{min-width:fit-content;margin-inline:auto}.progressmap-column-labels{display:grid;grid-template-columns:minmax(180px,220px) repeat(auto-fit,minmax(20px,20px));align-items:end;gap:.6rem;margin-bottom:.7rem}.progressmap-corner-label{height:1px}.progressmap-week-label{font-size:.7rem;color:var(--muted);text-align:center}.progressmap-body{display:flex;flex-direction:column;gap:0}.progressmap-row{display:grid;grid-template-columns:minmax(180px,220px) 1fr;align-items:center;gap:.6rem}.progressmap-row-label{display:flex;align-items:center;gap:.5rem;min-width:0}.progressmap-row-index{flex:0 0 auto;font-size:.72rem;font-weight:700;color:#0b7285;background:#0b728514;border-radius:999px;padding:.18rem .42rem}.progressmap-row-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;color:var(--text)}.progressmap-row-cells{display:grid;grid-auto-flow:column;grid-auto-columns:20px;gap:0}.progressmap-cell{width:20px;height:20px;border:1px solid rgba(0,0,0,.2);border-radius:0;padding:0;cursor:help}.progressmap-cell:hover,.progressmap-cell:focus-visible{transform:scale(1.14);box-shadow:0 0 0 2px #0b728526;outline:none}.progressmap-empty{margin:.5rem 0;font-size:.85rem;color:var(--muted)}@media(max-width:900px){.progressmap-row,.progressmap-column-labels{grid-template-columns:minmax(140px,180px) repeat(auto-fit,minmax(20px,20px))}}.predictor-diagram-top{display:grid;gap:2.5rem;grid-template-columns:minmax(0,1fr) minmax(0,2fr);align-items:stretch}.predictor-radar-wrap{display:flex;flex-direction:column;background:#fff;border-radius:4px;padding:.85rem 1rem;box-shadow:0 1px 5px #0000001f,0 2px 2px #00000012,0 3px 1px -2px #0000000d}.predictor-radar-wrap .chart-area{margin:auto 0}.radar-axis-legend{margin:.5rem 0 0;font-size:.72rem;color:#666;text-align:center;line-height:1.3}.trajectory-chart-wrap{background:#fff;border-radius:4px;padding:.85rem 1rem;box-shadow:0 1px 5px #0000001f,0 2px 2px #00000012,0 3px 1px -2px #0000000d}.trajectory-heading{margin-bottom:.5rem}.trajectory-title{margin:0;font-size:1rem;font-weight:600;color:#1a1a1a}.trajectory-subtitle{margin:.15rem 0 0;font-size:.78rem;color:#666}.domain-toggle-row{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.5rem}.domain-toggle-chip{display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .7rem;border-radius:999px;border:1px solid var(--border, #ccc);background:#fff;cursor:pointer;font-size:.8rem;transition:opacity .15s,background .15s}.domain-toggle-chip.is-off{opacity:.4}.domain-toggle-swatch{width:10px;height:10px;border-radius:50%;display:inline-block}.domain-toggle-value{font-weight:600;font-variant-numeric:tabular-nums}.trajectory-chart-wrap{display:flex;flex-direction:column;gap:.65rem;background:#fff;border-radius:4px;padding:.85rem 1rem;box-shadow:0 1px 5px #0000001f,0 2px 2px #00000012,0 3px 1px -2px #0000000d}.meta-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .85rem;border-radius:999px;border:1px solid var(--border, #ccc);background:#fff;color:#0b7285;font-size:.8rem;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s}.meta-pill:hover{background:#f1f8fa;border-color:#0b7285}.trajectory-history-toggle{display:flex;justify-content:flex-start}.mapped-symptoms-wrap{border:1px solid var(--border);border-radius:12px;background:#fff;padding:.85rem;height:280px}.bdi-title{margin:0 0 .5rem;font-size:.95rem}.bdi-list{list-style:none;margin:0;padding:0;max-height:220px;overflow-y:auto}.bdi-list-item{font-size:.85rem;margin-bottom:.35rem}@media(max-width:1024px){.predictor-diagram-top{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr)}}@media(max-width:700px){.predictor-diagram-top{grid-template-columns:1fr}}:root{font-family:IBM Plex Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;color:#1b2b30;background-color:#f4f7f7;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--ink: #1b2b30;--muted: #4f6368;--surface: #f4f7f7;--paper: #ffffff;--border: #dce6e7;--accent: #0b7285;--accent-strong: #075a66;--grid: rgba(11, 114, 133, .08)}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--surface);background-image:radial-gradient(900px 480px at 10% -10%,rgba(11,114,133,.12),transparent 60%),radial-gradient(720px 360px at 95% 0%,rgba(115,165,168,.2),transparent 55%),linear-gradient(180deg,#f7fbfb,#eef4f5);color:var(--ink);overflow-x:hidden}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-strong)}#root{min-height:100vh}button,input,select,textarea{font-family:inherit}
