/* CSP-safe replacements for formerly inline presentation state. */
[hidden] { display: none !important; }
.is-hidden { display: none !important; }
.is-flex { display: flex !important; }
.is-block { display: block !important; }
.is-inline-block { display: inline-block !important; }
.is-invisible { visibility: hidden !important; }
.is-dimmed { opacity: 0.35 !important; }
.is-invalid { border-color: #ff6b8a !important; }
.is-prefilled { background: #fff8f1 !important; }
.is-service-hidden, .is-revision-hidden { display: none !important; }
.csp-submit-disabled { opacity: 0.5 !important; cursor: not-allowed !important; }
.csp-mailto-link { display: none !important; }
.csp-draft-action { display: none; margin-left: 12px; padding: 12px 20px; border: 0; border-radius: 10px; color: #fff; font-weight: 700; cursor: pointer; }
.csp-draft-action.is-visible { display: inline-block; }
.csp-draft-action--email { background: #f8b6c7; }
.csp-draft-action--browser { background: #d88a52; }
.csp-draft-note { display: none; margin-top: 10px; font-size: 13px; color: #6b7280; }
.csp-draft-note.is-visible { display: block; }
.csp-custom-service-input { width: calc(100% - 35px); box-sizing: border-box; margin-right: 4px; }
.csp-custom-service-remove { padding: 2px 6px; cursor: pointer; border: 1px solid #ccc; background: #f5f5f5; border-radius: 3px; font-size: 18px; line-height: 1; }
.csp-error-message { display: block; color: red; }

.csp-inline-1 { font-weight:600; }
.csp-inline-2 { display:contents; }
.csp-inline-3 { font-weight:500; }
.csp-inline-4 { margin:6px 0 0; font-size:11px; color:#dc2626; }
.csp-inline-5 { min-height:80px; }
.csp-inline-6 { background: #b45309; }
.csp-inline-7 { background: var(--gg-pink); }
.csp-inline-8 { margin-top: 8px; color: #666; }
.csp-inline-9 { grid-column: 1 / -1; }
.csp-inline-10 { font-size: 15px; margin-bottom: 10px; }
.csp-inline-11 { font-weight: 600; font-size: 15px; }
.csp-inline-12 { background: #f9f5f0; cursor: default; }
.csp-inline-13 { color: #6b7280; font-size: 11px; margin-top: 4px; }
.csp-inline-14 { font-size: 12px; color: #666; margin-bottom: 12px; }
.csp-inline-15 { min-width: 300px; }
.csp-inline-16 { border:none; background:transparent; }
.csp-inline-17 { padding: 8px 0 0 8px; border: none; background: transparent; }
.csp-inline-18 { padding:4px 12px; font-size:14px; }
.csp-inline-19 { padding-left:28px; color:#777; font-style:italic; font-size:0.88em; }
.csp-inline-20 { width:80px; }
.csp-inline-21 { display:inline-flex; align-items:center; gap:8px; }
.csp-inline-22 { width: 120px; }
.csp-inline-23 { width: 250px; }
.csp-inline-24 { width: 100px; }
