/* Customer workspace and translation service: shared storefront palette. */
.cw-page { margin:0; background:var(--va-bg,#f6f1e9); color:var(--va-text,#2e2925); font:16px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif; }
.cw-page * { box-sizing:border-box; }
.cw-page :where(a,button,input):focus-visible { outline:3px solid #b37762; outline-offset:3px; }
.cw-page a { color:inherit; text-decoration:none; }
.cw-wrap { max-width:1220px; padding:32px 24px 64px; margin:auto; }
.cw-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:26px; }
.cw-heading h1 { margin:4px 0 6px; font-size:clamp(29px,4vw,42px); line-height:1.15; letter-spacing:-.035em; }
.cw-kicker { margin:0 0 7px; color:var(--va-muted,#746b63); font-size:12px; font-weight:750; letter-spacing:.035em; }
.cw-muted { color:var(--va-muted,#746b63); margin:6px 0; overflow-wrap:anywhere; }
.cw-layout { display:grid; grid-template-columns:210px minmax(0,1fr); gap:24px; align-items:start; }
.cw-sidebar { position:sticky; top:90px; padding:12px; border:1px solid var(--va-border,#e2d8cc); border-radius:20px; background:var(--va-surface,#fffdf9); }
.cw-sidebar nav { display:grid; gap:4px; }
.cw-sidebar nav a { display:flex; justify-content:space-between; gap:10px; align-items:center; padding:12px; font-size:14px; font-weight:650; border-radius:11px; }
.cw-sidebar nav a[aria-current=page] { background:var(--va-accent,#9b4a3c); color:white; }
.cw-sidebar nav a:hover:not([aria-current]) { background:var(--va-surface-soft,#f2e9df); }
.cw-sidebar small { font-size:11px; border:1px solid currentColor; padding:0 6px; border-radius:12px; }
.cw-side-footer { border-top:1px solid var(--va-border,#e2d8cc); margin:10px 0 0; padding:12px; display:grid; gap:10px; font-size:13px; }
.cw-side-footer form { margin:0; }
.cw-side-footer button { font:inherit; padding:0; background:none; border:0; color:var(--va-muted,#746b63); cursor:pointer; }
.cw-content { min-width:0; display:grid; gap:20px; }
.cw-panel { padding:26px; border:1px solid var(--va-border,#e2d8cc); border-radius:22px; background:var(--va-surface,#fffdf9); box-shadow:0 12px 38px #49342607; min-width:0; }
.cw-panel h2 { margin:0 0 16px; font-size:22px; line-height:1.3; letter-spacing:-.02em; }
.cw-panel h3 { margin:0; font-size:18px; line-height:1.35; overflow-wrap:anywhere; }
.cw-section-head { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:15px; margin-bottom:18px; }
.cw-section-head h2 { margin:0; }
.cw-button { display:inline-flex; align-items:center; justify-content:center; padding:10px 17px; border:1px solid var(--va-border,#e2d8cc); border-radius:999px; background:var(--va-surface,#fffdf9); min-height:44px; font:inherit; font-size:14px; font-weight:650; line-height:1.3; cursor:pointer; color:var(--va-accent-strong,#71302f)!important; text-align:center; }
.cw-button.cw-primary { background:var(--va-accent,#9b4a3c); border-color:var(--va-accent,#9b4a3c); color:#fff!important; }
.cw-link { color:var(--va-accent-strong,#71302f)!important; font-size:13px; font-weight:700; text-underline-offset:3px; }
.cw-link:hover { text-decoration:underline; }
.cw-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.cw-stats a { display:flex; flex-direction:column; gap:14px; padding:22px; border:1px solid var(--va-border,#e2d8cc); border-radius:19px; background:var(--va-surface,#fffdf9); }
.cw-stats span { font-size:13px; color:var(--va-muted,#746b63); }
.cw-stats strong { font-size:32px; line-height:1; }
.cw-stats .cw-stat-accent { background:var(--va-accent,#9b4a3c); color:#fff; border-color:var(--va-accent,#9b4a3c); }
.cw-stats .cw-stat-accent span { color:#fff; }
.cw-empty { padding:24px 0; color:var(--va-muted,#746b63); margin:0; }
.cw-order { padding:20px 0; border-top:1px solid var(--va-border,#e2d8cc); min-width:0; }
.cw-order:first-of-type { border-top:0; padding-top:0; }
.cw-order-head { display:flex; align-items:flex-start; justify-content:space-between; flex-wrap:wrap; gap:16px; }
.cw-order-head>div { min-width:0; flex:1 1 220px; }
.cw-status { display:inline-flex; align-items:center; border:1px solid var(--va-border,#e2d8cc); background:var(--va-surface-soft,#f2e9df); padding:5px 10px; border-radius:999px; font-size:12px; font-weight:650; line-height:1.4; }
.cw-order-answered .cw-status { background:#e7f1e9; color:#315a3b; border-color:#c6dacb; }
.cw-order-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin:18px 0; }
.cw-order-facts dt { font-size:12px; color:var(--va-muted,#746b63); }
.cw-order-facts dd { margin:4px 0 0; font-size:16px; font-weight:700; overflow-wrap:anywhere; }
.cw-response { margin:14px 0; padding:15px 18px; border-radius:13px; background:var(--va-surface-soft,#f2e9df); border-left:3px solid var(--va-accent,#9b4a3c); }
.cw-response strong { font-size:13px; }
.cw-response p,.cw-note p { margin:5px 0 0; white-space:pre-wrap; overflow-wrap:anywhere; font-size:14px; }
.cw-note { margin:12px 0; color:var(--va-muted,#746b63); font-size:13px; }
.cw-note summary { cursor:pointer; }
.cw-mini-books { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.cw-mini-books a { padding:16px; background:var(--va-surface-soft,#f2e9df); border:1px solid var(--va-border,#e2d8cc); border-radius:14px; display:grid; gap:10px; }
.cw-mini-books strong { font-size:15px; line-height:1.35; overflow-wrap:anywhere; }
.cw-mini-books span { font-size:12px; color:var(--va-muted,#746b63); }
.cw-mini-books small { color:var(--va-accent-strong,#71302f); font-weight:700; }
.cw-sub-summary { display:flex; justify-content:space-between; align-items:center; gap:20px; }
.cw-sub-summary h2 { margin:0; }
.cw-books { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.cw-book { padding:18px; border:1px solid var(--va-border,#e2d8cc); border-radius:17px; min-width:0; }
.cw-book-top { display:grid; grid-template-columns:70px minmax(0,1fr); gap:14px; }
.cw-book img,.cw-cover-placeholder { width:70px; height:104px; object-fit:cover; border-radius:8px; }
.cw-cover-placeholder { display:grid; place-items:center; font-size:28px; font-weight:800; background:var(--va-surface-soft,#f2e9df); color:var(--va-accent,#9b4a3c); }
.cw-book h3 { font-size:16px; }
.cw-book .cw-muted { font-size:13px; }
.cw-actions,.cw-language-links,.cw-badges { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
.cw-language-links a,.cw-badges span { padding:4px 8px; border-radius:8px; border:1px solid var(--va-border,#e2d8cc); background:var(--va-surface-soft,#f2e9df); font-size:11px; }
.cw-language-links a { min-height:36px; min-width:36px; display:grid; place-items:center; }
.cw-search { display:flex; flex-wrap:wrap; gap:8px; }
.cw-search input { min-height:44px; width:220px; max-width:100%; padding:10px 13px; border:1px solid var(--va-border,#e2d8cc); border-radius:12px; font:inherit; background:var(--va-surface,#fffdf9); color:inherit; }
.cw-table-wrap { overflow:auto; margin-top:20px; }
.cw-table { width:100%; min-width:580px; border-collapse:collapse; font-size:14px; }
.cw-table :where(th,td) { text-align:left; padding:15px 10px; border-bottom:1px solid var(--va-border,#e2d8cc); vertical-align:top; }
.cw-table th { color:var(--va-muted,#746b63); font-size:12px; font-weight:650; }
.cw-table a { color:var(--va-accent-strong,#71302f); text-decoration:underline; text-underline-offset:3px; }
.cw-pagination { display:flex; justify-content:center; gap:15px; align-items:center; margin-top:24px; }
.cw-profile { display:grid; gap:15px; margin:20px 0; }
.cw-profile dt { font-size:12px; color:var(--va-muted,#746b63); }
.cw-profile dd { margin:3px 0 0; overflow-wrap:anywhere; }
.cw-notice { padding:16px; border:1px solid #c6dacb; border-radius:14px; background:#e7f1e9; color:#315a3b; }
.cw-error { background:#f9e8e5; color:#8b3e34; border-color:#e6c4bc; }
.cw-page :where(.birth-date-card,.gift-redeem-card) { margin:0; padding:26px; border:1px solid var(--va-border,#e2d8cc); border-radius:22px; background:var(--va-surface,#fffdf9); color:var(--va-text,#2e2925); box-shadow:none; }
.cw-page :where(.birth-date-card,.gift-redeem-card) :where(p,label,h2) { color:var(--va-text,#2e2925); }
.cw-page :where(.birth-date-card,.gift-redeem-card) input { background:var(--va-surface-soft,#f2e9df); color:var(--va-text,#2e2925); border-color:var(--va-border,#e2d8cc); }
/* The request page shares navigation, surfaces and controls with the storefront. */
body.tq-public { background:var(--va-bg,#f6f1e9); color:var(--va-text,#2e2925); }
.tq-public .tq-wrap { max-width:1180px; padding-top:34px; }
.tq-public .tq-intro h1 { color:var(--va-text,#2e2925); font-size:clamp(30px,4.6vw,48px); }
.tq-public :where(.tq-intro>p:last-child,.tq-muted,.tq-small,.tq-steps li,.tq-eyebrow,.tq-card details p) { color:var(--va-muted,#746b63); }
.tq-public .tq-card { background:var(--va-surface,#fffdf9); color:var(--va-text,#2e2925); border-color:var(--va-border,#e2d8cc); border-radius:22px; box-shadow:0 14px 38px #49342608; }
.tq-public :where(.tq-languages button,.tq-button,.tq-card input:not([type=checkbox]),.tq-card select,.tq-card textarea) { color:var(--va-text,#2e2925); background:var(--va-surface,#fffdf9); border-color:var(--va-border,#e2d8cc); }
.tq-public :where(.tq-languages button[aria-pressed=true],.tq-button-primary) { color:#fff!important; background:var(--va-accent,#9b4a3c); border-color:var(--va-accent,#9b4a3c); }
.tq-public .tq-button { border-radius:999px; }
.tq-public .tq-summary { top:90px; }
.tq-public .tq-account-return { display:inline-block; margin-bottom:20px; font-size:13px; color:var(--va-accent-strong,#71302f); }
@media(max-width:1000px) { .cw-layout { grid-template-columns:175px minmax(0,1fr); gap:18px; } .cw-books,.cw-mini-books { grid-template-columns:minmax(0,1fr); } }
@media(max-width:760px) { .cw-wrap { padding:22px 14px 40px; } .cw-heading { align-items:flex-start; flex-direction:column; gap:14px; } .cw-layout { grid-template-columns:minmax(0,1fr); } .cw-sidebar { position:static; padding:8px; } .cw-sidebar nav { grid-template-columns:repeat(2,minmax(0,1fr)); } .cw-sidebar nav a { font-size:13px; padding:11px 9px; } .cw-side-footer { display:flex; justify-content:space-between; } .cw-panel { padding:20px; } .cw-stats { gap:8px; } .cw-stats a { padding:15px 12px; gap:10px; } .cw-stats span { font-size:11px; } .cw-stats strong { font-size:27px; } .cw-sub-summary { align-items:flex-start; flex-direction:column; } .cw-order-facts { grid-template-columns:minmax(0,1fr); } .cw-search,.cw-search input { width:100%; } .tq-public .tq-summary { position:static; } }
