:root{--cream: #F5ECD7;--terracotta: #C4785A;--sage: #7A9E7E;--amber: #E8B86D;--off-white: #FAF7F0;--dark: #3D2B1F;--muted: #8B6B55;--card-shadow: 0 2px 12px rgba(61, 43, 31, .1)}*{margin:0;padding:0;box-sizing:border-box}html{height:100%}body{font-family:Nunito,sans-serif;background:var(--cream);min-height:100dvh;color:var(--dark);overflow-x:hidden}.app-header{background:var(--terracotta);padding:14px 20px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 2px 12px #c4785a4d;position:sticky;top:0;z-index:20}.app-logo{font-family:Fredoka One,cursive;font-size:1.5rem;color:var(--off-white);letter-spacing:.5px}.app-logo .paw{color:var(--amber)}.header-sub{font-size:.82rem;color:#faf7f0c7;font-weight:700}.waiting-room{padding:20px 16px 32px}.day-title{font-family:Fredoka One,cursive;font-size:1.4rem;color:var(--dark);margin-bottom:4px}.day-subtitle{font-size:.84rem;color:var(--muted);font-weight:700;margin-bottom:20px}.patient-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.patient-card{background:var(--off-white);border-radius:16px;padding:16px 14px;box-shadow:var(--card-shadow);cursor:pointer;border:2px solid transparent;transition:all .2s ease;position:relative;overflow:hidden;min-height:44px}.patient-card:hover{border-color:var(--terracotta);transform:translateY(-2px);box-shadow:0 6px 20px #c4785a33}.patient-card.completed{opacity:.55;cursor:default;filter:grayscale(30%)}.patient-card.completed:hover{border-color:transparent;transform:none;box-shadow:var(--card-shadow)}.done-badge{position:absolute;top:8px;right:8px;background:var(--sage);color:#fff;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:900}.card-species-emoji{font-size:2.4rem;line-height:1;margin-bottom:10px;display:block}.card-name{font-family:Fredoka One,cursive;font-size:1.05rem;color:var(--dark);margin-bottom:2px}.card-breed{font-size:.74rem;color:var(--muted);font-weight:700;margin-bottom:6px}.card-meta{font-size:.72rem;color:#a08070;font-weight:600;margin-bottom:8px}.difficulty-row{display:flex;align-items:center;gap:5px;margin-bottom:8px}.difficulty-dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0}.difficulty-dot.straightforward{background:var(--sage)}.difficulty-dot.moderate{background:var(--amber)}.difficulty-dot.complex{background:var(--terracotta)}.difficulty-label{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.4px}.difficulty-label.straightforward{color:var(--sage)}.difficulty-label.moderate{color:#b8923a}.difficulty-label.complex{color:var(--terracotta)}.card-complaint{font-size:.78rem;color:#6b4f3f;font-weight:600;line-height:1.4;border-top:1px solid rgba(61,43,31,.08);padding-top:8px}.treatment-view{padding-bottom:130px}.patient-header-bar{background:var(--off-white);padding:14px 20px;border-bottom:1px solid rgba(61,43,31,.07);display:flex;align-items:center;gap:14px}.patient-avatar-emoji{font-size:3rem;flex-shrink:0;line-height:1}.patient-header-info h2{font-family:Fredoka One,cursive;font-size:1.25rem;color:var(--dark)}.patient-header-meta{font-size:.78rem;color:var(--muted);font-weight:700;margin-top:3px}.phase-bar{padding:10px 20px;display:flex;gap:6px;align-items:center;background:var(--cream);border-bottom:1px solid rgba(61,43,31,.06)}.phase-dot{height:5px;flex:1;border-radius:3px;background:#3d2b1f1f;transition:background .3s}.phase-dot.active{background:var(--terracotta)}.phase-dot.done{background:var(--sage)}.treatment-body{padding:16px 20px;display:flex;flex-direction:column;gap:16px}.owner-dialogue{background:var(--off-white);border-radius:16px;padding:16px 18px;border-left:4px solid var(--amber);box-shadow:var(--card-shadow)}.owner-label{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:#b8923a;margin-bottom:8px}.owner-text{font-size:.9rem;line-height:1.55;color:var(--dark);font-weight:600}.retry-notice{background:#c4785a1a;border:2px solid var(--terracotta);border-radius:12px;padding:12px 14px;font-size:.82rem;color:var(--terracotta);font-weight:700;display:flex;align-items:flex-start;gap:8px;line-height:1.45}.findings-section-title{font-family:Fredoka One,cursive;font-size:.95rem;color:var(--dark)}.findings-container{display:flex;flex-direction:column;gap:10px}.finding-entry{background:var(--off-white);border-radius:12px;padding:12px 14px;box-shadow:var(--card-shadow);animation:slideInFinding .3s ease}@keyframes slideInFinding{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.finding-instrument-name{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.4px;color:var(--terracotta);margin-bottom:5px}.finding-text{font-size:.82rem;line-height:1.5;color:var(--dark);font-weight:600}.empty-findings{background:var(--off-white);border-radius:12px;padding:20px 16px;text-align:center;color:#a08070;font-size:.84rem;font-weight:700;line-height:1.5}.bottom-bar{position:fixed;bottom:0;left:0;right:0;z-index:30;background:var(--off-white);border-top:1px solid rgba(61,43,31,.1);box-shadow:0 -4px 20px #3d2b1f1a;padding:12px 20px env(safe-area-inset-bottom,16px)}.fab-row{display:flex;gap:10px}.fab-btn{flex:1;border:none;border-radius:50px;padding:14px 20px;font-family:Fredoka One,cursive;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;letter-spacing:.3px;transition:all .2s;min-height:50px}.fab-btn:hover:not(:disabled){transform:translateY(-2px)}.fab-btn:active:not(:disabled){transform:translateY(0)}.fab-btn.primary{background:var(--terracotta);color:var(--off-white);box-shadow:0 4px 16px #c4785a66}.fab-btn.primary:hover:not(:disabled){box-shadow:0 8px 24px #c4785a80}.fab-btn.secondary{background:var(--sage);color:var(--off-white);box-shadow:0 4px 16px #7a9e7e66}.fab-btn.secondary:hover:not(:disabled){box-shadow:0 8px 24px #7a9e7e80}.fab-btn.secondary:disabled{background:#3d2b1f1f;color:#3d2b1f59;box-shadow:none;cursor:not-allowed;transform:none}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#3d2b1f80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;opacity:0;pointer-events:none;transition:opacity .3s ease}.drawer-overlay.open{opacity:1;pointer-events:all}.bottom-drawer{position:fixed;bottom:0;left:0;right:0;z-index:60;background:var(--off-white);border-radius:24px 24px 0 0;padding:0 20px env(safe-area-inset-bottom,28px);box-shadow:0 -8px 40px #3d2b1f2e;transform:translateY(100%);transition:transform .38s cubic-bezier(.34,1.2,.64,1);max-height:80dvh;display:flex;flex-direction:column}.bottom-drawer.open{transform:translateY(0)}.drawer-handle{width:40px;height:4px;background:#3d2b1f26;border-radius:2px;margin:12px auto 16px;flex-shrink:0}.drawer-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;flex-shrink:0}.drawer-title{font-family:Fredoka One,cursive;font-size:1.15rem;color:var(--dark)}.drawer-close{background:var(--cream);border:none;border-radius:50%;width:36px;height:36px;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--muted);transition:all .2s}.drawer-close:hover{background:#c4785a1f;color:var(--terracotta)}.drawer-body{overflow-y:auto;flex:1;padding-bottom:8px}.drawer-body::-webkit-scrollbar{width:4px}.drawer-body::-webkit-scrollbar-thumb{background:#c4785a59;border-radius:10px}.instrument-hint{font-size:.8rem;color:var(--muted);font-weight:700;margin-bottom:14px;line-height:1.4}.instrument-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.instrument-btn{background:var(--cream);border:2px solid transparent;border-radius:14px;padding:14px 10px;cursor:pointer;text-align:center;font-family:Nunito,sans-serif;font-weight:700;font-size:.82rem;color:var(--dark);transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:6px;min-height:80px;justify-content:center;line-height:1.3}.instrument-btn:hover:not(.used){border-color:var(--terracotta);background:#c4785a14;transform:translateY(-2px)}.instrument-btn.used{border-color:var(--sage);background:#7a9e7e1f;opacity:.7;cursor:default}.instrument-icon{font-size:1.8rem;line-height:1}.instrument-used-label{font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.4px;color:var(--sage)}.diagnosis-hint{font-size:.8rem;color:var(--muted);font-weight:700;margin-bottom:14px;line-height:1.45}.diagnosis-list{display:flex;flex-direction:column;gap:8px}.diagnosis-btn{background:var(--cream);border:2px solid transparent;border-radius:14px;padding:13px 16px;cursor:pointer;text-align:left;font-family:Nunito,sans-serif;font-weight:700;font-size:.88rem;color:var(--dark);transition:all .2s;display:flex;align-items:center;gap:10px;line-height:1.4;min-height:44px}.diagnosis-btn:hover{border-color:var(--sage);background:#7a9e7e1a;transform:translate(4px)}.case-result-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#3d2b1fa6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:90;display:flex;align-items:center;justify-content:center;padding:24px;animation:fadeIn .25s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.case-result-card{background:var(--off-white);border-radius:24px;padding:32px 24px;text-align:center;max-width:380px;width:100%;box-shadow:0 16px 60px #3d2b1f40;animation:slideInUp .4s cubic-bezier(.34,1.56,.64,1)}@keyframes slideInUp{0%{transform:translateY(28px);opacity:0}to{transform:translateY(0);opacity:1}}.case-result-emoji{font-size:3.5rem;display:block;margin-bottom:12px;line-height:1}.case-result-title{font-family:Fredoka One,cursive;font-size:1.4rem;color:var(--sage);margin-bottom:6px}.case-result-diagnosis{font-size:.88rem;color:var(--dark);font-weight:700;margin-bottom:18px;line-height:1.4}.case-result-stars{font-size:2rem;letter-spacing:4px;margin-bottom:8px}.case-result-star-reason{font-size:.78rem;color:#a08070;font-weight:700;margin-bottom:20px;line-height:1.4}.case-result-continue{background:var(--terracotta);color:var(--off-white);border:none;border-radius:50px;padding:14px 36px;font-family:Fredoka One,cursive;font-size:1rem;cursor:pointer;box-shadow:0 4px 16px #c4785a66;transition:all .2s;min-height:44px}.case-result-continue:hover{transform:translateY(-2px);box-shadow:0 8px 24px #c4785a80}.results-view{padding:24px 20px 40px;display:flex;flex-direction:column;gap:20px}.results-hero{text-align:center;padding:20px;background:var(--off-white);border-radius:20px;box-shadow:var(--card-shadow)}.results-trophy{font-size:4rem;display:block;margin-bottom:12px;line-height:1}.results-title{font-family:Fredoka One,cursive;font-size:1.8rem;color:var(--dark);margin-bottom:6px}.results-subtitle{font-size:.9rem;color:var(--muted);font-weight:700}.results-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.stat-card{background:var(--off-white);border-radius:14px;padding:16px 12px;text-align:center;box-shadow:var(--card-shadow)}.stat-value{font-family:Fredoka One,cursive;font-size:1.8rem;color:var(--terracotta)}.stat-label{font-size:.76rem;font-weight:700;color:var(--muted);margin-top:3px;line-height:1.35}.case-scores-section{display:flex;flex-direction:column;gap:10px}.case-scores-title{font-family:Fredoka One,cursive;font-size:1.1rem;color:var(--dark)}.case-score-row{background:var(--off-white);border-radius:14px;padding:14px 16px;box-shadow:var(--card-shadow);display:flex;align-items:center;gap:12px}.case-score-emoji{font-size:1.8rem;flex-shrink:0;line-height:1}.case-score-info{flex:1;min-width:0}.case-score-name{font-weight:800;color:var(--dark);font-size:.9rem}.case-score-detail{font-size:.74rem;color:var(--muted);font-weight:700;margin-top:2px}.case-score-stars{font-size:1.05rem;letter-spacing:2px;flex-shrink:0}.new-day-btn{background:var(--terracotta);color:var(--off-white);border:none;border-radius:50px;padding:16px 40px;font-family:Fredoka One,cursive;font-size:1.1rem;cursor:pointer;letter-spacing:.3px;box-shadow:0 6px 20px #c4785a66;transition:all .2s;width:100%;min-height:56px}.new-day-btn:hover{transform:translateY(-2px);box-shadow:0 10px 28px #c4785a80}@media(max-width:380px){.patient-grid{grid-template-columns:1fr}.instrument-grid{grid-template-columns:repeat(2,1fr)}}
