:root{--gonggani-gold:#d4af37;--gonggani-hover:#b5952f;--bg-sidebar:#f9f9f9;--text-main:#333;--text-muted:#888}
body{background:#fff;color:var(--text-main);font-family:Pretendard,Arial,sans-serif}.desktop-sidebar{background:var(--bg-sidebar);border-right:1px solid #e5e5e5;padding:12px;width:260px}.desktop-sidebar>h2,.desktop-sidebar>p{display:none}.desktop-sidebar nav{display:flex;flex-direction:column;height:100%;gap:6px;overflow:auto}.desktop-sidebar nav button,#app-drawer nav button{font-size:15px;text-align:left;border:0;border-radius:8px;padding:12px;min-height:44px;background:transparent}.desktop-sidebar nav button:hover,#app-drawer nav button:hover{background:#f0f0f0}.html5-selected{background:#f0f0f0;border-radius:8px;padding:12px;font-size:15px}.desktop-sidebar nav h3,#app-drawer nav h3{font-size:12px;color:#888;letter-spacing:.5px;margin:20px 10px 8px}.html5-links{margin:18px 0 12px}.html5-links summary{padding:12px;cursor:pointer;min-height:44px}.html5-links a{display:block;padding:10px;font-size:14px}.sidebar-note{font-size:12px;color:#888;line-height:1.6}.html5-admin{margin-top:auto;background:#fffbe6;border:1px solid #ffe58f;border-radius:10px;padding:12px}.html5-admin h3{margin:0 0 8px!important;color:#665722!important}.html5-admin p{font-size:13px;color:#666;margin-bottom:8px;line-height:1.5}.html5-recipient{overflow-wrap:anywhere}.html5-admin .dispatch-btn{width:100%;background:#d4af37;color:#fff;font-weight:bold;text-align:center}.html5-admin .dispatch-btn:hover{background:#b5952f}.chat-header{background:#fff;border-bottom:1px solid #e5e5e5;gap:8px;padding:15px 25px}.chat-header .brand{font-weight:600;font-size:17px;letter-spacing:0;white-space:nowrap}.html5-tagline{color:#888;font-size:12px}.html5-phone{margin-left:auto;font-size:14px;color:#94791c;white-space:nowrap}.chat-log{max-width:850px;width:100%;margin:auto;padding:25px;box-sizing:border-box}.chat-log .mock-message{background:transparent;border:0;border-radius:0;position:relative;padding:0 0 0 54px;margin:0 0 24px;line-height:1.6}.chat-log .mock-message:before{content:'공간';position:absolute;left:0;top:0;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#d4af37;color:white;font-size:12px;font-weight:bold}.chat-log .mock-message>b{color:#a88a24}.chat-log .user-message{background:#f4f4f4;border:0;border-radius:16px;padding:12px 18px;margin:0 0 24px auto;max-width:85%;overflow-wrap:anywhere}.composer-shell{border:1px solid #d0d0d0;border-radius:24px;background:#fff;box-shadow:0 6px 16px #0000000f}.composer-shell:focus-within{border-color:#d4af37}#send{background:#d4af37;color:#fff}#send:hover{background:#b5952f}#staff-handoff-open{display:none}.mode-strip{font-size:11px;color:#777;background:#fff}.composer textarea{max-height:150px}#app-drawer{background:#f9f9f9}#app-drawer nav{display:flex;flex-direction:column;gap:6px}.html5-admin button:focus-visible,.html5-phone:focus-visible{outline:3px solid #7d6519;outline-offset:3px}
@media(max-width:999px){.chat-header{padding:12px;gap:8px}.html5-tagline{display:none}.chat-header .brand{font-size:14px}.html5-phone{font-size:12px}.conversation-info{font-size:12px}.chat-log{padding:16px 12px}.chat-log .mock-message{padding-left:44px}.chat-log .mock-message:before{width:32px;height:32px;font-size:11px}.chat-log .user-message{max-width:90%}.html5-admin{margin-top:20px}}
.composer{border:0!important;box-shadow:none!important;background:linear-gradient(transparent,#fff 40%)!important;border-radius:0!important}.composer-shell #send{background:#d4af37!important}.composer-shell{outline:none!important}

/* Compact, adjacent, explicit photo consent. No checked-by-default state. */
.composer .photo-analysis-controls{order:1;margin:4px 0;padding:6px 10px;gap:2px;background:#fffdf6;border-radius:12px;font-size:12px;line-height:1.4}
.composer .photo-analysis-controls legend{font-size:12px;padding:0 4px}
.composer .photo-analysis-controls .consent-row{align-items:center;min-height:44px;padding:0;gap:8px;font-size:12px;line-height:1.4}
.composer .photo-analysis-controls .tool-core,.composer .photo-analysis-controls p{margin:2px 0;font-size:11px}
.composer .photo-analysis-controls details summary{min-height:24px;cursor:pointer;font-size:11px}
.composer .photo-analysis-controls details p{line-height:1.5}
.feature-consent-dialog{box-sizing:border-box;width:min(460px,calc(100vw - 24px));max-height:calc(100dvh - 24px);margin:auto;padding:24px;border:1px solid #d5bd79;border-radius:18px;color:#28251f;background:#fff;overflow:auto;overscroll-behavior:contain}.feature-consent-dialog::backdrop{background:#0007}.feature-consent-dialog h2{margin:0 0 16px;font-size:20px}.feature-consent-dialog p{line-height:1.65;font-size:14px}.feature-consent-label{display:flex!important;align-items:flex-start;gap:12px;padding:12px 0;line-height:1.6}.feature-consent-label input{width:22px!important;height:22px;flex:0 0 22px;margin:2px 0}.feature-consent-dialog button{min-height:44px;padding:8px 20px;position:sticky;bottom:0;background:#fff;border:1px solid #ab8b42;border-radius:8px}.feature-consent-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.feature-consent-links button{min-height:44px;padding:6px 10px;font-size:12px;background:transparent;color:#66552f;border:0;text-decoration:underline}.feature-consent-dialog :focus-visible{outline:3px solid #897029;outline-offset:3px}

/* Quiet composer: details stay available, errors and active processing stay visible. */
.composer-help,.mode-strip{display:none}
.speech-inline-help #speech-status:empty{display:none}
.speech-inline-help details>summary{font-size:11px;min-height:28px;cursor:pointer}
.composer,.composer-shell,.chat-column,.chat-layout,.chat-log{min-width:0;max-width:100%;box-sizing:border-box}
.composer #attachment-notice{font-size:12px;overflow-wrap:anywhere;max-width:100%}
#attachment-recover{order:4;align-self:flex-start;min-height:44px;border:0;background:transparent;text-decoration:underline;font-size:12px}
.composer .photo-analysis-controls{border:0;background:transparent;padding:0 8px}
.composer .photo-analysis-controls legend,.composer .photo-analysis-controls>.tool-core{display:none}
.feature-consent-links{gap:0}.feature-consent-links button{font-size:11px}
@media(max-width:480px){.chat-header{min-width:0;flex-wrap:wrap}.chat-header .brand{white-space:normal}.html5-phone{font-size:11px}.composer-shell #message{max-width:100%;resize:none}.composer-shell{width:100%}.feature-consent-dialog{padding:16px}.speech-inline-help{padding-bottom:0}}
