/* ! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com */body{font-family:Noto Sans SC,sans-serif}.App{background-attachment:fixed;background-color:#f8f5e6;background-image:url(/static/media/%E9%A1%B5%E9%9D%A2%E8%83%8C%E6%99%AF.ca4d35a6b8e08cad51b3.jpg);background-position:50%;background-size:cover;flex-direction:row;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;isolation:isolate;min-height:100vh;position:relative}.App,.main-content{display:flex;height:100vh}.main-content{flex-direction:column;flex-grow:1;overflow-y:scroll}.App:before{background-color:#fffdf5d9;height:100%;left:0;top:0;width:100%;z-index:-1}.App:after,.App:before{content:"";position:fixed}.App:after{animation:appGlowDrift 22s ease-in-out infinite alternate;background:radial-gradient(circle at 15% 25%,#7ab28d38,#0000 55%),radial-gradient(circle at 70% 35%,#ffcc802e,#0000 60%),radial-gradient(circle at 45% 80%,#d68f6726,#0000 55%);filter:blur(0);inset:-20%;opacity:.45;pointer-events:none;z-index:-2}.App-header{align-items:center;background-color:#fffdf5e6;border-color:#c19a6b33;box-shadow:0 2px 10px #a5885726;color:#8b5a2b;display:flex;flex-direction:column;flex-shrink:0;height:80px;justify-content:center;padding:12px 20px;position:relative}.App-header:after{background:linear-gradient(90deg,sienna,peru);bottom:0;content:"";height:4px;left:0;position:absolute;right:0}.logo-container{align-items:center;display:flex;gap:10px}.logo-icon{font-size:28px}.App-header h1{font-size:1.8rem;font-weight:600;letter-spacing:.5px;margin:0}.header-subtitle{font-size:.9rem;font-weight:400;margin-top:4px;opacity:.9}main{display:flex;flex-direction:column;flex-grow:1;margin:0 auto;max-width:1100px;padding:0;position:relative;width:100%}main>div{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#ffffffe6;border:1px solid #c19a6b33;border-radius:12px;box-shadow:0 4px 20px #a5885726;flex-grow:1;height:100%;margin:15px}@keyframes appGlowDrift{0%{transform:translate3d(-2%,-2%,0) scale(1)}50%{opacity:.5;transform:translate3d(2%,1%,0) scale(1.03)}to{opacity:.4;transform:translate3d(-1%,3%,0) scale(1.04)}}.App-footer{background-color:#fffdf5e6;border-color:#c19a6b33;border-top:1px solid #c19a6b33;color:#8b5a2b;font-size:.8rem;padding:12px;text-align:center}@media (max-width:768px){.App-header{min-height:60px;padding:10px}.App-header h1{font-size:1.4rem}.logo-icon{font-size:24px}main>div{border-radius:8px;margin:8px}.header-subtitle{font-size:.8rem}}@media (max-width:480px){.App-header h1{font-size:1.2rem}.logo-icon{font-size:20px}main>div{border-radius:6px;margin:4px}.header-subtitle{display:none}}.sidebar{background:linear-gradient(180deg,#d1b894,#c69d68);box-shadow:4px 0 22px -14px #4e381a73;color:#4d341d;display:flex;flex-direction:column;height:100vh;position:relative;transition:width .3s ease;width:230px;z-index:5}.sidebar.collapsed{width:72px}.sidebar-header{align-items:center;border-bottom:1px solid #563b1a59;display:flex;justify-content:space-between;min-height:94px;padding:20px}.sidebar.collapsed .sidebar-header{justify-content:center;padding:16px 10px}.sidebar-logo,.sidebar-user{align-items:center;display:flex;gap:.75rem}.sidebar-user-avatar{align-items:center;background:#fff7eb8c;border-radius:50%;box-shadow:inset 0 1px 0 #fff6;color:#5c3d1e;display:inline-flex;font-size:1.2rem;font-weight:700;height:42px;justify-content:center;width:42px}.sidebar-user-name{color:#422a12;display:block;font-size:1rem;font-weight:600}.sidebar-user-sub{color:#493117b3;display:block;font-size:.75rem}.sidebar.collapsed .sidebar-logo span{font-size:1.2rem;font-weight:600}.toggle-btn{background:none;border-radius:50%;color:#412a12cc;font-size:18px;padding:5px;transition:background-color .3s}.toggle-btn:hover{background-color:#ffffff59}.sidebar-nav{flex-grow:1}.sidebar-nav ul{list-style:none;margin:20px 0 0;padding:0}.nav-item a{align-items:center;color:#382510eb;display:flex;justify-content:flex-start;padding:14px 22px;text-decoration:none;transition:background-color .3s}.sidebar.collapsed .nav-item a{justify-content:center;padding:14px 0}.nav-item a:hover,.nav-item.active{background-color:#ffffff52;color:#2f1c08}.nav-icon{font-size:20px;margin-right:15px;transition:transform .3s ease}.sidebar.collapsed .nav-icon{margin-right:0}.nav-text{font-size:16px}.sidebar-footer{border-top:1px solid #563b1a4d;padding:16px}.sidebar-logout{align-items:center;background:#fff3;border:1px solid #4c321633;border-radius:14px;color:#3f2913;cursor:pointer;display:flex;font-weight:600;justify-content:space-between;padding:12px 16px;transition:background .3s ease,transform .2s ease;width:100%}.sidebar-logout:hover{background:#ffffff59;transform:translateY(-1px)}.sidebar.collapsed .sidebar-footer{padding:12px 8px}.sidebar.collapsed .sidebar-logout{justify-content:center;padding:10px}.sidebar-logout-text{font-size:.9rem}.message-list{display:flex;flex:1 1;flex-direction:column;max-height:calc(100vh - 170px);overflow-y:auto;padding:1rem}.message{margin-bottom:1rem;max-width:80%}.user-message{align-self:flex-end}.assistant-message{align-self:flex-start}.message-content{border-radius:8px;box-shadow:0 1px 2px #0000001a;padding:.8rem}.user-message .message-content{background-color:#e3f2fd;color:#0d47a1}.assistant-message .message-content{background-color:#f5f5f5;color:#333}.message-header{color:#666;display:flex;font-size:.8rem;justify-content:space-between;margin-bottom:.5rem}.message-role{font-weight:700}.message-time{font-size:.7rem}.message-text{line-height:1.5;white-space:pre-wrap;word-break:break-word}.message-markdown{font-size:.95rem;line-height:1.6;white-space:normal;word-break:break-word}.message-voice-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.6rem}.message-voice-button{background:linear-gradient(135deg,#8b451329,#8b45130d);border:none;border-radius:999px;box-shadow:0 6px 14px #8b451326;color:#5d4037;cursor:pointer;font-size:.85rem;font-weight:600;padding:.45rem 1.1rem;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.message-voice-button:hover:not(:disabled){background:linear-gradient(135deg,#8b451338,#8b451314);box-shadow:0 10px 20px #8b451338;transform:translateY(-1px)}.message-voice-button.loading{box-shadow:none;cursor:wait;opacity:.7}.message-voice-button.playing,.message-voice-button.playing:hover{background:linear-gradient(135deg,#b6860b59,#b6860b2e);color:#5d4037}.message-voice-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.6}.message-voice-error{color:#c62828;font-size:.75rem}.camera-analysis-card,.camera-request-card{background:linear-gradient(135deg,#fffaf0,#fdf6e4);border:1px solid #8b45132e;border-radius:14px;box-shadow:0 8px 18px #8b451326;display:flex;flex-direction:column;gap:.75rem;padding:1rem 1.2rem}.camera-analysis-header,.camera-request-header{align-items:center;display:flex;gap:.75rem}.camera-analysis-icon,.camera-request-icon{font-size:1.8rem}.camera-analysis-title,.camera-request-title{color:#5d4037;font-weight:600;margin:0}.camera-analysis-sub,.camera-request-sub{color:#8d6e63;font-size:.85rem;margin:0}.camera-request-body{color:#5d4037;display:flex;flex-direction:column;font-size:.95rem;gap:.5rem;line-height:1.6}.camera-request-focus{align-self:flex-start;background:#8b451314;border-radius:999px;color:#6d4c41;font-size:.78rem;padding:.25rem .8rem}.camera-analysis-actions,.camera-request-actions{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:flex-end}.camera-analysis-button,.camera-request-button{background:linear-gradient(135deg,#8b5a2b,#b0712f);border:none;border-radius:999px;box-shadow:0 6px 16px #8b5a2b40;color:#fff8e7;cursor:pointer;font-weight:600;padding:.55rem 1.6rem;transition:transform .2s ease,box-shadow .2s ease}.camera-request-button.secondary{background:#8b45131f;box-shadow:none;color:#6d4c41}.camera-request-button.secondary:hover{box-shadow:0 6px 14px #6d4c4140;transform:translateY(-1px)}.camera-analysis-button.disabled,.camera-analysis-button:disabled{background:#8b45132e;box-shadow:none;color:#5d4037b3;cursor:default;transform:none}.camera-analysis-button.disabled:hover,.camera-analysis-button:disabled:hover{box-shadow:none;transform:none}.camera-analysis-button:hover,.camera-request-button:hover{box-shadow:0 10px 22px #8b5a2b4d;transform:translateY(-2px)}.camera-analysis-content{background:#ffffffd9;border:1px dashed #8b451333;border-radius:12px;padding:.8rem 1rem}.message-image-card{background:#ffffffd9;border:1px solid #8b451326;border-radius:12px;display:flex;flex-direction:column;gap:.6rem;padding:.6rem}.message-image-placeholder{align-items:center;background:#8b451314;border:1px dashed #8b45134d;border-radius:12px;color:#5d4037;display:flex;font-size:.88rem;gap:.75rem;padding:.7rem .85rem}.message-image-placeholder__icon{font-size:1.6rem;line-height:1}.message-image-placeholder__text{display:flex;flex-direction:column;gap:.2rem}.message-image-placeholder__text strong{font-size:.92rem}.message-image-preview{background:#8b451314;border-radius:10px;max-height:320px;overflow:hidden}.message-image-preview img{display:block;height:100%;object-fit:contain;width:100%}.message-image-caption{color:#6d4c41;font-size:.85rem;margin:0;text-align:left}.message-markdown h1,.message-markdown h2,.message-markdown h3{margin:.8rem 0 .4rem}.message-markdown ol,.message-markdown ul{margin:.4rem 0 .8rem 1.2rem}.message-prescription{align-self:center}.prescription-card{background:linear-gradient(135deg,#fffaf0,#f5ede0);border:1px solid #8b451333;border-radius:12px;box-shadow:0 8px 20px #8b451326;min-width:260px;padding:1rem}.prescription-header{gap:.75rem}.prescription-icon{font-size:1.8rem}.prescription-title{color:#5d4037;font-weight:600;margin:0}.prescription-subtitle{color:#8d6e63;font-size:.85rem;margin:0}.view-prescription-button{background:linear-gradient(135deg,#8b5a2b,#b0712f);border-radius:999px;box-shadow:0 4px 12px #8b5a2b40;color:#fff8e7;font-weight:600;padding:.45rem 1.2rem;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.view-prescription-button:hover{box-shadow:0 6px 16px #8b5a2b59;transform:translateY(-2px)}.prescription-disabled{color:#9e9e9e;font-size:.85rem}.empty-messages{align-items:center;color:#9e9e9e;display:flex;flex-direction:column;height:100%;justify-content:center;padding:2rem;text-align:center}.empty-messages p{font-size:1.1rem;margin-bottom:1rem}.chat-input-form{display:flex;flex-direction:column;width:100%}.input-container{align-items:flex-end;display:flex;position:relative}.message-input{background-color:#f9f6f0;border:1px solid #d7ccc8;border-radius:24px;color:#5d4037;flex:1 1;font-family:inherit;font-size:15px;line-height:1.5;max-height:200px;min-height:42px;outline:none;padding:10px 16px;resize:vertical;transition:all .2s ease}.message-input:focus{background-color:#fff;border-color:#b8860b;box-shadow:0 0 0 3px #b8860b33}.message-input:disabled{background-color:#e0e0e0;cursor:not-allowed}.message-input::placeholder{color:#a1887f}.send-button{background-color:#8b5a2b;border:none;border-radius:24px;color:#fff8e7;display:flex;padding:0 24px}.camera-trigger-button,.send-button{align-items:center;cursor:pointer;font-weight:600;height:42px;justify-content:center;margin-left:10px;transition:all .2s ease}.camera-trigger-button{background:#8b45131f;border:1px solid #8b451333;border-radius:24px;color:#6d4c41;display:inline-flex;gap:.4rem;padding:0 18px;white-space:nowrap}.camera-trigger-button:hover:not(:disabled){background:#8b451333;box-shadow:0 2px 6px #8b5a2b40}.camera-trigger-button:disabled{background:#d7ccc866;box-shadow:none;color:#6d4c4199;cursor:not-allowed}.camera-trigger-button.highlight{background:linear-gradient(135deg,#ffe0b2e6,#fff3e0e6);border-color:#ffab4099;box-shadow:0 4px 12px #ffab4052;color:#8b5a2b}.camera-trigger-button.highlight:hover{transform:translateY(-1px)}.camera-trigger-icon{font-size:1.1rem}.send-button:hover:not(:disabled){background-color:#6d4c41;box-shadow:0 2px 5px #6d4c414d;transform:translateY(-1px)}.send-button:disabled{background-color:#d7ccc8;box-shadow:none;cursor:not-allowed;transform:none}.input-help-text{color:#a1887f;font-size:.75rem;margin-top:.5rem;padding-right:1rem;text-align:right}.unified-page-wrapper{background-color:#fdfaf0;border-radius:12px;box-shadow:0 4px 20px #a5885726;color:#0a2642;display:flex;flex-direction:column;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;height:100%;overflow:hidden;position:relative;width:100%}.unified-page-header{align-items:center;background-color:#fdfaf0;border-bottom:1px solid #c19a6b33;border-top-left-radius:12px;border-top-right-radius:12px;display:flex;flex-shrink:0;flex-wrap:wrap;gap:1rem;justify-content:space-between;padding:15px 24px;z-index:10}.unified-page-header h2,.unified-page-header h3{color:#8b5a2b;font-size:1.5rem;font-weight:600;margin:0;text-align:center}.unified-page-content-scrollable{background-image:linear-gradient(#f9f6f0e6,#f9f6f0f2),url('data:image/svg+xml;utf8,<svg width="100" height="100" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><path d="M10 10h10v10H10zM30 10h10v10H30zM50 10h10v10H50zM70 10h10v10H70zM20 20h10v10H20zM40 20h10v10H40zM60 20h10v10H60zM80 20h10v10H80zM10 30h10v10H10zM30 30h10v10H30zM50 30h10v10H50zM70 30h10v10H70z" fill="%23E8DCCA" fill-opacity="0.2"/></svg>');display:flex;flex:1 1;flex-direction:column;gap:1.5rem;overflow-y:auto;padding:2.5rem 4% 2rem;scroll-behavior:smooth;scrollbar-color:#8b5c2f4d #0000;scrollbar-width:thin}.unified-page-content-scrollable::-webkit-scrollbar{width:6px}.unified-page-content-scrollable::-webkit-scrollbar-track{background:#0000}.unified-page-content-scrollable::-webkit-scrollbar-thumb{background-color:#8b5c2f4d;border-radius:3px}.unified-page-content-scrollable::-webkit-scrollbar-thumb:hover{background:#b8860b}.message{animation:fadeIn .3s ease-out;display:flex;flex-direction:column;max-width:85%;position:relative}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message.user{align-self:flex-end}.message.assistant{align-self:flex-start}.message.system{align-self:center;margin:8px 0;max-width:90%}.message-bubble{border-radius:18px;font-size:15px;letter-spacing:.2px;line-height:1.5;padding:14px 16px;position:relative;text-align:left;transition:all .2s ease;word-break:break-word}.user .message-bubble{background-color:#8b5a2b;border-bottom-right-radius:4px;box-shadow:0 2px 8px #8b5a2b33;color:#fff8e7}.assistant .message-bubble{background-color:#f5f0e6;border-bottom-left-radius:4px;border-left:3px solid #b8860b;box-shadow:0 2px 8px #8b5a2b1a;color:#5d4037}.assistant .message-bubble:before{align-items:center;background:#f9f6f0;border-radius:50%;box-shadow:0 2px 4px #0000001a;color:#8b5a2b;content:"🌿";display:flex;font-size:16px;height:24px;justify-content:center;left:-30px;position:absolute;top:2px;width:24px}.system .message-bubble{background-color:#fff8e1;border-left:3px solid #d7ccc8;border-radius:10px;box-shadow:0 2px 4px #0000000d;color:#8d6e63}.message-info{align-items:center;color:#8d6e63;display:flex;font-size:12px;margin-top:4px;padding:0 8px}.user .message-info{justify-content:flex-end}.chat-input-area{background-color:#fff8e1;border-top:1px solid #d7ccc8;display:flex;flex-direction:column;gap:.75rem;padding:1rem}.chat-input-actions{display:flex}.image-upload-button{align-items:center;background-color:#8b5a2b;border:none;border-radius:24px;color:#fff8e7;cursor:pointer;display:flex;flex-direction:row;font-weight:600;height:42px;justify-content:center;min-width:60px;padding:0 24px;transition:all .2s ease;white-space:nowrap}.image-upload-button:hover:not(:disabled){background-color:#6d4c41;box-shadow:0 2px 5px #6d4c414d;transform:translateY(-1px)}.image-upload-button:disabled{background-color:#d7ccc8;cursor:not-allowed}.voice-control-panel{display:flex;flex-direction:column;gap:.75rem;margin-top:.75rem}.voice-record-button{align-items:center;align-self:flex-start;background:linear-gradient(135deg,#8b5a2b,#b0712f);border:none;border-radius:999px;box-shadow:0 10px 24px #8b451340;color:#fff8e7;cursor:pointer;display:inline-flex;font-weight:600;gap:.5rem;padding:.55rem 1.4rem;transition:transform .2s ease,box-shadow .2s ease}.voice-record-button:hover:not(:disabled){box-shadow:0 12px 28px #8b451359;transform:translateY(-1px)}.voice-record-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.7}.voice-record-icon{font-size:1.2rem}.voice-error-banner,.voice-ready-banner,.voice-recording-banner,.voice-transcribing-banner{background:#ffffffeb;border:1px solid #8b451329;border-radius:18px;box-shadow:0 14px 32px -24px #8b451380;display:flex;flex-direction:column;gap:.7rem;padding:.9rem 1.1rem}.voice-recording-banner{background:linear-gradient(135deg,#fff7ebf2,#fdecc8e6);border-color:#ffab4059}.voice-transcribing-banner{align-items:center;background:linear-gradient(135deg,#eff4fcf2,#dde7f9e6);border-color:#4285f44d;display:inline-flex;gap:.65rem}.voice-ready-banner{background:linear-gradient(135deg,#e9f6eff2,#cdebd7eb);border-color:#4caf504d}.voice-error-banner{background:linear-gradient(135deg,#ffebeef2,#fed7daeb);border-color:#dc354547}.voice-meter{background:linear-gradient(90deg,#b6860b33,#b6860ba6);border-radius:999px;height:4px;overflow:hidden;position:relative}.voice-meter:after{animation:voiceMeter 1.2s linear infinite;background:#fffc;content:"";height:100%;left:-20%;position:absolute;top:0;width:30%}@keyframes voiceMeter{0%{transform:translateX(0)}to{transform:translateX(400%)}}.voice-recording-info{align-items:baseline;color:#5d4037;display:flex;font-size:.9rem;font-weight:600;gap:1rem;justify-content:space-between}.voice-recording-info span:last-child{color:#8d6e63;font-size:.85rem}.voice-error-actions,.voice-ready-actions,.voice-recording-actions{display:flex;flex-wrap:wrap;gap:.6rem}.voice-error-actions button,.voice-send-button,.voice-stop-button{background:linear-gradient(135deg,#8b5a2b,#b0712f);border:none;border-radius:999px;box-shadow:0 10px 22px #8b451340;color:#fff8e7;cursor:pointer;font-weight:600;padding:.45rem 1.1rem;transition:transform .2s ease,box-shadow .2s ease}.voice-error-actions button:hover,.voice-send-button:hover,.voice-stop-button:hover{box-shadow:0 12px 24px #8b451359;transform:translateY(-1px)}.voice-cancel-button{background:#ffffffd9;border:1px solid #8b45133d;border-radius:999px;color:#6d4c41;cursor:pointer;font-weight:600;padding:.45rem 1rem;transition:background .2s ease,border .2s ease}.voice-cancel-button:hover{background:#fffffff2;border-color:#8b451352}.voice-spinner{animation:spin .9s linear infinite;border:2px solid #8b451340;border-radius:50%;border-top-color:#8b4513bf;height:16px;width:16px}.voice-ready-main{align-items:flex-start;display:flex;gap:.75rem}.voice-ready-icon{font-size:1.4rem}.voice-ready-content{color:#4e3629;display:flex;flex-direction:column;gap:.4rem}.voice-ready-text{line-height:1.55;margin:0;max-height:6.5rem;overflow-y:auto;padding-right:.3rem}.voice-ready-text::-webkit-scrollbar{width:4px}.voice-ready-text::-webkit-scrollbar-thumb{background:#8b451340;border-radius:999px}.voice-ready-hint{color:#7b5b4b;font-size:.78rem}.voice-error-text{color:#8a1c2f;font-size:.9rem}.typing-indicator{display:inline-block;height:24px;position:relative;width:60px}.typing-indicator:before{animation:typing-dot 1.4s ease-in-out infinite both;animation-delay:-.32s;left:0}.typing-indicator:after,.typing-indicator:before{background-color:#b8860b;border-radius:50%;content:"";height:10px;position:absolute;width:10px}.typing-indicator:after{animation:typing-dot 1.4s ease-in-out infinite both;animation-delay:0s;right:0}.typing-indicator span{animation:typing-dot 1.4s ease-in-out infinite both;animation-delay:-.16s;background-color:#b8860b;border-radius:50%;height:10px;left:22px;position:absolute;top:0;width:10px}@keyframes typing-dot{0%,80%,to{opacity:.6;transform:scale(.7)}40%{opacity:1;transform:scale(1)}}@media (max-width:768px){.message-bubble{font-size:14px;padding:12px 14px}.assistant .message-bubble:before{display:none}.chat-input-area{padding:12px}}@media (max-width:480px){.unified-page-content-scrollable{padding:15px 10px}.message{max-width:90%}.message-bubble{font-size:14px;padding:10px 12px}}.conversation-id{font-size:.8rem;opacity:.8}.error-message{background-color:#ffebee;border-radius:4px;margin:.5rem 1rem;padding:.8rem}.stage-progress-container{margin-top:.5rem;padding:0 1.5rem}.patient-context-section{margin-top:1rem;padding:0 1.5rem}.patient-context-card{background:linear-gradient(135deg,#fffffff2,#f9f5eceb);border:1px solid #8b451326;border-radius:18px;box-shadow:0 18px 36px -28px #8b451373;display:flex;flex-direction:column;gap:1.25rem;padding:1.5rem}.patient-context-card.guest{align-items:flex-start;background:linear-gradient(135deg,#fff8e1f2,#faecc5cc)}.patient-context-card.loading{background:linear-gradient(135deg,#e8f5e9f2,#d4efdabf)}.patient-context-card.error{background:#ffebeef2;border-color:#dc354559}.patient-context-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.patient-context-header h3{color:#5d4037;font-size:1.25rem;margin:0}.patient-context-header p{color:#8d6e63;font-size:.9rem;margin:.3rem 0 0}.patient-context-stats{display:flex;flex-wrap:wrap;gap:.75rem}.context-pill{background:#8b5a2b14;border:1px solid #8b45131a;border-radius:14px;color:#5d4037;display:flex;flex-direction:column;gap:.35rem;min-width:140px;padding:.85rem 1.1rem}.context-pill span{color:#8d6e63;font-size:.85rem}.context-pill strong{color:#4e3629;font-size:1.1rem;font-weight:700}.patient-context-body{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.context-section{background:#ffffffd9;border:1px dashed #8b45131f;border-radius:16px;display:flex;flex-direction:column;gap:.6rem;padding:1.1rem}.section-header{align-items:center;display:flex;gap:.5rem;justify-content:space-between}.section-title{color:#5d4037;font-size:1rem}.section-time{color:#8d6e63;font-size:.8rem}.context-highlight{color:#4e3629;font-size:1rem;font-weight:600;margin:0}.context-line{color:#6d4c41;font-size:.9rem;margin:0}.context-list{gap:.6rem;list-style:none;margin:0;padding:0}.context-list,.context-list li{display:flex;flex-direction:column}.context-list li{gap:.25rem}.context-list-title{color:#4e3629;font-size:.95rem;font-weight:600}.context-list-sub{color:#8d6e63;font-size:.8rem}.diagnosis-stage-progress{grid-gap:.8rem;display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));list-style:none;margin:0;padding:0}.stage-item{align-items:center;background:#fffdf7;border:1px solid #8b451326;border-radius:12px;box-shadow:0 4px 12px #8b451314;display:flex;gap:.8rem;padding:.8rem 1rem;transition:all .3s ease}.stage-item.upcoming{opacity:.9}.stage-item.upcoming .stage-index{background-color:#d7ccc8;color:#5d4037}.stage-item.completed{background:linear-gradient(135deg,#c8e6c966,#a5d6a733);border-color:#43a04766}.stage-item.active{background:linear-gradient(135deg,#fff3e0b3,#ffe0b299);border-color:#ffab40b3;transform:translateY(-2px)}.stage-index{align-items:center;background-color:#8b5a2b;border-radius:50%;color:#fff8e7;display:flex;flex-shrink:0;font-weight:600;height:32px;justify-content:center;width:32px}.stage-item.completed .stage-index{background-color:#43a047}.stage-item.active .stage-index{background-color:#ff9800}.stage-info{display:flex;flex-direction:column;gap:.2rem}.stage-label{color:#5d4037;font-weight:600;margin:0}.stage-description{color:#8d6e63;margin:0}.diagnosis-summary-wrapper{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin:1rem 0;padding:0 1.5rem}.diagnosis-summary-card,.herb-summary-card{background:linear-gradient(135deg,#fffffff2,#f9f4ebe6);border:1px solid #8b45131f;border-radius:16px;box-shadow:0 6px 18px #8b451326;padding:1rem 1.2rem}.diagnosis-summary-card h4,.herb-summary-card h4{color:#5d4037;font-weight:600;margin:0 0 .6rem}.diagnosis-summary-card p{color:#6d4c41;line-height:1.6;margin:0}.herb-summary-card ul{color:#5d4037;margin:0;padding-left:1.1rem}.herb-summary-card li{line-height:1.5;margin:.25rem 0}.diagnosis-session-card{background:linear-gradient(135deg,#fffffff2,#f8f0dfe6);border:1px solid #8b45131f;border-radius:22px;box-shadow:0 26px 48px -28px #8b45138c;display:flex;flex-direction:column;gap:1.75rem;margin:0 1.5rem 2rem;overflow:hidden;padding:1.8rem 2rem;position:relative}.diagnosis-session-card.loading{background:linear-gradient(135deg,#e8f5e9f2,#c8e6c9cc);border-color:#4caf5040}.diagnosis-session-card.error{background:linear-gradient(135deg,#ffebeef2,#fed7dad9);border-color:#dc35454d}.diagnosis-session-card.empty{align-items:flex-start;gap:1.25rem}.diagnosis-session-card.syncing:after{animation:sessionShimmer 1.4s ease-in-out infinite;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:linear-gradient(135deg,#fafafa66,#decba959);content:"";inset:0;position:absolute}@keyframes sessionShimmer{0%{opacity:.2}50%{opacity:.55}to{opacity:.2}}.session-header{align-items:flex-start;display:flex;gap:1.5rem;justify-content:space-between;position:relative;z-index:1}.session-header h3{color:#5d4037;font-size:1.4rem;font-weight:600;margin:0}.session-header p{color:#7b5b4b;font-size:.9rem;line-height:1.6;margin:.35rem 0 0;max-width:45ch}.session-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.6rem;justify-content:flex-end}.session-actions button{background:#8b5a2b;border:none;border-radius:999px;box-shadow:0 10px 20px -12px #8b4513cc;color:#fff8e7;cursor:pointer;font-size:.9rem;font-weight:600;padding:.55rem 1.2rem;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.session-actions button:hover:not(:disabled){background:#6d4c41;box-shadow:0 12px 24px -12px #8b4513e6;transform:translateY(-1px)}.session-actions button:disabled{background:#bda38799;box-shadow:none;cursor:not-allowed}.session-action-secondary{background:#ffffffd9!important;border:1px solid #8b451333!important;box-shadow:none!important;color:#8b5a2b!important}.session-body{gap:1.5rem;position:relative;z-index:1}.session-body,.session-section{display:flex;flex-direction:column}.session-section{gap:1rem}.session-section h4{align-items:center;color:#5d4037;display:inline-flex;font-size:1rem;font-weight:600;gap:.45rem;letter-spacing:.5px;margin:0}.session-section h4:before{background:linear-gradient(135deg,#c08457,#a86b33);border-radius:50%;box-shadow:0 0 0 4px #c8845740;content:"";height:8px;width:8px}.session-section ol,.session-section ul{margin:0;padding:0}.session-fact-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.session-fact-field{background:#ffffffe6;border:1px solid #8b451324;border-radius:16px;display:flex;flex-direction:column;gap:.4rem;padding:.9rem;transition:border .2s ease,box-shadow .2s ease}.session-fact-field:focus-within{border-color:#8b451359;box-shadow:0 12px 24px -18px #8b451399}.session-fact-label{color:#7b5742;font-size:.85rem;font-weight:600;letter-spacing:.4px}.session-fact-input{background:#faf4ece6;border:none;border-radius:12px;box-shadow:inset 0 1px 3px #8b451326;color:#4e3629;font-family:inherit;font-size:.92rem;line-height:1.6;padding:.75rem;resize:vertical}.session-fact-input:focus{box-shadow:inset 0 0 0 2px #b6860b33;outline:none}.session-empty{color:#7b5742b3;font-size:.9rem;letter-spacing:.3px}.session-bullet-list{display:flex;flex-direction:column;gap:.45rem;list-style:none;padding-left:.2rem}.session-bullet-list li{color:#5d4037;line-height:1.6;padding-left:1.2rem;position:relative}.session-bullet-list li:before{color:#c08457;content:"•";font-weight:600;left:0;position:absolute}.session-definition-list{display:flex;flex-direction:column;gap:.6rem}.session-definition-item{grid-gap:.6rem;align-items:baseline;display:grid;gap:.6rem;grid-template-columns:120px 1fr}.session-definition-label{color:#9c7a61;font-size:.8rem;letter-spacing:.4px}.session-definition-value{color:#4e3629;line-height:1.6}.session-card-grid{grid-gap:1.1rem;display:grid;gap:1.1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.session-info-card{background:#ffffffeb;border:1px solid #8b45131f;border-radius:18px;box-shadow:0 12px 24px -20px #8b451380;display:flex;flex-direction:column;gap:.65rem;padding:1.1rem 1.2rem}.session-card-header{align-items:center;display:flex;justify-content:space-between}.session-chip{align-items:center;background:#b6860b26;border-radius:999px;color:#8b5a2b;display:inline-flex;font-size:.78rem;font-weight:600;justify-content:center;letter-spacing:.4px;padding:.25rem .6rem}.session-card-body{color:#4e3629;display:flex;flex-direction:column;font-size:.92rem;gap:.6rem;line-height:1.6}.session-timeline{display:flex;flex-direction:column;gap:1.2rem;list-style:none;padding-left:1.5rem;position:relative}.session-timeline:before{background:linear-gradient(180deg,#b6860b66,#b6860b00);bottom:.2rem;content:"";left:.7rem;position:absolute;top:.2rem;width:2px}.session-timeline-item{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:auto 1fr;position:relative}.timeline-node{align-items:center;background:#fdf1d6;border:2px solid #b6860b73;border-radius:50%;box-shadow:0 0 0 6px #fdf1d699;display:flex;height:1.4rem;justify-content:center;position:relative;width:1.4rem;z-index:1}.timeline-index{color:#8b5a2b;font-size:.75rem;font-weight:700}.timeline-card{background:#ffffffeb;border:1px solid #8b45131f;border-radius:16px;box-shadow:0 16px 32px -28px #8b45138c;display:flex;flex-direction:column;gap:.6rem;padding:1rem 1.2rem}.timeline-heading{align-items:center;display:flex;gap:.75rem;justify-content:space-between}.timeline-stage{color:#805437;font-size:.92rem;font-weight:600;letter-spacing:.4px}.timeline-body{color:#4e3629;line-height:1.6}.timeline-tag{background:#b6860b26;border-radius:999px;color:#8b5a2b;font-size:.75rem;letter-spacing:.3px;padding:.2rem .6rem;white-space:nowrap}.timeline-meta{color:#8d6e63;display:flex;flex-wrap:wrap;font-size:.78rem;gap:.65rem}.timeline-meta span:before{color:#c08457;content:"·";margin-right:.35rem}.timeline-meta span:first-child:before{content:"";margin-right:0}.session-task-timeline .timeline-card{border-left:3px solid #b6860b73}.session-error-banner{background:#dc35451f;border:1px solid #dc354533;border-radius:14px;color:#8a1c2f;font-size:.9rem;padding:.75rem 1rem}@media (max-width:960px){.diagnosis-session-card{margin:0 1rem 1.5rem;padding:1.5rem}.session-header{align-items:flex-start;flex-direction:column}.session-actions{justify-content:flex-start;width:100%}.session-definition-item{grid-template-columns:1fr}}@media (max-width:640px){.session-card-grid,.session-fact-grid{grid-template-columns:1fr}.session-timeline{padding-left:1rem}.session-timeline:before{left:.5rem}.timeline-card{padding:.85rem .95rem}.timeline-heading{align-items:flex-start;flex-direction:column}.timeline-tag{align-self:flex-start}}.typing-container{align-items:center;color:#8b5a2b;display:flex;gap:.75rem;padding:.5rem 1rem}.typing-caption{font-size:.85rem}.community-searching-indicator{align-items:center;align-self:flex-start;background:#8b451314;border-radius:999px;box-shadow:inset 0 0 0 1px #8b45131f;color:#8b5a2b;display:inline-flex;font-size:.8rem;gap:.5rem;padding:.35rem .9rem}.community-searching-spinner{animation:community-search-spin .8s linear infinite;border:2px solid #8b451333;border-radius:50%;border-top-color:#b8860b;height:.8rem;width:.8rem}.community-searching-text{letter-spacing:.02em}@keyframes community-search-spin{to{transform:rotate(1turn)}}.markdown-content{line-height:1.5;margin:0;text-align:left}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6,.markdown-content ol,.markdown-content p,.markdown-content ul{text-align:left}.markdown-content p{margin:0 0 .8em}.markdown-content p:last-child{margin-bottom:0}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{color:#5d4037;line-height:1.25;margin-bottom:.5em;margin-top:1em}.markdown-content h1{font-size:1.5em}.markdown-content h2{font-size:1.3em}.markdown-content h3{font-size:1.1em}.markdown-content ol,.markdown-content ul{margin-bottom:1em;margin-top:0;padding-left:2em}.markdown-content li{margin:.3em 0}.markdown-content a{color:#8b5a2b;text-decoration:none}.markdown-content a:hover{text-decoration:underline}.markdown-content blockquote{background-color:#f5f0e680;border-left:3px solid #b8860b;color:#5d4037;margin:.8em 0;padding:0 1em}.markdown-content code{background-color:#d7ccc833;border-radius:3px;color:#8b5a2b;font-family:monospace;font-size:85%;margin:0;padding:.2em .4em}.markdown-content pre{background-color:#f5f0e6;border-radius:4px;margin:.8em 0;overflow:auto;padding:.8em}.markdown-content pre code{background-color:initial;color:#5d4037;padding:0}.markdown-content table{margin:1em 0}.markdown-content table td,.markdown-content table th{border:1px solid #d7ccc8;padding:6px 12px;text-align:left}.markdown-content table th{background-color:#b8860b1a;font-weight:600}.markdown-content table tr:nth-child(2n){background-color:#f5f0e680}.markdown-content img{border-radius:4px;height:auto;margin:.5em 0;max-width:100%}.markdown-content hr{background-color:#d7ccc8;border:none;height:1px;margin:1em 0}.markdown-content .highlight-warning{background-color:#fff8e1;border-left:3px solid #b8860b;border-radius:4px;margin:.8em 0;padding:8px 12px}.markdown-content .highlight-info{background-color:#f5f0e6;border-left:3px solid #8b5a2b;border-radius:4px;margin:.8em 0;padding:8px 12px}.markdown-content .medical-term,.markdown-content .tcm-term{border-bottom:1px dashed #8b5a2b}.markdown-content .tcm-term{cursor:help;position:relative}.markdown-content .tcm-term:hover:after{background:#fff8e1;border:1px solid #8b5a2b;border-radius:4px;bottom:100%;content:attr(data-explain);left:50%;padding:5px 10px;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:100}@media (max-width:768px){.markdown-content h1{font-size:1.3em}.markdown-content h2{font-size:1.2em}.markdown-content h3{font-size:1.1em}.markdown-content pre{padding:.6em}.markdown-content blockquote{padding:0 .8em}}.message-image-container{margin-bottom:8px;max-width:100%}.message-image{border-radius:8px;cursor:pointer;max-height:300px;max-width:100%}.image-preview-container{display:inline-block;margin:0 16px 8px;max-width:150px;padding:8px;position:relative}.image-preview{border:1px solid #d7ccc8;border-radius:8px;max-height:150px;object-fit:contain;width:100%}.clear-image-button{background-color:#5d403780;font-size:16px;height:24px;right:0;top:0;width:24px}.clear-image-button:hover{background-color:#5d4037b3}.diagnosis-mode-indicator{align-items:center;animation:pulse-glow 2s ease-in-out infinite;background:linear-gradient(135deg,#e8f5e8,#f0f8f0);border:2px solid var(--accent-color);border-radius:20px;display:flex;gap:.5rem;margin-left:1rem;padding:8px 16px;position:relative}.diagnosis-icon{animation:bounce 1.5s ease-in-out infinite;font-size:1.2rem}.diagnosis-text{color:var(--tcm-dark-brown);font-size:.9rem;font-weight:600}.exit-diagnosis-btn{align-items:center;background:none;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;height:20px;justify-content:center;padding:0 4px;transition:all .2s ease;width:20px}.exit-diagnosis-btn:hover{background-color:#ff00001a;color:#f44336}@keyframes pulse-glow{0%,to{box-shadow:0 0 5px #00c8534d}50%{box-shadow:0 0 15px #00c85380}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-3px)}60%{transform:translateY(-1px)}}@media (max-width:768px){.unified-page-header{flex-direction:column;gap:.5rem;padding:12px 15px}.diagnosis-mode-indicator{justify-content:center;margin-left:0;width:100%}.diagnosis-text{font-size:.8rem}.patient-context-card{padding:1.1rem}.patient-context-body{grid-template-columns:1fr}.patient-context-header{align-items:flex-start;flex-direction:column;gap:.6rem}.context-pill{min-width:0;min-width:auto;width:100%}}.diagnosis-entry{align-items:center;display:flex;justify-content:center;min-height:60vh;padding:2rem}.welcome-message{background:linear-gradient(145deg,#fff,#f8f5f0);border:1px solid #8b45131a;border-radius:20px;box-shadow:0 8px 32px #8b45131a,0 2px 8px #8b45130d;max-width:600px;padding:3rem 2rem;text-align:center}.welcome-message h3{color:var(--tcm-dark-brown);font-size:1.8rem;font-weight:600;margin-bottom:1rem}.welcome-message p{color:var(--text-secondary);font-size:1.1rem;margin-bottom:2rem}.service-options{align-items:stretch;display:flex;gap:1.5rem;justify-content:center}.diagnosis-mode-btn{align-items:center;background:linear-gradient(145deg,var(--primary-color) 0,#1976d2 100%);border:none;border-radius:16px;box-shadow:0 4px 16px #1e88e54d;color:#fff;cursor:pointer;display:flex;flex-direction:column;gap:.5rem;min-width:200px;padding:1.5rem 1.8rem;transition:all .3s ease}.diagnosis-mode-btn:hover{background:linear-gradient(145deg,#1976d2,#1565c0);box-shadow:0 8px 24px #1e88e566;transform:translateY(-2px)}.general-chat-option{align-items:center;background:#8b45130d;border:2px dashed #8b451333;border-radius:16px;color:var(--tcm-dark-brown);display:flex;flex-direction:column;gap:.5rem;min-width:200px;padding:1.5rem 1.8rem}.btn-icon{font-size:2rem;margin-bottom:.5rem}.btn-text{align-items:center;display:flex;flex-direction:column;gap:.2rem}.btn-text strong{font-size:1.1rem;font-weight:600}.btn-text small{font-size:.85rem;font-weight:400;opacity:.8}@media (max-width:768px){.service-options{flex-direction:column;gap:1rem}.diagnosis-mode-btn,.general-chat-option{min-width:auto;width:100%}.welcome-message{padding:2rem 1.5rem}}.camera-permission-banner{align-items:flex-start;background:#fff8e1d9;border:1px solid #8b45132e;box-shadow:0 12px 24px -18px #8b451373;gap:1rem;margin:1rem 1.5rem 0;padding:1rem 1.25rem}.camera-permission-banner.info{background:#e3f2fdbf;border-color:#1e88e559}.camera-permission-banner.warning{background:#fff3e0c7;border-color:#ff980059}.camera-banner-info{align-items:flex-start;display:flex;flex:1 1;gap:.75rem}.camera-banner-icon{font-size:1.7rem;line-height:1}.camera-banner-text{color:#5d4037;display:flex;flex-direction:column;gap:.25rem}.camera-banner-text strong{color:#4e342e;font-size:1rem}.camera-banner-text p{color:#6d4c41;font-size:.92rem;line-height:1.5;margin:0}.camera-banner-controls{align-items:center;display:flex;gap:.5rem;margin-left:auto}.camera-banner-action{background:linear-gradient(135deg,#8b5a2b,#b0712f);border:none;border-radius:999px;box-shadow:0 8px 18px #8b5a2b40;color:#fff8e7;cursor:pointer;font-weight:600;padding:.45rem 1.2rem;transition:all .2s ease;white-space:nowrap}.camera-banner-action:hover{box-shadow:0 12px 20px #8b5a2b40;transform:translateY(-1px)}.camera-banner-dismiss{align-items:center;background:#8b45131f;border:none;border-radius:50%;color:#6d4c41;cursor:pointer;display:flex;font-size:1.2rem;height:32px;justify-content:center;transition:background .2s ease;width:32px}.camera-banner-dismiss:hover{background:#8b45133d}@media (max-width:768px){.camera-permission-banner{align-items:stretch;flex-direction:column;margin:1rem 1rem 0;padding:1rem}.camera-banner-controls{justify-content:flex-end}}.new-conversation-button{background:linear-gradient(135deg,#2196f3f2,#1976d2e6);border:1px solid #1e88e559;border-radius:999px;box-shadow:0 10px 24px #2196f347;color:#fff;cursor:pointer;font-weight:600;padding:.6rem 1.4rem;transition:transform .2s ease,box-shadow .2s ease;white-space:nowrap}.new-conversation-button:hover{box-shadow:0 16px 28px #1976d259;transform:translateY(-1px)}.new-conversation-button:active{box-shadow:0 8px 18px #1976d24d;transform:translateY(0)}@media (max-width:768px){.new-conversation-button{text-align:center;width:100%}}.camera-overlay{align-items:center;background:#14182073;display:flex;inset:0;justify-content:center;padding:1.5rem;position:fixed;z-index:1200}.camera-modal{background:linear-gradient(135deg,#fffffffa,#f9f6f0f2);border:1px solid #8b45132e;border-radius:20px;box-shadow:0 24px 64px #1e293b47;display:flex;flex-direction:column;gap:1.2rem;padding:1.4rem 1.6rem 1.6rem;width:min(720px,100%)}.camera-modal-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.camera-modal-header h3{color:#5d4037;font-size:1.35rem;margin:0}.camera-modal-header p{color:#6d4c41;font-size:.9rem;line-height:1.6;margin:.35rem 0 0}.camera-modal-secondary{color:#8b5a2b;font-size:.85rem}.camera-modal-close{align-items:center;background:#8b45131f;border:none;border-radius:50%;color:#6d4c41;cursor:pointer;display:flex;font-size:1.4rem;height:32px;justify-content:center;transition:background .2s ease;width:32px}.camera-modal-close:hover{background:#8b451333}.camera-modal-body{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:minmax(0,1fr)}.camera-upload-section{align-items:flex-start;background:#fff8e199;border:1px dashed #8b451340;border-radius:14px;display:flex;flex-direction:column;gap:.6rem;padding:.85rem 1rem}.camera-upload-divider{align-items:center;align-self:stretch;color:#6d4c41b3;display:flex;font-weight:600;justify-content:center;letter-spacing:.15em}.camera-upload-divider:after,.camera-upload-divider:before{background:#8b451326;content:"";flex:1 1;height:1px;margin:0 .75rem}.camera-upload-button{align-items:center;background:linear-gradient(135deg,#8b45131f,#8b451333);border-radius:999px;color:#6d4c41;cursor:pointer;display:inline-flex;font-weight:600;gap:.4rem;justify-content:center;padding:.55rem 1.4rem;position:relative;transition:all .2s ease}.camera-upload-button:hover{box-shadow:0 8px 18px #8b5a2b38;transform:translateY(-1px)}.camera-upload-button input{cursor:pointer;inset:0;opacity:0;position:absolute}.camera-upload-hint{color:#6d4c41d9;font-size:.8rem;margin:0}.camera-video-wrapper{background:#8b451314;border:1px solid #8b45132e;border-radius:16px;overflow:hidden;position:relative}.camera-video-wrapper video{display:block;max-height:360px;object-fit:cover;width:100%}.camera-status-overlay{align-items:center;background:#ffffffd1;color:#5d4037;display:flex;font-size:1rem;font-weight:600;inset:0;justify-content:center;position:absolute}.camera-captured{align-items:center;display:flex;gap:.9rem}.camera-captured-preview{border:1px solid #8b45132e;border-radius:12px;box-shadow:inset 0 0 0 1px #fff9;overflow:hidden;width:140px}.camera-captured-preview img{display:block;width:100%}.camera-retake-button{background:#ffffffe6;border:1px solid #8b451340;border-radius:999px;color:#6d4c41;cursor:pointer;font-weight:600;padding:.45rem 1.4rem;transition:all .2s ease}.camera-retake-button:hover:not(:disabled){background:#fff;box-shadow:0 4px 12px #8b5a2b40}.camera-retake-button:disabled{cursor:not-allowed;opacity:.6}.camera-error{background:#f4433614;border:1px solid #c6282840;border-radius:12px;color:#c62828;font-size:.9rem;margin:0;padding:.75rem 1rem}.camera-permission-hint{background:#fff8e1d9;border:1px dashed #8b451340;border-radius:12px;color:#6d4c41;display:flex;flex-direction:column;font-size:.85rem;gap:.3rem;padding:.85rem 1rem}.camera-modal-footer{display:flex;gap:.8rem;justify-content:space-between}.camera-action-button{background:#8b45131f;border:none;border-radius:999px;color:#6d4c41;cursor:pointer;flex:1 1;font-size:.95rem;font-weight:600;padding:.65rem 1.4rem;transition:all .2s ease}.camera-action-button.primary{background:linear-gradient(135deg,#8b5a2b,#b0712f);box-shadow:0 8px 18px #8b5a2b40;color:#fff8e7}.camera-action-button:hover:not(:disabled){box-shadow:0 10px 18px #8b5a2b33;transform:translateY(-1px)}.camera-action-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}@media (max-width:600px){.camera-modal{border-radius:16px;padding:1.2rem}.camera-modal-footer{flex-direction:column}.camera-action-button{width:100%}.camera-captured{align-items:flex-start;flex-direction:column}}:root{--rtc-surface:#ffffffdb;--rtc-border:#0f172a14;--rtc-muted:#0f172a9e;--rtc-shadow:0 22px 45px #0f172a14;--rtc-radius:26px;--rtc-accent:#1f8f6b;--rtc-accent-soft:#2fb8952e}.rtc-layout{grid-gap:clamp(1.75rem,3vw,3rem);background:linear-gradient(135deg,#f6f9fc,#eef5f1);color:#0f1f2f;display:grid;gap:clamp(1.75rem,3vw,3rem);grid-template-columns:minmax(0,1fr) minmax(260px,320px);min-height:calc(100vh - 120px);padding:clamp(1.5rem,3vw,3rem)}.rtc-main{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffdb;background:var(--rtc-surface);border:1px solid #0f172a14;border:1px solid var(--rtc-border);border-radius:26px;border-radius:var(--rtc-radius);box-shadow:0 22px 45px #0f172a14;box-shadow:var(--rtc-shadow);display:flex;flex-direction:column;min-height:0}.rtc-topbar{align-items:flex-start;border-bottom:1px solid #0f172a14;border-bottom:1px solid var(--rtc-border);display:flex;gap:1.5rem;justify-content:space-between;padding:clamp(1.75rem,3vw,2.25rem)}.rtc-heading{max-width:560px}.rtc-title{font-size:clamp(1.6rem,2.8vw,2rem);font-weight:700;letter-spacing:.01em;margin:0}.rtc-subtitle{color:#0f172a9e;color:var(--rtc-muted);font-size:.96rem;line-height:1.6;margin-top:.6rem}.rtc-tags{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.rtc-observation{background:#1f8f6b0f;border:1px solid #1f8f6b29;border-radius:22px;display:flex;flex-direction:column;gap:1rem;margin:1.25rem clamp(1.75rem,3vw,2.4rem) 0;padding:1.4rem clamp(1.5rem,2.8vw,2.1rem)}.rtc-observation-head{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.rtc-observation-head h3{font-size:1.05rem;font-weight:700;margin:0}.rtc-observation-head p{color:#0f172aad;font-size:.85rem;margin:.35rem 0 0}.rtc-observation-badge{align-self:center;background:#1f8f6b1f;border-radius:999px;color:#1f8f6bf5;font-size:.78rem;font-weight:600;padding:.35rem .75rem}.rtc-observation-body{display:flex;flex-direction:column;gap:.85rem}.rtc-observation-summary{color:#0f172ae6;font-size:.96rem;font-weight:600;line-height:1.6;margin:0}.rtc-observation-highlights{grid-gap:.25rem;color:#0f172abd;display:grid;font-size:.85rem;gap:.25rem;margin:0;padding-left:1.1rem}.rtc-observation-metrics{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.rtc-observation-metrics div{background:#ffffffd1;border:1px solid #1f8f6b29;border-radius:16px;display:flex;flex-direction:column;gap:.3rem;padding:.75rem .9rem}.rtc-observation-label{color:#0f172a99;font-size:.78rem;letter-spacing:.02em}.rtc-observation-metrics strong{color:#0f172aeb;font-size:1rem}.rtc-observation-foot{color:#0f172aa3;display:flex;flex-wrap:wrap;font-size:.78rem;gap:1rem}.rtc-observation-placeholder{background:#ffffffb8;border:1px dashed #1f8f6b33;border-radius:16px;color:#0f172a99;font-size:.88rem;line-height:1.6;padding:.9rem 1.1rem}.rtc-tag{align-items:center;background:#0f172a14;border-radius:999px;color:#1f2937;display:inline-flex;font-size:.82rem;font-weight:600;gap:.35rem;padding:.35rem .85rem}.rtc-alert{align-items:center;border:1px solid #0000;border-radius:16px;display:flex;font-size:.95rem;gap:1rem;justify-content:space-between;margin:1.25rem clamp(1.75rem,3vw,2.25rem) 0;padding:.9rem 1.2rem}.rtc-alert button{border:none;border-radius:999px;cursor:pointer;font-weight:600;padding:.45rem 1.1rem;transition:transform .2s ease,box-shadow .2s ease}.rtc-alert button:hover{box-shadow:0 10px 16px #0f172a1f;transform:translateY(-1px)}.rtc-alert-error{background:#dc26261f;border-color:#dc26264d;color:#8b1c1c}.rtc-alert-error button{background:#dc262629;color:#8b1c1c}.rtc-alert-warning{background:#ffae3029;border-color:#ffae3047;color:#8c4a00}.rtc-alert-warning button{background:#ffae302e;color:#8c4a00}.rtc-streams{grid-gap:clamp(1rem,2.5vw,1.8rem);display:grid;gap:clamp(1rem,2.5vw,1.8rem);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:1.25rem;padding:0 clamp(1.75rem,3vw,2.4rem)}.rtc-video-tile{display:flex;flex-direction:column;gap:.5rem}.rtc-video-frame{aspect-ratio:16/9;background:radial-gradient(circle at center,#2fb8951f,#0f172acc);border-radius:20px;box-shadow:inset 0 0 0 1px #ffffff0f,0 16px 28px #0f172a1f;overflow:hidden;position:relative;width:100%}.rtc-video-frame--muted:after{background:#0f172a61;content:"";inset:0;position:absolute}.rtc-video-element{background:#020617;height:100%;object-fit:cover;width:100%}.rtc-video-placeholder{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(135deg,#0f172ab3,#0f172a66);color:#ffffffdb;display:flex;font-size:.9rem;font-weight:600;inset:0;justify-content:center;padding:1.25rem;position:absolute;text-align:center}.rtc-video-caption{color:#0f172a9e;color:var(--rtc-muted);font-size:.82rem;font-weight:600;letter-spacing:.04em}.rtc-chat{display:flex;flex:1 1;min-height:0;overflow-y:auto;padding:1.75rem clamp(1.75rem,3vw,2.4rem) clamp(2rem,3vw,2.75rem)}.rtc-message-list{display:flex;flex-direction:column;gap:1.25rem;width:100%}.rtc-placeholder{background:#0f172a0a;border-radius:22px;color:#0f172a9e;color:var(--rtc-muted);line-height:1.7;margin:auto;max-width:520px;padding:2.5rem 2rem;text-align:center}.rtc-message{border-radius:18px;box-shadow:0 8px 20px #0f172a0d;line-height:1.6;max-width:min(88%,640px);padding:1rem 1.2rem;position:relative}.rtc-message.rtc-user{background:linear-gradient(135deg,#2fb895,#1f8f6b);color:#fff;margin-left:auto}.rtc-message.rtc-assistant{background:#fffffff5;border:1px solid #0f172a14;margin-right:auto}.rtc-message-meta{align-items:center;display:flex;font-size:.78rem;justify-content:space-between;letter-spacing:.02em;margin-bottom:.45rem;opacity:.8;text-transform:uppercase}.rtc-message.rtc-user .rtc-message-meta{color:#ffffffd1}.rtc-message.rtc-assistant .rtc-message-meta{color:#0f172a9e;color:var(--rtc-muted)}.rtc-message-body{font-size:.98rem;margin:0;white-space:pre-line}.rtc-metadata{background:#1f8f6b1a;border:1px dashed #1f8f6b4d;border-radius:14px;color:#124d3a;font-size:.82rem;margin-top:.9rem}.rtc-metadata summary{cursor:pointer;font-weight:600;list-style:none;padding:.55rem .85rem}.rtc-metadata[open] summary{border-bottom:1px dashed #1f8f6b40}.rtc-metadata pre{font-family:Fira Code,SFMono-Regular,Consolas,monospace;margin:0;overflow-x:auto;padding:.65rem .85rem .85rem;white-space:pre-wrap}.rtc-prescription{border-top:1px solid #0f172a14;border-top:1px solid var(--rtc-border);display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem;padding:clamp(1.5rem,3vw,2.2rem) clamp(1.75rem,3vw,2.4rem) clamp(2rem,3vw,2.8rem)}.rtc-prescription-head{align-items:flex-start;display:flex;gap:1.25rem;justify-content:space-between}.rtc-prescription-head h3{font-size:1.2rem;font-weight:700;margin:0 0 .45rem}.rtc-prescription-head p{color:#0f172a9e;color:var(--rtc-muted);font-size:.9rem;line-height:1.5;margin:0}.rtc-prescription-actions{align-items:center;display:flex;gap:.75rem}.rtc-prescription-label{color:#0f172abd;font-size:.88rem;font-weight:600}.rtc-prescription-notes{background:#ffffffd1;border:1px solid #0f172a24;border-radius:18px;box-shadow:inset 0 1px 2px #0f172a0d;font-size:.92rem;padding:.9rem 1.1rem;resize:vertical;width:100%}.rtc-prescription-notes:focus{border-color:#1f8f6b80;box-shadow:0 0 0 3px #2fb8952e;outline:none}.rtc-prescription-error{color:#8b1c1c;font-size:.85rem;font-weight:600;margin:.25rem 0 0}.rtc-prescription-hint{color:#0f172a9e;color:var(--rtc-muted);font-size:.85rem;margin:.5rem 0 0}.rtc-prescription-body{grid-gap:clamp(1.2rem,2.2vw,2rem);align-items:start;display:grid;gap:clamp(1.2rem,2.2vw,2rem);grid-template-columns:minmax(0,320px) minmax(0,1fr)}.rtc-prescription-summary{background:#2fb89514;border:1px solid #1f8f6b2e;border-radius:22px;display:flex;flex-direction:column;gap:1rem;padding:1.25rem}.rtc-prescription-summary h4{font-size:1.05rem;font-weight:700;margin:0}.rtc-prescription-meta{color:#0f172ac7;display:flex;flex-wrap:wrap;font-size:.85rem;gap:.5rem}.rtc-prescription-meta span{background:#ffffffad;border-radius:999px;box-shadow:inset 0 0 0 1px #1f8f6b2e;padding:.35rem .75rem}.rtc-prescription-herbs{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.rtc-prescription-herb{background:#ffffffdb;border-radius:16px;box-shadow:0 10px 20px #0f172a14;display:flex;flex-direction:column;gap:.35rem;padding:.75rem}.rtc-prescription-herb strong{color:#0f1f2f;font-size:.92rem}.rtc-prescription-herb span{color:#0f172ab8;font-size:.82rem;font-weight:600}.rtc-prescription-herb p{color:#0f172a9e;color:var(--rtc-muted);font-size:.8rem;line-height:1.45;margin:0}.rtc-prescription-validation{background:#0f172a0a;border:1px dashed #1f8f6b47;border-radius:16px;display:flex;flex-direction:column;gap:.45rem;list-style:none;margin:0;padding:.75rem .9rem}.rtc-prescription-validation.status-warning{background:#ffae3029;border-color:#ffae3061}.rtc-prescription-validation.status-fail{background:#dc26261f;border-color:#dc262652}.rtc-validation-title{color:#0f1f2f;display:block;font-size:.84rem;font-weight:600}.rtc-validation-desc{color:#0f172a9e;color:var(--rtc-muted);display:block;font-size:.78rem}.rtc-prescription-markdown{background:#ffffffeb;border:1px solid #0f172a14;border-radius:22px;box-shadow:0 16px 26px #0f172a14;overflow:hidden;padding:clamp(1rem,2vw,1.35rem)}.rtc-prescription-markdown h1,.rtc-prescription-markdown h2,.rtc-prescription-markdown h3{font-size:1.05rem;margin-bottom:.6rem;margin-top:1.2rem}.rtc-prescription-markdown ol,.rtc-prescription-markdown ul{margin:.5rem 0 .8rem;padding-left:1.3rem}.rtc-prescription-markdown table{border-collapse:collapse;font-size:.85rem;margin:.75rem 0;width:100%}.rtc-prescription-markdown td,.rtc-prescription-markdown th{border:1px solid #0f172a1f;padding:.55rem .65rem;text-align:left}.rtc-sidebar{align-self:flex-start;display:flex;flex-direction:column;gap:clamp(1.1rem,2vw,1.8rem);position:-webkit-sticky;position:sticky;top:clamp(1.6rem,3vw,2.5rem)}.rtc-card{background:#ffffffdb;background:var(--rtc-surface);border:1px solid #0f172a14;border:1px solid var(--rtc-border);border-radius:22px;box-shadow:0 22px 45px #0f172a14;box-shadow:var(--rtc-shadow);padding:1.35rem 1.4rem 1.4rem}.rtc-card-title{font-size:1.02rem;font-weight:600;letter-spacing:.02em;margin:0 0 1rem}.rtc-stats{display:flex;flex-direction:column;gap:.8rem;margin:0}.rtc-stat{display:flex;font-size:.9rem;gap:1rem;justify-content:space-between}.rtc-stat dt{color:#0f172a9e;color:var(--rtc-muted)}.rtc-stat dd{font-weight:600;margin:0;text-align:right}.rtc-stat-muted{color:#0f172a9e;color:var(--rtc-muted);font-weight:500;word-break:break-word}.rtc-pill{align-items:center;border-radius:999px;display:inline-flex;font-size:.82rem;font-weight:700;gap:.4rem;letter-spacing:.05em;padding:.3rem .9rem;text-transform:uppercase}.rtc-pill.channel-open,.rtc-pill.state-connected{background:#2fb8952e;background:var(--rtc-accent-soft);color:#16624a}.rtc-pill.channel-connecting,.rtc-pill.state-connecting{background:#ffae302e;color:#b25b00}.rtc-pill.channel-closed,.rtc-pill.state-closed,.rtc-pill.state-disconnected,.rtc-pill.state-failed{background:#dc262626;color:#8b1c1c}.rtc-pill.state-idle,.rtc-pill.state-new{background:#0f172a14;color:#0f172aad}.rtc-activity{gap:1rem}.rtc-activity,.rtc-activity-block{display:flex;flex-direction:column}.rtc-activity-block{gap:.5rem}.rtc-chip{align-items:center;border-radius:999px;display:inline-flex;font-size:.88rem;font-weight:600;gap:.4rem;letter-spacing:.02em;padding:.4rem .95rem}.rtc-chip.assistant.speaking,.rtc-chip.user.speaking{background:#2fb8952e;color:#1f6b50}.rtc-chip.assistant.thinking{background:#ffae3033;color:#b25b00}.rtc-chip.assistant.idle,.rtc-chip.user.idle{background:#0f172a14;color:#0f172aad}.rtc-activity-note{color:#0f172a9e;color:var(--rtc-muted);font-size:.85rem;line-height:1.5;margin:0}.rtc-actions{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.rtc-button{border:none;border-radius:16px;cursor:pointer;font-size:.95rem;font-weight:600;padding:.85rem 1rem;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;width:100%}.rtc-button:disabled{cursor:not-allowed;filter:grayscale(.4);opacity:.75}.rtc-button:hover:not(:disabled){box-shadow:0 12px 24px #0f172a1a;transform:translateY(-1px)}.rtc-button-primary{background:linear-gradient(135deg,#1f8f6b,#2fb895);color:#fff}.rtc-button-secondary{background:#0f172a14;color:#0f1f2f}.rtc-button-tertiary{background:#0f172a0a;border:1px dashed #0f172a1f;color:#0f172a9e;color:var(--rtc-muted)}.rtc-toggle{align-items:center;cursor:pointer;display:flex;font-size:.9rem;gap:.55rem}.rtc-toggle input{height:18px;width:18px}.rtc-hint{color:#0f172a9e;color:var(--rtc-muted);font-size:.8rem;line-height:1.5;margin:.6rem 0 0}.rtc-hint-warning{color:#8b1c1c;font-weight:600}@media (max-width:1200px){.rtc-layout{grid-template-columns:minmax(0,1fr) minmax(0,280px)}}@media (max-width:1024px){.rtc-layout{gap:1.5rem;grid-template-columns:minmax(0,1fr);padding:1.25rem}.rtc-main{order:2}.rtc-sidebar{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));order:1;position:static}.rtc-card{height:100%}.rtc-prescription-body,.rtc-streams{grid-template-columns:1fr}}@media (max-width:720px){.rtc-topbar{align-items:flex-start;flex-direction:column}.rtc-tags{width:100%}.rtc-alert{align-items:stretch;flex-direction:column}.rtc-alert button{width:100%}.rtc-message{max-width:100%}.rtc-sidebar{grid-template-columns:1fr}.rtc-prescription-head{align-items:stretch;flex-direction:column}.rtc-prescription-actions{justify-content:flex-start;width:100%}.rtc-prescription-actions .rtc-button{width:100%}}:root{--tcm-border:#c19a6b2e;--tcm-light-gray:#e9ecef}.recipes-page{background:radial-gradient(circle at top left,#fff8eee6,#fdfaf099),linear-gradient(120deg,#fffc,#f5f5f1b3)}.recipes-hero{align-items:stretch;background:linear-gradient(135deg,#c9a67a26,#78a2b51f);border-bottom:1px solid #c19a6b2e;border-bottom:1px solid var(--tcm-border);box-shadow:inset 0 -1px 0 #fff3;display:flex;gap:1.8rem;justify-content:space-between;padding:2.4rem 2.8rem}.recipes-hero-text{display:flex;flex:1 1;flex-direction:column;gap:1rem;justify-content:center}.hero-badge{align-self:flex-start;background:#8b5a2b1f;padding:.45rem 1rem}.hero-badge,.recipes-hero-text h2{color:#8b5a2b;color:var(--tcm-dark-brown)}.recipes-hero-text h2{font-size:2rem;font-weight:700;letter-spacing:.02em;margin:0}.hero-sub{color:#64748b;color:var(--text-secondary);line-height:1.7;max-width:540px}.hero-tags span{background:#1e88e514;color:#0d47a1;color:var(--primary-dark);font-size:.78rem;font-weight:600;padding:.4rem .9rem}.hero-stats{grid-template-columns:repeat(3,minmax(0,1fr));min-width:280px}.hero-stat-card{align-items:flex-start;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffffd9;border:1px solid #c19a6b4d;box-shadow:0 10px 30px #c19a6b14;padding:1.2rem 1rem}.stat-value{font-size:1.7rem}.recipes-scroll{background:radial-gradient(circle at bottom right,#fffc,#fdfaf0e6);padding:2.4rem 3.2rem}.recipes-layout{grid-gap:2.2rem;display:grid;gap:2.2rem;grid-template-columns:minmax(260px,320px) minmax(0,1fr)}.recipes-filter-card{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffffe0;border:1px solid #c19a6b40;border-radius:20px;box-shadow:0 15px 35px #8b5a2b14;display:flex;flex-direction:column;gap:1.4rem;padding:1.8rem}.panel-header{gap:.4rem}.search-stack{gap:1.4rem}.search-input-wrapper{align-items:center;background:#fffffff2;border:1px solid #c19a6b59;border-radius:14px;box-shadow:inset 0 1px 0 #fff9,0 10px 20px #0000000a;display:flex;gap:.7rem;padding:.65rem .9rem}.search-icon{font-size:1.1rem}.search-input{background:#0000;border:none;color:#0a2642;color:var(--text-primary);flex:1 1;outline:none}.all-tags,.popular-tags,.selected-tag-summary{display:flex;flex-direction:column;gap:.75rem}.tag-caption{color:#64748b;color:var(--text-secondary);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.tag-chip-list{display:flex;flex-wrap:wrap;gap:.6rem}.tag-chip-list.scrollable{max-height:150px;overflow-y:auto;padding-right:.4rem}.tag-chip-list.scrollable::-webkit-scrollbar{width:4px}.tag-chip-list.scrollable::-webkit-scrollbar-thumb{background:#8b5a2b33;border-radius:999px}.tag-chip{align-items:center;background:#ffffffb3;border:1px solid #c19a6b8c;border-radius:999px;color:#0a2642;color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:500;gap:.4rem;padding:.45rem .85rem;transition:transform .18s ease,box-shadow .18s ease}.tag-chip:hover{box-shadow:0 8px 18px #8b5a2b1f;transform:translateY(-1px)}.tag-chip.active{box-shadow:0 10px 20px #0000001f;color:#fff}.tag-chip small{font-size:.72rem;opacity:.8}.selected-tags-container{display:flex;flex-wrap:wrap;gap:.6rem}.selected-tag{align-items:center;border:none;border-radius:999px;box-shadow:0 10px 18px #00000029;color:#fff;cursor:pointer;display:inline-flex;font-size:.82rem;font-weight:500;gap:.35rem;padding:.4rem .8rem}.remove-icon{font-size:.95rem;font-weight:700}.clear-tags{background:#0000;border:1px dashed #c19a6b80;border-radius:999px;color:#64748b;color:var(--text-secondary);cursor:pointer;font-size:.78rem;padding:.35rem .9rem;transition:background .2s ease}.clear-tags:hover{background:#c19a6b1f}.recipes-results{background:#fffffff0;border:1px solid #c19a6b40;border-radius:24px;box-shadow:0 18px 40px #8b5a2b1f;display:flex;flex-direction:column;gap:1.8rem;padding:2rem}.results-toolbar{border-bottom:1px dashed #c19a6b59;gap:1rem;padding-bottom:1rem}.results-toolbar h3{color:#8b5a2b;color:var(--tcm-dark-brown);font-size:1.45rem}.results-toolbar p{font-size:.95rem;margin:.2rem 0 0}.results-toolbar p,.toolbar-meta{color:#64748b;color:var(--text-secondary)}.toolbar-meta{gap:.8rem}.meta-tag{background:#1e88e514;color:#0d47a1;color:var(--primary-dark);font-size:.78rem;padding:.25rem .6rem}.recipe-grid{grid-gap:1.4rem;display:grid;gap:1.4rem;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.pagination-bar{background:#ffffffd9;border:1px solid #c19a6b40;box-shadow:0 12px 24px #8b5a2b1f;margin-top:1.2rem}.pager-btn{border:1px solid #c19a6b66;color:#8b5a2b;color:var(--tcm-dark-brown)}.pager-btn:hover:not(:disabled){box-shadow:0 10px 18px #8b5a2b2e}.recipe-card-link{color:inherit;text-decoration:none}.recipe-card{background:linear-gradient(135deg,#fffffff2,#f9f5edf2);border:1px solid #c19a6b4d;border-radius:20px;box-shadow:0 16px 32px #8b5a2b1a;display:flex;flex-direction:column;gap:1.2rem;overflow:hidden;padding:1.4rem 1.6rem;position:relative;transition:transform .22s ease,box-shadow .22s ease}.recipe-card:before{background:radial-gradient(circle at top right,#1e88e51f,#0000 55%);content:"";inset:0;opacity:0;position:absolute;transition:opacity .25s ease}.recipe-card:hover{box-shadow:0 25px 45px #8b5a2b2e;transform:translateY(-6px)}.recipe-card:hover:before{opacity:1}.recipe-card-header{display:flex;gap:.5rem;justify-content:space-between;position:relative;z-index:1}.recipe-card-header h3{color:#8b5a2b;color:var(--tcm-dark-brown);font-size:1.2rem;font-weight:600;margin:0}.card-arrow{color:#1e88e599;font-size:1.4rem;transition:transform .18s ease}.recipe-card:hover .card-arrow{color:#0d47a1;color:var(--primary-dark);transform:translateX(4px)}.recipe-badges{display:flex;flex-wrap:wrap;gap:.6rem;position:relative;z-index:1}.recipe-badge{align-items:center;border-radius:999px;box-shadow:0 10px 18px #00000024;color:#fff;display:inline-flex;font-size:.78rem;font-weight:500;padding:.3rem .75rem}.empty-state{background:#fffc;border:1px dashed #c19a6b66;border-radius:16px;color:#64748b;color:var(--text-secondary);padding:2.4rem;text-align:center}.recipe-detail-card{background-color:#fff;background-color:var(--card-color);border:1px solid #c19a6b2e;border:1px solid var(--tcm-border);border-radius:10px;box-shadow:0 4px 15px #a5885729;box-shadow:0 4px 15px var(--tcm-shadow);margin:0 auto;max-width:800px;padding:2rem}.recipe-image-container{margin-bottom:2rem;text-align:center}.recipe-image{border-radius:8px;box-shadow:0 4px 12px #a5885729;box-shadow:0 4px 12px var(--tcm-shadow);height:auto;max-height:400px;max-width:100%;object-fit:cover}.recipe-detail-card h3{color:#8b5a2b;color:var(--tcm-dark-brown);font-size:2rem;font-weight:700;margin-bottom:1.2rem;margin-top:0;padding-bottom:.5rem;position:relative}.recipe-detail-card h3:after{background:linear-gradient(90deg,#1e88e5,#00c853);background:linear-gradient(90deg,var(--primary-color),var(--accent-color));border-radius:2px;bottom:0;content:"";height:3px;left:0;position:absolute;width:60px}.detail-categories{margin-bottom:1.8rem}.detail-categories span{background-color:initial;border-radius:6px;box-shadow:0 2px 5px #0000001a;color:#fff;display:inline-block;font-size:.9rem;font-weight:600;margin-bottom:.6rem;margin-right:.6rem;padding:.4rem 1rem}.detail-section{color:#0a2642;color:var(--text-primary);font-size:1rem;line-height:1.7;margin-top:1.8rem}.detail-section h4{color:#8b5a2b;color:var(--tcm-dark-brown);font-size:1.3rem;font-weight:600;margin-bottom:.8rem;padding-bottom:.3rem;position:relative}.detail-section h4:after{background-color:#00c853;background-color:var(--accent-color);border-radius:1px;bottom:0;content:"";height:2px;left:0;position:absolute;width:40px}.detail-content ol,.detail-content ul{margin-bottom:1.2rem;margin-left:1.5rem;padding-left:0}.detail-content li{color:#64748b;color:var(--text-secondary);list-style-type:disc;margin-bottom:.4rem}.back-button{align-items:center;background-color:#1e88e5;background-color:var(--primary-color);border-radius:6px;box-shadow:0 4px 10px #1e88e54d;color:#fff;display:inline-flex;font-size:1rem;font-weight:500;margin-top:2.5rem;padding:.8rem 1.8rem;text-decoration:none;transition:all .2s ease-in-out}.back-button:hover{background-color:#0d47a1;background-color:var(--primary-dark);box-shadow:0 6px 12px #1e88e566;transform:translateY(-1px)}@media (max-width:1100px){.recipes-hero{flex-direction:column;padding:2rem}.hero-stats{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));width:100%}.recipes-layout{grid-template-columns:1fr}}@media (max-width:768px){.recipes-scroll{padding:1.6rem 1.6rem 2.4rem}.recipes-results{padding:1.6rem}.results-toolbar{align-items:flex-start;flex-direction:column}.toolbar-meta{flex-wrap:wrap}.recipe-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}@media (max-width:540px){.recipes-hero{padding:1.6rem}.recipes-scroll{padding:1.2rem}.recipes-results{padding:1.3rem}.hero-tags{gap:.4rem}.recipe-card{padding:1.2rem}.recipe-card-header h3{font-size:1.05rem}}.recipe-detail-page{display:flex;flex-direction:column;min-height:100%}.detail-page-header{align-items:flex-start;display:flex;gap:1.5rem;justify-content:space-between}.detail-heading{display:flex;flex-direction:column;gap:.6rem}.detail-breadcrumb{color:#35456294;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase}.detail-page-header h3{color:#253346;font-size:clamp(1.8rem,1.4rem + 1vw,2.2rem);margin:0}.detail-lead{color:#28384dd1;font-size:1rem;line-height:1.65;margin:0;max-width:42rem}.detail-back-link{align-self:center;background:#e6ebf799;border:1px solid #6778a24d;border-radius:999px;color:#3b4f71;font-weight:600;padding:.55rem 1.4rem;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.detail-back-link:hover{box-shadow:0 12px 24px #5067962e;transform:translateY(-1px)}.recipe-detail-content{display:flex;flex-direction:column;gap:1.6rem;padding-bottom:2.5rem}.recipe-hero-card{grid-gap:1.6rem;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(135deg,#f7fbfff2,#ddecffd1);border:1px solid #9cb6dc52;border-radius:28px;box-shadow:0 30px 70px -35px #3c5e9159;display:grid;gap:1.6rem;grid-template-columns:minmax(0,360px) 1fr;padding:1.8rem}.recipe-hero-media{background:#d2def06b;border-radius:22px;box-shadow:inset 0 1px 0 #ffffff40,0 18px 40px -28px #223b6266;overflow:hidden;position:relative}.recipe-hero-media img{display:block;height:100%;object-fit:cover;width:100%}.recipe-hero-body{display:flex;flex-direction:column;gap:1.2rem;justify-content:center}.recipe-hero-tags{display:flex;flex-wrap:wrap;gap:.6rem}.recipe-hero-tags span{border-radius:999px;box-shadow:0 10px 20px -12px #22375a66;color:#fffffff2;font-size:.88rem;font-weight:600;padding:.35rem .85rem}.recipe-hero-summary{color:#263a58d9;font-size:1rem;line-height:1.7;margin:0}.recipe-hero-meta{grid-gap:.9rem;display:grid;gap:.9rem;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.recipe-hero-meta div{background:#f8fbffd9;border:1px solid #95afd238;border-radius:18px;display:flex;flex-direction:column;gap:.25rem;padding:.85rem 1rem}.recipe-hero-meta .meta-label{color:#435a7ea6;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.recipe-hero-meta .meta-value{color:#2c3f5d;font-size:1rem;font-weight:600}.recipe-content-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffeb;border:1px solid #d3ddec99;border-radius:26px;box-shadow:0 35px 80px -40px #2436554d;padding:2rem}.recipe-content-card h1,.recipe-content-card h2,.recipe-content-card h3,.recipe-content-card h4{color:#243449}.recipe-content-card h2{font-size:1.4rem;margin-bottom:.75rem;margin-top:1.8rem}.recipe-content-card h3,.recipe-content-card h4{margin-bottom:.6rem;margin-top:1.5rem}.recipe-content-card p{color:#29394fe0;line-height:1.75;margin:.6rem 0}.recipe-content-card ol,.recipe-content-card ul{color:#29394fe0;display:flex;flex-direction:column;gap:.4rem;padding-left:1.4rem}.recipe-content-card li{position:relative}.recipe-content-card blockquote{background:#e5efff99;border-left:4px solid #7ea8d6a6;border-radius:0 16px 16px 0;color:#28405e;margin:1.2rem 0;padding:1rem 1.2rem}.recipe-content-card a{border-bottom:1px solid #0000;color:#3566d8;text-decoration:none;transition:border-bottom .2s ease}.recipe-content-card a:hover{border-bottom:1px solid #3566d8}.recipe-detail-actions{display:flex;justify-content:flex-end}.detail-primary-button{background:linear-gradient(135deg,#5c80f5,#7da7ff);border:none;border-radius:999px;box-shadow:0 18px 38px -24px #486cc38c;color:#fff;font-weight:600;padding:.6rem 1.6rem;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.detail-primary-button:hover{box-shadow:0 24px 46px -26px #486cc3a6;transform:translateY(-1px)}@media (max-width:980px){.recipe-hero-card{grid-template-columns:1fr;padding:1.4rem}.recipe-hero-media{height:260px}.detail-back-link{align-self:flex-start}}@media (max-width:640px){.detail-page-header{align-items:flex-start;flex-direction:column;gap:1rem}.recipe-content-card{padding:1.5rem}.recipe-detail-actions{justify-content:center}}.generated-recipe-page{min-height:100vh}.generated-recipe-header{align-items:flex-start;display:flex;gap:1.5rem;justify-content:space-between}.generated-recipe-breadcrumb{background:#d1a76e33;border-radius:999px;color:#784913d9;display:inline-flex;font-size:.8rem;margin-bottom:.6rem;padding:.35rem .75rem}.generated-recipe-header h2{color:#483017eb;margin:0}.generated-recipe-meta{color:#5c3918ad;font-size:.92rem;line-height:1.5;margin:.3rem 0 0}.generated-recipe-header-actions{display:flex;flex-wrap:wrap;gap:.8rem}.outline-btn{background:#ffffffe6;border:1px solid #d1a76ea6;border-radius:12px;color:#543719d9;cursor:pointer;font-size:.9rem;font-weight:600;padding:.55rem 1.2rem;transition:transform .2s ease,box-shadow .2s ease}.outline-btn:hover{box-shadow:0 12px 24px #d1a76e40;transform:translateY(-1px)}.generated-recipe-content{display:flex;flex-direction:column;gap:1.5rem}.generated-recipe-herbs h4,.generated-recipe-markdown h4{color:#543719e6;margin-top:0}.generated-recipe-herb-list{color:#422b15e6;display:flex;flex-direction:column;gap:.6rem;list-style:none;margin:0;padding:0}.generated-recipe-herb-list li{background:#f5e6cf8c;border:1px solid #d1a76e40;border-radius:12px;padding:.55rem .8rem}.generated-recipe-herb-list .herb-dose{color:#5c3918b3}.generated-recipe-herb-list .herb-reason{color:#5c39188c;font-size:.85rem}.generated-recipe-markdown{color:#483017e0;font-size:.95rem}.generated-recipe-markdown h1,.generated-recipe-markdown h2,.generated-recipe-markdown h3,.generated-recipe-markdown h4,.generated-recipe-markdown h5,.generated-recipe-markdown h6{color:#543719eb}.generated-recipe-empty,.generated-recipe-loading{align-items:flex-start;color:#483017d9;display:flex;flex-direction:column;gap:1rem;justify-content:center;padding:2rem}.generated-recipe-note{color:#5c3918b3;font-size:.95rem;margin:.25rem 0 0}@media (max-width:900px){.generated-recipe-header{align-items:stretch;flex-direction:column}.generated-recipe-header-actions{justify-content:flex-start}}:root{--hero-amber:#f1e4c3;--hero-brown:#8b5a2b;--hero-shadow:#65451f29;--panel-bg:#ffffffd1;--panel-border:#8c663c2e;--panel-shadow:0 14px 34px #785c361f;--accent-pill:#c19a6b3d;--accent-pill-active:#d18f44d9;--gradient-card:linear-gradient(135deg,#fff7eae0,#f4e2c3f2)}.herb-library-page{background:linear-gradient(140deg,#fbf6ec,#f0e1c2 35%,#fdfaf5)}.herb-hero{align-items:stretch;background:radial-gradient(circle at top left,#ffffffa6,#fffaf0d9);border:none;border-radius:24px;box-shadow:inset 0 0 0 1px #f6e8cfcc,0 18px 36px #84653414;display:flex;gap:2rem;justify-content:space-between;padding:2.8rem clamp(2rem,6vw,4rem)}.hero-text{display:flex;flex-direction:column;gap:.8rem}.hero-badge{align-items:center;background:#f5cc908c;border-radius:999px;color:#7a532a;display:inline-flex;font-size:.8rem;font-weight:600;gap:.3rem;letter-spacing:.08em;padding:.3rem .9rem;text-transform:uppercase}.hero-text h2{color:#8b5a2b;color:var(--hero-brown);font-size:clamp(1.9rem,3.2vw,2.6rem);letter-spacing:.02em;margin:0}.hero-sub{color:#53381dc7;font-size:1.05rem;line-height:1.6;margin:0}.hero-tags{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.6rem}.hero-tags span{background:#ffffffb8;border:1px solid #8c663c33;border-radius:999px;color:#4e3318cc;font-size:.85rem;padding:.4rem .8rem}.hero-stats{grid-gap:1rem;align-content:center;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));min-width:260px}.hero-stat-card{background:linear-gradient(135deg,#fff7eae0,#f4e2c3f2);background:var(--gradient-card);border-radius:16px;box-shadow:inset 0 0 0 1px #d7b17666,0 10px 22px #785c361f;display:flex;flex-direction:column;gap:.4rem;padding:1.2rem 1.4rem}.stat-value{color:#74461b;font-size:1.8rem}.stat-label{color:#53381da6;font-size:.85rem;letter-spacing:.05em}.herb-scroll{padding:clamp(1.8rem,5vw,3rem)}.herb-layout{grid-gap:clamp(1.5rem,3vw,2.5rem);align-items:flex-start;display:grid;gap:clamp(1.5rem,3vw,2.5rem);grid-template-columns:minmax(240px,320px) minmax(0,1fr)}.herb-panel{display:flex;flex-direction:column;gap:1.5rem}.panel-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffd1;background:var(--panel-bg);border:1px solid #8c663c2e;border:1px solid var(--panel-border);border-radius:20px;box-shadow:0 14px 34px #785c361f;box-shadow:var(--panel-shadow);padding:1.6rem}.panel-header{gap:.35rem;margin-bottom:1.2rem}.panel-header h3{color:#543719e6;font-size:1.1rem}.panel-caption{color:#54371999;font-size:.85rem}.search-stack{display:flex;flex-direction:column;gap:1rem}.search-input-wrapper{position:relative}.search-icon{font-size:1rem;left:1rem;opacity:.6;position:absolute;top:50%;transform:translateY(-50%)}.search-input{background:#ffffffe6;border:1.5px solid #bd915a59;border-radius:14px;color:#4d341d;font-size:.95rem;padding:.85rem 1rem .85rem 2.8rem;transition:border-color .25s ease,box-shadow .25s ease;width:100%}.search-input:focus{border-color:#c48640cc;box-shadow:0 0 0 4px #c4864026;outline:none}.filter-row{align-items:center;display:flex;gap:.8rem}.category-select{background:#ffffffeb;border:1.5px solid #bd915a66;border-radius:14px;color:#4e3318e6;flex:1 1;font-size:.9rem;padding:.75rem 1rem}.category-select:focus{border-color:#c48640e6;box-shadow:0 0 0 3px #c4864033;outline:none}.view-toggle-group{background:#fffc;border:1px solid #bd915a4d;border-radius:999px;display:inline-flex;overflow:hidden}.toggle-btn{background:#0000;border:none;color:#4e331899;cursor:pointer;font-size:1rem;line-height:1;padding:.45rem .8rem;transition:background .2s ease,color .2s ease}.toggle-btn.active{background:#c4864029;color:#4e3318f2}.quick-pills{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.5rem}.pill{background:#e4c69640;border:1px solid #0000;color:#543719bf;cursor:pointer;font-size:.82rem;padding:.45rem .9rem;transition:all .2s ease}.pill.active,.pill:hover{background:#d18f44d9;background:var(--accent-pill-active);border-color:#fff9;box-shadow:0 8px 20px #c4864040;color:#fff}.insight-row{color:#543719bf;display:flex;font-size:.85rem;gap:1rem;justify-content:space-between;margin-top:1.2rem}.insight-row strong{color:#543719f2;display:block;font-size:1.2rem;margin-top:.2rem}.function-cloud{display:flex;flex-wrap:wrap;gap:.55rem}.function-chip{align-items:center;background:#ffffffeb;border:1px solid #bd915a59;border-radius:10px;color:#4e3318b8;cursor:pointer;display:inline-flex;font-size:.8rem;gap:.35rem;padding:.45rem .8rem;transition:all .2s ease}.function-chip small{background:#c4864026;border-radius:6px;color:#4e3318a6;padding:.15rem .4rem}.function-chip.active,.function-chip:hover{background:#c4864040;border-color:#c4864099;color:#4e3318f2}.selection-panel .selected-herbs-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.1rem}.selection-validation-banner{align-items:center;border:1px solid #0000;border-radius:12px;display:flex;font-size:.85rem;gap:.6rem;line-height:1.5;margin-bottom:.9rem;padding:.6rem .85rem}.selection-validation-banner strong{font-weight:700}.selection-validation-banner.loading{background:#d4af7c2e;border-color:#d4af7c73;color:#543719d9}.selection-validation-banner.warning{background:#ffd69938;border-color:#f0ad4e80;color:#784614eb}.selection-validation-banner.fail{background:#ffbebe40;border-color:#cc38388c;color:#962828f2}.selection-validation-banner.pass{background:#bdd8bd40;border-color:#6c9d6c73;color:#306630e6}.selection-validation-hint{color:#962828eb;font-size:.82rem;margin:.6rem 0 0}.selected-herb-tag{align-items:center;background:#725c4014;border:1px solid #725c4033;border-radius:999px;color:#543719d9;cursor:pointer;display:inline-flex;gap:.35rem;padding:.45rem .9rem;transition:all .2s ease}.selected-herb-tag:hover{background:#c4864038;color:#5a3515}.remove-icon{font-weight:600}.selection-actions{display:flex;gap:.8rem}.clear-btn,.generate-btn{border-radius:12px;cursor:pointer;flex:1 1;font-size:.9rem;font-weight:600;padding:.65rem 1rem;transition:transform .2s ease,box-shadow .2s ease}.generate-btn{background:linear-gradient(135deg,#f1973c,#d87a1f);border:none;box-shadow:0 10px 24px #dc882e47;color:#fff}.generate-btn:hover:not(:disabled){transform:translateY(-1px)}.generate-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.clear-btn{background:#725c401a;border:1px solid #725c4040;color:#543719d9}.clear-btn:hover{box-shadow:0 8px 18px #725c402e;transform:translateY(-1px)}.herb-main{display:flex;flex-direction:column;gap:1.6rem}.pagination-bar{align-items:center;background:#fffc;border:1px solid #d1a76e40;border-radius:16px;box-shadow:0 12px 24px #8f6d3f1f;display:flex;gap:1rem;justify-content:center;margin-top:.5rem;padding:.8rem 1.2rem}.pager-btn{background:#ffffffeb;border:1px solid #d1a76e66;border-radius:999px;color:#543719d9;cursor:pointer;font-weight:600;padding:.45rem 1.2rem;transition:transform .15s ease,box-shadow .15s ease}.pager-btn:hover:not(:disabled){box-shadow:0 10px 18px #8f6d3f2e;transform:translateY(-1px)}.pager-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.45}.pager-info{color:#543719b8;font-size:.9rem}.premium-card{background:#ffffffeb;border:1px solid #d1a76e4d;border-radius:22px;box-shadow:0 24px 48px #8f6d3f24;padding:2rem}.mini-badge{background:#dc882e26;border-radius:999px;color:#8f561be0;display:inline-flex;font-size:.75rem;margin-bottom:.6rem;padding:.25rem .6rem}.prescription-header{border-bottom:1px solid #d1a76e59;gap:1.2rem;padding-bottom:1rem}.prescription-header-actions{align-items:center;display:flex;gap:.8rem}.convert-to-recipe-btn{background:linear-gradient(135deg,#f26e3f,#e8482f);border:none;border-radius:12px;box-shadow:0 12px 28px #ea5a2640;color:#fff;cursor:pointer;font-size:.9rem;padding:.6rem 1rem}.convert-to-recipe-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.6}.prescription-summary-block{color:#422b15e0;display:flex;flex-direction:column;font-size:.95rem;gap:.8rem;margin-top:1.4rem}.prescription-summary-block strong{color:#784913f2;margin:0 .2rem}.summary-diagnosis{background:#f1d2aa2e;border-radius:12px;color:#603d1be6;margin:0;padding:.75rem 1rem}.summary-herb-list{display:flex;flex-direction:column;gap:.55rem;list-style:none;margin:0;padding:0}.summary-herb-list li{align-items:baseline;background:#f5e6cf8c;border:1px solid #d1a76e47;border-radius:12px;display:flex;gap:.6rem;padding:.6rem .9rem}.summary-herb-list .herb-name{color:#5c3918f2;font-weight:600}.summary-herb-list .herb-dose{color:#5c3918bf}.summary-herb-list .herb-reason{color:#5c391899;font-size:.85rem}.summary-placeholder{color:#422b1580;margin:0}.prescription-actions{flex-wrap:wrap;margin-top:1.4rem}.recipe-preview-card{color:#422b15e6;display:flex;flex-direction:column;gap:.85rem;margin-top:1.4rem}.recipe-preview-card h3{color:#784913f2;margin:0}.recipe-preview-meta{color:#5c3918b3;font-size:.9rem;margin:0}.recipe-preview-note{color:#5c3918a6;font-size:.9rem;line-height:1.6;margin:0}.recipe-preview-actions{display:flex;flex-wrap:wrap;gap:.8rem}.primary-link-btn,.secondary-link-btn{border-radius:12px;cursor:pointer;font-size:.9rem;font-weight:600;padding:.6rem 1.2rem;transition:transform .2s ease,box-shadow .2s ease}.primary-link-btn{background:linear-gradient(135deg,#f0a33a,#d87a1f);border:none;box-shadow:0 12px 28px #d8822d40;color:#fff}.primary-link-btn:hover{transform:translateY(-1px)}.secondary-link-btn{background:#ffffffd9;border:1px solid #d1a76e99;color:#5c3918d9}.secondary-link-btn:hover{box-shadow:0 10px 24px #d1a76e40;transform:translateY(-1px)}.results-toolbar{align-items:flex-end;border-bottom:1px solid #d1a76e4d;display:flex;gap:1.5rem;justify-content:space-between;padding:.6rem 0}.results-toolbar h3{color:#543719e6;margin:0}.results-toolbar p{color:#54371999;font-size:.9rem;margin:.3rem 0 0}.toolbar-meta{align-items:center;color:#543719a6;display:flex;flex-wrap:wrap;font-size:.85rem;gap:.6rem}.meta-tag{background:#c486401f;border-radius:999px;padding:.3rem .6rem}.herbs-grid{grid-gap:1.2rem;display:grid;gap:1.2rem}.herbs-grid.grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.herbs-grid.list{grid-template-columns:1fr}.herb-card{background:#fffffff0;border:1px solid #d6b27859;border-radius:18px;box-shadow:0 26px 48px #9270411f;cursor:pointer;display:flex;flex-direction:column;gap:1rem;padding:1.6rem;position:relative;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.herb-card:hover{box-shadow:0 36px 68px #9270412e;transform:translateY(-4px)}.herb-card.selected{background:linear-gradient(125deg,#faf2e3f2,#f1e2c4f2);border-color:#916c34d9;box-shadow:0 36px 68px #916c3440}.herb-card-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.herb-name{color:#4e3318f2;font-size:1.4rem;font-weight:700;margin:0}.herb-flavor{color:#4e33188c;font-size:.85rem;margin:.4rem 0 0}.herb-category{background:#c4864038;border-radius:999px;color:#4e3318d9;padding:.35rem .75rem}.herb-category,.section-title{font-size:.8rem;font-weight:600}.section-title{color:#54371999;display:inline-block;letter-spacing:.08em;margin-bottom:.4rem;text-transform:uppercase}.herb-functions ul{display:flex;flex-direction:column;gap:.35rem;list-style:none;margin:0;padding:0}.herb-functions li{background:#c486401f;border-radius:10px;color:#4e3318cc;font-size:.9rem;padding:.35rem .65rem}.more-indicator{color:#5437198c;font-size:.8rem;margin-top:.4rem}.herb-dosage p{color:#543719bf;font-size:.9rem;margin:.4rem 0 0}.herb-indications{display:flex;flex-direction:column;gap:.4rem}.indication-tags{display:flex;flex-wrap:wrap;gap:.4rem}.indication-tags span{background:#8b673926;border-radius:8px;color:#543719cc;font-size:.78rem;padding:.3rem .6rem}.selected-indicator{background:linear-gradient(135deg,#f7b364,#e78f2b);border-radius:999px;box-shadow:0 8px 18px #d07f2247;color:#fff;font-size:.75rem;font-weight:600;padding:.3rem .8rem;position:absolute;right:1rem;top:1rem}.error-message{background:#db68681f;border:1px solid #db686859;border-radius:14px;color:#8f2a2a;padding:1rem 1.2rem}.no-results{color:#54371999;grid-column:1/-1;padding:2.4rem;text-align:center}.prescription-content,.recipe-content{color:#422b15e0;font-size:.95rem;line-height:1.7;margin-top:1.2rem}.prescription-content h1,.prescription-content h2,.prescription-content h3,.recipe-content h1,.recipe-content h2,.recipe-content h3{color:#543719f2;margin-top:1.5rem}.prescription-content blockquote,.recipe-content blockquote{background:#c486401a;border-left:4px solid #c48640a6;border-radius:8px;padding-left:1rem}@media (max-width:1080px){.herb-layout{grid-template-columns:1fr}.herb-panel{flex-direction:row;flex-wrap:wrap}.panel-card{flex:1 1;min-width:260px}}@media (max-width:768px){.herb-hero{flex-direction:column;padding:2.2rem;text-align:center}.hero-text{align-items:center}.hero-tags{justify-content:center}.filter-row,.herb-panel{flex-direction:column}.filter-row{align-items:stretch}.view-toggle-group{align-self:flex-end}.results-toolbar{align-items:flex-start;flex-direction:column}}@media (max-width:520px){.hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.panel-card{padding:1.2rem}.herbs-grid.grid{grid-template-columns:1fr}}:root{--tcm-warm-bg:#fdfaf0;--tcm-border:#c19a6b38;--tcm-shadow:#a5885729;--tcm-dark-brown:#8b5a2b}.face-page{background:radial-gradient(circle at top left,#fffbf4e6,#faf3e3a6)}.face-hero{align-items:stretch;background:linear-gradient(135deg,#c19a6b1f,#78a2b51f);border-bottom:1px solid #c19a6b40;box-shadow:inset 0 -1px 0 #fff6;display:flex;gap:2rem;justify-content:space-between;padding:2.4rem clamp(1.6rem,4vw,3rem)}.face-hero-text{display:flex;flex-direction:column;gap:1rem}.face-hero-badge{align-self:flex-start;background:#c19a6b2e;border-radius:999px;font-size:.78rem;font-weight:600;letter-spacing:.08em;padding:.35rem .9rem;text-transform:uppercase}.face-hero-badge,.face-hero-text h2{color:#8b5a2b;color:var(--tcm-dark-brown)}.face-hero-text h2{font-size:clamp(1.9rem,3.2vw,2.5rem);font-weight:700;margin:0}.face-hero-sub{color:#64748b;color:var(--text-secondary);font-size:1.03rem;line-height:1.7;margin:0;max-width:520px}.face-hero-tags{display:flex;flex-wrap:wrap;gap:.6rem}.face-hero-tags span{background:#1e88e514;border-radius:999px;color:#0d47a1;color:var(--primary-dark);font-size:.78rem;font-weight:600;padding:.4rem .85rem}.face-hero-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,minmax(0,1fr));min-width:280px}.face-hero-stat-card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffffd9;border:1px solid #c19a6b47;border-radius:18px;box-shadow:0 14px 28px #8b5a2b1f;display:flex;flex-direction:column;gap:.4rem;padding:1.2rem 1rem}.stat-value{color:#0d47a1;color:var(--primary-dark);font-size:1.6rem;font-weight:700}.stat-label{color:#64748b;color:var(--text-secondary);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.face-scroll{padding:clamp(1.8rem,5vw,2.8rem)}.face-layout{grid-gap:clamp(1.5rem,3vw,2.5rem);align-items:start;display:grid;gap:clamp(1.5rem,3vw,2.5rem);grid-template-columns:minmax(260px,330px) minmax(0,1fr)}.capture-column{display:flex;flex-direction:column;gap:1.4rem}.capture-guidance-card,.capture-setup-card{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffffe6;border:1px solid #c19a6b40;border-radius:22px;box-shadow:0 18px 36px #8b5a2b1a;padding:1.8rem}.panel-header{display:flex;flex-direction:column;gap:.3rem}.panel-header h3{color:#8b5a2b;color:var(--tcm-dark-brown);font-size:1.2rem;font-weight:600;margin:0}.panel-caption{color:#64748b;color:var(--text-secondary);font-size:.82rem;letter-spacing:.06em;text-transform:uppercase}.capture-focus-selector{grid-gap:.6rem;display:grid;gap:.6rem;grid-template-columns:repeat(3,minmax(0,1fr));margin:1rem 0 .6rem}.focus-chip{align-items:flex-start;background:#ffffffbf;border:1px solid #c19a6b80;border-radius:16px;color:#0a2642;color:var(--text-primary);cursor:pointer;display:flex;flex-direction:column;font-size:.9rem;font-weight:600;gap:.25rem;padding:.75rem .8rem;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.focus-chip small{color:#64748b;color:var(--text-secondary);font-size:.72rem;letter-spacing:.04em}.focus-chip:hover{box-shadow:0 12px 20px #8b5a2b1f;transform:translateY(-2px)}.focus-chip.active{background:linear-gradient(135deg,#c19a6b33,#1e88e526);border-color:#1e88e559;box-shadow:0 14px 26px #1e88e529}.capture-focus-sub{color:#64748b;color:var(--text-secondary);font-size:.92rem;line-height:1.6;margin:.25rem 0 1.2rem}.camera-permission-banner,.input-actions{display:flex;flex-direction:column;gap:.8rem}.camera-permission-banner{background:#1e88e514;border:1px solid #1e88e540;border-radius:16px;color:#0a2642;color:var(--text-primary);margin:1rem 0;padding:1rem 1.2rem}.camera-permission-banner h4{color:#0d47a1;color:var(--primary-dark);font-size:1rem;margin:0}.camera-permission-banner p{color:#64748b;color:var(--text-secondary);font-size:.9rem;line-height:1.6;margin:0}.camera-permission-banner.prompt{background:#1e88e51f;border-color:#1e88e559}.camera-permission-banner.denied{background:#c628281f;border-color:#c6282859}.camera-permission-banner.unsupported{background:#94a3b829;border-color:#78787840}.banner-copy{display:flex;flex-direction:column;gap:.3rem}.banner-actions{display:flex;flex-wrap:wrap;gap:.6rem}.permission-primary,.permission-secondary{align-items:center;border-radius:999px;cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:600;gap:.3rem;padding:.45rem 1.4rem;transition:all .2s ease}.permission-primary{background:#1e88e5e6;border:1px solid #1e88e559;box-shadow:0 8px 18px #1e88e538;color:#fff}.permission-primary:hover{box-shadow:0 12px 24px #1e88e547;transform:translateY(-1px)}.permission-primary.ghost{background:#0000;border:1px solid #1e88e547;box-shadow:none;color:#0d47a1;color:var(--primary-dark)}.permission-secondary{background:#fdfaf0cc;border:1px solid #8b5a2b66;color:#8b5a2b;color:var(--tcm-dark-brown)}.permission-secondary:hover{background:#fdfaf0}.permission-steps{color:#64748b;color:var(--text-secondary);display:flex;flex-direction:column;font-size:.88rem;gap:.4rem;margin:0;padding-left:1.2rem}.permission-steps li::marker{color:#c62828cc}.custom-file-upload{align-items:center;background-color:#ffffffb3;border:1px dashed #8b5a2b99;border-radius:14px;color:#8b5a2b;color:var(--tcm-dark-brown);cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:.6rem;padding:.9rem 1rem;transition:all .25s ease}.custom-file-upload:hover{background-color:#fdfaf0f2;box-shadow:0 10px 20px #8b5a2b1f}.upload-icon{font-size:1.2rem}input[type=file]{display:none}.camera-button{align-items:center;background:linear-gradient(135deg,#1e88e52e,#0d47a12e);border:1px solid #1e88e566;border-radius:14px;color:#0d47a1;color:var(--primary-dark);cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:.6rem;justify-content:center;padding:.9rem 1.1rem;transition:all .2s ease}.camera-button.active,.camera-button:hover{background:linear-gradient(135deg,#1e88e547,#0d47a157);box-shadow:0 14px 24px #1e88e538;color:#fff}.camera-icon{font-size:1.2rem}.camera-wrapper{background:#ffffffd9;border:1px solid #c19a6b47;border-radius:18px;display:flex;flex-direction:column;gap:.9rem;margin-top:1.2rem;padding:1rem}.camera-status{color:#64748b;color:var(--text-secondary);font-size:.9rem;font-weight:600}.status-ready{color:#2e7d32}.status-loading{animation:pulse 1.6s infinite;color:#f57f17}@keyframes pulse{0%{opacity:1}50%{opacity:.6}to{opacity:1}}.camera-video{border:1px solid #c19a6b66;border-radius:14px;box-shadow:0 12px 24px #0000001f;width:100%}.capture-button{align-items:center;align-self:center;background:linear-gradient(135deg,#00c853d9,#00963cd9);border:none;border-radius:999px;color:#fff;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;gap:.4rem;padding:.9rem 1.8rem;transition:transform .18s ease,box-shadow .18s ease}.capture-button:hover:not(:disabled){box-shadow:0 16px 26px #00963c40;transform:translateY(-2px)}.capture-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.6}.capture-guidance-card{display:flex;flex-direction:column;gap:1.1rem}.guidance-list{color:#0a2642;color:var(--text-primary);display:flex;flex-direction:column;font-size:.9rem;gap:.6rem;line-height:1.6;margin:0;padding-left:1.2rem}.guidance-list li{position:relative}.guidance-list li::marker{color:#c19a6be6}.copy-prompt-button{align-self:flex-start;background:#1e88e51f;border:1px solid #1e88e559;border-radius:999px;color:#0d47a1;color:var(--primary-dark);cursor:pointer;font-size:.85rem;font-weight:600;padding:.6rem 1.2rem;transition:all .2s ease}.copy-prompt-button:hover{background:#1e88e533}.copy-prompt-button.success{background:#00c8532e;border-color:#00c85366;color:#007a3d}.copy-prompt-button.error{background:#c628281f;border-color:#c6282866;color:#c62828}.prompt-hint{color:#64748b;color:var(--text-secondary);font-size:.78rem;line-height:1.5;margin:0}.preview-column{gap:1.6rem}.preview-card,.preview-column{display:flex;flex-direction:column}.preview-card{background:#ffffffeb;border:1px solid #c19a6b47;border-radius:24px;box-shadow:0 22px 40px #8b5a2b24;gap:1.4rem;padding:2rem;position:relative}.preview-header{align-items:flex-start;display:flex;gap:.6rem;justify-content:space-between}.preview-header h3{color:#8b5a2b;color:var(--tcm-dark-brown);font-size:1.3rem;margin:0}.file-name{background:#c19a6b2e;border-radius:999px;font-size:.78rem;padding:.25rem .6rem}.file-name,.preview-placeholder{color:#64748b;color:var(--text-secondary)}.preview-placeholder{background:#ffffffbf;border:1px dashed #c19a6b4d;border-radius:18px;display:flex;flex-direction:column;gap:.6rem;padding:2.4rem 1.6rem;text-align:center}.placeholder-icon{font-size:2rem}.image-preview-wrapper{background:#ffffffd9;border:1px solid #c19a6b4d;border-radius:18px;box-shadow:inset 0 1px 0 #fff6,0 12px 22px #00000014;padding:1rem;position:relative}.image-preview-img{border-radius:12px;max-height:320px;object-fit:contain;width:100%}.clear-image-button{align-items:center;background:#8b5a2bcc;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.1rem;height:30px;justify-content:center;position:absolute;right:10px;top:10px;transition:background .2s ease;width:30px}.clear-image-button:hover{background:#8b5a2bf2}.diagnosis-actions{display:flex;flex-direction:column;gap:.8rem}.diagnosis-button{align-items:center;align-self:flex-start;background:linear-gradient(135deg,#1e88e5e6,#0d47a1e6);border:none;border-radius:999px;color:#fff;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;gap:.6rem;padding:.9rem 2.4rem;transition:transform .18s ease,box-shadow .18s ease}.diagnosis-button:hover:not(:disabled){box-shadow:0 18px 30px #0d47a14d;transform:translateY(-2px)}.diagnosis-button:disabled{background:#64748b66;box-shadow:none;cursor:not-allowed}.spinner{animation:spin 1s linear infinite;border:4px solid #ffffff4d;border-radius:50%;border-top-color:#d4b06ff2;height:20px;width:20px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-message{background:#c6282814;border:1px solid #c6282833;border-radius:12px;color:#c62828;font-size:.9rem;font-weight:500;padding:.7rem 1rem}.error-message.inline{margin:0}.loading-overlay{align-items:center;background:#ffffffd9;border-radius:24px;display:flex;flex-direction:column;gap:1rem;inset:0;justify-content:center;position:absolute}.loading-text{color:#0d47a1;color:var(--primary-dark);font-size:1.1rem;font-weight:600}.diagnosis-result-card{background:#fffffff2;border:1px solid #c19a6b40;border-radius:24px;box-shadow:0 22px 40px #8b5a2b24;color:#0a2642;color:var(--text-primary);display:flex;flex-direction:column;gap:1.2rem;padding:2rem}.report-quality-hints{background:#1e88e50f;border:1px solid #1e88e52e;border-radius:16px;display:flex;flex-direction:column;gap:.6rem;padding:1rem 1.2rem}.report-quality-hints h4{color:#0d47a1;color:var(--primary-dark);font-size:1.02rem;font-weight:600;margin:0}.quality-issue-tags{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;margin:0;padding:0}.quality-issue-tags li{background:#c628281f;border:1px solid #c628283d;border-radius:999px;color:#b71c1c;font-size:.8rem;font-weight:600;padding:.35rem .7rem}.quality-positive{color:#2e7d32;font-size:.9rem;font-weight:600;margin:0}.quality-suggestion{color:#64748b;color:var(--text-secondary);font-size:.88rem;line-height:1.6;margin:0}.report-structured{background:#fdfaf0a6;border:1px solid #c19a6b47;border-radius:18px;display:flex;flex-direction:column;gap:.7rem;padding:1.2rem 1.4rem}.report-structured h4{color:#8b5a2b;color:var(--tcm-dark-brown);font-size:1.05rem;margin:0}.structured-conclusion{color:#0a2642;color:var(--text-primary);font-size:.95rem;line-height:1.7;margin:0}.structured-section h5{color:#0d47a1;color:var(--primary-dark);font-size:.92rem;font-weight:600;margin:.6rem 0 .4rem}.structured-section ul{color:#64748b;color:var(--text-secondary);font-size:.9rem;line-height:1.6;margin:0;padding-left:1.2rem}.structured-section li+li{margin-top:.3rem}.report-heatmap-preview{background:#4f8aff14;border:1px solid #4f8aff3d;border-radius:18px;display:flex;flex-direction:column;gap:.7rem;padding:1rem}.report-heatmap-header{align-items:center;display:flex;gap:.5rem;justify-content:space-between}.report-heatmap-header h4{color:#0d47a1;color:var(--primary-dark);font-size:1rem;margin:0}.report-heatmap-preview img{background:#fff;border:1px solid #4f8aff2e;border-radius:14px;max-height:320px;object-fit:contain;width:100%}.report-action-buttons{display:flex;flex-wrap:wrap;gap:.6rem}.report-action-button{align-items:center;background:linear-gradient(135deg,#4f8aff29,#6dd5ff2e);border:1px solid #4f8aff59;border-radius:999px;color:#0d47a1;color:var(--primary-dark);cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:600;gap:.35rem;padding:.45rem 1.2rem;transition:transform .2s ease,box-shadow .2s ease}.report-action-button:hover{box-shadow:0 10px 18px #4f8aff40;transform:translateY(-1px)}.report-action-button.ghost{background:#fff9;border:1px solid #4f8aff73;box-shadow:none;color:#0d47a1;color:var(--primary-dark)}.report-action-button.ghost:hover{box-shadow:0 8px 16px #4f8aff38}.report-metadata{background:#fdfaf080;border:1px dashed #8b5a2b66;border-radius:16px;padding:.9rem 1.1rem}.report-metadata summary{color:#8b5a2b;color:var(--tcm-dark-brown);cursor:pointer;font-size:.95rem;font-weight:600}.metadata-grid{grid-gap:.7rem;display:grid;gap:.7rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-top:.8rem}.metadata-item{color:#64748b;color:var(--text-secondary);display:flex;flex-direction:column;font-size:.85rem;gap:.25rem}.metadata-key{color:#8b5a2b;color:var(--tcm-dark-brown);font-weight:600}.metadata-code,.metadata-value{word-break:break-word}.metadata-code{background:#0f172a0a;border:1px solid #94a3b859;border-radius:10px;font-family:Fira Code,JetBrains Mono,monospace;font-size:.8rem;padding:.5rem .6rem;white-space:pre-wrap}.report-detail-cta{align-items:center;border-top:1px solid #7c92ab33;display:flex;flex-wrap:wrap;gap:.8rem;justify-content:space-between;margin-top:1.25rem;padding-top:1rem}.report-detail-meta{align-items:center;color:#5a6b7f;display:flex;font-size:.9rem;gap:.6rem}.report-focus-tag{align-items:center;background:#5990ff26;border-radius:999px;color:#2b64d5;display:inline-flex;font-weight:600;padding:.25rem .75rem}.report-timestamp{color:#7b8da3;font-size:.85rem}.report-detail-button{background:linear-gradient(135deg,#4f8aff,#6dd5ff);border:none;border-radius:999px;box-shadow:0 8px 20px #4f8aff47;color:#fff;cursor:pointer;font-weight:600;padding:.55rem 1.35rem;transition:transform .2s ease,box-shadow .2s ease}.report-detail-button:hover{box-shadow:0 12px 26px #4f8aff59;transform:translateY(-1px)}.report-detail-button:active{box-shadow:0 6px 18px #4f8aff52;transform:translateY(0)}.diagnosis-result-card h3{color:#8b5a2b;color:var(--tcm-dark-brown);font-size:1.45rem;margin:0;padding-bottom:.6rem;position:relative}.diagnosis-result-card h3:after{background:linear-gradient(135deg,#1e88e5,#c19a6be6);background:linear-gradient(135deg,var(--primary-color),#c19a6be6);border-radius:999px;bottom:0;content:"";height:3px;left:0;position:absolute;width:58px}.markdown-content{font-size:.95rem;line-height:1.8}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{color:#8b5a2b;color:var(--tcm-dark-brown);font-weight:600;margin-bottom:.8rem;margin-top:1.4rem}.markdown-content blockquote{background:#00c85314;border-left:4px solid #00c853;border-left:4px solid var(--accent-color);border-radius:6px;color:#0a2642;color:var(--text-primary);margin:1rem 0;padding-left:1rem}.markdown-content table{border-collapse:collapse;margin:1rem 0;width:100%}.markdown-content td,.markdown-content th{border:1px solid #c19a6b59;padding:.6rem .8rem;text-align:left}.markdown-content th{background:#c19a6b1f}@media (max-width:1100px){.face-hero{flex-direction:column}.face-hero-stats{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));width:100%}.face-layout{grid-template-columns:1fr}.capture-column{flex-direction:row;flex-wrap:wrap}.capture-guidance-card,.capture-setup-card{flex:1 1 320px}}@media (max-width:768px){.face-scroll{padding:1.6rem}.capture-guidance-card,.capture-setup-card,.diagnosis-result-card,.preview-card{padding:1.5rem}.capture-focus-selector{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.preview-placeholder{padding:1.8rem 1.4rem}.banner-actions{align-items:stretch;flex-direction:column}.permission-primary,.permission-secondary{justify-content:center}}@media (max-width:540px){.face-scroll{padding:1.2rem}.capture-column{flex-direction:column}.capture-guidance-card,.capture-setup-card,.diagnosis-result-card,.preview-card{border-radius:18px}.diagnosis-button{justify-content:center;width:100%}}.image-capture-card{background:#151923;background:var(--card-background,#151923);border:1px solid #ffffff0f;border-radius:16px;box-shadow:0 12px 28px #0f172a40;display:flex;flex-direction:column;gap:16px;padding:16px}.image-capture-hidden-canvas{display:none}.image-capture-preview{align-items:center;background:#0d111ccc;border:1px solid #ffffff14;border-radius:14px;display:flex;justify-content:center;min-height:220px;overflow:hidden;position:relative}.image-capture-preview img{display:block;height:auto;object-fit:cover;width:100%}.image-capture-preview.good{box-shadow:inset 0 0 0 1px #38bdf866}.image-capture-preview.warning{box-shadow:inset 0 0 0 1px #facc1559}.image-capture-preview.alert{box-shadow:inset 0 0 0 1px #f8717166}.image-capture-empty{align-items:center;color:#e2e8f099;display:flex;flex-direction:column;gap:8px}.image-capture-empty .icon{font-size:48px}.image-capture-hud{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0f172abf;border:1px solid #ffffff14;border-radius:12px;bottom:16px;left:16px;padding:10px 14px;position:absolute}.image-capture-hud .hud-text{color:#f8fafc;font-size:14px;line-height:1.4}.image-capture-clear{align-items:center;background:#0f172ab3;border:none;border-radius:50%;color:#f8fafc;cursor:pointer;display:flex;font-size:18px;height:32px;justify-content:center;position:absolute;right:12px;top:12px;transition:background .2s ease;width:32px}.image-capture-clear:hover{background:#0f172ae6}.image-capture-metrics{display:flex;flex-direction:column;gap:16px}.metrics-header{align-items:center;color:#e2e8f0;display:flex;justify-content:space-between}.metrics-header h4{font-size:16px;font-weight:600;margin:0}.quality-label{background:#94a3b833;border:1px solid #94a3b866;border-radius:999px;color:#e2e8f0;font-size:12px;padding:4px 10px}.quality-label.good{background:#38bdf82e;border-color:#38bdf880;color:#bae6fd}.quality-label.warning{background:#facc1529;border-color:#eab30873;color:#facc15}.quality-label.alert{background:#f871712e;border-color:#f8717173;color:#fecaca}.metrics-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.metric-bar{background:#0f172a99;border:1px solid #ffffff0d;border-radius:12px;display:flex;flex-direction:column;gap:6px;padding:8px 10px}.metric-head{align-items:center;color:#cbd5f5;display:flex;font-size:13px;justify-content:space-between}.metric-head strong{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600}.metric-track{background:#47556966;border-radius:999px;height:6px;overflow:hidden;position:relative}.metric-track.good{background:#38bdf840}.metric-track.warning{background:#facc1533}.metric-track.alert{background:#f8717138}.metric-progress{background:linear-gradient(90deg,#38bdf8e6,#818cf8e6);bottom:0;left:0;position:absolute;top:0;transition:width .3s ease}.metric-track.warning .metric-progress{background:linear-gradient(90deg,#facc15d9,#f97316d9)}.metric-track.alert .metric-progress{background:linear-gradient(90deg,#f87171d9,#f87171a6)}.metric-desc{color:#94a3b8b3;font-size:11px}.quality-summary{color:#e2e8f0cc;display:flex;flex-direction:column;font-size:13px;gap:8px}.quality-summary .suggestion{margin:0}.quality-summary .issues{margin:0;padding-left:18px}.quality-summary .issues li{line-height:1.5}.quality-summary .loading{color:#5eead4cc}.quality-summary .hint{color:#94a3b8b3}.quality-summary .error{color:#f87171d9}.profile-page{position:relative}.profile-content{display:flex;flex-direction:column;gap:1.75rem;padding-bottom:3rem}.profile-empty,.profile-loading{color:var(--text-secondary);font-size:1.05rem;padding:3rem 0;text-align:center;width:100%}.profile-error{align-items:center;background:#dc354514;border:1px solid #dc354533;border-radius:18px;color:#9b1a26;display:flex;flex-direction:column;gap:1rem;padding:2rem}.profile-hero-banner{align-items:center;background:linear-gradient(135deg,#fff8edf5,#f5ebd7e0);border:1px solid #bd9e7047;border-radius:28px;box-shadow:0 30px 70px -40px #66482066;display:flex;gap:2rem;justify-content:space-between;overflow:hidden;padding:2.2rem 2.5rem}.profile-hero-text h3{color:#46331c;font-size:clamp(1.6rem,1.3rem + 1vw,2.1rem);margin:0 0 .45rem}.profile-hero-text p{color:#46331cbf;font-size:1rem;line-height:1.7;margin:0}.profile-hero-badge{background:#6347211f;border:1px solid #7e5e344d;border-radius:20px;color:#422d16d1;display:flex;flex-direction:column;font-size:.95rem;gap:.6rem;letter-spacing:.08em;padding:1.1rem 1.5rem}.profile-layout{grid-gap:1.75rem;align-items:start;display:grid;gap:1.75rem;grid-template-columns:minmax(260px,320px) 1fr}.profile-main,.profile-sidebar{display:flex;flex-direction:column;gap:1.5rem}.profile-constitution-card{background:linear-gradient(140deg,#fffffff7,#ecf7eff0);gap:1.4rem}.constitution-chip{align-self:flex-start;background:#598f6e2e;border-radius:999px;color:#2f4a38;font-size:.9rem;font-weight:600;padding:.4rem 1rem}.profile-card-header-actions{align-items:flex-end;display:flex;flex-direction:column;gap:.5rem}.constitution-updated-at{color:#2f4a38b3;font-size:.78rem}.constitution-refresh-button[disabled]{box-shadow:none;cursor:not-allowed;opacity:.65;transform:none!important}.constitution-distribution{display:flex;flex-direction:column;gap:.75rem}.constitution-bar{display:flex;flex-direction:column;gap:.3rem}.constitution-bar-info{color:#2f4a38d9;display:flex;font-size:.9rem;justify-content:space-between}.constitution-bar-track{background:#5f8f6d2e;border-radius:999px;height:.55rem;overflow:hidden;width:100%}.constitution-bar-fill{background:linear-gradient(90deg,#4f8a68,#7abc9a);height:100%}.constitution-trend{display:flex;flex-direction:column;gap:.75rem}.constitution-trend h5{color:#304d3a;font-size:1rem;margin:0}.constitution-trend-list{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));list-style:none;margin:0;padding:0}.constitution-trend-item{background:#f7fbf7eb;border:1px solid #5b896f42;border-radius:14px;display:flex;flex-direction:column;gap:.3rem;padding:.65rem .85rem}.constitution-trend-date{color:#476754bf;font-size:.82rem}.constitution-trend-label{color:#264331;font-weight:600}.constitution-trend-score{color:#476754b8;font-size:.8rem}.constitution-alerts{border-top:1px solid #d0634b40;display:flex;flex-direction:column;gap:.55rem;padding-top:.75rem}.constitution-alerts strong{color:#8c2f2f;font-size:.95rem}.constitution-alerts ul{display:flex;flex-direction:column;gap:.5rem;list-style:none;margin:0;padding:0}.constitution-alerts li{align-items:baseline;background:#dc354514;border:1px solid #dc354533;border-radius:12px;color:#5c2525;display:flex;flex-wrap:wrap;font-size:.88rem;gap:.4rem;padding:.55rem .75rem}.alert-badge{align-items:center;border-radius:999px;color:#fff;display:inline-flex;font-size:.78rem;font-weight:600;justify-content:center;min-width:1.8rem;padding:.12rem .45rem}.alert-high{background:#dc3545d9}.alert-medium{background:#ffc107d9}.alert-meta{color:#5c2525b3;font-size:.78rem}.profile-card{background:#fffdf7f5;border:1px solid #97805a38;border-radius:22px;box-shadow:0 24px 60px -34px #3f2f1d73;display:flex;flex-direction:column;gap:1.2rem;padding:1.7rem;position:relative}.profile-info-card{background:linear-gradient(145deg,#fffffffa,#f8f3e5f2);gap:1.4rem}.profile-info-header{align-items:center;display:flex;gap:1.1rem}.profile-avatar{align-items:center;background:linear-gradient(140deg,#7ab28deb,#527e66eb);border-radius:24px;box-shadow:inset 0 1px 0 #ffffff59,0 18px 35px #36604673;color:#fff;display:flex;font-size:1.9rem;font-weight:700;height:80px;justify-content:center;text-transform:uppercase;width:80px}.profile-info-header h3{color:#2f3e35;font-size:1.6rem;margin:0}.profile-username{color:#405046b3;font-size:.95rem;margin:.25rem 0 0}.profile-meta-list{grid-gap:.4rem;display:grid;gap:.4rem}.profile-meta-list div{grid-gap:.5rem;color:#3a4a3fe0;display:grid;font-size:.95rem;gap:.5rem;grid-template-columns:80px 1fr}.profile-meta-list dt{color:#3e5346bd;font-weight:600}.profile-meta-list dd{margin:0;word-break:break-all}.profile-info-tags{display:flex;flex-wrap:wrap;font-size:.9rem;gap:.6rem}.profile-info-tags span{background:#7ba58626;border-radius:999px;color:#385a44e6;padding:.4rem .9rem}.profile-info-summary{color:#303c32eb;font-size:.98rem;line-height:1.7;margin:0}.profile-info-footer{display:flex;justify-content:flex-start}.profile-primary-button,.profile-secondary-button,.text-button{align-items:center;border:none;border-radius:999px;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;gap:.35rem;padding:.6rem 1.35rem;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease;white-space:nowrap}.profile-primary-button:focus-visible,.profile-secondary-button:focus-visible,.text-button:focus-visible{box-shadow:0 0 0 3px #5e8b6e47,0 14px 28px #497c6252;outline:none;transform:translateY(-1px)}.profile-primary-button{background:linear-gradient(135deg,#598f6e,#7ab196);box-shadow:0 14px 28px #497c624d;color:#fff}.profile-primary-button:hover{box-shadow:0 20px 34px #497c626b;transform:translateY(-1px)}.profile-secondary-button{background:#5d8a6b14;border:1px solid #5d8a6b47;color:#4f735d}.profile-secondary-button:hover{box-shadow:0 12px 24px #497c622e;transform:translateY(-1px)}.text-button{background:#0000;border-radius:0;color:var(--primary-color);padding:0}.text-button:hover{text-decoration:underline}.profile-quick-actions h4,.profile-stats-card h4{color:#34453a;font-size:1.1rem;margin:0}.profile-stat-items{grid-gap:.9rem;display:grid;gap:.9rem}.profile-stat-item{background:#f6f9f5e6;border:1px solid #8aa18f2e;border-radius:18px;display:flex;flex-direction:column;gap:.35rem;padding:1rem 1.1rem}.profile-stat-item .value{color:#2d4f3a;font-size:1.75rem;font-weight:700}.profile-stat-item .label{color:#405347bf;font-size:.95rem}.profile-stat-item p{color:#4b5a4fa8;font-size:.85rem;margin:0}.profile-action-buttons{display:flex;flex-direction:column;gap:.75rem}.profile-main-grid{grid-gap:1.5rem;align-items:stretch;display:grid;gap:1.5rem;grid-template-columns:minmax(280px,360px) 1fr}.profile-card-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.profile-card-header.compact{align-items:center}.profile-card-header h4,.profile-card-header h5{color:#35473b;font-size:1.2rem;margin:0}.profile-card-header p{color:#3c4c41b8;font-size:.92rem;margin:.35rem 0 0;max-width:24rem}.profile-card-body{gap:1.1rem}.profile-card-body,.record-list{display:flex;flex-direction:column}.record-list{gap:.9rem}.profile-pagination{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;padding-top:.4rem}.profile-pagination-info{color:#405347c7;font-size:.9rem}.profile-pagination .profile-secondary-button[disabled]{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.record-card{background:#f8faf7d9;border:1px solid #76947e2e;border-radius:18px;cursor:pointer;padding:1rem;text-align:left;transition:transform .18s ease,box-shadow .18s ease,border .18s ease}.record-card:hover{box-shadow:0 18px 30px -22px #415c4a6b;transform:translateY(-2px)}.record-card.active{background:linear-gradient(135deg,#7cb19833,#ffffffeb);border-color:#5e8b6e73;box-shadow:0 18px 32px -24px #46635066}.record-card-header{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.5rem}.record-card-header h5{color:#2f4035;font-size:1rem;margin:0}.record-date{color:#526158b3;font-size:.82rem;white-space:nowrap}.record-diagnosis{color:#46544bc7;font-size:.92rem;margin:0}.record-brief{gap:1rem}.record-brief,.record-detail-row{display:flex;flex-direction:column}.record-detail-row{gap:.4rem}.record-detail-row .label{color:#56675cbf;font-size:.85rem}.record-detail-row .value{color:#304036f2;font-size:.98rem;line-height:1.65;white-space:pre-line}.record-detail-row .value.strong{color:#2f4336;font-weight:600}.record-detail-row .value.multiline{max-height:6.2rem;overflow:hidden;text-overflow:ellipsis}.record-detail-row .diagnosis{color:#2f6c48;font-weight:600}.record-detail-actions{display:flex;justify-content:flex-end;margin-top:.6rem}.empty-state,.panel-error,.panel-loading{color:var(--text-secondary);padding:2rem 1rem;text-align:center;width:100%}.panel-error{color:#971b20}.empty-state.subtle{background:#71967e14;border-radius:16px;padding:1.25rem}.prescriptions-grid{grid-gap:1.1rem;display:grid;gap:1.1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.prescription-card{background:#f9fbf7f5;border:1px solid #859e8b2e;border-radius:18px;box-shadow:0 16px 36px -26px #405c4a5c;display:flex;flex-direction:column;gap:.75rem;padding:1.2rem}.prescription-card-header{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between}.prescription-card-header h5{color:#2f4336;font-size:1.05rem;margin:0}.prescription-date{color:#58685cb3;font-size:.8rem;white-space:nowrap}.prescription-diagnosis,.prescription-symptoms{color:#46544bc7;font-size:.9rem;margin:0}.prescription-actions{justify-content:flex-end;margin-top:auto}.profile-modal{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f201373;display:flex;inset:0;justify-content:center;padding:1.5rem;position:fixed;z-index:1000}.profile-modal-content{background:var(--card-color);border:1px solid #6e89783d;border-radius:24px;box-shadow:0 40px 120px -36px #122a198c;display:flex;flex-direction:column;overflow:hidden;width:min(640px,95vw)}.profile-modal-header{align-items:center;border-bottom:1px solid #6e89781a;display:flex;justify-content:space-between;padding:1.1rem 1.5rem}.profile-modal-header h3{font-size:1.25rem;margin:0}.modal-close{background:#0000;border:none;color:var(--text-secondary);cursor:pointer;font-size:1.3rem}.profile-modal-body{gap:1rem;padding:1.5rem}.modal-field,.profile-modal-body{display:flex;flex-direction:column}.modal-field{gap:.45rem}.modal-field span{color:var(--text-secondary);font-size:.9rem}.modal-field input,.modal-field textarea{background:#f8faf7e6;border:1px solid #7a9a8440;border-radius:12px;color:var(--text-primary);font-size:.95rem;outline:none;padding:.75rem 1rem;transition:border .2s ease,box-shadow .2s ease;width:100%}.modal-field input:focus,.modal-field textarea:focus{border-color:#5e8b6e99;box-shadow:0 0 0 3px #689c762e}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:.5rem}.modal-error{background:#dc35451f;border-radius:12px;color:#9b1b24;font-size:.9rem;padding:.75rem 1rem}@media (max-width:1270px){.profile-layout{grid-template-columns:1fr}.profile-sidebar{flex-direction:row;flex-wrap:wrap}.profile-sidebar .profile-card{flex:1 1 280px}}@media (max-width:980px){.profile-sidebar{flex-direction:column}.profile-main-grid{grid-template-columns:1fr}}@media (max-width:768px){.profile-hero-banner{align-items:flex-start;flex-direction:column}.profile-hero-badge{align-self:flex-start}}@media (max-width:560px){.profile-card{border-radius:18px;padding:1.35rem}.profile-info-header{align-items:flex-start;flex-direction:column}.profile-avatar{font-size:1.6rem;height:68px;width:68px}.profile-meta-list div{grid-template-columns:1fr}.profile-action-buttons{flex-direction:row;flex-wrap:wrap;gap:.6rem}.profile-hero-banner{padding:1.7rem}}.prescription-page-wrapper{background:linear-gradient(135deg,#f9f4eb99,#ffffffe6);box-sizing:border-box;display:flex;flex-direction:column;gap:1.5rem;min-height:100%;padding:2rem 2.5rem;width:100%}.prescription-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.prescription-header h2{color:#5d4037;font-size:1.8rem;margin:0}.prescription-meta{color:#8d6e63;font-size:.9rem;margin:.3rem 0 0}.prescription-actions{display:flex;gap:.8rem}.ghost-button,.primary-button{border:none;border-radius:999px;cursor:pointer;font-weight:600;padding:.6rem 1.4rem;transition:all .2s ease}.primary-button{background:linear-gradient(135deg,#8b5a2b,#b0712f);box-shadow:0 6px 16px #8b451340;color:#fff8e7}.primary-button:hover{box-shadow:0 10px 20px #8b45134d;transform:translateY(-2px)}.ghost-button{background:#fff9;border:1px solid #8b45134d;color:#5d4037}.ghost-button:hover{background:#fff8e1e6}.prescription-error,.prescription-loading{background-color:#ffebeeb3;border:1px solid #f4433633;border-radius:12px;color:#c62828;padding:1rem;text-align:center}.prescription-content{display:flex;flex-direction:column;gap:1.5rem}.prescription-summary{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.summary-card{background:#ffffffe6;border:1px solid #8b45131f;border-radius:16px;box-shadow:0 4px 14px #8b45131f;padding:1rem 1.3rem}.summary-card h4{color:#5d4037;margin:0 0 .8rem}.summary-card p{color:#6d4c41;line-height:1.6;margin:0}.summary-card table{border-collapse:collapse;width:100%}.summary-card td,.summary-card th{border:1px solid #8b451326;padding:.6rem;text-align:left}.summary-card th{background-color:#ffe0b259;color:#5d4037}.prescription-markdown{background:#ffffffeb;border:1px solid #8b451326;border-radius:16px;box-shadow:0 6px 18px #8b451326;color:#4e342e;line-height:1.7;padding:1.5rem}.prescription-markdown h1,.prescription-markdown h2,.prescription-markdown h3{color:#5d4037}.prescription-markdown blockquote{background:#fff3e099;border-left:4px solid #b8860b;margin:1rem 0;padding-left:1rem}@media (max-width:768px){.prescription-page-wrapper{padding:1.5rem}.prescription-header{align-items:flex-start;flex-direction:column}.prescription-actions{justify-content:flex-start;width:100%}}.record-detail-page{display:flex;flex-direction:column;min-height:100%}.record-detail-header{align-items:center;display:flex;gap:1rem;justify-content:space-between}.record-header-actions{align-items:center;display:flex;gap:.75rem}.record-back-button{background:linear-gradient(135deg,#66c7ff,#4f8aff);border:none;border-radius:999px;box-shadow:0 4px 12px #4f8aff40;color:#fff;cursor:pointer;font-weight:600;padding:.45rem 1.25rem;transition:transform .2s ease,box-shadow .2s ease}.record-back-button:hover{box-shadow:0 6px 16px #4f8aff59;transform:translateY(-1px)}.record-back-button:active{box-shadow:0 3px 10px #4f8aff4d;transform:translateY(0)}.record-delete-button{background:linear-gradient(135deg,#ff8585,#ff4f5e);border:none;border-radius:999px;box-shadow:0 4px 12px #ff636e40;color:#fff;cursor:pointer;font-weight:600;padding:.45rem 1.25rem;transition:transform .2s ease,box-shadow .2s ease}.record-delete-button:hover:not(:disabled){box-shadow:0 6px 16px #ff636e59;transform:translateY(-1px)}.record-delete-button:active:not(:disabled){box-shadow:0 3px 10px #ff636e4d;transform:translateY(0)}.record-delete-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.75}.record-detail-content{padding-bottom:2rem}.detail-empty,.detail-error,.detail-loading{color:#637587;padding:2.5rem 1rem;text-align:center;width:100%}.detail-error{color:#d64545}.detail-empty.subtle{background:#8292a514;border-radius:12px;color:#6f7a86;font-size:.9rem;padding:1.2rem 1rem}.record-detail-layout{grid-gap:1.5rem;display:grid;gap:1.5rem}.detail-card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffffd1;border:1px solid #aabed738;border-radius:18px;box-shadow:0 12px 35px #24395514;display:flex;flex-direction:column;gap:.85rem;padding:1.5rem}.detail-card.highlight{background:linear-gradient(135deg,#67a8ff29,#daefff6b);border:1px solid #579aff61;box-shadow:0 15px 45px #579aff47}.detail-card h3{color:#1f2b3c;font-size:1.3rem;margin:0}.detail-card h4{color:#29425e;font-size:1.05rem;font-weight:600;margin:0}.detail-card-header{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between}.detail-badge{align-items:center;background:#5a8cd626;border-radius:999px;color:#4a6fa1;display:inline-flex;font-size:.9rem;font-weight:600;gap:.4rem;padding:.35rem .9rem}.detail-time{color:#5f7187;font-size:.85rem}.detail-diagnosis{color:#34506f;font-size:1rem;font-weight:500;margin:0}.detail-meta-grid{grid-gap:.85rem;display:grid;gap:.85rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-top:.25rem}.detail-chip-group{display:flex;flex-wrap:wrap;gap:.5rem;margin:.75rem 0 .25rem}.detail-chip{align-items:center;background:#5d95ff24;border-radius:999px;color:#27426a;display:inline-flex;font-size:.85rem;font-weight:600;gap:.35rem;letter-spacing:.02em;padding:.4rem .9rem}.detail-chip.soft{background:#74cc9829;color:#1f4c33}.meta-label{color:#728399;font-size:.8rem;letter-spacing:.05em}.meta-value{color:#253850;font-size:.95rem;font-weight:500}.meta-value.multiline{white-space:pre-wrap}.detail-paragraph{color:#3c5068;line-height:1.6;margin:0}.detail-paragraph.subtle{color:#7a889b}.detail-markdown{color:#2f415f;display:flex;flex-direction:column;font-size:.95rem;gap:.65rem;line-height:1.65}.detail-markdown.small{color:#3a4c6a;font-size:.9rem}.detail-markdown p{margin:0}.detail-markdown ol,.detail-markdown ul{margin:.35rem 0 .35rem 1.2rem;padding:0}.detail-markdown li{margin:.2rem 0}.detail-metadata-list,.detail-prescription-list{display:flex;flex-direction:column;gap:.85rem;list-style:none;margin:0;padding:0}.detail-metadata-list li,.detail-prescription-list li{align-items:flex-start;display:flex;gap:.85rem;justify-content:space-between}.detail-metadata-list li .meta-label{flex-shrink:0;min-width:110px}.detail-nested-list{display:flex;flex-direction:column;gap:.6rem;list-style:none;margin:0;padding:0}.detail-nested-list>li{background:#5272a614;border-radius:12px;color:#32425c;display:flex;flex-direction:column;gap:.35rem;padding:.6rem .7rem}.detail-nested-dl{grid-gap:.35rem;display:grid;gap:.35rem}.detail-nested-dl>div{grid-gap:.35rem;display:grid;gap:.35rem;grid-template-columns:90px 1fr}.detail-nested-dl dt{color:#49607dbf;font-size:.78rem;letter-spacing:.05em;text-transform:uppercase}.detail-nested-dl dd{color:#243958;font-size:.9rem;line-height:1.5;margin:0}.detail-herb-suggestions{grid-gap:.85rem;display:grid;gap:.85rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));width:100%}.herb-suggestion-card{background:#f3f8ffe0;border:1px solid #7d9ccd40;border-radius:14px;box-shadow:inset 0 1px 0 #fff9;display:flex;flex-direction:column;gap:.45rem;padding:.9rem}.herb-suggestion-header{align-items:center;display:flex;gap:.5rem;justify-content:space-between}.herb-name{color:#273c5e;font-weight:600}.herb-dosage{background:#5c82c32e;border-radius:999px;color:#4060a2;font-size:.85rem;padding:.2rem .6rem}.herb-reason{color:#354a6f;font-size:.87rem;line-height:1.55;margin:0}.supplement-grid{grid-gap:1.2rem;display:grid;gap:1.2rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.supplement-card{background:#f8faffd9;border:1px solid #98aacb33;border-radius:16px;box-shadow:inset 0 1px 0 #ffffffa6;display:flex;flex-direction:column;gap:.75rem;padding:1rem 1.1rem}.supplement-card.herb-card{background:#ecf5ffeb;border-color:#74a8ec59}.supplement-title{color:#2d4466;font-size:.95rem;font-weight:600;letter-spacing:.02em}.supplement-body{color:#32445e;display:flex;flex-direction:column;font-size:.9rem;gap:.45rem;line-height:1.6}.supplement-card.compact .supplement-body{gap:.3rem}.supplement-card .meta-value{color:#2f415f;font-weight:500;white-space:normal}.supplement-card .detail-nested-list>li{background:#ebf1fa99}.supplement-card .detail-nested-dl dt{color:#445c7bbf}.supplement-card .detail-nested-dl dd{color:#2d3f5c}.supplement-card .detail-markdown{padding-top:.2rem}.supplement-card .detail-markdown ol,.supplement-card .detail-markdown ul{margin-left:1.1rem}.supplement-card .detail-markdown li::marker{color:#5675a6}.supplement-grid .herb-suggestion-card{background:#f3f8fff2}.supplement-grid .herb-dosage{background:#5c82c338}.supplement-grid .herb-reason{color:#31486a}.supplement-grid .patient-info-card{padding:0}.supplement-grid .patient-info-section ul{padding-left:1rem}.supplement-grid .patient-info-section li{color:#324963}.supplement-grid .patient-info-section h5{color:#253a59}.patient-info-card{grid-gap:1rem;display:grid;gap:1rem;padding:.75rem 0}.patient-info-section h5{color:#2b3f5a;font-size:.95rem;margin:0 0 .35rem}.patient-info-section ul{color:#32455f;display:flex;flex-direction:column;font-size:.9rem;gap:.35rem;margin:0;padding-left:1.1rem}.patient-info-section li strong{color:#253a59}.prescription-info{color:#304764;display:flex;flex-direction:column;gap:.3rem}.prescription-info strong{font-size:1rem}.prescription-info span{color:#70849a;font-size:.85rem}.detail-link{border-bottom:1px solid #0000;color:#3574f2;font-size:.85rem;font-weight:600;text-decoration:none;transition:color .2s ease,border-bottom .2s ease}.detail-link:hover{border-bottom:1px solid #2859bd;color:#2859bd}@media (max-width:768px){.record-detail-header{align-items:flex-start;flex-direction:column}.record-back-button{text-align:center;width:100%}.detail-metadata-list li,.detail-prescription-list li{align-items:flex-start;flex-direction:column}.detail-metadata-list li .meta-label{min-width:auto}.detail-link{align-self:flex-end}}.image-report-page{background:#f7f9fb}.image-report-header{align-items:center;gap:1rem;justify-content:space-between}.image-report-header h2{color:#1e293b;font-size:1.6rem;font-weight:600}.report-back-button{background:#fff;border:1px solid #d0d6e0;border-radius:10px;color:#1e293b;cursor:pointer;font-size:.95rem;padding:.55rem 1.25rem;transition:all .2s ease}.report-back-button:hover{border-color:#94a3b8;box-shadow:0 6px 20px #0f172a14;color:#0f172a}.image-report-content{display:flex;flex-direction:column;gap:1.5rem;padding-bottom:2rem}.report-status{background:linear-gradient(145deg,#fff,#f1f5f9);border-radius:16px;box-shadow:0 10px 30px #0f172a0f;color:#0f172a;font-size:1rem;padding:1.5rem}.report-status.subtle{color:#475569}.report-status.error{background:#fef2f2;border:1px solid #dc262633;color:#991b1b}.report-analysis-card,.report-image-card,.report-summary-card{background:#fff;border-radius:18px;box-shadow:0 18px 45px #0f172a14;padding:1.5rem}.report-summary-header{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between}.report-type-tag{align-items:center;background:linear-gradient(135deg,#38bdf8,#6366f1);border-radius:999px;color:#fff;display:inline-flex;font-weight:600;justify-content:center;letter-spacing:.02em;min-width:120px;padding:.35rem .75rem}.report-timestamp{color:#475569;font-size:.95rem}.report-meta-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-top:1.25rem}.report-meta-grid div{background:#f8fafc;border-radius:14px;display:flex;flex-direction:column;gap:.4rem;padding:.85rem 1rem}.meta-label{color:#64748b;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase}.meta-value{color:#0f172a;font-size:1.05rem;font-weight:600}.report-image-card{display:flex;flex-direction:column;gap:1rem}.report-image-preview{background:#0f172a;border-radius:16px;display:grid;overflow:hidden;padding:.5rem;place-items:center;width:100%}.report-image-preview img{border-radius:12px;box-shadow:0 14px 40px #0f172a2e;height:auto;object-fit:contain;width:100%}.report-image-message{color:#e2e8f0;font-size:.95rem}.report-image-message.error{color:#fecdd3}.report-image-button{align-self:flex-start;background:linear-gradient(135deg,#f59e0b,#f97316);border:none;border-radius:999px;color:#fff;cursor:pointer;font-weight:600;padding:.55rem 1.1rem;transition:transform .2s ease,box-shadow .2s ease}.report-image-button:hover{box-shadow:0 12px 30px #f973164d;transform:translateY(-2px)}.report-image-error{color:#b91c1c;font-size:.9rem;margin-top:-.3rem}.report-analysis-card h3{color:#0f172a;font-size:1.25rem;font-weight:600;margin-bottom:1rem}.report-markdown{color:#1f2937;line-height:1.75}.report-markdown h4{border-left:4px solid #38bdf8;font-size:1.1rem;margin-top:1.25rem;padding-left:.75rem}.report-markdown p+p{margin-top:.75rem}.report-markdown ol,.report-markdown ul{margin:.75rem 0 .75rem 1.25rem}.report-prompt{background:#f1f5f9;border-radius:12px;margin-top:1.5rem;padding:1rem}.prompt-label{background:#38bdf81a;border-radius:12px;color:#0369a1;display:inline-block;font-weight:600;margin-bottom:.4rem;padding:.2rem .6rem}@media (max-width:768px){.image-report-header{align-items:stretch;flex-direction:column}.report-back-button{width:100%}.report-image-button{text-align:center;width:100%}}:root{--calendar-warm-bg:#fdf6e3;--calendar-card-bg:#fff8e1eb;--calendar-card-bg-strong:#fffaf0f5;--calendar-card-border:#c19a6b47;--calendar-card-shadow:#a588572e;--calendar-ink:#4e342e;--calendar-muted:#7c5c3b;--calendar-accent:#c8863b;--calendar-accent-dark:#a0611c;--calendar-badge-bg:#c19a6b2e;--calendar-highlight:#ddb46b33;--calendar-soft-bg:#fffcf5d1;--calendar-softest-bg:#fdf7ecf2}.calendar-page{background:radial-gradient(circle at 14% 18%,#f4dcbe47,#0000 58%),radial-gradient(circle at 82% 16%,#e8c99a40,#0000 55%),linear-gradient(180deg,#fdf6e3,#f8edd8 55%,#fdf8ee);min-height:100vh;padding:2.75rem 3.25rem}.calendar-shell{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(155deg,#fffaf0f5,#fbf0def2);background:linear-gradient(155deg,var(--calendar-card-bg-strong),#fbf0def2);border:1px solid #c19a6b47;border:1px solid var(--calendar-card-border);border-radius:34px;box-shadow:0 35px 70px #8b5a2b24;margin:0 auto;max-width:1340px;padding:2.4rem 2.8rem 3.4rem}.calendar-grid{grid-gap:2.5rem;display:grid;gap:2.5rem;grid-template-columns:340px 1fr}.calendar-side{gap:1.5rem}.calendar-day-card,.calendar-side{display:flex;flex-direction:column}.calendar-day-card{background:linear-gradient(155deg,#c19a6b33,#e1c0912e);border:1px solid #c19a6b47;border:1px solid var(--calendar-card-border);border-radius:28px;box-shadow:inset 0 0 0 1px #fff6;color:#4e342e;color:var(--calendar-ink);gap:.6rem;padding:1.8rem}.day-label{color:#8b5a2bd9;font-size:.92rem;letter-spacing:.12em;text-transform:uppercase}.day-number{color:#4e342e;color:var(--calendar-ink);font-size:4rem;font-weight:700;letter-spacing:-.04em;line-height:1}.day-date{color:#4e342ed9;font-size:1.05rem}.day-focus{background:#fffcf5d9;border:1px solid #c19a6b47;border:1px solid var(--calendar-card-border);border-radius:16px;color:#4e342e;color:var(--calendar-ink);font-weight:600;margin-top:.4rem;padding:.75rem .9rem}.day-meta{color:#8b5a2bcc;display:flex;font-size:.9rem;gap:.75rem}.day-summary{color:#7c5c3b;color:var(--calendar-muted);font-size:.94rem;line-height:1.65;margin:0}.calendar-card{background:#fff8e1eb;background:var(--calendar-card-bg);border:1px solid #c19a6b47;border:1px solid var(--calendar-card-border);border-radius:24px;box-shadow:0 18px 36px #a588572e;box-shadow:0 18px 36px var(--calendar-card-shadow);display:flex;flex-direction:column;gap:1.1rem;padding:1.8rem}.calendar-card-header{display:flex;flex-direction:column;gap:.45rem}.calendar-card-header h3{color:#4e342e;color:var(--calendar-ink);font-size:1.35rem;font-weight:700;margin:0}.calendar-card-header p{color:#7c5c3b;color:var(--calendar-muted);font-size:.92rem;line-height:1.6;margin:0}.field-label{color:#4e342e;color:var(--calendar-ink);font-size:.9rem;font-weight:600}.calendar-card input,.calendar-card select,.calendar-card textarea{background:#fffcf5e0;border:1px solid #c19a6b47;border:1px solid var(--calendar-card-border);border-radius:16px;color:#4e342e;color:var(--calendar-ink);font-family:inherit;font-size:.95rem;padding:.75rem .95rem;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.calendar-card textarea{resize:vertical}.calendar-card input:focus,.calendar-card select:focus,.calendar-card textarea:focus{border-color:#c8863b;border-color:var(--calendar-accent);box-shadow:0 0 0 4px #c8863b29;outline:none}.range-selector{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr))}.range-selector button{background:#fffcf5e0;border:1px solid #c19a6b47;border:1px solid var(--calendar-card-border);border-radius:18px;cursor:pointer;display:flex;flex-direction:column;gap:.25rem;padding:.65rem .85rem;text-align:left;transition:transform .2s ease,box-shadow .2s ease}.range-selector button strong{color:#4e342e;color:var(--calendar-ink);font-size:.98rem}.range-selector button span{color:#7c5c3bd9;font-size:.78rem}.range-selector button.active{background:linear-gradient(135deg,#dca066,#c8863b);border-color:#0000;box-shadow:0 12px 24px #c8863b52;color:#fff6e8}.calendar-primary-btn,.calendar-secondary-btn{border:none;border-radius:14px;cursor:pointer;font-size:1rem;font-weight:600;padding:.95rem 1.2rem;transition:transform .2s ease,box-shadow .2s ease}.calendar-primary-btn{background:linear-gradient(120deg,#dca066,#c8863b 60%,#b76a21);color:#fff7e6}.calendar-primary-btn:disabled,.calendar-secondary-btn:disabled{cursor:not-allowed;opacity:.65}.calendar-primary-btn:not(:disabled):hover{box-shadow:0 16px 32px #b66e2647;transform:translateY(-1px)}.calendar-secondary-btn{background:#8b5a2beb;color:#fff7e6}.calendar-secondary-btn:not(:disabled):hover{box-shadow:0 12px 24px #8b5a2b3d;transform:translateY(-1px)}.calendar-error{background:#f871712e;border-radius:14px;color:#b91c1c;font-size:.9rem;padding:.8rem 1rem}.calendar-history-list{display:flex;flex-direction:column;gap:.75rem;list-style:none;margin:0;padding:0}.calendar-history-list li{width:100%}.history-entry{align-items:stretch;display:flex;flex-wrap:wrap;gap:.6rem}.history-main{align-items:center;background:#f8fafcc7;border:1px solid #e2e8f0b3;border-radius:16px;color:#0f172a;cursor:pointer;display:flex;flex:1 1;font-size:.95rem;gap:.95rem;min-width:0;outline:none;padding:.85rem 1rem;transition:transform .2s ease,box-shadow .2s ease}.history-main:hover{box-shadow:0 12px 24px #94a3b838;transform:translateX(4px)}.history-main.active{background:#4f46e51f;border-color:#4f46e573;box-shadow:inset 0 0 0 1px #6366f140}.history-delete{background:#f8717124;border:none;border-radius:14px;color:#b91c1c;cursor:pointer;font-size:.9rem;font-weight:600;min-width:78px;padding:.85rem 1rem;transition:background .2s ease,transform .2s ease}.history-delete:disabled{cursor:not-allowed;opacity:.6}.history-delete:not(:disabled):hover{background:#f8717138;transform:translateY(-1px)}.history-badge{align-items:center;background:#4f46e51f;border-radius:12px;display:inline-flex;font-size:1.2rem;height:38px;justify-content:center;width:38px}.history-text{align-items:flex-start;display:flex;flex:1 1;flex-direction:column;gap:.25rem}.history-text strong{color:#0f172a;font-weight:600}.history-text span{color:#64748b;font-size:.85rem}.history-arrow{color:#4f46e5;font-size:1.05rem}.calendar-empty{background:#f1f5f9d9;border-radius:16px;color:#64748b;font-size:.92rem;padding:1rem 1.1rem}.calendar-hero{display:flex;flex-wrap:wrap;gap:1.75rem;justify-content:space-between;padding:0 0 1.8rem}.calendar-hero-badge{align-items:center;background:#4f46e529;border-radius:999px;color:#3730a3;display:inline-flex;font-size:.82rem;font-weight:600;gap:.45rem;letter-spacing:.12em;padding:.45rem .95rem;text-transform:uppercase}.calendar-hero h1{color:#0f172a;font-size:2.55rem;font-weight:700;letter-spacing:-.03em;margin:.65rem 0 .5rem}.calendar-hero p{color:#475569;font-size:1.05rem;line-height:1.75;margin:0;max-width:520px}.calendar-hero-meta{grid-gap:1rem;background:#4f46e514;border-radius:22px;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));padding:1.35rem}.calendar-hero-meta span{color:#4f46e5d9;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.calendar-hero-meta strong{color:#111827;display:block;font-size:1.1rem;margin-top:.45rem}.calendar-main{display:flex;flex-direction:column;gap:1.8rem}.calendar-board{background:linear-gradient(160deg,#fffffff2,#f1f5f9e6);border:1px solid #cbd5e18c;border-radius:26px;box-shadow:inset 0 0 0 1px #ffffff73;padding:1.8rem}.calendar-board .react-calendar{background:#0000;border:none;font-family:inherit;width:100%}.calendar-board .react-calendar__navigation button{background:#94a3b829;border:none;border-radius:12px;color:#0f172a;font-size:1rem;font-weight:600;margin-bottom:1rem;min-height:2.6rem}.calendar-board .react-calendar__navigation button:enabled:hover{background:#3b82f633;color:#1d4ed8}.calendar-board .react-calendar__tile{border-radius:18px;color:#0f172a;font-size:.95rem;height:78px;padding:.55rem;position:relative}.calendar-board .react-calendar__tile:enabled:hover{background:#3b82f61f}.calendar-board .react-calendar__tile--active{background:linear-gradient(135deg,#6366f1,#22d3ee);box-shadow:0 14px 30px #4f46e547;color:#f8fafc}.calendar-day.has-events{border:1px solid #4f46e559}.calendar-day.in-range{background:#f8fafca6;border:1px solid #94a3b866}.calendar-day.in-range.has-events{background:#6366f126}.calendar-day.out-of-range{background:#f8fafc66;border:1px solid #cbd5e159;opacity:.55}.calendar-day-indicator{align-items:center;background:#4f46e529;border-radius:12px;bottom:8px;color:#312e81;display:flex;font-size:.82rem;font-weight:600;height:26px;justify-content:center;pointer-events:none;position:absolute;right:12px;width:26px}.calendar-schedule-panel{background:#ffffffeb;border:1px solid #cbd5e18c;border-radius:28px;box-shadow:inset 0 0 0 1px #ffffff73;padding:1.9rem}.schedule-header{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.4rem}.schedule-header h3{color:#0f172a;font-size:1.45rem;margin:0}.schedule-header p{color:#475569;font-size:.95rem;margin:.4rem 0 0;max-width:520px}.schedule-count{align-self:flex-start;background:#2563eb1f;border-radius:999px;color:#1d4ed8;font-size:.85rem;font-weight:600;padding:.5rem .9rem}.schedule-list{display:flex;flex-direction:column;gap:1.1rem;list-style:none;margin:0;padding:0}.schedule-list li{grid-gap:1rem;align-items:flex-start;background:#f8fafcd9;border:1px solid #cbd5e199;border-radius:18px;display:grid;gap:1rem;grid-template-columns:88px 1fr auto;padding:1rem 1.2rem}.schedule-time{color:#312e81;font-size:.9rem;font-weight:600}.schedule-body strong{color:#0f172a;display:block;font-size:1.05rem;margin-bottom:.45rem}.schedule-body p{color:#475569;font-size:.92rem;line-height:1.6;margin:0}.schedule-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.schedule-tags .tag{align-items:center;background:#94a3b833;border-radius:999px;color:#1f2937;display:inline-flex;font-size:.78rem;gap:.35rem;padding:.35rem .7rem}.schedule-tags .tag.manual{background:#22c55e2e;color:#166534}.schedule-tags .tag.ai{background:#0ea5e92e;color:#0f172a}.schedule-delete{background:#f8717129;border:none;border-radius:12px;color:#b91c1c;cursor:pointer;font-size:.85rem;padding:.55rem .9rem;transition:background .2s ease}.schedule-delete:disabled{cursor:not-allowed;opacity:.6}.schedule-delete:not(:disabled):hover{background:#f8717147}.schedule-form{border-top:1px solid #e2e8f0a6;display:flex;flex-direction:column;gap:1.2rem;margin-top:1.6rem;padding-top:1.6rem}.schedule-form h4{color:#0f172a;font-size:1.2rem;margin:0}.form-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid .form-full{grid-column:1/-1}.calendar-outline{background:#ffffffe0;border:1px solid #e2e8f0b3;border-radius:26px;display:flex;flex-direction:column;gap:1.25rem;padding:1.8rem}.calendar-outline .calendar-card-header{margin-bottom:0}.outline-list{display:flex;flex-direction:column;gap:1rem;list-style:none;margin:0;padding:0}.outline-list li{background:#f8fafcd9;border:1px solid #cbd5e199;border-radius:18px;display:flex;gap:1rem;padding:1rem 1.2rem}.outline-date{color:#312e81;font-size:.92rem;font-weight:600;min-width:70px}.outline-body{display:flex;flex:1 1;flex-direction:column;gap:.4rem}.outline-body strong{color:#0f172a;font-size:1.02rem}.outline-body p{color:#475569;font-size:.92rem;line-height:1.6;margin:0}.outline-tags{display:flex;flex-wrap:wrap;gap:.5rem}.outline-tags span{align-items:center;background:#a5b4fc40;border-radius:12px;color:#312e81;display:inline-flex;font-size:.78rem;padding:.35rem .75rem}.outline-link{align-self:flex-start;background:linear-gradient(135deg,#4f46e5,#22d3ee);border-radius:14px;color:#f8fafc;font-weight:600;padding:.8rem 1.25rem;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.outline-link:hover{box-shadow:0 12px 24px #4f46e540;transform:translateX(4px)}@media (max-width:1200px){.calendar-grid{gap:2rem;grid-template-columns:300px 1fr}.range-selector{grid-template-columns:repeat(1,minmax(0,1fr))}}@media (max-width:1024px){.calendar-page{padding:2rem}.calendar-shell{border-radius:26px;padding:2rem}.calendar-grid{grid-template-columns:1fr}.calendar-side{order:2}.calendar-main{order:1}.schedule-list li{grid-template-columns:80px 1fr}.schedule-delete{grid-column:1/-1;justify-self:flex-start}.form-grid{grid-template-columns:1fr}}@media (max-width:640px){.calendar-page{padding:1.25rem}.calendar-shell{border-radius:20px;padding:1.35rem}.calendar-hero h1{font-size:2rem}.calendar-board .react-calendar__tile{height:64px}.schedule-list li{grid-template-columns:1fr}.schedule-time{order:-1}}.calendar-detail-page{background:radial-gradient(circle at 18% 18%,#4f46e51f,#0000 55%),radial-gradient(circle at 82% 22%,#3b82f61f,#0000 52%),linear-gradient(180deg,#eef2ff,#f8fafc 55%,#fff);min-height:100vh;padding:2.5rem 3rem}.detail-shell{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffe0;border:1px solid #cbd5e18c;border-radius:32px;box-shadow:0 36px 68px #0f172a1f;margin:0 auto;max-width:1100px;padding:2.4rem 2.6rem 3rem}.detail-header{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.back-button{align-self:flex-start;background:#6366f124;border:none;border-radius:999px;color:#3730a3;cursor:pointer;font-size:.92rem;font-weight:600;padding:.5rem 1.1rem;transition:transform .2s ease,box-shadow .2s ease}.back-button:hover{box-shadow:0 10px 18px #6366f12e;transform:translateX(-3px)}.header-meta .badge{align-items:center;background:#3b82f629;border-radius:999px;color:#1d4ed8;display:inline-flex;font-size:.8rem;font-weight:600;gap:.4rem;letter-spacing:.08em;padding:.4rem .8rem;text-transform:uppercase}.header-meta h1{color:#0f172a;font-size:2.45rem;font-weight:700;letter-spacing:-.02em;margin:.6rem 0 .4rem}.header-meta p{color:#475569;font-size:1.02rem;line-height:1.7;margin:0;max-width:620px}.detail-empty,.detail-error,.detail-loading{background:#f1f5f9e6;border-radius:16px;color:#475569;font-size:.95rem;padding:1rem 1.2rem}.detail-error{background:#fee2e2d9;color:#991b1b}.summary-panel{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:2.5rem}.summary-card{background:#f8fafcd9;border:1px solid #cbd5e199;border-radius:18px;display:flex;flex-direction:column;gap:.35rem;padding:1rem 1.2rem}.summary-card span{color:#4f46e5a6;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase}.summary-card strong{color:#0f172a;font-size:1.05rem}.daily-section h2{color:#0f172a;font-size:1.8rem;font-weight:700;margin:0 0 1rem}.daily-list{gap:1.2rem;list-style:none;margin:0;padding:0}.daily-list,.daily-list li{display:flex;flex-direction:column}.daily-list li{background:#ffffffe0;border:1px solid #cbd5e199;border-radius:24px;box-shadow:inset 0 0 0 1px #ffffff52;gap:.85rem;padding:1.4rem 1.6rem}.daily-head{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.daily-head strong{color:#111827;display:block;font-size:1.1rem}.daily-head span{color:#64748b;display:block;font-size:.9rem}.daily-focus{align-items:flex-end;display:flex;flex-direction:column;gap:.2rem}.daily-focus span{color:#4f46e5bf;font-size:.74rem;letter-spacing:.08em;text-transform:uppercase}.daily-focus strong{color:#3730a3;font-size:1.05rem}.daily-summary{color:#475569;font-size:.96rem;line-height:1.7;margin:0}.daily-tags{display:flex;flex-wrap:wrap;gap:.5rem}.daily-tags span{align-items:center;background:#a5b4fc40;border-radius:12px;color:#312e81;display:inline-flex;font-size:.78rem;padding:.35rem .7rem}.daily-items{display:flex;flex-direction:column;gap:.8rem}.daily-item{grid-gap:1rem;background:#f8fafcd9;border:1px solid #e2e8f099;border-radius:16px;display:grid;gap:1rem;grid-template-columns:100px 1fr;padding:.95rem 1.1rem}.item-time{color:#1e3a8a;font-size:.9rem;font-weight:600}.item-body h3{color:#0f172a;font-size:1.02rem;margin:0 0 .35rem}.item-body p{color:#475569;font-size:.92rem;line-height:1.6;margin:0}.item-meta{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.6rem}.pill{align-items:center;border-radius:999px;display:inline-flex;font-size:.75rem;font-weight:600;padding:.3rem .65rem}.pill.category{background:#3b82f629;color:#1d4ed8}.pill.source.ai{background:#0ea5e929;color:#0f172a}.pill.source.manual{background:#22c55e29;color:#166534}.raw-section{margin-top:2.4rem}.raw-header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:.8rem}.raw-header h2{color:#0f172a;font-size:1.6rem;margin:0}.toggle-raw{background:#94a3b840;border:none;border-radius:12px;color:#1f2937;cursor:pointer;font-size:.85rem;font-weight:600;padding:.5rem .95rem;transition:transform .2s ease,background .2s ease}.toggle-raw:hover{background:#94a3b859;transform:translateY(-1px)}.raw-block{background:#0f172a;border-radius:18px;color:#e2e8f0;font-size:.85rem;line-height:1.6;overflow-x:auto;padding:1.2rem 1.5rem}.detail-footer{display:flex;justify-content:flex-end;margin-top:2.5rem}.footer-link{align-items:center;background:linear-gradient(135deg,#4f46e5,#0ea5e9);border-radius:999px;color:#f8fafc;display:inline-flex;font-weight:600;gap:.35rem;padding:.75rem 1.4rem;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.footer-link:hover{box-shadow:0 20px 36px #4f46e547;transform:translateX(4px)}@media (max-width:900px){.calendar-detail-page{padding:1.8rem}.detail-shell{padding:2rem}.daily-item{grid-template-columns:1fr}.item-time{order:-1}}@media (max-width:640px){.calendar-detail-page{padding:1.2rem}.detail-shell{border-radius:24px;padding:1.6rem}.header-meta h1{font-size:2rem}.summary-panel{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}.community-landing{background:linear-gradient(145deg,#00897b2e,#00695c14);border:1px solid #00897b3d;border-radius:24px;box-shadow:0 18px 42px #0000000f;box-sizing:border-box;display:flex;flex-direction:column;gap:28px;height:100%;min-height:100%;padding:48px;width:100%}.community-landing__content{display:flex;flex:1 1;flex-direction:column;gap:28px}.community-landing__hero{color:#092c25;display:flex;flex-direction:column;gap:16px}.community-landing__hero h1{font-size:36px;margin:0}.community-landing__hero p{color:#092c25db;font-size:17px;line-height:1.7;max-width:720px}.community-landing__hero button{align-self:flex-start;background:linear-gradient(135deg,#00897b,#00695c);border:none;border-radius:999px;color:#fff;cursor:pointer;font-size:16px;padding:12px 26px;transition:transform .2s ease,box-shadow .2s ease}.community-landing__hero button:hover{box-shadow:0 14px 26px #00695c47;transform:translateY(-1px)}.community-landing__grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.community-landing__grid section{background:#ffffffb8;border:1px solid #00000014;border-radius:18px;box-shadow:inset 0 1px 0 #ffffff73;padding:18px}.community-landing__grid h2{color:#0a3d33;font-size:20px;margin:0 0 8px}.community-landing__grid p{color:#35524a;font-size:14px;line-height:1.6;margin:0}.community-shell__left-nav{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff5;border-radius:24px;border-right:1px solid #00695c1f;box-shadow:6px 0 24px #00695c14;display:flex;flex-direction:column;gap:24px;margin:16px 0;max-height:calc(100vh - 104px);max-height:calc(100vh - var(--community-topbar-height, 72px) - 32px);min-width:220px;overflow-y:auto;padding:32px 22px;position:-webkit-sticky;position:sticky;top:88px;top:calc(var(--community-topbar-height, 72px) + 16px)}.community-shell__logo{align-items:center;color:#004d40;display:flex;font-size:22px;font-weight:700;gap:10px}.community-shell__logo:before{background:linear-gradient(135deg,#0fbf9f,#068a70);border-radius:4px;box-shadow:0 8px 16px #068a704d;content:"";height:12px;width:12px}.community-shell__left-nav ul{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.community-shell__left-link{align-items:center;border-radius:12px;color:#004d40b3;display:flex;gap:12px;padding:10px 14px;text-decoration:none;transition:background .2s ease,color .2s ease}.community-shell__left-link:hover{background:#0096881f;color:#00695c}.community-shell__left-compose,.community-shell__left-link--active{background:linear-gradient(135deg,#00897b,#00695c);color:#fff;font-weight:600}.community-shell__left-compose{align-items:center;border-radius:999px;box-shadow:0 16px 32px #00695c38;display:flex;gap:10px;justify-content:center;margin-top:auto;padding:12px 18px;text-decoration:none;transition:transform .2s ease}.community-shell__left-compose:hover{transform:translateY(-2px)}.community-shell__topbar{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(135deg,#ffffffeb,#f2fff8eb);border-bottom:1px solid #00695c24;box-shadow:0 16px 28px #00695c1f;display:flex;height:72px;justify-content:space-between;padding:0 36px;position:-webkit-sticky;position:sticky;top:0;z-index:20}.community-shell__topbar-logo{align-items:center;background:none;border:none;color:#024e3f;cursor:pointer;display:flex;font-weight:600;gap:14px}.community-shell__topbar-logo-mark{background:linear-gradient(135deg,#0fbf9f,#068a70);border-radius:14px;box-shadow:0 12px 28px #068a7042;height:40px;position:relative;width:40px}.community-shell__topbar-logo-mark:after,.community-shell__topbar-logo-mark:before{background:#fff9;border-radius:50%;content:"";position:absolute}.community-shell__topbar-logo-mark:after{height:12px;left:12px;top:8px;width:12px}.community-shell__topbar-logo-mark:before{bottom:10px;height:6px;right:8px;width:6px}.community-shell__topbar-logo-text{display:flex;flex-direction:column;font-size:14px}.community-shell__topbar-logo-text strong{font-size:16px;line-height:1.1}.community-shell__topbar-logo-text span{color:#024e3fb8;font-weight:400}.community-shell__topbar-search{flex:1 1;margin:0 24px;max-width:520px}.community-shell__topbar-search input{border:1px solid #00695c3d;border-radius:999px;font-size:15px;outline:none;padding:10px 18px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.community-shell__topbar-search input:focus{border-color:#00897b;box-shadow:0 0 0 3px #00897b2e}.community-shell__topbar-actions{align-items:center;display:flex;gap:18px}.community-shell__topbar-actions button{align-items:center;background:none;background:#0fbf9f24;border:none;border-radius:14px;cursor:pointer;display:flex;height:40px;justify-content:center;position:relative;width:40px}.community-shell__topbar-notice-dot{background:linear-gradient(135deg,#ff7043,#f4511e);border-radius:50%;box-shadow:0 0 0 4px #f4511e1f;height:8px;position:absolute;right:10px;top:10px;width:8px}.community-shell__topbar-icon{height:18px;position:relative;width:18px}.community-shell__topbar-icon:after,.community-shell__topbar-icon:before{border:2px solid #024e3f99;border-radius:6px;content:"";inset:0;position:absolute}.community-shell__topbar-icon:after{border-top-color:#0000;inset:4px;transform:rotate(15deg)}.community-shell__topbar-avatar{align-items:center;background:#0096882e;border-radius:50%;color:#004d40;display:flex;font-weight:600;height:36px;justify-content:center;overflow:hidden;width:36px}.community-shell__topbar-avatar img{height:100%;object-fit:cover;width:100%}.community-shell__right{display:flex;flex-direction:column;gap:20px;max-height:calc(100vh - 120px);max-height:calc(100vh - var(--community-topbar-height, 72px) - 48px);min-width:280px;overflow-y:auto;padding:32px 26px;position:-webkit-sticky;position:sticky;top:96px;top:calc(var(--community-topbar-height, 72px) + 24px)}.community-shell__card{background:#fffffff7;border:1px solid #00695c24;border-radius:24px;box-shadow:0 18px 42px #00695c29;display:flex;flex-direction:column;gap:14px;padding:24px}.community-shell__card header{align-items:center;display:flex;justify-content:space-between}.community-shell__card header h3{color:#004d40;font-size:18px;margin:0}.community-shell__card header button{background:#0fbf9f1f;border:none;border-radius:999px;color:#068a70;cursor:pointer;font-size:13px;padding:6px 12px}.community-shell__error,.community-shell__placeholder{border-radius:12px;font-size:13px;line-height:1.6;padding:12px}.community-shell__placeholder{background:#0fbf9f1f;color:#004d40d1}.community-shell__error{background:#d6454529;color:#b71c1c}.community-shell__trending{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0}.community-shell__trending li{grid-gap:12px;align-items:center;color:#004d40d6;display:grid;font-size:14px;gap:12px;grid-template-columns:42px 1fr}.community-shell__trending-rank{align-items:center;background:linear-gradient(135deg,#0fbf9f24,#068a702e);border-radius:14px;box-shadow:inset 0 0 0 1px #00695c1f;color:#00695c;display:flex;font-weight:600;height:42px;justify-content:center;width:42px}.community-shell__trending-info{display:flex;flex-direction:column;gap:6px}.community-shell__trending-link{background:none;border:none;color:#00695c;cursor:pointer;font-size:15px;font-weight:600;text-align:left}.community-shell__trending-link:hover{color:#00564c;text-decoration:underline}.community-shell__trending small{color:#004d4094}.community-shell__trending-meter{background:#0096881f;border-radius:999px;height:6px;overflow:hidden}.community-shell__trending-meter span{background:linear-gradient(135deg,#0fbf9f,#068a70);border-radius:999px;display:block;height:100%}.community-shell__creators{display:flex;flex-direction:column;gap:16px;list-style:none;margin:0;padding:0}.community-shell__creators li{background:#0fbf9f14;border:1px solid #00695c1f;border-radius:18px;display:flex;flex-direction:column;gap:12px;padding:16px}.community-shell__creator-header{grid-gap:12px;align-items:center;border-radius:16px;display:grid;gap:12px;grid-template-columns:auto 1fr auto;padding:4px}.community-shell__creator-header[role=button]{cursor:pointer;transition:background .2s ease,transform .2s ease}.community-shell__creator-header[role=button]:focus,.community-shell__creator-header[role=button]:hover{background:#ffffff80;outline:none;transform:translateY(-1px)}.community-shell__creator-avatar{align-items:center;background:linear-gradient(135deg,#0fbf9f59,#068a7059);border-radius:16px;color:#004d40;display:flex;font-size:18px;font-weight:600;height:48px;justify-content:center;overflow:hidden;width:48px}.community-shell__creator-avatar img{height:100%;object-fit:cover;width:100%}.community-shell__creator-meta{color:#004d40bd;display:flex;flex-direction:column;font-size:14px;gap:4px}.community-shell__creator-meta strong{color:#024e3f;font-size:16px}.community-shell__creator-follow{background:#00695c1f;border:none;border-radius:999px;color:#00695c;cursor:pointer;font-weight:600;padding:6px 16px;transition:background .2s ease,color .2s ease}.community-shell__creator-follow--active{background:linear-gradient(135deg,#00897b,#00695c);color:#fff}.community-shell__creator-follow:disabled{cursor:not-allowed;opacity:.6}.community-shell__creator-stats{color:#004d40b8;display:flex;font-size:13px;gap:12px}.community-shell__creator-topics{display:flex;flex-wrap:wrap;gap:8px}.community-shell__creator-topics span{background:#00968824;border-radius:999px;color:#00695c;font-size:12px;padding:4px 10px}.community-shell__creator-latest{background:#fff9;border-radius:12px;color:#004d40c7;font-size:13px;line-height:1.4;margin:0;padding:8px 10px}.community-shell__fab{align-items:center;background:linear-gradient(135deg,#00897b,#00695c);border-radius:50%;bottom:42px;box-shadow:0 22px 46px #00695c47;color:#fff;display:flex;font-size:26px;height:60px;justify-content:center;position:fixed;right:42px;text-decoration:none;width:60px;z-index:40}.community-shell{--community-topbar-height:72px;background:radial-gradient(circle at 6% 0,#d1fae5bf,#0000 55%),radial-gradient(circle at 90% 0,#e0f7fa99,#0000 65%),linear-gradient(180deg,#e8f5e9cc,#fffffffa 52%);display:flex;flex-direction:column;min-height:100vh}.community-shell__body{align-items:flex-start;background:radial-gradient(circle at 10% 15%,#d1fae5ad,#0000 65%),radial-gradient(circle at 80% 10%,#e0f7fa8c,#0000 60%),linear-gradient(180deg,#fff9,#f6fffb 35%,#fff);display:grid;flex:1 1;grid-template-columns:256px minmax(0,1fr) 320px;min-height:calc(100vh - var(--community-topbar-height));overflow:hidden;padding-top:var(--community-topbar-height)}.community-shell__main{display:flex;flex-direction:column;gap:24px;height:calc(100vh - var(--community-topbar-height));min-height:100%;overflow-y:auto;padding:40px 44px 120px;position:relative;scroll-padding-top:calc(var(--community-topbar-height) + 16px)}@media (max-width:1320px){.community-shell__body{grid-template-columns:220px minmax(0,1fr)}.community-shell__right{display:none}}@media (max-width:960px){.community-shell__body{grid-template-columns:1fr}.community-shell__left-nav{display:none}}.community-comments{border-top:1px solid #ebebeb;margin-top:16px;padding-top:16px}.community-comments__composer{display:flex;flex-direction:column;gap:8px}.community-comments__composer textarea{border:1px solid #d6d6d6;border-radius:8px;font-size:14px;min-height:68px;padding:8px;resize:vertical;transition:border-color .2s ease;width:100%}.community-comments__composer textarea:focus{border-color:#00897b;box-shadow:0 0 0 2px #00897b26;outline:none}.community-comments__composer-error{color:#d64545;font-size:13px}.community-comments__actions{display:flex;justify-content:flex-end}.community-comments__actions button{background-color:#00897b;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:8px 16px;transition:background-color .2s ease}.community-comments__actions button:disabled{background-color:#b0b0b0;cursor:not-allowed}.community-comments__actions button:not(:disabled):hover{background-color:#00695c}.community-comments__status{align-items:center;color:#555;display:flex;font-size:13px;gap:8px;margin-top:12px}.community-comments__status--error{color:#c62828}.community-comments__status--empty{color:#8a8a8a}.community-comments__list{display:flex;flex-direction:column;gap:12px;list-style:none;margin:16px 0 0;padding:0}.community-comments__list--nested{gap:10px;margin-top:10px;padding-left:44px}.community-comments__item{display:flex;gap:12px}.community-comments__item--nested{margin-left:0}.community-comments__avatar{align-items:center;background:#f0f0f0;border-radius:50%;color:#00796b;display:flex;font-weight:600;height:36px;justify-content:center;overflow:hidden;width:36px}.community-comments__avatar img{height:100%;object-fit:cover;width:100%}.community-comments__body{background:#fafafa;border-radius:10px;flex:1 1;padding:10px 12px}.community-comments__meta{align-items:center;color:#757575;display:flex;font-size:12px;gap:8px;margin-bottom:6px}.community-comments__counter{background:#e0f2f1;border-radius:999px;color:#00695c;font-size:11px;padding:2px 8px}.community-comments__author{color:#004d40;font-weight:600}.community-comments__content{color:#333;font-size:14px;white-space:pre-wrap}.community-comments__delete{background:none;border:none;color:#d64545;cursor:pointer;font-size:12px;margin-left:auto}.community-comments__delete:hover{text-decoration:underline}.community-comments__toolbar{align-items:center;display:flex;gap:12px;margin-top:8px}.community-comments__action{background:none;border:1px solid #cfd8dc;border-radius:999px;color:#00695c;cursor:pointer;font-size:12px;padding:4px 12px;transition:all .2s ease}.community-comments__action--like{align-items:center;display:inline-flex;gap:4px}.community-comments__action--active{background:#00695c;border-color:#00695c;color:#fff}.community-comments__action:disabled{cursor:not-allowed;opacity:.6}.community-comments__action:not(:disabled):hover{background:#00695c1a}.community-comments__replying{align-items:center;color:#00695c;display:flex;font-size:12px;gap:8px}.community-comments__replying button{background:none;border:none;color:#d64545;cursor:pointer;font-size:12px}.community-comments__replying button:hover{text-decoration:underline}.community-post-card{background:#fff;border:1px solid #00897b1f;border-radius:16px;box-shadow:0 18px 36px #00897b1f;display:flex;flex-direction:column;gap:16px;padding:24px;position:relative}.community-post-card--interactive:hover{box-shadow:0 22px 44px #00897b2e}.community-post-card:after{border:1px solid #fff6;border-radius:16px;content:"";inset:0;pointer-events:none;position:absolute}.community-post-card__header{align-items:center;display:flex;justify-content:space-between}.community-post-card__author,.community-post-card__header-actions{align-items:center;display:flex;gap:12px}.community-post-card__author--clickable{border-radius:18px;cursor:pointer;padding:4px 6px;transition:background .2s ease}.community-post-card__author--clickable:focus,.community-post-card__author--clickable:hover{background:#0fbf9f1f;outline:none}.community-post-card__avatar{align-items:center;background:linear-gradient(135deg,#0fbf9f,#068a70);border-radius:16px;color:#fff;display:flex;font-size:18px;font-weight:600;height:48px;justify-content:center;overflow:hidden;width:48px}.community-post-card__avatar img{height:100%;object-fit:cover;width:100%}.community-post-card__author-info{display:flex;flex-direction:column}.community-post-card__author-name{color:#004d40;font-weight:600}.community-post-card__timestamp{color:#024e3f99;font-size:12px}.community-post-card__delete{background:#d645451f;border:none;color:#d64545;cursor:pointer}.community-post-card__follow{background:#0fbf9f1f;border:1px solid #00695c47;border-radius:999px;color:#00695c;cursor:pointer;font-size:13px;padding:6px 18px;transition:background .2s ease,border-color .2s ease,color .2s ease}.community-post-card__follow--active{background:linear-gradient(135deg,#00897b,#00695c);border-color:#0000;color:#fff}.community-post-card__follow:disabled{cursor:not-allowed;opacity:.6}.community-post-card__title{color:#023f33;font-size:22px;margin:0 0 8px}.community-post-card__content--interactive{border-radius:12px;cursor:pointer;transition:background .2s ease,transform .2s ease}.community-post-card__content--interactive:focus,.community-post-card__content--interactive:hover{background:#0fbf9f14;outline:none;transform:translateY(-1px)}.community-post-card__body{color:#444;font-size:15px;line-height:1.6}.community-post-card__body p{margin:0 0 8px}.community-post-card__body p:last-child{margin-bottom:0}.community-post-card__hashtag{align-items:center;background:#0fbf9f29;border:none;border-radius:8px;color:#00695c;cursor:pointer;display:inline-flex;font-weight:600;margin:0 2px;padding:0 6px;transition:background .2s ease,transform .2s ease}.community-post-card__hashtag--static{cursor:default}.community-post-card__hashtag--static:focus,.community-post-card__hashtag--static:hover{background:#0fbf9f29;transform:none}.community-post-card__hashtag:focus,.community-post-card__hashtag:hover{background:#0fbf9f42;outline:none;transform:translateY(-1px)}.community-post-card__topics{display:flex;flex-wrap:wrap;gap:8px}.community-post-card__topic-chip{background:#0fbf9f24;border-radius:999px;color:#00695c;font-size:12px;font-weight:500;padding:4px 10px}.community-post-card__media{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.community-post-card__media-item{background:#f0fdfac2;border:1px solid #00695c1f;border-radius:12px;overflow:hidden}.community-post-card__media-item img,.community-post-card__media-item video{display:block;max-height:320px;object-fit:cover;width:100%}.community-post-card__prescription{align-items:center;background:#0fbf9f1f;border-radius:14px;display:flex;font-size:14px;gap:8px;padding:12px}.community-post-card__prescription button{background:none;border:none;color:#00695c;cursor:pointer;font-weight:600}.community-post-card__repost{background:#ecfdf5db;border:1px solid #00695c2e;border-radius:14px}.community-post-card__repost-button{align-items:flex-start;background:none;border:none;cursor:pointer;display:flex;gap:12px;padding:14px 16px;text-align:left;transition:background .2s ease,transform .2s ease;width:100%}.community-post-card__repost-button:focus,.community-post-card__repost-button:hover{background:#0fbf9f1f;outline:none;transform:translateY(-1px)}.community-post-card__repost-author{align-items:center;display:flex;flex-direction:column;gap:4px;min-width:72px}.community-post-card__repost-author img,.community-post-card__repost-author span{align-items:center;background:linear-gradient(135deg,#0fbf9f,#05856b);border-radius:14px;color:#fff;display:inline-flex;font-weight:600;height:48px;justify-content:center;width:48px}.community-post-card__repost-author span{text-transform:uppercase}.community-post-card__repost-author>span:last-child{background:none;color:#00695c;font-size:12px;font-weight:500;height:auto;width:auto}.community-post-card__repost-body{color:#03594b;display:flex;flex:1 1;flex-direction:column;gap:6px}.community-post-card__repost-body strong{color:#004d40;font-size:15px}.community-post-card__repost-body p{color:#024e3fc7;font-size:13px;line-height:1.6;margin:0}.community-post-card__footer{align-items:center;display:flex;justify-content:space-between}.community-post-card__meta{align-items:center;display:flex;gap:12px}.community-post-card__like{background:#0fbf9f1f;border:none;border-radius:999px;color:#00695c;cursor:pointer;font-size:13px;padding:6px 16px;transition:background .2s ease,color .2s ease}.community-post-card__like--active{background:linear-gradient(135deg,#00897b,#00695c);color:#fff}.community-post-card__like:disabled{cursor:not-allowed;opacity:.6}.community-post-card__save{background:#26a69a1f;border:none;border-radius:999px;color:#00695c;cursor:pointer;font-size:13px;padding:6px 16px;transition:background .2s ease,color .2s ease}.community-post-card__save--active{background:linear-gradient(135deg,#26a69a,#00796b);color:#fff}.community-post-card__save:disabled{cursor:not-allowed;opacity:.6}.community-post-card__stats{color:#616161;font-size:13px}.community-post-card__comments-toggle{background:none;border:none;color:#00796b;cursor:pointer;font-weight:600}.community-timeline{display:flex;flex-direction:column;gap:20px}.community-timeline__hero{grid-gap:32px;background:linear-gradient(135deg,#f2fff8,#f0f9ff 45%,#fff);border:1px solid #00897b2e;border-radius:24px;box-shadow:0 18px 48px #00897b1f;display:grid;flex-shrink:0;gap:32px;grid-template-columns:minmax(0,1.4fr) minmax(260px,1fr);overflow:hidden;padding:32px;position:relative}.community-timeline__hero:before{background:radial-gradient(circle at center,#00897b29,#0000 70%);content:"";inset:-40% auto -40% 50%;pointer-events:none;position:absolute;width:520px}.community-timeline__hero-copy{display:flex;flex-direction:column;gap:16px;position:relative;z-index:1}.community-timeline__hero-copy h1{color:#024e3f;font-size:28px;line-height:1.2;margin:0}.community-timeline__hero-copy p{color:#024e3fd1;font-size:16px;line-height:1.7;margin:0}.community-timeline__hero-actions{align-items:center;display:flex;gap:16px}.community-timeline__hero-actions button{background:linear-gradient(135deg,#0fbf9f,#068a70);border:none;border-radius:999px;box-shadow:0 16px 32px #068a7042;color:#fff;cursor:pointer;font-weight:600;padding:12px 26px}.community-timeline__hero-actions span{color:#024e3fa3;font-size:14px}.community-timeline__hero-illustration{background:linear-gradient(210deg,#0fbf9f1f,#068a7014 35%,#0000),radial-gradient(circle at 20% 20%,#fffc,#0000 60%),radial-gradient(circle at 70% 80%,#00bcd473,#0000 65%);border:1px solid #00897b1f;border-radius:20px;box-shadow:inset 0 0 0 1px #fff3;min-height:220px;position:relative}.community-timeline__tabs{align-self:flex-start;background:#ffffffeb;border:1px solid #00695c2e;border-radius:999px;box-shadow:0 12px 28px #00695c1f;display:inline-flex;gap:10px;padding:6px}.community-timeline__tab{background:#0000;border:none;border-radius:999px;color:#004d40ad;cursor:pointer;font-weight:500;padding:10px 18px;transition:background .3s ease,color .3s ease,transform .2s ease}.community-timeline__tab--active{background:linear-gradient(135deg,#00897b,#00695c);box-shadow:0 10px 18px #00695c47;color:#fff;transform:translateY(-1px)}.community-timeline__filters{display:flex;flex-wrap:wrap;gap:10px}.community-timeline__topic{background:#0096881a;border:none;border-radius:999px;color:#004d40e0;cursor:pointer;font-size:13px;padding:6px 14px;transition:background .2s ease,color .2s ease,transform .2s ease}.community-timeline__topic--active{background:linear-gradient(135deg,#00897b,#00695c);box-shadow:0 8px 18px #00695c3d;color:#fff;transform:translateY(-1px)}.community-timeline__error,.community-timeline__placeholder{background:#ffffffeb;border:1px dashed #00695c40;border-radius:18px;box-shadow:inset 0 0 0 1px #fff9;color:#004d40c7;font-size:15px;padding:24px;text-align:center}.community-timeline__error{border-color:#d6454559;color:#c62828}@media (max-width:1080px){.community-timeline__hero{grid-template-columns:1fr;text-align:center}.community-timeline__hero-actions{flex-wrap:wrap;justify-content:center}.community-timeline__hero-illustration{min-height:180px}}@media (max-width:768px){.community-timeline__tabs{flex-wrap:wrap;justify-content:center;width:100%}.community-timeline__hero{padding:24px}}.community-timeline__load-more{display:flex;justify-content:center}.community-timeline__load-more button{background:linear-gradient(135deg,#00897b,#00695c);border:none;border-radius:999px;color:#fff;cursor:pointer;font-weight:600;padding:12px 28px}.community-timeline__load-more button:disabled{background:#9e9e9e;cursor:not-allowed}.community-composer{background:linear-gradient(135deg,#00897b14,#00695c08);border:1px solid #00897b2e;border-radius:18px;box-shadow:0 16px 32px #0000000a;isolation:isolate;margin:12px 0 24px;overflow:visible;padding:24px;position:relative}.community-composer:after,.community-composer:before{animation:community-composer-orbit 18s ease-in-out infinite;border-radius:50%;content:"";filter:blur(48px);height:280px;opacity:.4;pointer-events:none;position:absolute;width:280px}.community-composer:before{animation-delay:-4s;background:#00bcd452;right:-110px;top:-120px}.community-composer:after{background:#00968847;bottom:-140px;left:-120px}.community-composer h2{color:#004d40;margin-bottom:18px;margin-top:0}.community-composer__form{background:#ffffffe6;border-radius:16px;display:flex;flex-direction:column;gap:16px;padding:18px;position:relative;z-index:1}.community-composer__draft-banner{align-items:center;background:#00897b1f;border:1px dashed #00897b59;border-radius:12px;color:#004d40;display:flex;font-size:13px;justify-content:space-between;padding:10px 14px}.community-composer__draft-banner button{background:none;border:none;color:#00695c;cursor:pointer;font-weight:600}.community-composer__form input[type=text],.community-composer__form select,.community-composer__form textarea{background:#fffffff5;border:1px solid #00897b47;border-radius:12px;box-shadow:0 2px 14px #00695c14;font-size:15px;padding:12px 14px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.community-composer__form input[type=text]:focus,.community-composer__form select:focus,.community-composer__form textarea:focus{border-color:#00897b;box-shadow:0 0 0 2px #00897b26;outline:none}.community-composer__form textarea{line-height:1.6;min-height:120px;resize:vertical}.community-composer__topics{display:flex;flex-direction:column;gap:8px}.community-composer__auto-topic{background:#00897b1f;border-left:3px solid #00695c;border-radius:10px;color:#00695c;font-size:13px;padding:8px 12px}.community-composer__topic-list{display:flex;flex-wrap:wrap;gap:10px}.community-composer__topic{background:#00695c1a;border:none;border-radius:999px;color:#00695c;cursor:pointer;font-size:13px;padding:6px 14px;transition:transform .2s ease,background .2s ease}.community-composer__topic--selected{background:#00695c;color:#fff}.community-composer__topic:hover{transform:translateY(-2px)}.community-composer__media{display:flex;flex-direction:column;gap:12px}.community-composer__media-upload{align-items:center;color:#00695c;cursor:pointer;display:inline-flex;font-weight:600;gap:8px}.community-composer__media-upload input{display:none}.community-composer__media-preview{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.community-composer__media-preview figure{background:#fafafa;border:1px solid #00000014;border-radius:14px;margin:0;overflow:hidden}.community-composer__media-preview img,.community-composer__media-preview video{display:block;max-height:240px;object-fit:cover;width:100%}.community-composer__media-preview figcaption{display:flex;justify-content:flex-end;padding:6px 8px}.community-composer__media-preview button{background:none;border:none;color:#d64545;cursor:pointer}.community-composer__repost{background:#00695c0f;border:1px solid #00897b2e;border-radius:14px;display:flex;flex-direction:column;gap:10px;padding:14px 16px}.community-composer__repost-header{align-items:center;color:#004d40;display:flex;font-weight:600;justify-content:space-between}.community-composer__repost-status{color:#00695c;font-size:13px}.community-composer__repost-clear{background:#c628281f!important;border:none;border-radius:999px;color:#b71c1c!important;cursor:pointer;padding:8px 14px}.community-composer__repost-clear:disabled{background:#c6282814!important;color:#b71c1c99!important;cursor:not-allowed}.community-composer__repost-preview{background:#00000005;border:1px solid #00000014;border-radius:12px;display:flex;gap:12px;padding:12px}.community-composer__repost-empty{background:#fffc;border-radius:10px;color:#004d40bf;font-size:13px;line-height:1.5;padding:12px 14px}.community-composer__repost-avatar{align-items:center;background:#00897b2e;border-radius:50%;color:#004d40;display:flex;font-size:18px;font-weight:700;height:48px;justify-content:center;overflow:hidden;width:48px}.community-composer__repost-avatar img{height:100%;object-fit:cover;width:100%}.community-composer__repost-meta{display:flex;flex:1 1;flex-direction:column;gap:4px}.community-composer__repost-meta strong{color:#263238;font-size:15px}.community-composer__repost-meta span{color:#546e7a;font-size:13px}.community-composer__repost-meta p{color:#455a64;font-size:13px;line-height:1.5;margin:0}.community-composer__prescription{display:flex;flex-direction:column;gap:6px}.community-composer__hint{color:#c62828;font-size:12px}.community-composer__error{background:#c6282814;border-radius:10px;color:#c62828;font-size:14px;padding:10px 12px}.community-composer__actions{border-top:1px solid #00695c1f;display:flex;justify-content:flex-end;padding-top:10px}.community-composer__actions button{background:linear-gradient(135deg,#00897b,#00695c);border:none;border-radius:999px;color:#fff;cursor:pointer;font-weight:600;padding:10px 22px;transition:transform .2s ease,box-shadow .2s ease}.community-composer__actions button:disabled{background:#9e9e9e;cursor:not-allowed}.community-composer__actions button:not(:disabled):hover{box-shadow:0 12px 24px #00695c38;transform:translateY(-1px)}@keyframes community-composer-orbit{0%{opacity:.32;transform:translateZ(0) scale(1)}50%{opacity:.48;transform:translate3d(30px,40px,0) scale(1.1)}to{opacity:.32;transform:translateZ(0) scale(1)}}.community-compose{display:flex;flex-direction:column;gap:28px}.community-compose__hero{grid-gap:24px;background:radial-gradient(circle at top left,#00bcd43d,#0000 55%),radial-gradient(circle at bottom right,#0096883d,#0000 50%),#fffffff2;border:1px solid #00695c2e;border-radius:28px;box-shadow:0 24px 48px #00695c2e;display:grid;flex-shrink:0;gap:24px;grid-template-columns:minmax(0,1fr) 260px;overflow:hidden;padding:32px;position:relative}.community-compose__hero:after{background:linear-gradient(135deg,#ffffff1f,#fff0);content:"";inset:0;pointer-events:none;position:absolute}.community-compose__hero-text{color:#004d40;display:flex;flex-direction:column;gap:14px;position:relative}.community-compose__hero-badge{align-items:center;background:#00897b2e;border-radius:999px;color:#00695c;display:inline-flex;font-size:13px;font-weight:600;gap:6px;letter-spacing:.02em;padding:6px 12px;width:-webkit-fit-content;width:fit-content}.community-compose__hero-text h1{font-size:32px;letter-spacing:-.02em;margin:0}.community-compose__hero-text p{color:#004d40b8;line-height:1.6;margin:0}.community-compose__hero-text ul{color:#004d40cc;display:flex;flex-direction:column;gap:6px;margin:10px 0 0;padding-left:20px}.community-compose__hero-card{align-self:center;background:#ffffffeb;border:1px solid #00695c29;border-radius:20px;box-shadow:0 18px 32px #00695c29;color:#004d40d9;display:flex;flex-direction:column;gap:8px;max-width:260px;padding:20px 22px;position:relative}.community-compose__hero-card:before{background:radial-gradient(circle,#00bcd442,#0000 60%);content:"";filter:blur(40px);height:220px;inset:-24px 30% auto -24px;position:absolute;z-index:-1}.community-compose__hero-card strong{color:#00695c;font-size:16px}.community-compose__hero-card span{color:#004d40b3;font-size:13px;line-height:1.5}@media (max-width:1100px){.community-compose__hero{grid-template-columns:1fr}.community-compose__hero-card{max-width:none}}.community-topics{display:flex;flex-direction:column;gap:24px;position:relative}.community-topics__header{align-items:flex-start;background:linear-gradient(135deg,#0fbf9f2e,#068a701f);border:1px solid #00695c2e;border-radius:24px;box-shadow:0 18px 42px #00695c24;display:flex;flex-shrink:0;gap:20px;justify-content:space-between;overflow:hidden;padding:28px 32px;position:relative}.community-topics__header h1{color:#004d40;font-size:28px;margin:0}.community-topics__header p{color:#004d40b8;margin:6px 0 0}.community-topics__refresh{align-self:center;background:linear-gradient(135deg,#00897b,#00695c);border:none;border-radius:999px;box-shadow:0 12px 24px #00695c38;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px}.community-topics__filters{display:flex;flex-direction:column;gap:12px}.community-topics__chips{display:flex;flex-wrap:wrap;gap:8px}.community-topics__chip{background:#fffffff5;border:1px solid #0096882e;border-radius:16px;box-shadow:0 6px 12px #00695c14;color:#00695c;cursor:pointer;padding:10px 18px;transition:background .2s ease,color .2s ease,transform .2s ease}.community-topics__chip--active{background:linear-gradient(90deg,#0d8f7b,#0fba8a);border-color:#0000;color:#fff;transform:translateY(-1px)}.community-topics__summary{align-items:center;color:#004d40b8;display:flex;font-size:14px;gap:12px}.community-topics__summary button{background:#0096881f;border:none;border-radius:999px;color:#00695c;cursor:pointer;padding:4px 10px}.community-topics__trending{background:#fffffffa;border:1px solid #00695c24;border-radius:22px;box-shadow:0 18px 36px #00695c1f;padding:24px}.community-topics__trending header{align-items:center;color:#004d40;display:flex;justify-content:space-between}.community-topics__trending ul{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));list-style:none;margin:16px 0 0;padding:0}.community-topics__trending li{background:linear-gradient(135deg,#0fbf9f1f,#068a701a);border-radius:16px;box-shadow:0 10px 20px #00695c14;color:#004d40d6;display:flex;flex-direction:column;gap:8px;padding:14px 16px}.community-topics__trending li button{background:#0000;border:none;color:#00695c;cursor:pointer;font-size:15px;font-weight:600}.community-topics__placeholder{background:#fffffff2;border:1px dashed #00695c33;border-radius:16px;color:#004d40b8;font-size:15px;padding:24px;text-align:center}.community-topics__grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.community-topics__card{background:#fffffff7;border:1px solid #00695c1f;border-radius:20px;box-shadow:0 18px 34px #00695c1f;color:#004d40d1;display:flex;flex-direction:column;gap:14px;overflow:hidden;padding:22px;position:relative}.community-topics__card h2{color:#00695c;margin:0}.community-topics__card-actions{align-items:center;display:flex;gap:8px;justify-content:space-between}.community-topics__card-actions button{background:linear-gradient(90deg,#0d8f7b,#0fba8a);border:none;border-radius:16px;box-shadow:0 12px 22px #0fbf9f42;color:#fff;cursor:pointer;font-weight:600;padding:10px 18px}.community-topics__card-actions span{color:#004d4099;font-size:12px}.community-notifications{display:flex;flex-direction:column;gap:20px}.community-notifications header{background:linear-gradient(135deg,#00bcd429,#068a701f);border:1px solid #00695c29;border-radius:22px;box-shadow:0 18px 38px #00695c1f;padding:26px 32px}.community-notifications header h1{color:#004d40;font-size:28px;margin:0}.community-notifications header p{color:#004d40b8;margin:6px 0 0}.community-notifications__status{grid-gap:16px;align-items:center;background:#fffffffa;border:1px solid #00695c24;border-radius:20px;box-shadow:0 18px 36px #00695c1a;color:#004d40d1;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,-webkit-max-content)) 1fr;grid-template-columns:repeat(auto-fit,minmax(180px,max-content)) 1fr;padding:20px 26px}.community-notifications__status button{background:linear-gradient(135deg,#0fbf9f,#068a70);border:none;border-radius:16px;box-shadow:0 14px 24px #068a7047;color:#fff;cursor:pointer;font-weight:600;justify-self:end;padding:10px 18px}.community-notifications__filters{display:flex;flex-wrap:wrap;gap:8px}.community-notifications__filter{background:#fffffff5;border:1px solid #00695c2e;border-radius:16px;box-shadow:0 8px 16px #00695c14;color:#00695c;cursor:pointer;padding:10px 18px;transition:background .2s ease,color .2s ease,transform .2s ease}.community-notifications__filter--active{background:linear-gradient(135deg,#0fbf9f,#068a70);border-color:#0000;color:#fff;transform:translateY(-1px)}.community-notifications__placeholder{background:#fffffff2;border:1px dashed #00695c33;border-radius:16px;color:#004d40c7;font-size:15px;padding:32px;text-align:center}.community-notifications__list{display:flex;flex-direction:column;gap:16px;list-style:none;margin:0;padding:0}.community-notifications__item{background:#fffffffa;border:1px solid #00695c1f;border-radius:20px;box-shadow:0 18px 34px #00695c1a;color:#004d40db;display:flex;flex-direction:column;gap:14px;padding:20px 22px;position:relative}.community-notifications__item--message{border-left:4px solid #2196f3b3}.community-notifications__item--calendar{border-left:4px solid #ff9800b3}.community-notifications__item--tizhi{border-left:4px solid #4caf50b3}.community-notifications__item-header{align-items:center;color:#004d40b8;display:flex;font-size:14px;gap:12px;justify-content:space-between}.community-notifications__item-type{color:#00695c;font-weight:600}.community-notifications__item p{line-height:1.5;margin:0}.community-notifications__item button{align-self:flex-start;background:#00968829;border:none;border-radius:14px;color:#00695c;cursor:pointer;font-weight:600;padding:8px 16px}.community-profile{display:flex;flex-direction:column;gap:24px}.community-profile header{align-items:center;background:linear-gradient(135deg,#00bcd42e,#0096881f);border:1px solid #00695c29;border-radius:24px;box-shadow:0 18px 40px #00695c24;display:flex;gap:24px;padding:28px 32px}.community-profile__avatar{align-items:center;background:linear-gradient(135deg,#00968847,#00695c52);border-radius:50%;color:#004d40;display:flex;font-size:32px;font-weight:600;height:80px;justify-content:center;overflow:hidden;width:80px}.community-profile__avatar img{height:100%;object-fit:cover;width:100%}.community-profile__intro h1{color:#004d40;font-size:28px;margin:0 0 8px}.community-profile__intro p{color:#004d40b8;margin:0}.community-profile__actions{display:flex;gap:12px;margin-top:16px}.community-profile__actions button{background:linear-gradient(135deg,#0fbf9f,#068a70);border:none;border-radius:18px;box-shadow:0 14px 26px #068a7042;color:#fff;cursor:pointer;font-weight:600;padding:10px 22px;transition:transform .2s ease}.community-profile__actions button:disabled{box-shadow:none;cursor:not-allowed;opacity:.7}.community-profile__actions button:not(:disabled):hover{transform:translateY(-1px)}.community-profile__dm-btn{background:#fffffff5;box-shadow:inset 0 0 0 1px #00695c42;color:#00695c}.community-profile__dm-btn:not(:disabled):hover{background:#e0f2f1e6;box-shadow:inset 0 0 0 1px #00695c66}.community-profile__stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.community-profile__stats div{background:#fffffffa;border:1px solid #00695c1f;border-radius:20px;box-shadow:0 16px 32px #00695c1a;color:#004d40c7;display:flex;flex-direction:column;gap:6px;padding:18px}.community-profile__stats span{font-size:14px}.community-profile__stats strong{color:#00695c;font-size:22px}.community-profile__topics{background:#fffffffa;border:1px solid #00695c24;border-radius:22px;box-shadow:0 18px 36px #00695c1a;padding:22px 24px}.community-profile__topics h2{color:#00695c;margin:0 0 12px}.community-profile__topics ul{display:flex;flex-wrap:wrap;gap:12px;list-style:none;margin:0;padding:0}.community-profile__topics li{background:#0096881f;border-radius:14px;box-shadow:0 10px 18px #00695c14;color:#004d40c7;display:flex;flex-direction:column;gap:4px;padding:12px 16px}.community-profile__topics span{color:#00695c;font-weight:600}.community-profile__feed{display:flex;flex-direction:column;gap:18px}.community-profile__feed-header{align-items:center;display:flex;justify-content:space-between}.community-profile__feed-header h2{color:#004d40;margin:0}.community-profile__feed-header button{background:#00968829;border:none;border-radius:16px;color:#00695c;cursor:pointer;font-weight:600;padding:10px 20px}.community-profile__placeholder{background:#fffffff2;border:1px dashed #00695c33;border-radius:16px;color:#004d40c7;padding:28px;text-align:center}.community-profile__error{background:#f4433614;border:1px solid #f4433666;border-radius:16px;color:#b71c1cdb;padding:18px}.community-profile__posts{display:flex;flex-direction:column;gap:16px;list-style:none;margin:0;padding:0}.community-profile__posts article{background:#fffffffa;border:1px solid #00695c1f;border-radius:20px;box-shadow:0 18px 34px #00695c1a;color:#004d40d6;display:flex;flex-direction:column;gap:12px;padding:20px 22px}.community-profile__posts article header{align-items:center;display:flex;gap:16px;justify-content:space-between}.community-profile__posts article h3{color:#00695c;margin:0}.community-profile__posts article time{color:#004d4099;font-size:13px}.community-profile__posts article p{line-height:1.55;margin:0}.community-profile__post-topics{display:flex;flex-wrap:wrap;gap:8px}.community-profile__post-topics span{background:#0096881f;border-radius:14px;color:#00695c;font-size:12px;padding:6px 12px}.community-profile__posts article footer{align-items:center;color:#004d40b3;display:flex;font-size:14px;gap:16px}.community-profile__posts article footer button{background:#00968829;border:none;border-radius:16px;color:#00695c;cursor:pointer;font-weight:600;margin-left:auto;padding:8px 16px;transition:background .2s ease}.community-settings{display:flex;flex-direction:column;gap:24px}.community-settings header{background:linear-gradient(135deg,#4caf502e,#0096881f);border:1px solid #00695c2e;border-radius:24px;box-shadow:0 18px 38px #00695c1f;padding:26px 32px}.community-settings header h1{color:#004d40;font-size:28px;margin:0}.community-settings header p{color:#004d40b8;margin:6px 0 0}.community-settings__panel{background:#fffffffa;border:1px solid #00695c24;border-radius:22px;box-shadow:0 18px 34px #00695c1a;display:flex;flex-direction:column;gap:16px;padding:24px 28px}.community-settings__panel h2{color:#00695c;margin:0}.community-settings__grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.community-settings__grid label{align-items:center;color:#004d40d6}.community-settings__digest,.community-settings__grid label{background:#0096881a;border-radius:16px;display:flex;gap:10px;padding:14px 16px}.community-settings__digest{color:#004d40c7;flex-direction:column}.community-settings__digest span{font-weight:600}.community-settings__digest label{margin-right:12px}.community-settings__switch{align-items:center;background:#0096881a;border-radius:16px;color:#004d40d6;display:flex;gap:10px;padding:14px 16px}.community-settings__radios{display:flex;flex-direction:column;gap:10px}.community-settings__radios label{align-items:center;background:#0096881a;border-radius:16px;color:#004d40d6;display:flex;gap:10px;padding:12px 14px}.community-settings__actions{align-items:center;display:flex;gap:16px;justify-content:flex-end}.community-settings__actions button{border:none;border-radius:18px;cursor:pointer;font-weight:600;padding:10px 22px}.community-settings__actions button:first-of-type{background:#0096881f;color:#00695c}.community-settings__actions button:last-of-type{background:linear-gradient(90deg,#0d8f7b,#0fba8a);box-shadow:0 14px 26px #0fbf9f47;color:#fff}.community-settings__actions span{color:#004d40a6;font-size:13px}.community-detail{grid-gap:24px;display:grid;gap:24px;grid-template-columns:minmax(0,1fr) 320px}.community-detail__post{display:flex;flex-direction:column;gap:16px}.community-detail__back{align-self:flex-start;background:#00968829;border:none;border-radius:999px;color:#00695c;cursor:pointer;font-weight:600;padding:6px 14px}.community-detail__actions{display:flex;justify-content:flex-end;width:100%}.community-detail__action-button{background:linear-gradient(135deg,#00897b,#00695c);border:none;border-radius:999px;box-shadow:0 10px 18px #00695c2e;color:#fff;cursor:pointer;font-weight:600;padding:8px 20px;transition:transform .2s ease,box-shadow .2s ease}.community-detail__action-button:hover{box-shadow:0 16px 28px #00695c38;transform:translateY(-1px)}.community-detail__aside{display:flex;flex-direction:column;gap:16px}.community-detail__panel{background:#fffffff5;border:1px solid #00695c1f;border-radius:18px;display:flex;flex-direction:column;gap:14px;padding:18px 20px}.community-detail__panel header{align-items:center;color:#004d40;display:flex;justify-content:space-between}.community-detail__placeholder{background:#fffffff2;border:1px dashed #00695c33;border-radius:16px;color:#004d40c7;padding:28px;text-align:center}.community-detail__error{background:#f443361f;border:1px solid #f4433652;border-radius:16px;color:#b71c1cdb;padding:18px}.community-detail__recommendations{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0}.community-detail__recommendations article{background:#00968814;border-radius:12px;display:flex;flex-direction:column;gap:6px;padding:12px}.community-detail__recommendations button{background:#0000;border:none;color:#00695c;cursor:pointer;font-weight:600;text-align:left}.community-detail__recommendations span{color:#004d409e;font-size:13px}.community-detail__recommendations time{color:#004d407a;font-size:12px}@media (max-width:1024px){.community-detail{grid-template-columns:1fr}}.saved-posts{display:flex;flex-direction:column;gap:24px}.saved-posts__header{align-items:center;background:linear-gradient(135deg,#0fbf9f24,#068a7014);border:1px solid #068a7029;border-radius:20px;box-shadow:0 18px 36px #068a7024;display:flex;justify-content:space-between;padding:22px 28px}.saved-posts__header h1{color:#024e3f;font-size:26px;margin:0}.saved-posts__actions{align-items:center;color:#024e3fa3;display:flex;font-size:14px;gap:16px}.saved-posts__actions button{background:#d645451f;border:none;border-radius:999px;color:#c62828;cursor:pointer;padding:8px 16px;transition:transform .2s ease}.saved-posts__actions button:hover{transform:translateY(-1px)}.saved-posts__placeholder{background:#0fbf9f14;border:1px dashed #068a704d;border-radius:18px;box-shadow:inset 0 0 0 1px #fff6;color:#024e3f9e;padding:36px;text-align:center}.dm-page{grid-gap:24px;display:grid;gap:24px;grid-template-columns:320px 1fr;height:calc(100vh - 140px);padding:12px 0 24px}.dm-page__sidebar{background:#fffffff5;border:1px solid #00695c24;border-radius:22px;box-shadow:0 18px 36px #00695c1f;display:flex;flex-direction:column;overflow:hidden}.dm-page__sidebar-header{align-items:flex-start;background:linear-gradient(135deg,#00bcd424,#0096881a);display:flex;gap:12px;justify-content:space-between;padding:24px}.dm-page__sidebar-header h1{color:#004d40;font-size:24px;margin:0}.dm-page__sidebar-header p{color:#004d40ad;font-size:13px;margin:6px 0 0}.dm-page__sidebar-header button{background:#00968829;border:none;border-radius:18px;color:#00695c;cursor:pointer;font-weight:600;padding:8px 16px}.dm-page__threads{display:flex;flex-direction:column;gap:6px;overflow-y:auto;padding:8px 12px 16px}.dm-page__thread{grid-gap:12px;align-items:center;background:#0000;border:none;border-radius:16px;cursor:pointer;display:grid;gap:12px;grid-template-columns:auto 1fr auto;padding:12px 14px;text-align:left;transition:transform .18s ease,background .18s ease}.dm-page__thread:hover{background:#00968814;transform:translateY(-2px)}.dm-page__thread--active{background:#00968829;box-shadow:inset 0 0 0 1px #00968852}.dm-page__thread-avatar{align-items:center;background:linear-gradient(135deg,#00968847,#00695c4d);border-radius:50%;color:#004d40;display:flex;font-weight:600;height:44px;justify-content:center;overflow:hidden;width:44px}.dm-page__thread-avatar img{height:100%;object-fit:cover;width:100%}.dm-page__thread-content{display:flex;flex-direction:column;gap:4px}.dm-page__thread-header{align-items:center;color:#004d40;display:flex;font-size:14px;justify-content:space-between}.dm-page__thread-header time{color:#004d4099;font-size:12px}.dm-page__thread-content p{color:#004d40ad;font-size:13px;line-height:1.4;margin:0}.dm-page__thread-unread{background:#ff7043;border-radius:999px;color:#fff;font-size:12px;font-weight:600;min-width:20px;padding:2px 6px;text-align:center}.dm-page__error{background:#f443361a;border-radius:12px;color:#b71c1cdb;font-size:13px;margin:0 16px;padding:10px 12px}.dm-page__blank{color:#004d40a6;font-size:14px;padding:28px 18px;text-align:center}.dm-page__blank--error{color:#b71c1cd1}.dm-page__conversation{background:#fffffffa;border:1px solid #00695c24;border-radius:26px;box-shadow:0 22px 48px #00695c24;display:flex;flex-direction:column;overflow:hidden}.dm-page__conversation-header{align-items:center;background:linear-gradient(135deg,#00bcd41f,#00695c1a);border-bottom:1px solid #00695c1a;display:flex;justify-content:space-between;padding:24px 28px}.dm-page__conversation-header strong{color:#004d40;font-size:18px}.dm-page__conversation-header span{color:#004d4099;display:block;font-size:13px}.dm-page__conversation-header button{background:#0096882e;border:none;border-radius:18px;color:#00695c;cursor:pointer;font-weight:600;padding:8px 16px}.dm-page__conversation-body{align-items:stretch;background:linear-gradient(135deg,#e0f2f185,#b2ebf252);display:flex;flex:1 1;padding:28px}.dm-page__messages{display:flex;flex-direction:column;gap:12px;overflow-y:auto;padding-right:12px;width:100%}.dm-page__bubble{align-self:flex-start;background:#ffffffeb;border-radius:18px;box-shadow:0 12px 20px #00695c1f;color:#004d40d1;display:inline-flex;flex-direction:column;gap:6px;max-width:70%;padding:12px 16px}.dm-page__bubble--self{align-self:flex-end;background:linear-gradient(135deg,#0fbf9f,#068a70);box-shadow:0 16px 24px #068a7038;color:#fff}.dm-page__bubble p{line-height:1.5;margin:0}.dm-page__bubble time{font-size:11px;opacity:.7}.dm-page__composer{background:#fffffff5;border-top:1px solid #00695c1f;display:flex;flex-direction:column;gap:12px;padding:20px 24px}.dm-page__composer textarea{border:1px solid #00695c2e;border-radius:18px;color:#004d40;font-size:15px;min-height:80px;padding:12px 16px;resize:none;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.dm-page__composer textarea:focus{border-color:#00897b;box-shadow:0 0 0 2px #00897b2e;outline:none}.dm-page__composer-actions{display:flex;justify-content:flex-end}.dm-page__composer-actions button{background:linear-gradient(135deg,#00897b,#00695c);border:none;border-radius:999px;box-shadow:0 16px 30px #00695c38;color:#fff;cursor:pointer;font-weight:600;padding:10px 26px;transition:transform .2s ease}.dm-page__composer-actions button:disabled{background:#9e9e9e80;box-shadow:none;cursor:not-allowed}.dm-page__composer-actions button:not(:disabled):hover{transform:translateY(-1px)}@media (max-width:1100px){.dm-page{grid-template-columns:1fr;height:auto}.dm-page__sidebar{max-height:320px}}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com
*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;tab-size:4}body{line-height:inherit}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media (min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-y-0{bottom:0;top:0}.left-0{left:0}.right-0{right:0}.my-6{margin-bottom:1.5rem;margin-top:1.5rem}.mb-1{margin-bottom:.25rem}.mb-6{margin-bottom:1.5rem}.ml-2{margin-left:.5rem}.mr-2{margin-right:.5rem}.mt-1{margin-top:.25rem}.mt-6{margin-top:1.5rem}.block{display:block}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-4{height:1rem}.min-h-screen{min-height:100vh}.w-4{width:1rem}.w-full{width:100%}.max-w-md{max-width:28rem}.flex-1{flex:1 1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-3{gap:.75rem}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.75rem*var(--tw-space-y-reverse));margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-lg{border-radius:.5rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-t{border-top-width:1px}.border-emerald-200{--tw-border-opacity:1;border-color:#a7f3d0;border-color:rgb(167 243 208/var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:#e5e7eb;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:#d1d5db;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.border-primary{--tw-border-opacity:1;border-color:#8b5a2b;border-color:rgb(139 90 43/var(--tw-border-opacity,1))}.border-red-200{--tw-border-opacity:1;border-color:#fecaca;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.bg-emerald-50{--tw-bg-opacity:1;background-color:#ecfdf5;background-color:rgb(236 253 245/var(--tw-bg-opacity,1))}.bg-primary{--tw-bg-opacity:1;background-color:#8b5a2b;background-color:rgb(139 90 43/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:#fef2f2;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:#fff;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-cover{background-size:cover}.bg-fixed{background-attachment:fixed}.bg-center{background-position:50%}.bg-no-repeat{background-repeat:no-repeat}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-2\.5{padding-bottom:.625rem;padding-top:.625rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.pl-10{padding-left:2.5rem}.pl-3{padding-left:.75rem}.pr-10{padding-right:2.5rem}.pr-3{padding-right:.75rem}.pr-4{padding-right:1rem}.text-center{text-align:center}.text-\[clamp\(1\.5rem\2c 3vw\2c 2rem\)\]{font-size:clamp(1.5rem,3vw,2rem)}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.text-blue-500{--tw-text-opacity:1;color:#3b82f6;color:rgb(59 130 246/var(--tw-text-opacity,1))}.text-emerald-600{--tw-text-opacity:1;color:#059669;color:rgb(5 150 105/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:#9ca3af;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:#6b7280;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:#374151;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-green-600{--tw-text-opacity:1;color:#16a34a;color:rgb(22 163 74/var(--tw-text-opacity,1))}.text-light\/80{color:#e8d9c3cc}.text-primary{--tw-text-opacity:1;color:#8b5a2b;color:rgb(139 90 43/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity:1;color:#ef4444;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-red-600{--tw-text-opacity:1;color:#dc2626;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-secondary{--tw-text-opacity:1;color:#b8860b;color:rgb(184 134 11/var(--tw-text-opacity,1))}.text-tertiary{--tw-text-opacity:1;color:#5d4037;color:rgb(93 64 55/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:#fff;color:rgb(255 255 255/var(--tw-text-opacity,1))}.shadow-lg{--tw-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8fbfd;color:#0a2642;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}body,html{background-attachment:fixed;overflow-x:hidden;position:relative}#root,body,html{height:100%}:root{--primary-color:#1e88e5;--primary-dark:#0d47a1;--primary-light:#4dabf7;--accent-color:#00c853;--warning-color:#ffc107;--error-color:#f44336;--text-primary:#0a2642;--text-secondary:#64748b;--background-color:#f8fbfd;--card-color:#fff}button{font-family:inherit;font-size:15px}a{color:#1e88e5;color:var(--primary-color);text-decoration:none;transition:color .2s ease}a:hover{color:#0d47a1;color:var(--primary-dark);text-decoration:underline}html{scroll-behavior:smooth}::selection{background-color:#4dabf74d;color:#0a2642}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:#f9fafb;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.hover\:bg-tertiary:hover{--tw-bg-opacity:1;background-color:#5d4037;background-color:rgb(93 64 55/var(--tw-bg-opacity,1))}.hover\:text-primary:hover{--tw-text-opacity:1;color:#8b5a2b;color:rgb(139 90 43/var(--tw-text-opacity,1))}.hover\:text-secondary:hover{--tw-text-opacity:1;color:#b8860b;color:rgb(184 134 11/var(--tw-text-opacity,1))}.hover\:text-tertiary:hover{--tw-text-opacity:1;color:#5d4037;color:rgb(93 64 55/var(--tw-text-opacity,1))}.hover\:shadow-xl:hover{--tw-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-60:disabled{opacity:.6}
/*# sourceMappingURL=main.34615242.css.map*/