#dc-order { --dc-teal:#109EAA; --dc-teal-dark:#0C7F88; --dc-panel:#222; --dc-field:#2c2c2c; --dc-line:#3a3a3a; --dc-text:#fff; --dc-muted:#b9b9b9; --dc-error:#e2544d;
font-family:'Manrope',sans-serif; font-size:16px; line-height:1.6; color:var(--dc-text); box-sizing:border-box; }
#dc-order *, #dc-order *::before, #dc-order *::after { box-sizing:inherit; }
#dc-order .dc-wrap { max-width:760px; margin:0 auto; }
#dc-order h2.dc-title { font-family:'Angkor',serif; font-size:48px; font-weight:400; line-height:1.15; margin:0 0 8px; text-align:center; }
#dc-order .dc-intro { text-align:center; color:var(--dc-muted); margin:0 0 32px; }
#dc-order h3.dc-step-title { font-family:'Angkor',serif; font-size:28px; font-weight:400; line-height:1.2; margin:0 0 6px; }
#dc-order .dc-step-help { color:var(--dc-muted); margin:0 0 28px; }
#dc-order .dc-progress { display:flex; gap:8px; margin:0 0 8px; }
#dc-order .dc-progress span { flex:1; height:4px; background:var(--dc-line); border-radius:2px; transition:background .3s; }
#dc-order .dc-progress span.is-on { background:var(--dc-teal); }
#dc-order .dc-progress-label { font-size:14px; color:var(--dc-muted); margin:0 0 24px; }
#dc-order .dc-panel { background:var(--dc-panel); border-radius:8px; padding:40px; }
#dc-order .dc-step { display:none; }
#dc-order .dc-step.is-active { display:block; animation:dc-in .25s ease-out; }
@keyframes dc-in { from{opacity:0; transform:translateY(6px)} to{opacity:1; transform:none} }
@media (prefers-reduced-motion:reduce){ #dc-order .dc-step.is-active{animation:none} }
#dc-order .dc-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
#dc-order .dc-field { margin:0 0 18px; }
#dc-order label.dc-label { display:block; font-weight:600; margin-bottom:6px; }
#dc-order label.dc-label span { color:var(--dc-muted); font-weight:400; }
#dc-order input[type=text], #dc-order input[type=email], #dc-order input[type=tel], #dc-order input[type=number], #dc-order select, #dc-order textarea {
width:100%; font:inherit; color:var(--dc-text); background:var(--dc-field); border:2px solid var(--dc-line); border-radius:6px; padding:12px 14px; transition:border-color .2s; -webkit-appearance:none; appearance:none; }
#dc-order select { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%23b9b9b9' stroke-width='2'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 14px center; padding-right:40px; }
#dc-order select option { background:#2c2c2c; }
#dc-order textarea { min-height:100px; resize:vertical; }
#dc-order input:focus, #dc-order select:focus, #dc-order textarea:focus { outline:none; border-color:var(--dc-teal); }
#dc-order .is-invalid input, #dc-order .is-invalid select, #dc-order .is-invalid textarea { border-color:var(--dc-error); }
#dc-order .dc-error { display:none; color:var(--dc-error); font-size:14px; margin-top:6px; }
#dc-order .is-invalid .dc-error, #dc-order .dc-error.is-shown { display:block; }
#dc-order .dc-check { display:flex; gap:12px; align-items:flex-start; cursor:pointer; }
#dc-order .dc-check input { width:20px; height:20px; margin:3px 0 0; accent-color:var(--dc-teal); flex:none; }
#dc-order .dc-hp { position:absolute; left:-9999px; } #dc-order .dc-types { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:16px; }
#dc-order .dc-type { position:relative; cursor:pointer; }
#dc-order .dc-type input { position:absolute; opacity:0; width:0; height:0; }
#dc-order .dc-type-body { border:2px solid var(--dc-line); border-radius:8px; padding:14px 16px; background:var(--dc-field); transition:border-color .2s, background .2s; display:block; }
#dc-order .dc-type-body strong { display:block; font-weight:700; }
#dc-order .dc-type-body small { color:var(--dc-muted); font-size:14px; }
#dc-order .dc-type input:checked + .dc-type-body { border-color:var(--dc-teal); background:#20363a; }
#dc-order .dc-type input:focus-visible + .dc-type-body { outline:3px solid var(--dc-teal); outline-offset:2px; } #dc-order .dc-swatches { display:flex; flex-wrap:wrap; gap:10px; }
#dc-order .dc-swatch { position:relative; cursor:pointer; }
#dc-order .dc-swatch input { position:absolute; opacity:0; width:0; height:0; }
#dc-order .dc-swatch-body { display:flex; align-items:center; gap:8px; border:2px solid var(--dc-line); border-radius:999px; padding:6px 14px 6px 6px; background:var(--dc-field); font-size:15px; transition:border-color .2s; }
#dc-order .dc-swatch-body i { width:22px; height:22px; border-radius:50%; display:block; border:1px solid rgba(255,255,255,.25); }
#dc-order .dc-swatch input:checked + .dc-swatch-body { border-color:var(--dc-teal); background:#20363a; }
#dc-order .dc-swatch input:focus-visible + .dc-swatch-body { outline:3px solid var(--dc-teal); outline-offset:2px; } #dc-order .dc-item { border:1px solid var(--dc-line); border-radius:8px; padding:20px 20px 4px; margin:0 0 16px; }
#dc-order .dc-item-head { display:flex; justify-content:space-between; align-items:center; margin-bottom:14px; font-weight:700; }
#dc-order .dc-remove { background:none; border:none; color:var(--dc-muted); font:inherit; font-size:14px; cursor:pointer; padding:0; text-decoration:underline; }
#dc-order .dc-remove:hover { color:var(--dc-text); }
#dc-order .dc-add { background:none; border:2px dashed var(--dc-line); border-radius:8px; color:var(--dc-text); font:inherit; font-weight:600; width:100%; padding:14px; cursor:pointer; transition:border-color .2s; }
#dc-order .dc-add:hover { border-color:var(--dc-teal); }
#dc-order .dc-note { background:#20363a; border-left:3px solid var(--dc-teal); border-radius:0 6px 6px 0; padding:12px 16px; font-size:15px; margin:20px 0 0; color:#d8eef0; } #dc-order .dc-summary { border:1px solid var(--dc-line); border-radius:8px; padding:16px 20px; margin-bottom:24px; }
#dc-order .dc-summary ul { list-style:none; margin:0; padding:0; }
#dc-order .dc-summary li { padding:6px 0; border-bottom:1px solid var(--dc-line); }
#dc-order .dc-summary li:last-child { border-bottom:0; }
#dc-order .dc-summary .dc-edit { color:var(--dc-teal); font-size:14px; text-decoration:underline; background:none; border:0; font-family:inherit; cursor:pointer; padding:0; margin-top:10px; } #dc-order .dc-nav { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:32px; }
#dc-order .dc-btn { font:inherit; font-weight:600; border-radius:6px; padding:14px 26px; cursor:pointer; border:2px solid transparent; transition:background .2s, border-color .2s; }
#dc-order .dc-btn-primary { background:var(--dc-teal); color:#fff; }
#dc-order .dc-btn-primary:hover { background:var(--dc-teal-dark); }
#dc-order .dc-btn-ghost { background:none; color:var(--dc-text); border-color:var(--dc-line); }
#dc-order .dc-btn-ghost:hover { border-color:var(--dc-muted); }
#dc-order .dc-btn:focus-visible { outline:3px solid var(--dc-teal); outline-offset:2px; }
#dc-order .dc-btn[disabled] { opacity:.6; cursor:wait; }
#dc-order .dc-success { text-align:center; padding:20px 0; }
#dc-order .dc-success .dc-tick { width:64px; height:64px; border-radius:50%; background:var(--dc-teal); margin:0 auto 20px; display:flex; align-items:center; justify-content:center; }
@media (max-width:640px){
#dc-order h2.dc-title { font-size:36px; }
#dc-order h3.dc-step-title { font-size:24px; }
#dc-order .dc-panel { padding:28px 20px; }
#dc-order .dc-row, #dc-order .dc-types { grid-template-columns:1fr; }
#dc-order .dc-row { gap:0; }
} #dc-order input:not([type=checkbox]):not([type=radio]), #dc-order select, #dc-order textarea { color:var(--dc-text) !important; background-color:var(--dc-field) !important; }
#dc-order input::placeholder, #dc-order textarea::placeholder { color:var(--dc-muted) !important; opacity:1 !important; }
#dc-order input::-webkit-input-placeholder, #dc-order textarea::-webkit-input-placeholder { color:var(--dc-muted) !important; opacity:1 !important; }
#dc-order input::-moz-placeholder, #dc-order textarea::-moz-placeholder { color:var(--dc-muted) !important; opacity:1 !important; }
#dc-order select option { color:var(--dc-text); background:var(--dc-field); }
#dc-order input:-webkit-autofill, #dc-order textarea:-webkit-autofill, #dc-order select:-webkit-autofill { -webkit-text-fill-color:var(--dc-text) !important; -webkit-box-shadow:0 0 0 1000px var(--dc-field) inset !important; caret-color:var(--dc-text); } #dc-order .dc-ranges { display:flex; flex-wrap:wrap; gap:12px 28px; }
#dc-order .dc-ranges .dc-check { align-items:center; }
#dc-order .dc-ranges .dc-check input { margin:0; } #dc-order .dc-type.is-disabled { opacity:.4; cursor:not-allowed; }
#dc-order .dc-type.is-disabled .dc-type-body small::after { content:' (adults only)'; }
#dc-order select:disabled { opacity:.6; cursor:not-allowed; }