/* =====================================================================
   ONEUP Hospital Chatbot — widget.css  (완전판)
   design.md(v2.0) Trust-Blue 토큰 기반. oneup-chatbot-widget.js 가 생성하는
   실제 클래스 전체를 커버(채팅 + 예약 드로우어 + 캘린더 + 드롭다운 + 영상).
   ===================================================================== */
:root{
  --oneup-primary:#0092E5; --oneup-primary-600:#0B76BD; --oneup-primary-50:#EAF4FD; --oneup-primary-100:#D3E8FB;
  --oneup-navy-900:#1E2440; --oneup-navy-700:#314066; --oneup-navy-600:#36395B;
  --oneup-ink-500:#61749E; --oneup-ink-400:#8A93AB; --oneup-ink-200:#D8DEEC; --oneup-ink-100:#EBEEF6; --oneup-ink-50:#F4F6FB;
  --oneup-success:#16A06A; --oneup-danger:#E5484D;
  --oneup-emergency:#E2603B; --oneup-emergency-600:#CF5A32; --oneup-emergency-50:#FDEEE8;
  --oneup-radius:16px; --oneup-bubble:18px;
  --oneup-shadow-card:0 2px 8px rgba(30,36,64,.06);
  --oneup-shadow-pop:0 8px 24px rgba(30,36,64,.12);
  --oneup-shadow-panel:0 16px 48px rgba(11,74,120,.18);
  --oneup-shadow-fab:0 8px 20px rgba(0,146,229,.35);
  --oneup-font:"Pretendard","Pretendard Variable",-apple-system,"Apple SD Gothic Neo","Malgun Gothic",system-ui,sans-serif;
}
#oneup-root,#oneup-root *{box-sizing:border-box;}
#oneup-root{font-family:var(--oneup-font);letter-spacing:-.05em;color:var(--oneup-navy-700);}
#oneup-root button{font-family:inherit;letter-spacing:inherit;}
.oneup-hidden{display:none !important;}

/* ─────────────── FAB ─────────────── */
.oneup-fab{position:fixed;right:24px;bottom:24px;z-index:2147483000;border:0;cursor:pointer;
  background:var(--oneup-primary);color:#fff;box-shadow:var(--oneup-shadow-fab);display:flex;align-items:center;gap:8px;
  transition:transform .12s ease,background .12s ease;}
.oneup-fab:hover{transform:translateY(-1px);}
.oneup-fab:not(.oneup-fab--pill){width:56px;height:56px;border-radius:9999px;justify-content:center;}
.oneup-fab--pill{height:52px;padding:0 20px;border-radius:9999px;}
.oneup-fab__label{font-weight:700;font-size:14px;}
.oneup-fab-bubble{position:fixed;right:24px;bottom:92px;z-index:2147483000;max-width:250px;
  background:#fff;border-radius:14px;padding:14px 16px 14px;box-shadow:var(--oneup-shadow-pop);}
.oneup-fab-bubble__title{font-weight:700;color:var(--oneup-navy-900);font-size:14px;}
.oneup-fab-bubble__body{color:var(--oneup-ink-500);font-size:12px;margin-top:4px;line-height:1.55;}
.oneup-fab-bubble__close{position:absolute;top:8px;right:10px;border:0;background:none;color:var(--oneup-ink-400);cursor:pointer;font-size:13px;}
.oneup-fab-bubble__tail{position:absolute;right:26px;bottom:-7px;width:14px;height:14px;background:#fff;transform:rotate(45deg);box-shadow:3px 3px 6px rgba(30,36,64,.06);}

/* ─────────────── 스테이지/패널 ─────────────── */
.oneup-stage{position:fixed;right:24px;bottom:92px;z-index:2147483000;display:flex;gap:16px;align-items:flex-end;}
.oneup-panel{width:min(380px,calc(100vw - 32px));height:min(640px,calc(100vh - 120px));
  background:#fff;border-radius:20px;box-shadow:var(--oneup-shadow-panel);display:flex;flex-direction:column;overflow:hidden;}

/* ─────────────── 헤더 ─────────────── */
.oneup-header{display:flex;align-items:center;gap:10px;padding:13px 12px;
  background:var(--oneup-header-bg, linear-gradient(135deg,var(--oneup-navy-900),var(--oneup-navy-700)));color:#fff;}
.oneup-header__avatar{position:relative;width:36px;height:36px;border-radius:9999px;background:rgba(255,255,255,.16);display:flex;align-items:center;justify-content:center;flex:none;}
.oneup-header__dot{position:absolute;right:0;bottom:0;width:9px;height:9px;border-radius:9999px;background:var(--oneup-success);border:2px solid var(--oneup-navy-700);}
.oneup-header__meta{flex:1;min-width:0;}
.oneup-header__title{font-weight:700;font-size:15px;line-height:1.2;}
.oneup-header__sub{font-size:11px;opacity:.82;margin-top:1px;}
.oneup-header__btn{width:32px;height:32px;border:0;background:rgba(255,255,255,.10);border-radius:9px;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex:none;transition:background .12s;}
.oneup-header__btn:hover{background:rgba(255,255,255,.20);}
.oneup-header__btn.is-on{background:var(--oneup-primary);}

/* ─────────────── 메시지 ─────────────── */
.oneup-messages{flex:1;overflow-y:auto;padding:16px;background:var(--oneup-ink-50);display:flex;flex-direction:column;gap:12px;}

.oneup-msg-bot{display:flex;gap:8px;max-width:100%;}
.oneup-avatar-sm{width:28px;height:28px;border-radius:9999px;background:var(--oneup-avatar-bg, var(--oneup-navy-700));flex:none;display:flex;align-items:center;justify-content:center;}
.oneup-bot-col{min-width:0;max-width:84%;display:flex;flex-direction:column;align-items:flex-start;}
.oneup-bubble-bot{background:#fff;color:var(--oneup-navy-700);border:1px solid var(--oneup-ink-100);
  border-radius:var(--oneup-bubble);border-top-left-radius:4px;padding:11px 13px;font-size:14px;line-height:1.65;white-space:pre-wrap;word-break:keep-all;box-shadow:var(--oneup-shadow-card);}

.oneup-msg-user{display:flex;justify-content:flex-end;}
.oneup-user-col{max-width:84%;display:flex;flex-direction:column;align-items:flex-end;}
.oneup-bubble-user{background:var(--oneup-primary);color:#fff;border-radius:var(--oneup-bubble);border-bottom-right-radius:4px;padding:11px 13px;font-size:14px;line-height:1.6;white-space:pre-wrap;word-break:keep-all;}

.oneup-time{font-size:11px;color:var(--oneup-ink-400);}
.oneup-time--user{margin-top:3px;}
.oneup-msg-actions{display:flex;align-items:center;gap:6px;margin-top:5px;}
.oneup-speak-btn{width:24px;height:24px;border:1px solid var(--oneup-ink-200);background:#fff;border-radius:7px;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.oneup-speak-btn.is-speaking{border-color:#F38C6C;background:#FEF0EA;}

/* 출처 칩 */
.oneup-sources{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;}
.oneup-source-chip{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--oneup-ink-200);
  border-radius:9999px;padding:4px 9px;font-size:11px;color:var(--oneup-navy-700);cursor:pointer;max-width:100%;}
.oneup-source-chip:hover{background:var(--oneup-ink-50);}
.oneup-source-chip__dot{width:8px;height:8px;border-radius:9999px;flex:none;}
.oneup-source-chip__type{color:var(--oneup-ink-500);flex:none;}
.oneup-source-chip__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.oneup-source-disclaimer{margin-top:6px;font-size:11px;color:var(--oneup-ink-400);line-height:1.5;}

/* 응급 배너 */
.oneup-emergency{display:flex;gap:8px;background:var(--oneup-emergency-50);border-radius:12px;padding:10px 12px;margin-bottom:8px;color:var(--oneup-navy-700);font-size:13px;line-height:1.55;}
.oneup-emergency__text b{color:var(--oneup-emergency-600);}
.oneup-emergency__tel{color:var(--oneup-emergency-600);font-weight:700;text-decoration:none;display:inline-block;margin-top:2px;}

/* 타이핑 */
.oneup-typing-row{display:flex;gap:8px;align-items:center;}
.oneup-typing{background:#fff;border:1px solid var(--oneup-ink-100);border-radius:var(--oneup-bubble);border-top-left-radius:4px;padding:12px 14px;display:flex;gap:4px;}
.oneup-typing span{width:6px;height:6px;border-radius:9999px;background:var(--oneup-ink-400);animation:oneup-bounce 1.2s infinite;}
.oneup-typing span:nth-child(2){animation-delay:.2s;} .oneup-typing span:nth-child(3){animation-delay:.4s;}
@keyframes oneup-bounce{0%,60%,100%{opacity:.3;} 30%{opacity:1;}}

/* 퀵칩 */
.oneup-quick{display:flex;flex-wrap:wrap;gap:6px;padding:10px 16px 8px;background:var(--oneup-ink-50);}
.oneup-quick-chip{border:1px solid var(--oneup-primary-100);background:var(--oneup-primary-50);color:#0C5E97;border-radius:9999px;padding:7px 13px;font-size:12px;cursor:pointer;transition:background .12s;}
.oneup-quick-chip:hover{background:var(--oneup-primary-100);}

/* 리스닝 */
.oneup-listening{display:flex;align-items:center;gap:8px;padding:8px 16px;font-size:12px;color:var(--oneup-ink-500);background:var(--oneup-ink-50);}
.oneup-listening__dot{width:9px;height:9px;border-radius:9999px;background:var(--oneup-primary);animation:oneup-pulse 1s infinite;flex:none;}
.oneup-listening__src{margin-left:auto;font-size:11px;color:var(--oneup-ink-400);}
@keyframes oneup-pulse{0%,100%{opacity:.35;} 50%{opacity:1;}}

/* 입력바 */
.oneup-inputbar{border-top:1px solid var(--oneup-ink-100);background:#fff;padding:10px;}
.oneup-inputbar__row{display:flex;align-items:flex-end;gap:8px;}
.oneup-textarea{flex:1;resize:none;max-height:96px;min-height:40px;border:1px solid var(--oneup-ink-200);border-radius:12px;padding:10px 12px;font-size:14px;line-height:1.5;outline:none;font-family:inherit;letter-spacing:inherit;}
.oneup-textarea:focus{border-color:var(--oneup-primary);box-shadow:0 0 0 3px var(--oneup-primary-50);}
.oneup-mic-btn,.oneup-send-btn{width:40px;height:40px;border:0;border-radius:12px;cursor:pointer;flex:none;display:flex;align-items:center;justify-content:center;}
.oneup-mic-btn{background:var(--oneup-ink-100);}
.oneup-mic-btn.is-listening{background:var(--oneup-primary);}
.oneup-send-btn{background:var(--oneup-primary);}
.oneup-send-btn:disabled{background:var(--oneup-ink-200);cursor:default;}
.oneup-mic-toast{margin-top:6px;font-size:12px;color:var(--oneup-emergency-600);}

/* ═════════════ 드로우어 공통(예약/영상) ═════════════ */
#oneup-drawerwrap:empty{display:none;}
.oneup-drawer{width:360px;max-width:calc(100vw - 32px);height:min(640px,calc(100vh - 120px));
  background:#fff;border-radius:20px;box-shadow:var(--oneup-shadow-panel);display:flex;flex-direction:column;overflow:hidden;}
.oneup-drawer__head{padding:14px 16px 12px;border-bottom:1px solid var(--oneup-ink-100);}
.oneup-drawer__head-row{display:flex;align-items:center;gap:8px;}
.oneup-drawer__icon{display:flex;flex:none;}
.oneup-drawer__title{font-weight:700;font-size:15px;color:var(--oneup-navy-900);flex:1;}
.oneup-drawer__close{width:30px;height:30px;border:0;background:var(--oneup-ink-100);border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex:none;}
.oneup-drawer__close:hover{background:var(--oneup-ink-200);}
.oneup-drawer__notice{display:flex;gap:7px;align-items:flex-start;margin-top:11px;background:#FEF0EA;border-radius:10px;padding:9px 11px;font-size:12px;color:var(--oneup-navy-700);line-height:1.5;}
.oneup-drawer__notice b{color:var(--oneup-emergency-600);}
.oneup-drawer__body{flex:1;overflow-y:auto;padding:16px;}
.oneup-drawer__foot{padding:12px 16px;border-top:1px solid var(--oneup-ink-100);background:#fff;}

/* 스텝 인디케이터 */
.oneup-steps{display:flex;align-items:center;margin-top:12px;}
.oneup-step{display:flex;align-items:center;}
.oneup-step__dot{width:26px;height:26px;border-radius:9999px;border:2px solid;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex:none;}
.oneup-step__line{height:2px;flex:1;margin:0 6px;border-radius:2px;}

/* 필드 라벨/타이틀 */
.oneup-field-title{font-weight:700;font-size:15px;color:var(--oneup-navy-900);}
.oneup-field-sub{font-size:12px;color:var(--oneup-ink-500);margin:4px 0 14px;line-height:1.5;}
.oneup-field-label,.oneup-doc-label,.oneup-input-label{display:block;font-size:12px;font-weight:700;color:var(--oneup-navy-700);margin:14px 0 7px;}
.oneup-doc-label span,.oneup-field-sub span{font-weight:400;color:var(--oneup-ink-400);}
.oneup-summary-line{font-size:12px;color:var(--oneup-ink-500);background:var(--oneup-ink-50);border-radius:8px;padding:8px 10px;margin-bottom:14px;}
.oneup-summary-line b{color:var(--oneup-navy-700);}

/* 드롭다운(진료과/의료진) */
.oneup-dd-field{width:100%;display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--oneup-ink-200);border-radius:12px;padding:11px 12px;cursor:pointer;text-align:left;}
.oneup-dd-field.is-open{box-shadow:0 0 0 3px var(--oneup-primary-50);}
.oneup-dd-field__value{flex:1;font-size:14px;color:var(--oneup-ink-400);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.oneup-dd-field__value.has-value{color:var(--oneup-navy-900);font-weight:600;}
.oneup-dd-chevron{display:flex;transition:transform .15s;flex:none;}
.oneup-dd-chevron.is-open{transform:rotate(180deg);}
.oneup-dd-badge{font-size:11px;font-weight:700;color:var(--oneup-success);background:#E7F6EF;border-radius:6px;padding:2px 7px;flex:none;}
.oneup-dd-list{margin-top:6px;border:1px solid var(--oneup-ink-200);border-radius:12px;overflow:hidden;box-shadow:var(--oneup-shadow-pop);}
.oneup-dd-list--scroll{max-height:220px;overflow-y:auto;}
.oneup-dd-group{font-size:11px;font-weight:700;color:var(--oneup-ink-400);padding:8px 12px 4px;background:var(--oneup-ink-50);}
.oneup-dd-opt,.oneup-doc-opt{width:100%;display:flex;align-items:center;gap:8px;padding:10px 12px;border:0;background:#fff;cursor:pointer;text-align:left;font-size:14px;color:var(--oneup-navy-700);}
.oneup-dd-opt:hover,.oneup-doc-opt:hover{background:var(--oneup-primary-50);}
.oneup-dd-opt.is-selected,.oneup-doc-opt.is-selected{background:var(--oneup-primary-50);color:var(--oneup-primary-600);font-weight:700;}
.oneup-dd-opt__name{flex:1;}
.oneup-doc-opt{justify-content:space-between;}
.oneup-doc-opt[disabled]{opacity:.5;cursor:not-allowed;}
.oneup-doc-opt__name{flex:1;}
.oneup-doc-opt__name span{color:var(--oneup-ink-400);font-weight:400;font-size:12px;}
.oneup-doc-opt__badge{font-size:11px;font-weight:700;border-radius:6px;padding:2px 7px;}
.oneup-doc-opt__badge--on{color:var(--oneup-success);background:#E7F6EF;}
.oneup-doc-opt__badge--off{color:var(--oneup-danger);background:#FCE9EA;}

/* 의료진 프로필 카드 */
.oneup-doc-profile{display:flex;gap:12px;margin-top:14px;background:var(--oneup-ink-50);border:1px solid var(--oneup-ink-100);border-radius:14px;padding:12px;}
.oneup-doc-profile__photo{width:56px;height:56px;border-radius:12px;object-fit:cover;flex:none;}
.oneup-doc-profile__name{font-weight:700;color:var(--oneup-navy-900);}
.oneup-doc-profile__name span{font-weight:400;color:var(--oneup-ink-500);font-size:12px;}
.oneup-doc-profile__dept{font-size:12px;color:var(--oneup-primary-600);margin-top:2px;}
.oneup-doc-profile__tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px;}
.oneup-doc-profile__tags span{font-size:11px;color:var(--oneup-navy-700);background:#fff;border:1px solid var(--oneup-ink-200);border-radius:9999px;padding:2px 8px;}
.oneup-doc-profile__text{font-size:12px;color:var(--oneup-ink-500);margin-top:7px;line-height:1.5;}

/* 캘린더 */
.oneup-calendar{border:1px solid var(--oneup-ink-100);border-radius:14px;padding:12px;}
.oneup-cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;}
.oneup-cal-nav{width:28px;height:28px;border:1px solid var(--oneup-ink-200);background:#fff;border-radius:8px;cursor:pointer;color:var(--oneup-ink-500);}
.oneup-cal-title{font-weight:700;font-size:14px;color:var(--oneup-navy-900);}
.oneup-cal-dow{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;font-size:11px;color:var(--oneup-ink-400);margin-bottom:4px;}
.oneup-cal-dow .sun{color:var(--oneup-danger);} .oneup-cal-dow .sat{color:var(--oneup-primary);}
.oneup-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;}
.oneup-cal-cell{height:34px;border:0;background:none;border-radius:9px;font-size:13px;color:var(--oneup-navy-700);cursor:pointer;display:flex;align-items:center;justify-content:center;}
.oneup-cal-cell:hover:not(.is-disabled):not(.is-empty){background:var(--oneup-primary-50);}
.oneup-cal-cell.is-empty{cursor:default;}
.oneup-cal-cell.is-disabled{color:var(--oneup-ink-200);cursor:default;}
.oneup-cal-cell.is-selected{background:var(--oneup-primary);color:#fff;font-weight:700;}
.oneup-cal-cell.sun{color:var(--oneup-danger);} .oneup-cal-cell.sat{color:var(--oneup-primary);}
.oneup-cal-cell.is-selected.sun,.oneup-cal-cell.is-selected.sat{color:#fff;}
.oneup-cal-picked{margin-top:9px;font-size:12px;color:var(--oneup-primary-600);font-weight:600;}

/* 오전/오후 */
.oneup-ampm-row{display:flex;gap:8px;}
.oneup-ampm-btn{flex:1;padding:11px;border:1px solid var(--oneup-ink-200);background:#fff;border-radius:12px;cursor:pointer;font-size:14px;color:var(--oneup-navy-700);}
.oneup-ampm-btn.is-selected{border-color:var(--oneup-primary);background:var(--oneup-primary-50);color:var(--oneup-primary-600);font-weight:700;}

/* Step3 입력 */
.oneup-text-input{width:100%;border:1px solid var(--oneup-ink-200);border-radius:12px;padding:11px 12px;font-size:14px;outline:none;font-family:inherit;letter-spacing:inherit;}
.oneup-text-input:focus{border-color:var(--oneup-primary);box-shadow:0 0 0 3px var(--oneup-primary-50);}
.oneup-text-input.has-error{border-color:var(--oneup-danger);box-shadow:0 0 0 3px #FCE9EA;}
.oneup-input-error{margin-top:7px;font-size:12px;color:var(--oneup-danger);}

/* 동의 */
.oneup-consent-box{font-size:12px;color:var(--oneup-ink-500);background:var(--oneup-ink-50);border:1px solid var(--oneup-ink-100);border-radius:12px;padding:12px;line-height:1.6;}
.oneup-consent-box b{color:var(--oneup-navy-700);}
.oneup-consent-link{color:var(--oneup-primary-600);text-decoration:underline;cursor:pointer;}
.oneup-consent-check{display:flex;gap:9px;align-items:flex-start;margin-top:12px;padding:11px 12px;border:1px solid var(--oneup-ink-200);border-radius:12px;cursor:pointer;}
.oneup-consent-check.is-checked{border-color:var(--oneup-primary);background:var(--oneup-primary-50);}
.oneup-consent-check input{margin-top:2px;accent-color:var(--oneup-primary);}
.oneup-consent-check__label{font-size:13px;color:var(--oneup-navy-700);line-height:1.5;}
.oneup-consent-check__req{color:var(--oneup-primary-600);font-weight:700;}

/* 요약 */
.oneup-summary{margin-top:16px;border:1px solid var(--oneup-ink-100);border-radius:12px;overflow:hidden;}
.oneup-summary__head{background:var(--oneup-ink-50);padding:9px 12px;font-size:12px;font-weight:700;color:var(--oneup-navy-700);}
.oneup-summary__row{display:flex;justify-content:space-between;padding:9px 12px;font-size:13px;border-top:1px solid var(--oneup-ink-100);}
.oneup-summary__row span{color:var(--oneup-ink-500);} .oneup-summary__row b{color:var(--oneup-navy-900);}
.tabular{font-feature-settings:"tnum" 1;letter-spacing:0;}

/* 완료 */
.oneup-complete{text-align:center;padding:12px 8px;}
.oneup-complete__icon{display:flex;justify-content:center;margin-bottom:12px;}
.oneup-complete__title{font-weight:700;font-size:17px;color:var(--oneup-navy-900);}
.oneup-complete__sub{font-size:13px;color:var(--oneup-ink-500);margin-top:8px;line-height:1.6;}
.oneup-complete__sub b{color:var(--oneup-emergency-600);}
.oneup-complete__summary{margin-top:16px;text-align:left;border:1px solid var(--oneup-ink-100);border-radius:12px;overflow:hidden;}

/* 푸터 버튼 */
.oneup-foot-row{display:flex;gap:8px;}
.oneup-foot-back{padding:12px 18px;border:1px solid var(--oneup-ink-200);background:#fff;border-radius:12px;cursor:pointer;font-size:14px;font-weight:600;color:var(--oneup-navy-700);}
.oneup-foot-next,.oneup-foot-close{flex:1;padding:12px;border:0;background:var(--oneup-primary);color:#fff;border-radius:12px;cursor:pointer;font-size:14px;font-weight:700;}
.oneup-foot-next.is-submit{background:var(--oneup-primary-600);}
.oneup-foot-next:disabled{background:var(--oneup-ink-200);cursor:default;}
.oneup-foot-close{width:100%;}

/* ═════════════ 영상 패널 ═════════════ */
.oneup-video__body{display:flex;flex-direction:column;gap:12px;}
.oneup-video__player{position:relative;width:100%;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#000;}
.oneup-video__player iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.oneup-video__player.is-empty{background:var(--oneup-ink-50);color:var(--oneup-ink-400);display:flex;align-items:center;justify-content:center;font-size:13px;}
.oneup-video__list{display:flex;flex-direction:column;gap:8px;}
.oneup-video__card{display:flex;gap:10px;align-items:center;border:1px solid var(--oneup-ink-200);background:#fff;border-radius:12px;padding:8px;cursor:pointer;text-align:left;}
.oneup-video__card.is-active{border-color:var(--oneup-primary);background:var(--oneup-primary-50);}
.oneup-video__thumb{width:72px;height:48px;border-radius:8px;object-fit:cover;flex:none;background:var(--oneup-ink-100);}
.oneup-video__meta{display:flex;flex-direction:column;min-width:0;}
.oneup-video__vtitle{font-size:13px;color:var(--oneup-navy-900);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.oneup-video__channel{font-size:11px;color:var(--oneup-ink-400);}
.oneup-video__disclaim{padding:10px 16px;font-size:11px;color:var(--oneup-ink-400);border-top:1px solid var(--oneup-ink-100);}

/* ─────────────── 반응형 ─────────────── */
@media (max-width:820px){
  /* 좁은 화면: 예약 드로우어가 열리면 채팅 패널을 숨겨 드로우어만 표시 */
  .oneup-stage:has(#oneup-drawerwrap .oneup-drawer) .oneup-panel{display:none;}
}
@media (max-width:480px){
  .oneup-stage{right:0;left:0;bottom:0;gap:0;}
  .oneup-panel,.oneup-drawer{width:100vw;height:100vh;border-radius:0;max-width:100vw;}
}
