[hidden]{display:none!important}:focus-visible{outline:3px solid #ad824f;outline-offset:3px}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}input,select,textarea{max-width:100%}input:not([type=checkbox]),textarea,select{border:1px solid #bdb9ae;border-radius:3px;background:#fff;color:#18342f;padding:10px;width:100%}textarea{height:auto!important}label{display:block;margin:12px 0}button{border:1px solid #173d34;border-radius:3px;background:#173d34;color:#fff;padding:10px 16px}form button{margin:10px 5px 10px 0}button:hover{background:#2b574a}a{text-underline-offset:3px}.result,.notice{white-space:pre-wrap;padding:10px 0}.result:empty{display:none}.trap{position:absolute;left:-10000px}.consent{display:flex;gap:10px;align-items:start;font-size:.85rem}.consent input{width:18px;height:18px;flex-shrink:0}.consent a,.portal a,.chat-panel a{text-decoration:underline}#mobile-menu{padding:15px 22px;background:var(--paper)}#mobile-menu a{display:block;padding:10px}.portal{max-width:900px;margin:40px auto;padding:28px;background:#fffdf8;border:1px solid #d7d1c4}.portal h1{font-size:2.8rem}.portal h2{font-family:Georgia,serif}.portal form{max-width:720px}.portal details{border:1px solid #d7d1c4;padding:18px;margin:12px 0}.portal summary{cursor:pointer;font-weight:bold}.portal p{overflow-wrap:anywhere}.admin-tabs,.row{display:flex;gap:8px;flex-wrap:wrap}.admin-tabs{border-bottom:1px solid #ddd;padding-bottom:20px;margin-bottom:20px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.stats>div{padding:20px;background:#e8eee5;display:flex;flex-direction:column}.stats strong{font-size:2rem}.transcript{max-height:420px;overflow:auto;border:1px solid #ccc;padding:15px}.transcript article{border-bottom:1px solid #ddd}.transcript p,.message p{white-space:pre-wrap;overflow-wrap:anywhere}.chat-launch{position:fixed;bottom:22px;right:22px;z-index:90;border-radius:30px;box-shadow:0 6px 24px #0003}.chat-panel{position:fixed;right:20px;bottom:82px;width:400px;max-width:calc(100vw - 24px);height:650px;max-height:calc(100dvh - 110px);z-index:95;background:#fffdf8;border:1px solid #b78952;border-radius:10px;box-shadow:0 10px 50px #0003;overflow:auto;padding:14px;display:flex;flex-direction:column}.chat-panel>header{display:flex;align-items:center;justify-content:space-between}.chat-panel header strong{font-size:.95rem}.chat-notice{font-size:.72rem;background:#efece3;padding:10px;margin:10px 0}.chat-panel button{font-size:.78rem;padding:7px 10px}.chat-panel label{font-size:.8rem}#chat-log{min-height:130px;overflow:auto;flex:1}.message{border-radius:5px;padding:10px;margin:8px 0;background:#e6eee6;font-size:.85rem}.message-visitor{background:#eee8de}.message-staff{border-left:4px solid #b78952;background:#f5ead6}.message-system{background:#eee;font-style:italic}.message time{display:block;font-size:.66rem;color:#52605c}.message p{margin:6px 0}.message a{display:block}#chat-options{display:flex;gap:5px;flex-wrap:wrap;margin:10px 0}#chat-options button{background:white;color:#173d34;border-color:#bcbcae;font-size:.7rem}#chat-error{font-size:.8rem;margin:5px 0}#chat-form textarea{width:100%}#chat-form label{margin:5px 0}.policy{max-width:850px}.approved-contact{padding:20px}.form-grid .full{grid-column:1/-1}#conversation-list{display:flex;gap:6px;flex-wrap:wrap;margin:20px 0}@media(max-width:600px){.portal{margin:15px;padding:18px}.stats{grid-template-columns:repeat(2,1fr)}.chat-panel{right:12px;bottom:74px}.chat-launch{bottom:15px;right:15px}.form-grid{grid-template-columns:1fr}.portal h1{font-size:2.1rem}}

.chat-panel{width:min(400px,calc(100% - 24px));max-width:none}.chat-panel>header{position:sticky;top:-14px;background:#fffdf8;z-index:3;flex-shrink:0;padding:8px 0}.chat-notice{flex-shrink:0;line-height:1.4}#chat-log{min-height:90px}#chat-options{max-height:110px;overflow:auto;flex-shrink:0}#chat-form,#chat-error{flex-shrink:0}

.reviewing>.form-grid,.reviewing>.consent,.reviewing>button{display:none}.review-panel{border:1px solid #b78952;padding:18px}.review-panel dd{margin:0 0 12px;white-space:pre-wrap;overflow-wrap:anywhere}
