/* Shared visual refinement: grouped iOS surfaces, focused conversations. */
:root{--surface:#fff;--ink:#191b20;--body:#41464f;--muted:#69707b;--line:#e4e6eb;--radius:24px;--action:#0062cd;--soft-blue:#edf5ff;--soft-surface:#f5f6f8}
body{line-height:1.55}button,input,select,textarea{font-family:inherit}input,select,textarea{caret-color:var(--action)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.button{letter-spacing:0;font-size:14px;min-height:46px;border-radius:13px;transition:background .18s,transform .15s,box-shadow .18s}.button:active{transform:scale(.97)}.button.primary{box-shadow:0 3px 8px #0062cd13}.button.secondary{background:#eef2f8;color:#245e9e}.button:disabled{transform:none;opacity:.55}.icon-button{transition:transform .16s,background .16s}.icon-button:active{transform:scale(.92)}
body:not(.admin-page) main{max-width:890px;padding-top:30px}.site-header{height:76px;background:#f7f8fae8;border-bottom:1px solid #e4e6ec9c}.header-inner{max-width:1080px}.brand{font-size:21px;letter-spacing:-.7px}.header-inner nav{background:#e9ebf0;padding:4px}.header-inner nav a{font-size:13px;min-height:40px}.workspace{display:block!important;max-width:none!important}.form-card{border-radius:26px;background:var(--surface);padding:30px;border:1px solid #e9ebf0;box-shadow:0 10px 36px #1b345904}.card-heading{padding:0;background:none;border-radius:0;box-shadow:none}.card-heading h1,.track-heading h1{font-size:29px;letter-spacing:-1px;line-height:1.25}.service-notice{font-size:13px!important;line-height:1.8!important;color:var(--muted)!important;background:none!important;padding:0!important;margin-top:11px!important;margin-bottom:0!important}.stepper{margin:25px 0 28px;background:#f0f1f5;padding:5px}.stepper li{min-height:41px}.stepper li.current{box-shadow:0 2px 5px #1a233610}.question-title{padding:0;font-size:17px;margin-bottom:16px}.category-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:none;overflow:visible}.category{border:1px solid #e7e9ee;background:#fafbfd;border-radius:17px;min-height:92px;padding:16px;gap:12px;transition:border-color .2s,background .2s,transform .18s,box-shadow .2s}.category:after{display:none}.category:has(input:checked){background:#f0f7ff;border-color:#9fc6ed;box-shadow:0 0 0 2px #007aff08}.category:hover{border-color:#b8cce3;background:#f4f8fd}.category-icon{width:37px;height:37px;border-radius:11px}.category strong{font-size:15px;font-weight:600}.category small{font-size:11px;line-height:1.65}.radio-check{width:18px}.category-copy{padding-right:1px}.fields{padding:0;background:none;margin-top:20px;gap:21px}.field label,.field-label{color:var(--ink);font-size:13px;font-weight:550}.fields input,.fields textarea,select{background:#f9fafc;border-color:#c0c6d0;border-radius:12px}.fields textarea{min-height:160px}.file-drop{background:#f7faff;border-color:#a7bdd8;border-radius:15px;padding:23px 12px}.review{padding:0 20px;background:#f7f8fa;border-radius:16px}.selected-pill{margin-left:0}.form-actions{border-top:1px solid var(--line);padding-top:23px;margin-top:25px}.form-actions #next{max-width:100%}.success{margin-top:0;padding:15px 0;box-shadow:none}.save-warning{border-radius:17px}.reply-promise{border-radius:15px}.generated-id{background:#f5f7fa!important;border-color:#bdc7d6!important}.consent{padding:0;font-size:12px}.legal-links button{min-height:44px}.form-card .two-fields{gap:20px}
.track-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.eyebrow{font-size:11px;color:var(--muted);letter-spacing:.3px;margin:0 0 7px}.secure-session{font-size:11px;color:#2e7044;border-radius:20px;background:#edf8f0;padding:6px 10px;white-space:nowrap}.lookup-panel{margin-top:22px;border:1px solid var(--line);border-radius:14px;overflow:hidden}.lookup-panel summary{padding:13px 16px;font-size:13px;color:var(--body);cursor:pointer;min-height:47px}.lookup-panel .search-form{padding:0 14px 14px}.lookup-panel .search-form .field{flex-basis:auto}.lookup-panel .search-form .button{width:auto}.lookup-panel[open] summary{color:var(--action)}.ticket-head{padding-top:24px;margin-top:25px;align-items:flex-start}.ticket-head h3{font-size:23px;line-height:1.5;font-weight:650;letter-spacing:-.5px}.ticket-meta{font-size:12px;color:var(--muted);margin:7px 0 19px}.ticket-info{margin:18px 0;border-color:var(--line)}.ticket-info summary{font-weight:550;color:var(--body)}.conversation-heading-row{margin:24px 0 15px}.conversation-heading-row h3{font-size:18px}.conversation-heading-row .button{font-size:12px;min-height:40px;padding:9px 13px}.conversation{display:flex;flex-direction:column;gap:13px}.thread-message{margin:0;padding:17px 18px;border-radius:17px;background:#f3f5f8;animation:message-arrive .22s ease-out both}.thread-message.staff{background:#f3f5f8}.thread-message header{font-size:12px;line-height:1.6;gap:8px}.thread-message header strong{font-weight:600;color:#343b45}.thread-message p{font-size:14px;line-height:1.9;margin-top:9px}.thread-message header time{font-size:10px;color:var(--muted)}.message-foot{margin-top:10px}.thread-message.is-unread{box-shadow:inset 3px 0 #1976cb}.message-images{display:flex;gap:9px;flex-wrap:wrap;margin-top:12px}.message-images a{display:block;max-width:100%;border-radius:12px;overflow:hidden}.message-images img{display:block;width:180px;max-width:100%;height:140px;object-fit:cover;border:1px solid #dbe2ed;border-radius:12px}.thread-message.customer{background:#edf4ff}.thread-message.internal{background:#fff9e9;border:1px solid #f0dfb8;border-radius:13px}.thread-message.internal header strong{color:#825818}.thread-message.internal.is-unread{box-shadow:inset 3px 0 #b98520}body:not(.admin-page) .conversation .thread-message{max-width:90%;align-self:flex-start}body:not(.admin-page) .conversation .thread-message.customer{align-self:flex-end;background:#0865ca;color:white;border-bottom-right-radius:5px}body:not(.admin-page) .thread-message.customer header strong,body:not(.admin-page) .thread-message.customer header time{color:#e2efff}body:not(.admin-page) .thread-message.staff{border-bottom-left-radius:5px}.closure-summary:not(:empty){padding:17px 19px;background:#edf7f0;border:1px solid #d2e7d8;border-radius:15px;margin:20px 0;color:#2f6540}.closure-summary p{font-size:13px;line-height:1.8;margin-top:7px;white-space:pre-wrap;overflow-wrap:anywhere}.closure-summary strong{font-size:14px}
.compose-card{margin-top:22px;border:1px solid #dce2eb;border-radius:18px;background:#fff;padding:18px;box-shadow:0 5px 20px #25426305}.compose-card label{margin-bottom:8px;font-size:13px}.compose-card textarea{font-size:15px;line-height:1.8;min-height:120px;background:#f8fafd;border:1px solid #c8d0dd;border-radius:12px;width:100%;padding:13px}.compose-card textarea:focus{background:#fff}.compose-footer{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:14px}.compose-footer>span{font-size:11px;color:var(--muted);line-height:1.6}.compose-footer .button{min-width:94px;margin:0!important;width:auto!important;flex-shrink:0}.composer-attachments{display:flex;gap:13px;align-items:center;margin:10px 0 0;flex-wrap:wrap}.composer-attachments>span{font-size:10px;color:var(--muted)}.attach-button{position:relative;display:inline-flex!important;align-items:center;gap:6px;font-size:12px!important;font-weight:500;color:var(--action);padding:8px 10px;background:#f1f5fa;border-radius:9px;cursor:pointer;margin:0!important;min-height:38px;overflow:hidden}.attach-button svg{width:17px;height:17px}.attach-button input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.attach-button:has(input:focus-visible){outline:3px solid #8bbdee;outline-offset:2px}.compose-previews{display:flex;gap:10px;flex-wrap:wrap}.compose-previews:not(:empty){margin-top:13px}.compose-image{position:relative}.compose-image img{width:76px;height:68px;border-radius:10px;object-fit:cover;border:1px solid #d6deea}.compose-image button{position:absolute;top:-6px;right:-6px;width:26px;height:26px;border-radius:50%;border:2px solid white;background:#526477;color:#fff;font-size:17px;display:grid;place-items:center;padding:0}.reply-area{background:#fff}.unread-notice{background:#f1f7ff;border:1px solid #cddff1;border-radius:14px;color:#285880}.unread-notice time{font-size:10px}.unread-notice small{font-size:10px}.status-pill{background:#edf4ff;color:#185dab;border:1px solid #dceafb;font-size:11px;font-weight:550}.error{font-size:12px}.page-note{font-size:13px;color:var(--muted);line-height:1.8;margin-bottom:22px}
@keyframes message-arrive{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes surface-enter{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes dialog-enter{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}#step-content>*:not(.error),#content>.admin-heading,#content>.ticket-page-heading{animation:surface-enter .23s ease-out both}dialog[open]{animation:dialog-enter .2s ease-out both}dialog::backdrop{backdrop-filter:blur(3px)}
@media(max-width:760px){body:not(.admin-page) main{padding:16px 13px calc(106px + env(safe-area-inset-bottom));max-width:100%}.site-header{height:61px}.header-inner{padding-inline:19px}.brand{font-size:19px}.form-card{padding:22px 18px;border-radius:22px}.card-heading h1,.track-heading h1{font-size:27px}.stepper{margin:22px 0;font-size:11px}.category-grid{gap:9px}.category{display:flex;align-items:flex-start;flex-direction:column;min-height:133px;padding:14px;gap:10px}.category-icon{width:33px;height:33px;border-radius:10px}.category-icon svg{width:21px;height:21px}.category strong{font-size:14px}.category small{font-size:10px;line-height:1.55}.category .radio-check{position:absolute;top:19px;right:12px}.category-copy{padding:0}.fields{gap:20px}.fields input,.fields textarea,.compose-card textarea{font-size:16px}.form-card .two-fields{display:grid;grid-template-columns:1fr}.question-title{font-size:16px}.form-actions{margin-top:23px}.form-actions .button{font-size:15px}.lookup-panel .search-form{display:flex;flex-wrap:nowrap;gap:8px}.lookup-panel .search-form .field{min-width:0;flex:1}.lookup-panel .search-form .button{font-size:13px;padding-inline:13px;min-height:46px}.ticket-head h3{font-size:20px}.ticket-head{gap:11px}.ticket-meta{font-size:12px;line-height:1.8}.conversation{gap:11px}.thread-message{padding:14px 15px;max-width:95%!important}.thread-message p{font-size:15px;line-height:1.8}.thread-message header time{font-size:10px}.message-images img{width:160px;height:125px}.compose-card{padding:15px;border-radius:17px}.compose-footer{gap:10px;align-items:center}.compose-footer .button{font-size:14px;padding:11px 15px;min-height:45px}.compose-footer>span{font-size:10px}.attach-button{min-height:40px;font-size:12px!important}.composer-attachments{gap:8px}.composer-attachments>span{font-size:10px}.compose-image button{width:32px;height:32px;top:-7px;right:-7px}.conversation-heading-row{margin-top:22px}.conversation-heading-row .button{min-height:44px}.header-inner nav{height:65px;width:min(310px,calc(100% - 28px));border-radius:33px}.header-inner nav a{font-size:11px;height:54px}.header-inner nav a svg{width:22px;height:22px}.legal-content p{font-size:13px}.success{padding:7px 0}.save-warning h3{font-size:24px}.save-warning p{font-size:18px}.closure-summary:not(:empty){padding:15px}.generated-id{font-size:15px!important}footer{padding-inline:5px}.user-notifications{margin-bottom:17px}.field-note{font-size:12px}}
@media(max-width:350px){.form-card{padding:20px 15px}.category{padding:12px;min-height:133px}.category strong{font-size:13px}.category small{font-size:10px}.compose-footer{align-items:flex-end}.ticket-head h3{font-size:19px}.stepper li{gap:4px}.composer-attachments>span{width:100%;padding-left:2px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
