@import "https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;600;700;800&display=swap";:root{color:#302b35;font-synthesis:none;text-rendering:optimizelegibility;background:#fff;font-family:Noto Sans KR,sans-serif;font-weight:400}*{box-sizing:border-box}body{min-width:320px;margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}.main-header{background:#fff;border-bottom:1px solid #eee9ef;height:76px}.header-inner{justify-content:space-between;align-items:center;max-width:1200px;height:100%;margin:auto;padding:0 24px;display:flex}.logo{color:#713c65;font-size:25px;font-weight:800}.main-header nav{align-items:center;gap:32px;font-size:14px;display:flex}.main-header nav a:hover{color:#a15c8b}.hero-section{background:linear-gradient(120deg,#f8eff6,#fcf8fb);justify-content:space-between;align-items:center;min-height:510px;padding:80px max(50% - 576px,24px);display:flex}.hero-label,.section-heading>span{color:#a15c8b;letter-spacing:2px;font-size:12px;font-weight:700}.hero-content h1{margin:22px 0;font-size:clamp(34px,5vw,52px);line-height:1.45}.hero-content h1 span{color:#955b83}.hero-content p{color:#77717a;line-height:1.9}.primary-button{color:#fff;background:#865276;border-radius:8px;margin-top:22px;padding:14px 26px;font-weight:600;display:inline-block}.hero-icon{color:#bd91b1;padding:60px}.service-section,.chatbot-section{padding:85px 24px}.section-heading{text-align:center;margin-bottom:40px}.section-heading h2{margin:12px 0;font-size:30px}.section-heading p{color:#88818a}.service-cards{grid-template-columns:repeat(2,1fr);gap:24px;max-width:900px;margin:auto;display:grid}.service-card{border:1px solid #eee8ee;border-radius:14px;padding:32px}.service-card svg{color:#955b83}.service-card p{color:#817a83;line-height:1.7}.chatbot-section{background:#faf7fa}.chatbot-input input{border:0;outline:none;flex:1;min-width:0;padding:10px}.chatbot-input button{color:#fff;cursor:pointer;background:#865276;border:0;border-radius:8px;width:44px;height:44px}.chatbot-box>small{color:#999;margin-top:14px;display:block}.main-footer{color:#ddd3dc;background:#352a36;padding:40px 24px}.main-footer>div{max-width:1152px;margin:auto}.main-footer p,.main-footer small{color:#b9aeb9}.admin-layout{background:#f7f7fa;min-height:100vh;display:flex}.admin-sidebar{color:#fff;background:#382b3b;flex-shrink:0;width:250px;padding:30px 20px}.admin-logo{color:#fff;margin-bottom:40px;font-size:22px;font-weight:800;display:block}.admin-logo span{color:#d1afc9;letter-spacing:2px;margin-top:4px;font-size:11px;display:block}.admin-sidebar nav{gap:8px;display:grid}.admin-sidebar nav a{color:#e3d9e3;border-radius:7px;padding:13px;font-size:14px}.admin-sidebar nav a.active,.admin-sidebar nav a:hover{color:#fff;background:#72516f}.admin-content{flex:1;min-width:0}.admin-topbar{background:#fff;border-bottom:1px solid #eee;justify-content:space-between;align-items:center;height:70px;padding:0 30px;display:flex}.admin-main{padding:35px}.dashboard-cards article{background:#fff;border:1px solid #eee;border-radius:12px;padding:24px}.dashboard-cards span,.dashboard-cards strong{display:block}.dashboard-cards span{color:#888}.dashboard-cards strong{margin-top:15px;font-size:28px}.doctor-header{border-bottom:1px solid #eee;justify-content:space-between;align-items:center;height:70px;padding:0 30px;display:flex}.doctor-main{max-width:1100px;min-height:calc(100vh - 130px);margin:auto;padding:40px 24px}.doctor-footer{text-align:center;color:#888;background:#faf7fa;padding:20px;font-size:13px}.simple-page{background:#fff;border-radius:12px;padding:30px}@media (width<=768px){.main-header nav{gap:12px;font-size:12px}.hero-section{min-height:420px}.hero-icon{display:none}.service-cards{grid-template-columns:1fr}.admin-sidebar{width:180px;padding:20px 12px}.dashboard-cards{grid-template-columns:repeat(2,1fr)}.admin-main{padding:20px}}.chatbot-container{background:#fff;border:1px solid #eee6ed;border-radius:16px;flex-direction:column;max-width:760px;height:570px;margin:auto;display:flex;overflow:hidden;box-shadow:0 8px 30px #4628460d}.chatbot-header{border-bottom:1px solid #eee8ee;justify-content:space-between;align-items:center;height:76px;padding:0 24px;display:flex}.chatbot-header-info{align-items:center;gap:13px;display:flex}.chatbot-profile-icon{color:#fff;background:#865276;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.chatbot-header-info strong,.chatbot-header-info span{display:block}.chatbot-header-info span{color:#999;margin-top:4px;font-size:12px}.chatbot-reset{color:#888;cursor:pointer;background:0 0;border:0;border-radius:8px;width:38px;height:38px}.chatbot-reset:hover{color:#865276;background:#f7f1f6}.chatbot-messages{flex-direction:column;flex:1;gap:22px;padding:24px;display:flex;overflow-y:auto}.chat-message{align-items:flex-start;gap:10px;max-width:85%;display:flex}.chat-message.user{flex-direction:row-reverse;align-self:flex-end}.chat-message-icon{color:#865276;background:#f4eaf2;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.chat-message.user .chat-message-icon{color:#fff;background:#9a7793}.chat-message-content{min-width:0}.chat-message-name{color:#888;margin-bottom:7px;font-size:12px}.chat-message.user .chat-message-name{text-align:right}.chat-message-bubble{color:#49414a;white-space:pre-wrap;word-break:break-word;background:#f7f3f7;border-radius:4px 14px 14px;padding:13px 16px;font-size:14px;line-height:1.8}.chat-message.user .chat-message-bubble{color:#fff;background:#865276;border-radius:14px 4px 14px 14px}.chat-message-bubble.typing{color:#999}.chatbot-suggestions{padding:0 24px 18px}.chatbot-suggestions>span{color:#888;margin-bottom:12px;font-size:12px;display:block}.suggestion-list{flex-wrap:wrap;gap:8px;display:flex}.suggestion-list button{color:#79516f;cursor:pointer;background:#fff;border:1px solid #eadfe9;border-radius:20px;padding:9px 13px;font-size:12px}.suggestion-list button:hover{background:#faf5f9;border-color:#a77b9d}.chatbot-input-area{border-top:1px solid #eee8ee;padding:18px 24px}.chatbot-input{border:1px solid #e6dce5;border-radius:10px;gap:10px;padding:7px;display:flex}.chatbot-input input{background:0 0;border:0;outline:none;flex:1;min-width:0;padding:10px}.chatbot-input button{color:#fff;cursor:pointer;background:#865276;border:0;border-radius:8px;flex-shrink:0;width:44px;height:44px}.chatbot-input button:disabled{cursor:not-allowed;background:#cbbbc9}.chatbot-input-area>p{color:#aaa;text-align:center;margin:10px 0 0;font-size:11px}@media (width<=768px){.chatbot-container{height:620px}.chatbot-messages{padding:18px 14px}.chat-message{max-width:95%}.chatbot-suggestions{padding:0 14px 15px}.chatbot-input-area{padding:14px}.suggestion-list button{font-size:11px}}.admin-login-page{background:#f7f5f8;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.admin-login-card{background:#fff;border:1px solid #eee8ef;border-radius:16px;width:100%;max-width:420px;padding:40px;box-shadow:0 8px 30px #2814320f}.admin-login-icon{color:#8b5c91;background:#f4eefa;border-radius:18px;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 20px;display:flex}.admin-login-card h1{text-align:center;color:#352b39;margin:0;font-size:26px}.admin-login-subtitle{text-align:center;color:#888;margin:8px 0 32px}.admin-login-field{margin-bottom:20px}.admin-login-field label{color:#514757;margin-bottom:8px;font-size:14px;font-weight:600;display:block}.admin-login-input{color:#999;border:1px solid #ddd5e1;border-radius:8px;align-items:center;gap:10px;padding:0 14px;display:flex}.admin-login-input:focus-within{border-color:#9b6ca2}.admin-login-input input{background:0 0;border:0;outline:none;width:100%;height:48px;font-size:14px}.admin-login-message{color:#c44c4c;align-items:flex-start;gap:8px;margin-bottom:16px;font-size:13px;display:flex}.admin-login-button{color:#fff;cursor:pointer;background:#8b5c91;border:0;border-radius:8px;width:100%;height:48px;font-size:15px;font-weight:600}.admin-login-button:hover{background:#75477c}.admin-login-home{text-align:center;color:#888;margin-top:24px;font-size:13px;text-decoration:none;display:block}.admin-login-home:hover{color:#8b5c91}.auth-loading{color:#75677a;justify-content:center;align-items:center;min-height:100vh;font-size:14px;display:flex}.dashboard-page{width:100%}.dashboard-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.dashboard-heading h1{margin:0;font-size:25px}.dashboard-heading p{color:#888;margin:9px 0 0;font-size:14px}.dashboard-refresh{color:#765477;cursor:pointer;background:#fff;border:1px solid #e5dce6;border-radius:8px;align-items:center;gap:8px;padding:10px 15px;font-size:13px;display:flex}.dashboard-refresh:hover{background:#faf6fa}.dashboard-refresh:disabled{opacity:.5;cursor:not-allowed}.dashboard-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:30px;display:grid}.dashboard-cards .dashboard-card{background:#fff;border:1px solid #eee8ef;border-radius:12px;min-width:0;padding:24px}.dashboard-card-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.dashboard-card-top>span{color:#777;font-size:14px}.dashboard-card-icon{color:#895d89;background:#f6eff7;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.dashboard-card>strong{color:#342c38;align-items:baseline;gap:5px;margin-top:20px;font-size:30px;font-weight:700;display:flex}.dashboard-card>strong small{color:#888;font-size:13px;font-weight:400}.dashboard-section{background:#fff;border:1px solid #eee8ef;border-radius:12px;margin-top:35px;padding:25px}.dashboard-section-heading{margin-bottom:20px}.dashboard-section-heading h2{margin:0;font-size:18px}.dashboard-section-heading p{color:#999;margin:7px 0 0;font-size:13px}.dashboard-table-wrap{width:100%;overflow-x:auto}.dashboard-table{border-collapse:collapse;text-align:left;white-space:nowrap;width:100%}.dashboard-table th{color:#888;background:#faf8fb;padding:14px 12px;font-size:13px;font-weight:500}.dashboard-table td{color:#514957;border-bottom:1px solid #f0edf1;padding:16px 12px;font-size:13px}.dashboard-table tbody tr:last-child td{border-bottom:0}.dashboard-empty{color:#999;text-align:center;padding:45px 15px;font-size:14px}.dashboard-error{color:#b44d4d;background:#fff8f8;border:1px solid #f0dada;border-radius:8px;justify-content:space-between;align-items:center;gap:15px;margin-top:20px;padding:15px;font-size:13px;display:flex}.dashboard-error button{color:#a44b4b;cursor:pointer;background:#fff;border:1px solid #e7caca;border-radius:6px;flex-shrink:0;padding:7px 12px}@media (width<=1100px){.dashboard-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.dashboard-heading{align-items:flex-start}.dashboard-heading h1{font-size:21px}.dashboard-refresh{padding:9px;font-size:12px}.dashboard-cards{grid-template-columns:1fr;gap:12px}.dashboard-cards .dashboard-card{padding:19px}.dashboard-section{padding:18px}}.admin-page{flex-direction:column;gap:24px;display:flex}.admin-page-header{justify-content:space-between;align-items:center;display:flex}.admin-page-header h1{margin:0;font-size:24px;font-weight:700}.admin-page-header p{color:#64748b;margin:8px 0 0;font-size:14px}.admin-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:24px}.admin-user-search{align-items:center;gap:10px;margin-bottom:24px;display:flex}.admin-search-input{color:#64748b;border:1px solid #e2e8f0;border-radius:8px;flex:1;align-items:center;gap:8px;max-width:420px;height:40px;padding:0 12px;display:flex}.admin-search-input input{border:0;outline:none;width:100%;font-size:14px}.admin-user-search select{background:#fff;border:1px solid #e2e8f0;border-radius:8px;height:40px;padding:0 12px;font-size:14px}.admin-btn{cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:6px;height:40px;padding:0 14px;font-size:14px;display:inline-flex}.admin-btn-primary{color:#fff;background:#4f46e5}.admin-btn-secondary{color:#475569;background:#fff;border-color:#e2e8f0}.admin-user-list-info{color:#64748b;align-items:center;gap:8px;margin-bottom:14px;font-size:14px;display:flex}.admin-user-list-info strong{color:#1e293b}.admin-table-wrap{width:100%;overflow-x:auto}.admin-table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:13px}.admin-table th{color:#475569;text-align:left;background:#f8fafc;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;padding:14px 12px;font-weight:600}.admin-table td{color:#334155;border-bottom:1px solid #f1f5f9;padding:14px 12px}.admin-table-empty{text-align:center;height:120px;color:#94a3b8!important}.admin-status{border-radius:20px;padding:4px 9px;font-size:12px;display:inline-block}.admin-status.active{color:#15803d;background:#dcfce7}.admin-status.inactive{color:#b91c1c;background:#fee2e2}.admin-text-btn{color:#4f46e5;cursor:pointer;background:0 0;border:0;padding:5px 8px;font-size:13px}.admin-pagination{justify-content:center;align-items:center;gap:16px;margin-top:24px;display:flex}.admin-pagination button{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:7px 14px}.admin-pagination button:disabled{color:#cbd5e1;cursor:not-allowed}.admin-error-message{color:#b91c1c;background:#fef2f2;border-radius:8px;margin-bottom:16px;padding:12px;font-size:14px}.admin-modal-backdrop{z-index:1000;background:#0f172a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.admin-modal{background:#fff;border-radius:12px;width:100%;max-width:560px;padding:24px;box-shadow:0 20px 50px #00000026}.admin-modal-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.admin-modal-header>div{align-items:center;gap:10px;display:flex}.admin-modal-header h2{margin:0;font-size:18px}.admin-modal-header button{color:#64748b;cursor:pointer;background:0 0;border:0;display:flex}.admin-user-detail{grid-template-columns:1fr 1fr;gap:20px;display:grid}.admin-user-detail>div{flex-direction:column;gap:6px;display:flex}.admin-user-detail span{color:#64748b;font-size:12px}.admin-user-detail strong{color:#1e293b;overflow-wrap:anywhere;font-size:14px;font-weight:500}.admin-modal-footer{justify-content:flex-end;align-items:center;gap:12px;margin-top:28px;display:flex}@media (width<=768px){.admin-card{padding:16px}.admin-user-search{flex-wrap:wrap}.admin-search-input{flex-basis:100%;max-width:none}.admin-user-detail{grid-template-columns:1fr}}.admin-btn-danger{color:#fff;background:#dc2626}.admin-user-role{border-top:1px solid #e5e7eb;margin-top:24px;padding-top:20px}.admin-user-role h3{margin:0 0 8px;font-size:15px;font-weight:600}.admin-user-role p{color:#6b7280;margin:0 0 16px;font-size:13px}.admin-role-list{flex-wrap:wrap;gap:20px;display:flex}.admin-role-list label{cursor:pointer;align-items:center;gap:7px;font-size:14px;display:flex}.admin-role-list input{accent-color:#4f46e5;width:16px;height:16px}.knowledge-page-header{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px;display:flex}.knowledge-page-header h1{color:#302b35;margin:9px 0 7px;font-size:26px}.knowledge-page-header p{color:#88818a;margin:0;font-size:14px}.knowledge-eyebrow{color:#98628b;letter-spacing:1.2px;align-items:center;gap:7px;font-size:11px;font-weight:700;display:flex}.knowledge-primary-btn,.knowledge-secondary-btn,.knowledge-cancel-btn{cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 17px;font-size:13px;font-weight:600;display:inline-flex}.knowledge-primary-btn{color:#fff;background:#865276}.knowledge-primary-btn:hover{background:#704263}.knowledge-primary-btn:disabled{opacity:.6;cursor:not-allowed}.knowledge-guide{background:#fcf9fc;border:1px solid #eadfea;border-radius:12px;align-items:flex-start;gap:14px;margin-bottom:20px;padding:18px 20px;display:flex}.knowledge-guide-icon{color:#865276;background:#f2eaf2;border-radius:10px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.knowledge-guide strong{margin:1px 0 5px;font-size:14px;display:block}.knowledge-guide p{color:#817a83;margin:0;font-size:12px;line-height:1.7}.knowledge-card{background:#fff;border:1px solid #eee8ee;border-radius:12px;padding:22px}.knowledge-filters{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.knowledge-search-box{color:#999;border:1px solid #e8e2e9;border-radius:8px;flex:1;align-items:center;gap:9px;min-width:240px;height:42px;padding:0 12px;display:flex}.knowledge-search-box input{border:0;outline:0;width:100%;min-width:0;font-size:13px}.knowledge-filters select,.knowledge-modal select,.knowledge-modal input:not([type=file]),.knowledge-modal textarea{color:#49434d;min-height:42px;font:inherit;background:#fff;border:1px solid #e8e2e9;border-radius:8px;padding:0 11px;font-size:13px}.knowledge-secondary-btn{color:#fff;background:#865276}.knowledge-text-btn{color:#77717a;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;min-height:40px;padding:0 8px;font-size:13px;display:inline-flex}.knowledge-list-summary{color:#817a83;margin:24px 0 12px;font-size:13px}.knowledge-list-summary strong{color:#865276;margin-left:7px}.knowledge-table-wrap{overflow-x:auto}.knowledge-table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:12px}.knowledge-table th{color:#77717a;text-align:left;background:#faf8fa;border-top:1px solid #eee8ee;border-bottom:1px solid #eee8ee;padding:13px 12px;font-weight:600}.knowledge-table td{color:#625b66;border-bottom:1px solid #f0edf1;padding:14px 12px}.knowledge-title-cell{align-items:center;gap:10px;min-width:230px;display:flex}.knowledge-file-icon{color:#865276;background:#f5eef5;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.knowledge-title-cell strong,.knowledge-title-cell small{text-overflow:ellipsis;max-width:260px;display:block;overflow:hidden}.knowledge-title-cell strong{color:#39333d;font-size:12px}.knowledge-title-cell small{color:#9a939d;margin-top:4px;font-size:11px}.knowledge-file-tag{color:#865276;background:#f5eef5;border-radius:4px;margin-right:5px;padding:4px 6px;font-size:10px;font-weight:700;display:inline-block}.knowledge-status,.knowledge-use{border-radius:20px;padding:5px 8px;font-size:10px;font-weight:600;display:inline-block}.knowledge-status.wait{color:#8b6a29;background:#fbf3df}.knowledge-status.done,.knowledge-use.active{color:#397a5a;background:#eaf6ef}.knowledge-status.fail{color:#a84c4c;background:#fbeeee}.knowledge-use{color:#888;background:#f0eff1}.knowledge-row-actions{gap:5px;display:flex}.knowledge-row-actions button{color:#827987;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.knowledge-row-actions button:hover{color:#865276;background:#f6eff6}.knowledge-empty{text-align:center;color:#999!important;padding:55px 10px!important}.knowledge-error{color:#a84c4c;background:#fff1f1;border-radius:7px;margin:10px 0;padding:12px;font-size:13px}.knowledge-pagination{color:#777;justify-content:center;align-items:center;gap:16px;padding-top:20px;font-size:12px;display:flex}.knowledge-pagination button{color:#625b66;cursor:pointer;background:#fff;border:1px solid #e8e2e9;border-radius:6px;padding:7px 12px}.knowledge-pagination button:disabled{opacity:.4;cursor:default}.knowledge-modal-backdrop{z-index:1000;background:#22192473;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.knowledge-modal{background:#fff;border-radius:14px;width:min(100%,540px);max-height:90vh;padding:25px;overflow-y:auto;box-shadow:0 18px 60px #1e141e33}.knowledge-modal-header{justify-content:space-between;align-items:flex-start;margin-bottom:22px;display:flex}.knowledge-modal-header h2{margin:0 0 6px;font-size:20px}.knowledge-modal-header p{color:#8d858f;margin:0;font-size:12px}.knowledge-modal-header>button{color:#777;cursor:pointer;background:#f7f5f7;border:0;border-radius:7px;width:34px;height:34px}.knowledge-modal form{gap:16px;display:grid}.knowledge-modal form>label{color:#514a55;gap:7px;font-size:12px;font-weight:600;display:grid}.knowledge-modal label em{color:#bd5d78;font-style:normal}.knowledge-modal input:not([type=file]),.knowledge-modal select{width:100%}.knowledge-modal textarea{resize:vertical;width:100%;padding:10px 11px}.knowledge-modal label>small{color:#999;font-size:11px;font-weight:400}.knowledge-file-picker{color:#865276;background:#fcf9fc;border:1px dashed #cdb9cc;border-radius:9px;justify-content:center;align-items:center;gap:10px;min-height:76px;padding:14px;font-size:12px;display:flex;position:relative}.knowledge-file-picker input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.knowledge-modal-actions{justify-content:flex-end;gap:8px;padding-top:8px;display:flex}.knowledge-cancel-btn{color:#625b66;background:#f1eef2}@media (width<=768px){.knowledge-page-header{flex-direction:column;align-items:flex-start}.knowledge-filters>select{flex:1}.knowledge-card{padding:14px}}
