/* Support page — restyled 2026-11-14 to the site's current design language
   (clean white premium cards, login type scale, blue pill CTA #0a62ec, no blue
   focus ring on inputs). Scoped to .sp-* only; markup/logic unchanged. */
.sp-bg{background:#f3f7fc;min-height:70vh}
.sp-wrap{max-width:640px;padding-top:18px;padding-bottom:28px}
.sp-head{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.sp-head-ic{flex:none;width:58px;height:58px;border-radius:18px;background:linear-gradient(180deg,#e8f0fc,#d7e6fc);color:#0a62ec;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}
.sp-head-tx h1{margin:0;font-size:26px;line-height:1.15;font-weight:800;letter-spacing:-.01em;color:#0f1d3a}
.sp-head-tx p{margin:4px 0 0;font-size:14px;line-height:1.4;color:#66738f}
.sp-card{background:#fff;border:1px solid #e6ebf3;border-radius:24px;padding:18px;box-shadow:0 10px 30px rgba(15,29,58,.07)}
.sp-card-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}
.sp-card-ic{flex:none;width:42px;height:42px;border-radius:50%;background:#e8f0fc;color:#0a62ec;display:flex;align-items:center;justify-content:center}
.sp-card-head h2{margin:0;font-size:17px;font-weight:800;color:#0f1d3a;line-height:1.25}
.sp-card-head p{margin:3px 0 0;font-size:13.5px;line-height:1.45;color:#66738f}
.sp-form{display:flex;flex-direction:column;gap:12px}
.sp-field{display:flex;flex-direction:column;gap:6px}
.sp-label{font-size:14px;font-weight:700;color:#0f1d3a}
.sp-req{color:#dc2626;font-weight:700}
.sp-input{position:relative;display:flex;align-items:center;gap:10px;min-height:52px;padding:0 14px;border:1.5px solid #dbe4f2;border-radius:16px;background:#fbfcfe;color:#0f1d3a;transition:border-color .15s}
.sp-input:focus-within{border-color:#b9cbe8}
.sp-input.sp-bad{border-color:#dc2626}
.sp-input .sp-ic{flex:none;color:#5b6b8c}
.sp-input input,.sp-input textarea{flex:1;min-width:0;border:0;outline:0;background:transparent;font:inherit;font-size:15px;color:#0f1d3a;padding:0}
.sp-input input{height:50px}
.sp-input input::placeholder,.sp-input textarea::placeholder{color:#94a3b8}
.sp-area{align-items:flex-start;padding:13px 14px 28px;min-height:118px}
.sp-area .sp-ic{margin-top:2px}
.sp-area textarea{resize:vertical;min-height:74px;line-height:1.5;width:100%}
.sp-count{position:absolute;right:14px;bottom:8px;font-size:12px;color:#66738f;pointer-events:none}
.sp-err{margin:0;font-size:12.5px;font-weight:600;color:#dc2626}
.sp-banner{margin:0;padding:10px 12px;border-radius:12px;font-size:13px;line-height:1.4;font-weight:600}
.sp-banner-err{background:#fef2f2;color:#b42318}
.sp-banner-ok{background:#ecfdf3;color:#067647}
.sp-submit{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:48px;border:0;border-radius:999px;background:#0a62ec;color:#fff;font-size:15.5px;font-weight:700;cursor:pointer;box-shadow:0 10px 22px rgba(10,98,236,.28);transition:background .2s}
.sp-submit:hover{background:#0a50c4}
.sp-submit:disabled{opacity:.65;cursor:not-allowed}
.sp-list-head{margin:24px 2px 10px}
.sp-list-head h2{margin:0;font-size:20px;font-weight:800;color:#0f1d3a;letter-spacing:-.01em}
.sp-list-head p{margin:3px 0 0;font-size:13.5px;color:#66738f}
.sp-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:18px 14px 20px}
.sp-empty h3{margin:6px 0 0;font-size:16px;font-weight:800;color:#0f1d3a}
.sp-empty p{margin:3px 0 0;font-size:13px;color:#66738f}
.sp-tickets{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.sp-ticket{background:#fff;border:1px solid #e6ebf3;border-radius:18px;padding:14px;box-shadow:0 4px 16px rgba(15,23,42,.05)}
.sp-t-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.sp-t-subj{margin:0;min-width:0;font-size:15px;font-weight:700;color:#0f1d3a;overflow-wrap:anywhere}
.sp-t-body{margin:4px 0 0;font-size:13px;line-height:1.45;color:#66738f;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sp-t-meta{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:8px;font-size:12px;color:#66738f}
.sp-st{flex:none;padding:3px 9px;border-radius:999px;background:#eef2f7;color:#475569;font-size:12px;font-weight:700;text-transform:capitalize;white-space:nowrap}
.sp-st-open{background:#e8f0fc;color:#0a62ec}
.sp-st-in_progress,.sp-st-pending{background:#fff4e0;color:#b45309}
.sp-st-resolved,.sp-st-closed{background:#e6f6ee;color:#067647}
@media(min-width:640px){.sp-wrap{padding-top:28px}.sp-card{padding:22px}}

/* Guest (signed-out) hero — a premium card like the rest of the site */
.sp-guest{max-width:640px;padding-top:22px;padding-bottom:30px}
.sp-hero{background:#fff;border:1px solid #e6ebf3;border-radius:24px;box-shadow:0 10px 30px rgba(15,29,58,.07);padding:30px 22px 26px;text-align:center}
.sp-hero-ic{width:66px;height:66px;margin:0 auto;border-radius:20px;background:linear-gradient(180deg,#e8f0fc,#d7e6fc);color:#0a62ec;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}
.sp-hero h1{margin:16px 0 0;font-size:26px;line-height:1.15;font-weight:800;letter-spacing:-.01em;color:#0f1d3a}
.sp-hero p{margin:8px auto 0;max-width:400px;font-size:15px;line-height:1.5;color:#66738f}
.sp-hero-btns{display:flex;gap:10px;margin-top:22px}
.sp-cta{flex:1.25;display:inline-flex;align-items:center;justify-content:center;height:46px;border-radius:999px;background:#0a62ec;color:#fff;font-size:15.5px;font-weight:700;text-decoration:none;box-shadow:0 10px 22px rgba(10,98,236,.28);transition:background .2s}
.sp-cta:hover{background:#0a50c4}
.sp-ghost{flex:1;display:inline-flex;align-items:center;justify-content:center;height:46px;border-radius:999px;background:#fff;color:#0f1d3a;font-size:15.5px;font-weight:700;text-decoration:none;border:1.5px solid #dbe4f2;transition:border-color .2s}
.sp-ghost:hover{border-color:#b9cbe8}
.sp-guest .sp-rules{margin-top:26px}

/* Rules & Regulations (booking policies) */
.sp-rules{margin:0 0 16px}
.sp-rules h2{margin:0 0 6px;font-size:20px;font-weight:800;letter-spacing:-.01em;color:#0f1d3a}
.sp-rule{background:#fff;border:1px solid #e6ebf3;border-radius:18px;margin-top:10px;padding:0 16px;box-shadow:0 4px 16px rgba(15,23,42,.05)}
.sp-rule summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0;font-size:15.5px;font-weight:700;color:#0f1d3a}
.sp-rule summary::-webkit-details-marker{display:none}
.sp-rule summary::after{content:"";flex:none;width:9px;height:9px;border-right:2px solid #4a5670;border-bottom:2px solid #4a5670;transform:rotate(45deg);transition:transform .2s}
.sp-rule[open] summary::after{transform:rotate(-135deg)}
.sp-rule p{margin:0;padding:0 0 16px;font-size:14px;line-height:1.6;color:#475569}

.sp-rules-more { margin: 14px 2px 0; font-size: 13.5px; line-height: 1.65; color: #70768f; }
.sp-rules-more a { color: #0c74ec; font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
