/* Reference: PC_모두홈(시니어)_메인, MO_AI국민비서, Main_대화창. */
.gov-banner { background:#edf1f5; font-size:14px; }
.gov-banner>div { max-width:1200px; margin:auto; display:flex; align-items:center; gap:8px; min-height:32px; }
.gov-banner img { width:24px; height:18px; }
.site-header { display:block; max-width:none; padding:0; background:#fff; }
.header-inner { position:relative; max-width:1200px; min-height:94px; margin:auto; display:flex; align-items:center; justify-content:space-between; }
.brand { display:block; }
.brand img:first-child { display:block; width:144px; height:auto; }
.pc-utilities { display:flex; gap:16px; position:absolute; right:0; top:16px; font-size:14px; color:#464c53; }
.pc-utilities span+span { border-left:1px solid #ddd; padding-left:16px; }
.header-account { display:flex; align-items:center; gap:28px; margin-left:auto; margin-top:30px; font-size:16px; font-weight:700; }
.header-account>span { display:flex; gap:8px; align-items:center; }
.header-account img { width:22px; height:22px; }
.header-actions { margin:30px 0 0 18px; gap:6px; }
.header-actions button { border:0; border-radius:6px; padding:5px 6px; font-size:12px; color:#53616d; }
.header-actions img { width:18px; height:18px; vertical-align:middle; margin-right:3px; }
#header-search { display:none; }
.primary-nav { border-top:1px solid #d8dce1; border-bottom:1px solid #d8dce1; }
.primary-nav>div { display:flex; align-items:center; gap:50px; min-height:54px; max-width:1200px; margin:auto; color:#464c53; font-weight:700; font-size:18px; }
.mobile-heading { display:none; }
.site-header { position:relative; z-index:40; }
.pc-utilities>a,.header-account>a { color:inherit; text-decoration:none; }
.header-account>a { display:flex; align-items:center; gap:8px; }
.header-dropdown { position:relative; }
.pc-utilities { z-index:3; }
.header-dropdown>summary { list-style:none; cursor:pointer; display:flex; align-items:center; gap:8px; }
.header-dropdown>summary::-webkit-details-marker { display:none; }
.header-dropdown>summary::after { content:''; width:7px; height:7px; border:solid currentColor; border-width:0 1px 1px 0; transform:rotate(45deg); margin-top:-4px; transition:transform .15s; }
.header-dropdown[open]>summary::after { transform:rotate(225deg); margin-top:3px; }
.header-dropdown>summary:focus-visible { outline:2px solid #256ef4; outline-offset:5px; }
.header-dropdown[open]>summary { color:#0b50d0; }
.utility-panel { position:absolute; right:0; top:calc(100% + 12px); min-width:180px; padding:8px; border:1px solid #cdd1d5; border-radius:10px; background:#fff; box-shadow:0 8px 20px #00000012; }
.utility-panel a,.utility-panel button { display:block; width:100%; padding:10px 12px; font-size:14px; color:#33363d; text-decoration:none; text-align:left; background:#fff; border:0; border-radius:4px; white-space:nowrap; }
.utility-panel a:hover,.utility-panel button:hover,.utility-panel button[aria-pressed="true"] { background:#ecf2fe; color:#0b50d0; }
.pc-utilities #header-actions { margin:0; padding:0 0 0 14px; border-left:1px solid #ddd; gap:16px; }
.pc-utilities #header-actions button { font-size:14px; padding:0; color:#464c53; background:none; border:0; border-radius:0; }
.pc-utilities #header-actions img { display:none; }
.pc-utilities #header-actions span { border:0; padding:0; }
.pc-utilities #header-actions button:hover { text-decoration:underline; }
.primary-nav { position:relative; }
.primary-nav .nav-dropdown { position:static; }
.primary-nav summary { min-height:54px; }
.nav-panel { position:absolute; top:100%; left:0; right:0; border-bottom:1px solid #ccd3dc; background:#fff; box-shadow:0 8px 14px #18263618; }
.nav-panel>div { display:flex; gap:48px; max-width:1200px; margin:auto; padding:32px 0; }
.nav-panel h2 { flex:0 0 190px; margin:0; font-size:28px; color:#20252a; }
.nav-links { flex:1; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px 24px; }
.nav-links a { display:block; padding:12px; color:#33363d; text-decoration:none; font-size:17px; border-radius:6px; }
.nav-links a:hover,.nav-links a:focus-visible { color:#0b50d0; background:#ecf2fe; }
.nav-item p { margin:0 12px 12px; color:#616b76; font-size:15px; line-height:1.6; font-weight:400; }
.header-dropdown[open]>.utility-panel,.header-dropdown[open]>.nav-panel { animation:header-reveal .15s ease-out; }
@keyframes header-reveal { from { opacity:0; translate:0 -5px; } to { opacity:1; translate:0 0; } }
@media(min-width:1025px) and (max-width:1279px) {
  .pc-utilities { gap:12px; }
  .nav-panel>div { padding:28px 32px; }
}
@media(max-width:1024px) { #mobile-actions-slot { margin-left:auto; } }
@media(prefers-reduced-motion:reduce) { .header-dropdown[open]>.utility-panel,.header-dropdown[open]>.nav-panel { animation:none; } }
.hero { margin-top:104px; }
.hero-title { display:block; }
.hero h1 { font-size:46px; }
.hero-character { display:none; }
.search-box { position:relative; margin-top:40px; padding-left:102px; }
.search-character { position:absolute; width:72px; height:72px; object-fit:contain; left:20px; bottom:-1px; }
.prompt-examples { display:flex; align-items:center; justify-content:center; gap:14px; margin:40px -80px 100px; }
.prompt-examples p { white-space:nowrap; margin:0; font-size:20px; }
.prompt-examples>div { gap:12px; flex-wrap:nowrap; }
.prompt-examples button { padding:16px 14px; font-size:20px; white-space:nowrap; border-radius:10px; }
.services { margin-bottom:118px; padding:30px 24px 24px; }
.services h2 { display:flex; align-items:center; font-size:28px; gap:10px; margin-bottom:26px; }
.services h2::before { content:''; width:40px; height:40px; flex-shrink:0; margin:0; background:url('/static/gov24/images/ico-frequent-services.svg') center/contain no-repeat; }
.service-grid { gap:8px; grid-template-columns:repeat(4,minmax(0,1fr)); }
.service-grid button { min-height:72px; padding:14px 16px; border:1px solid #e6e9ec; font-size:20px; gap:10px; }
.service-grid button>span:first-child { min-width:0; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.service-icons { display:flex; flex-shrink:0; gap:8px; align-items:center; }
.service-arrow { display:block; width:36px; height:36px; padding:8px; border-radius:50%; background:#ecf2ff; }
.service-grid .ai-badge { width:36px; height:36px; background:#e8f6f4; color:#079f9c; font-size:18px; }
.footer-channels { background:#fff; border-block:1px solid #d2d6dc; }
.footer-channels>div { display:flex; max-width:1200px; margin:auto; }
.footer-channels span { width:240px; padding:18px 24px; border-inline:1px solid #d2d6dc; font-size:16px; color:#464c53; display:flex; justify-content:space-between; }
.footer-channels b { font-weight:400; }
.site-footer { padding:40px 24px 24px; border:0; color:#464c53; font-size:14px; }
.footer-inner { max-width:1200px; margin:auto; }
.footer-top { display:flex; justify-content:space-between; align-items:center; margin-bottom:24px; }
.footer-logo { width:144px; }
.social-links { display:flex; gap:10px; }
.social-links img { width:40px; height:40px; padding:8px; border:1px solid #d5dae0; border-radius:50%; }
.contact-info { display:flex; align-items:center; gap:12px; }
.contact-info p { margin:0; }
.contact-info p+p { border-left:1px solid #cdd1d5; padding-left:12px; }
.contact-info b { font-weight:700; }
.contact-info p:first-child b span { font-weight:400; }
.footer-bottom { display:flex; justify-content:space-between; gap:20px; border-top:1px solid #d2d6dc; margin-top:32px; padding-top:18px; font-size:13px; }
.policy-links { display:flex; gap:12px; }
.policy-links strong { color:#003b70; }
.footer-bottom small { font-size:13px; }
.mobile-help { display:none; }
/* Conversation state uses the white answer canvas, not a stack of cards. */
body.chat-active { background:#fff; }
.chat-active .hero { display:none; }
.chat-results { max-width:1200px; margin:36px auto 80px; padding:0; }
.conversation { max-height:none; overflow:visible; padding:0; gap:36px; }
.bubble { max-width:100%; padding:0; border-radius:0; background:transparent; }
.bubble.user { max-width:85%; padding:16px 22px; border-radius:28px 28px 4px 28px; background:#edf3ff; border:1px solid #d4e2ff; }
.bubble.user small { display:none; }
.bubble.assistant { width:100%; background:transparent; }
.answer-identity { display:flex; align-items:center; gap:10px; margin:18px 0 24px; font-size:17px; color:#555; }
.answer-identity .answer-character { width:36px; height:48px; object-fit:contain; }
.answer-identity .answer-logo { width:112px; }
.answer-identity b { font-size:17px; }
.bubble-copy { display:block; font-size:17px; line-height:1.5; }
.bubble.user .bubble-copy { font-size:15px; line-height:1.5; }
.answer-tools { display:flex; align-items:center; gap:8px; margin-top:32px; }
.answer-demo-tool { width:44px; height:44px; border:0; border-radius:50%; padding:10px; background:#f3f4f6; cursor:default; }
.answer-demo-tool:disabled { opacity:1; cursor:default; }
.answer-demo-tool img { display:block; width:100%; height:100%; }
.full-speech-button { position:static; display:flex; align-items:center; gap:8px; min-height:44px; margin:0 0 0 4px; padding:8px 14px; border:1px solid #cdd1d5; border-radius:24px; background:#fff; color:#464c53; font-size:15px; }
.full-speech-button img { width:26px; height:26px; }
.full-speech-button b { font-weight:400; }
.full-speech-button.playing { color:#0b50d0; background:#ecf2fe; border-color:#256ef4; }
#chat-composer { margin-top:58px; }
.chat-active .chat-results { display:flex; flex-direction:column; min-height:calc(100dvh - 240px); }
.chat-active .conversation { flex:1 0 auto; }
.chat-active #chat-composer {
  position:sticky;
  bottom:var(--composer-keyboard-inset,0px);
  z-index:20;
  flex-shrink:0;
  padding:16px 0 calc(16px + env(safe-area-inset-bottom,0px));
  background:#fff;
  box-shadow:0 -14px 18px #ffffffed;
}
.chat-active #chat-composer .question-limit { margin:0 0 14px; }
.chat-active #chat-composer .search-box { margin-top:0; }
.chat-active #chat-composer .error { max-height:100px; overflow:auto; margin-bottom:0; }
html { scroll-padding-bottom:calc(var(--composer-height,0px) + 20px); }
@media(max-width:1024px) {
  .chat-active .chat-results { min-height:calc(100dvh - 100px); }
  .chat-active #chat-composer { padding-top:12px; }
  .chat-active #chat-composer .question-limit { margin-bottom:10px; }
}
.question-limit { display:flex; align-items:center; gap:8px; font-size:15px; line-height:1.5; font-weight:700; color:#464c53; }
.question-limit>span { display:inline-grid; place-items:center; width:18px; height:18px; border-radius:50%; background:#727e88; color:#fff; font-size:13px; }
.chat-active .search-box { max-width:none; padding-left:26px; margin-top:20px; }
.chat-active .search-character { display:none; }
.chat-active .search-box textarea { font-size:19px; line-height:1.5; height:30px; }
.chat-active #send-question svg { display:none; }
.chat-active #send-question { background:url('/static/gov24/images/ico-ai-search.svg') center/32px no-repeat; }
.search-box:focus-within { outline:3px dashed #3276ff; outline-offset:-10px; }
.search-box textarea:focus-visible { outline:none; }
/* Safari may paint a grey native scrollbar at the right edge of a textarea. */
.search-box textarea { appearance:none; -webkit-appearance:none; border:0; box-shadow:none; overflow:hidden; scrollbar-width:none; resize:none; }
.search-box textarea::-webkit-scrollbar { display:none; width:0; height:0; }
.bubble-copy { white-space:normal; }
.bubble-copy p { margin:0 0 12px; white-space:pre-wrap; }
.bubble-copy .service-title { font-size:1em; font-weight:700; margin:24px 0 10px; line-height:1.5; }
.bubble-copy .service-title:first-child { margin-top:0; }
.answer-list { margin:0 0 24px; padding-left:1.4em; }
.answer-list li { padding-left:3px; margin:0 0 8px; white-space:pre-wrap; }
.answer-list li::marker { color:#8b9299; font-size:.8em; }
.service-followups { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.service-followup { max-width:100%; padding:14px 22px; border:1px solid #5d6671; border-radius:6px; color:#20252a; background:#fff; font-size:17px; line-height:1.5; text-align:left; overflow-wrap:anywhere; }
.service-followup:disabled { opacity:1; cursor:default; }
@media(max-width:1024px) {
  .service-followups { flex-direction:column; gap:10px; margin-top:24px; }
  .service-followup { width:100%; font-size:17px; padding:12px 16px; }
  .answer-list { padding-left:1.2em; }
}
@media(min-width:1025px) and (max-width:1279px) {
  .header-inner,.primary-nav>div,.gov-banner>div { margin-inline:32px; }
  .services,.chat-results { margin-inline:32px; }
  .hero { margin-top:80px; }
  .prompt-examples { margin-inline:-10px; gap:10px; }
  .prompt-examples p,.prompt-examples button { font-size:16px; }
  .header-account { gap:16px; }
  .service-grid button { font-size:18px; padding:12px; }
}
@media(max-width:1024px) {
  .gov-banner,.primary-nav,.brand,.pc-utilities,.header-account { display:none; }
  .site-header { padding:0; }
  .header-inner { min-height:64px; padding:0 20px; gap:12px; }
  .mobile-heading { display:flex; align-items:center; gap:18px; white-space:nowrap; font-size:18px; }
  .mobile-heading a { display:flex; }
  .mobile-heading img { display:block; width:18px; height:24px; }
  .header-actions { margin:0 0 0 auto; gap:12px; align-items:center; }
  .header-actions button { padding:0; width:26px; height:28px; display:grid; place-items:center; }
  .header-actions img { width:24px; height:24px; margin:0; }
  .header-actions span { display:none; }
  #header-search { display:grid; }
  .hero { margin-top:40px; }
  .hero-title { display:flex; gap:16px; }
  .hero-character { display:block; }
  .hero h1 { font-size:25px; }
  .hero-title img { width:90px; height:100px; }
  .search-box { margin-top:6px; padding-left:18px; }
  .search-character { display:none; }
  .prompt-examples { display:block; margin:42px 0 52px; }
  .prompt-examples p { font-size:18px; margin-bottom:14px; }
  .prompt-examples>div { gap:10px; }
  .prompt-examples button { font-size:17px; padding:12px 14px; }
  .services { padding:24px 18px; margin:0 24px 40px; }
  .services h2 { gap:8px; margin-bottom:20px; font-size:22px; }
  .services h2::before { width:28px; height:28px; }
  .service-grid { grid-template-columns:1fr; gap:8px; }
  .service-grid button { min-height:58px; font-size:17px; padding:12px 16px; }
  .service-arrow,.service-grid .ai-badge { width:32px; height:32px; }
  .service-grid .ai-badge { font-size:16px; }
  .footer-channels,.social-links,.policy-links { display:none; }
  .site-footer { border-top:1px solid #bfc6ce; padding:28px 16px 44px; }
  .footer-top { margin-bottom:24px; }
  .footer-logo { width:100px; }
  .mobile-help { display:block; margin:0 0 4px; font-size:17px; }
  .contact-info { display:block; font-size:16px; line-height:1.8; }
  .contact-info p { margin:0 0 18px; }
  .contact-info p+p { border:0; padding:0; }
  .contact-info p:first-child b span { font-weight:700; }
  .contact-hours { display:block; }
  .footer-bottom { display:block; border:0; margin-top:18px; padding:0; }
  .footer-bottom small { font-size:13px; }
  .chat-results { margin:20px auto 40px; padding:0 24px; }
  .conversation { gap:24px; }
  .answer-identity { gap:8px; margin:12px 0 24px; }
  .answer-identity b { font-size:17px; }
  .answer-identity .answer-logo { width:85px; }
  .answer-identity .answer-character { width:28px; height:36px; }
  .bubble-copy { font-size:17px; }
  .answer-tools { margin-top:24px; gap:7px; }
  .answer-demo-tool { width:38px; height:38px; padding:9px; }
  .full-speech-button { min-height:38px; font-size:15px; padding:6px 10px; gap:5px; }
  .full-speech-button img { width:24px; height:24px; }
  .question-limit { font-size:15px; }
  #chat-composer { margin-top:36px; }
  .chat-active .search-box { padding-left:18px; }
  .chat-active .search-box textarea { font-size:19px; }
  .search-box .icon-button { width:40px; height:32px; flex:0 0 40px; padding:0; }
  .search-box { gap:0; }
  #open-microphone svg { display:none; }
  #open-microphone { background:url('/static/gov24/images/ico-input-mic.svg') center/24px 24px no-repeat; }
  .chat-active #send-question { background-size:24px 24px; }
  #send-question svg { width:24px; height:24px; }
}
/* Voice publishing states: intro / listening / processing / speaking / retry. */
.voice-layer{background:#edf1f6;font-family:GOV,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;font-synthesis:none;-webkit-text-size-adjust:100%;text-size-adjust:100%}
.voice-layer:focus{outline:none}
.voice-layer::before{left:0;right:0;bottom:0;height:36%;background:url('/static/gov24/images/voice-background.png') center bottom/100% 100% no-repeat;filter:none}
.voice-layer>header{width:calc(100% - 64px);max-width:1200px;padding:clamp(40px,11.11vh,120px) 0 0}
.voice-layer .voice-brand{gap:8px;font-size:28px;line-height:1;letter-spacing:-.02em;white-space:nowrap}
.voice-layer .voice-brand b{font-weight:700}
.voice-layer .voice-brand img{height:auto;flex-shrink:0;object-fit:contain}
.voice-layer .voice-brand img:first-child{width:58px}
.voice-layer .voice-brand img:last-child{width:104px}
.voice-layer .close-button{position:relative;display:grid;place-items:center;flex-shrink:0;font-size:0;width:44px;height:44px;padding:2px}
.voice-layer .close-button img{width:40px;height:40px;pointer-events:none}
.voice-layer .close-button::before,.voice-layer .close-button::after{content:none}
.voice-layer .voice-content{margin:clamp(64px,14.8vh,160px) auto 0;padding:0 24px}
.voice-layer #voice-heading{margin:0;font-size:32px;font-weight:700;line-height:1.5;letter-spacing:-.02em;white-space:pre-line;word-break:keep-all}
.voice-layer #control-title,.voice-layer #control-hint,.voice-layer #caption{display:none!important}
.voice-layer .voice-controls{margin-top:12vh;gap:18px}
.voice-layer .round-mic{position:relative;width:80px;height:80px;padding:22px;box-shadow:none;outline:0;isolation:isolate;background:url('/static/gov24/images/voice-mic.svg') center/contain no-repeat}
.voice-layer .round-mic>svg{visibility:hidden}
/* iOS long press must remain a PTT gesture, not text selection or a callout. */
.voice-layer .round-mic,.voice-layer .round-mic *{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;touch-action:none;-webkit-tap-highlight-color:transparent}
.voice-layer .round-mic *{pointer-events:none}
.voice-layer[data-voice-state="intro"] .round-mic::before,.voice-layer[data-voice-state="listening"] .round-mic::before{content:'';position:absolute;inset:-40px;border-radius:50%;background:linear-gradient(#08bba622,transparent);z-index:-1;box-shadow:0 -20px 0 20px #08bba609;pointer-events:none}
.voice-layer #meter{width:100px;height:26px}
.voice-layer .voice-status{padding:13px 20px;font-size:17px;box-shadow:0 5px 9px #20304022}
.voice-layer[data-voice-state="intro"] #meter,.voice-layer[data-voice-state="intro"] .voice-status,.voice-layer[data-voice-state="ready"] #meter,.voice-layer[data-voice-state="ready"] .voice-status{visibility:hidden}
.voice-layer[data-voice-state="processing"] .round-mic,.voice-layer[data-voice-state="speaking"] .round-mic{opacity:1}
.voice-layer[data-voice-state="processing"] .round-mic::after,.voice-layer[data-voice-state="speaking"] .round-mic::after{content:'';position:absolute;width:44px;height:3px;background:#fff;transform:rotate(-48deg);border:2px solid #15a8bf;box-sizing:content-box}
.voice-retry-actions{display:none;justify-content:center;gap:16px;margin-top:40px}
.voice-retry-actions .keyboard-button{display:flex;align-items:center;justify-content:center;gap:10px;min-width:210px;margin:0;padding:18px 24px;font-size:18px;font-weight:400;color:#20252a}
.voice-retry-actions img{width:24px;height:24px}.voice-retry-actions span{font-size:24px}
.voice-layer[data-voice-state="retry"] .voice-controls{display:none}
.voice-layer[data-voice-state="retry"] .voice-retry-actions{display:flex}
.voice-layer #voice-error{margin:20px auto;max-width:500px}
/* Reuse the original logo, heading typography and 80px microphone asset. */
.voice-mode-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;width:min(660px,100%)}
.voice-mode-choice{display:flex;flex-direction:column;align-items:center;gap:12px;min-width:0}
.voice-mode-choice>b{font-size:18px;font-weight:700;margin-top:12px;word-break:keep-all}
.voice-mode-choice>small{font-size:14px;line-height:1.6;color:#5e6973;word-break:keep-all}
.voice-layer .voice-mode-help{margin:12px 0 0;font-size:16px;color:#5e6973;word-break:keep-all}
.voice-layer:not([data-voice-state="intro"]):not([data-voice-state="ready"]):not([data-voice-state="retry"]) .voice-mode-help{display:none}
.voice-layer .voice-mode-choice .round-mic::before,.voice-layer .voice-mode-choice .round-mic::after{content:none}
.voice-layer .voice-mode-choice .round-mic[aria-pressed="true"]{outline:2px solid #256ef4;outline-offset:6px}
.voice-layer[data-voice-state="retry"] .voice-controls{display:flex}
@media(max-width:1024px){
 .voice-layer .voice-mode-choices{gap:8px;margin-top:12px}
 .voice-layer .voice-mode-choice .round-mic{position:relative;left:auto;bottom:auto;width:80px;height:80px;padding:22px}
 .voice-mode-choice>b{font-size:15px;letter-spacing:-.04em}.voice-mode-choice>small{font-size:12px}
}
@media(min-width:1025px){.voice-layer #voice-heading{white-space:normal}.voice-layer[data-voice-state="retry"] #voice-heading{white-space:pre-line}}
@media(max-width:1024px){
 .voice-layer>header{width:100%;padding:10px 12px 0 16px}.voice-layer .voice-brand{font-size:22px;gap:6px}.voice-layer .voice-brand img:first-child{width:40px}.voice-layer .voice-brand img:last-child{width:74px}
 .voice-layer .close-button{width:44px;height:44px;padding:10px}.voice-layer .close-button img{width:24px;height:24px}
 .voice-layer .voice-content{margin:24vh auto 130px;padding:0 16px}.voice-layer #voice-heading{font-size:24px;line-height:1.5;letter-spacing:-.02em}
 .voice-layer .voice-controls{margin-top:36px}.voice-layer .round-mic{position:fixed;bottom:max(32px,env(safe-area-inset-bottom));left:calc(50% - 40px);width:80px;height:80px;padding:22px;box-shadow:0 6px 14px #2574f542}
 .voice-layer .round-mic::before{display:none}.voice-layer #meter{display:none}.voice-layer .voice-status{font-size:18px;padding:16px 20px;min-width:104px}
 .voice-layer::before{bottom:19%;height:30%;left:-12%;right:-12%;filter:none;mask-image:linear-gradient(transparent,#000 18%,#000 72%,transparent)}
 .voice-retry-actions{flex-direction:column;align-items:center;gap:16px;margin-top:38px}.voice-retry-actions .keyboard-button{width:230px;padding:16px;font-size:18px}
}
/* Keep three independent buttons in normal flow, after all legacy mobile rules. */
#voice-layer .voice-mode-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:660px;gap:32px}
#voice-layer .voice-mode-choice{display:flex;flex-direction:column;align-items:center;gap:12px;min-width:0}
#voice-layer .voice-mode-choice .round-mic{position:relative;inset:auto;flex:none;margin:0;width:80px;height:80px}
#voice-layer .voice-mode-choice>b,#voice-layer .voice-mode-choice>small{display:block;width:100%;text-align:center;overflow-wrap:anywhere}
#voice-layer .voice-mode-choice .round-mic::before,#voice-layer .voice-mode-choice .round-mic::after{content:none}
@media(max-width:1024px){#voice-layer .voice-mode-choices{gap:8px}#voice-layer .voice-mode-choice>b{font-size:14px;letter-spacing:-.04em}}
.home-voice-modes{max-width:708px;margin:0 auto 48px;padding:0 24px;text-align:center}
.home-voice-modes .voice-mode-choices{width:100%;max-width:660px;margin:auto}
.home-voice-modes .home-mode-mic{display:grid;place-items:center;position:relative;flex:none;width:80px;height:80px;padding:0;border:0;border-radius:50%;background:transparent;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}
.home-mode-mic img{width:100%;height:100%;pointer-events:none;-webkit-user-drag:none}
.home-voice-modes>p{margin:28px 0 0;font-size:16px;line-height:1.6;color:#5e6973}
.home-mode-mic[aria-pressed="true"]{outline:2px solid #256ef4;outline-offset:6px}
.home-mode-mic.recording{outline:4px solid #0aa98a;outline-offset:6px}
.home-voice-modes .recording-time,.voice-layer .recording-time{font-size:16px;font-variant-numeric:tabular-nums;line-height:1.6;color:#246454;margin:16px 0 0}
.home-voice-modes .recording-notice,.voice-layer .recording-notice{max-width:620px;margin:16px auto 0;color:#8b4a14;font-size:15px;line-height:1.7;word-break:keep-all}
.recording-notice:empty{display:none}
.chat-active .home-voice-modes{margin-top:48px;padding-top:8px}
@media(max-width:1024px){.chat-active .home-voice-modes{margin-top:32px;padding-top:8px}}
@media(max-width:1024px){.home-voice-modes{padding:0 16px;margin-bottom:36px}.home-voice-modes .voice-mode-choices{gap:8px}.home-voice-modes .voice-mode-choice>b{font-size:14px;letter-spacing:-.04em}.home-voice-modes>p{font-size:14px}}
