.award-query-widget {
  --aq-font: inherit;
  --aq-bg: transparent;
  --aq-surface: #fff;
  --aq-text: #1c2430;
  --aq-muted: #667085;
  --aq-accent: #1f63d5;
  --aq-accent-contrast: #fff;
  --aq-border: #d8dee8;
  --aq-danger: #b42318;
  --aq-success: #067647;
  --aq-radius: 10px;
  --aq-shadow: 0 10px 28px rgba(16, 24, 40, .08);
  color: var(--aq-text);
  background: var(--aq-bg);
  font-family: var(--aq-font);
  line-height: 1.55;
}

.award-query-widget *,
.award-query-widget *::before,
.award-query-widget *::after { box-sizing: border-box; }
.aqw-shell { width: 100%; }
.aqw-title { margin: 0 0 8px; color: var(--aq-text); font: inherit; font-size: clamp(1.45rem, 4vw, 2rem); font-weight: 700; }
.aqw-intro { margin: 0 0 22px; color: var(--aq-muted); }
.aqw-form { display: grid; gap: 14px; }
.aqw-fields { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.aqw-field { display: grid; gap: 6px; min-width: 0; }
.aqw-label { color: var(--aq-text); font-size: .92rem; font-weight: 600; }
.aqw-input {
  width: 100%; min-height: 46px; margin: 0; border: 1px solid var(--aq-border);
  border-radius: var(--aq-radius); padding: 9px 12px; color: var(--aq-text);
  background: var(--aq-surface); font: inherit; line-height: 1.4;
}
.aqw-input::placeholder { color: var(--aq-muted); opacity: .85; }
.aqw-input:focus-visible, .aqw-button:focus-visible, .aqw-reset:focus-visible {
  outline: 3px solid var(--aq-accent); outline-color: color-mix(in srgb, var(--aq-accent) 35%, transparent); outline-offset: 2px;
}
.aqw-hint { margin: 0; color: var(--aq-muted); font-size: .84rem; }
.aqw-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.aqw-button, .aqw-reset {
  min-height: 44px; border-radius: var(--aq-radius); padding: 9px 20px;
  font: inherit; font-weight: 700; cursor: pointer;
}
.aqw-button { border: 1px solid var(--aq-accent); color: var(--aq-accent-contrast); background: var(--aq-accent); }
.aqw-button:hover:not(:disabled) { filter: brightness(.94); transform: translateY(-1px); }
.aqw-button:disabled { cursor: wait; opacity: .68; }
.aqw-reset { border: 1px solid var(--aq-border); color: var(--aq-text); background: var(--aq-surface); }
.aqw-status { min-height: 26px; margin: 18px 0 0; color: var(--aq-muted); }
.aqw-status[data-state="loading"]::before {
  display: inline-block; width: .9em; height: .9em; margin-right: 8px; border: 2px solid var(--aq-border);
  border-top-color: var(--aq-accent); border-radius: 50%; content: ""; vertical-align: -.08em;
  animation: aqw-spin .7s linear infinite;
}
.aqw-status[data-state="error"] { color: var(--aq-danger); }
.aqw-status[data-state="success"] { color: var(--aq-success); }
.aqw-results { display: grid; gap: 14px; margin-top: 16px; }
.aqw-results-heading { margin: 0; font: inherit; font-size: 1.08rem; font-weight: 700; }
.aqw-result { overflow: hidden; border: 1px solid var(--aq-border); border-radius: var(--aq-radius); background: var(--aq-surface); box-shadow: var(--aq-shadow); }
.aqw-result-title { margin: 0; padding: 14px 16px; color: var(--aq-text); background: var(--aq-surface); background: color-mix(in srgb, var(--aq-accent) 8%, var(--aq-surface)); font: inherit; font-weight: 700; }
.aqw-table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.aqw-table th, .aqw-table td { padding: 10px 16px; border-top: 1px solid var(--aq-border); text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.aqw-table th { width: min(34%, 180px); color: var(--aq-muted); font-weight: 600; }
.aqw-table td { color: var(--aq-text); }
.aqw-noscript { color: var(--aq-danger); }
@keyframes aqw-spin { to { transform: rotate(360deg); } }

@media (max-width: 680px) {
  .aqw-fields { grid-template-columns: 1fr; }
  .aqw-actions, .aqw-button, .aqw-reset { width: 100%; }
  .aqw-table th, .aqw-table td { padding: 9px 12px; }
  .aqw-table th { width: 38%; }
}
@media (prefers-reduced-motion: reduce) {
  .award-query-widget *, .award-query-widget *::before, .award-query-widget *::after {
    scroll-behavior: auto !important; animation-duration: .01ms !important;
    animation-iteration-count: 1 !important; transition-duration: .01ms !important;
  }
  .aqw-button:hover:not(:disabled) { transform: none; }
}

/* Site-specific presentation. The query behavior stays shared; each archive keeps its own visual language. */
.aqw-site-aaca {
  --aq-accent:#38d875; --aq-accent-contrast:#06110b; --aq-surface:#101713;
  --aq-text:#f1f6f2; --aq-muted:#9eaca3; --aq-border:rgba(255,255,255,.16); --aq-radius:4px; --aq-shadow:none;
}
.aqw-site-aaca .aqw-title { max-width:14ch; font-size:clamp(1.8rem,5vw,3.2rem); letter-spacing:-.04em; }
.aqw-site-aaca .aqw-form { padding-top:20px; border-top:1px solid var(--aq-border); }
.aqw-site-aaca .aqw-result { border-width:0 0 0 3px; border-color:var(--aq-accent); }
.aqw-site-aaca .aqw-result-title { padding:18px 20px; text-transform:uppercase; letter-spacing:.08em; font-size:.78rem; }

.aqw-site-bedasso {
  --aq-accent:#287c32; --aq-accent-contrast:#fff; --aq-text:#17351c; --aq-muted:#55705a;
  --aq-border:#9fbea5; --aq-radius:24px; --aq-shadow:0 14px 34px rgba(30,94,42,.1);
}
.aqw-site-bedasso .aqw-fields { grid-template-columns:1fr; }
.aqw-site-bedasso .aqw-input { border-width:2px; padding-inline:18px; }
.aqw-site-bedasso .aqw-result { border-radius:18px; }
.aqw-site-bedasso .aqw-result-title { background:#e7f3e8; color:#215f29; }
.aqw-site-bedasso .aqw-table th { color:#215f29; }

.aqw-site-gcross {
  --aq-accent:#8a5cff; --aq-accent-contrast:#fff; --aq-surface:#141122; --aq-text:#f7f5ff;
  --aq-muted:#aaa4bf; --aq-border:#3b315c; --aq-radius:0; --aq-shadow:8px 8px 0 #2b2148;
}
.aqw-site-gcross .aqw-shell { padding:clamp(20px,4vw,34px); border:1px solid var(--aq-border); background:#0e0c17; }
.aqw-site-gcross .aqw-title,.aqw-site-gcross .aqw-label,.aqw-site-gcross .aqw-result-title { text-transform:uppercase; letter-spacing:.055em; }
.aqw-site-gcross .aqw-result { border:1px solid #6d56af; }
.aqw-site-gcross .aqw-table th { font-family:ui-monospace,SFMono-Regular,Consolas,monospace; color:#bca9ff; }

.aqw-site-ocaa {
  --aq-accent:#1559d6; --aq-accent-contrast:#fff; --aq-text:#10244a; --aq-muted:#687896;
  --aq-border:#cfdaee; --aq-radius:16px; --aq-shadow:0 22px 50px rgba(21,89,214,.12);
}
.aqw-site-ocaa .aqw-fields { padding:16px; border-radius:16px; background:#f2f6fd; }
.aqw-site-ocaa .aqw-result-title { color:#0d49ad; }
.aqw-site-ocaa .aqw-table tr:nth-child(even) { background:#f7f9fd; }

.aqw-site-cae {
  --aq-accent:#007f78; --aq-accent-contrast:#fff; --aq-text:#163a3a; --aq-muted:#5c7777;
  --aq-border:#b9d7d4; --aq-radius:2px; --aq-shadow:none;
}
.aqw-site-cae .aqw-form { padding:22px; border-left:6px solid var(--aq-accent); background:#edf7f6; }
.aqw-site-cae .aqw-result { border-left:6px solid var(--aq-accent); }
.aqw-site-cae .aqw-result-title { background:#dcefed; }
.aqw-site-cae .aqw-table th { text-transform:uppercase; letter-spacing:.06em; font-size:.76rem; }

.aqw-site-osaka-archive {
  --aq-accent:#d92d20; --aq-accent-contrast:#fff; --aq-text:#171717; --aq-muted:#666;
  --aq-border:#cfcfcf; --aq-radius:0; --aq-shadow:none;
}
.aqw-site-osaka-archive .aqw-title { padding-left:18px; border-left:7px solid var(--aq-accent); font-weight:800; }
.aqw-site-osaka-archive .aqw-input { border-width:0 0 2px; padding-inline:2px; }
.aqw-site-osaka-archive .aqw-result { border-width:1px 0; }
.aqw-site-osaka-archive .aqw-result-title { background:#171717; color:#fff; }
.aqw-site-osaka-archive .aqw-table th { color:#b51f16; }

.aqw-site-osaka-jp {
  --aq-accent:#243e8f; --aq-accent-contrast:#fff; --aq-text:#17234a; --aq-muted:#5d6788;
  --aq-border:#c8cee2; --aq-radius:10px; --aq-shadow:0 20px 42px rgba(36,62,143,.1);
}
.aqw-site-osaka-jp .aqw-shell { padding:clamp(18px,4vw,34px); border-top:5px solid var(--aq-accent); background:#f6f7fb; }
.aqw-site-osaka-jp .aqw-actions { justify-content:flex-end; }
.aqw-site-osaka-jp .aqw-result-title { background:#e7eaf5; }
.aqw-site-osaka-jp .aqw-table th { color:#243e8f; }

.aqw-site-roca {
  --aq-accent:#8d1726; --aq-accent-contrast:#fff; --aq-text:#2a1518; --aq-muted:#765e62;
  --aq-border:#d7c5c8; --aq-radius:0; --aq-shadow:none;
}
.aqw-site-roca .aqw-title { font-size:clamp(2rem,5vw,3.7rem); font-weight:500; letter-spacing:-.045em; }
.aqw-site-roca .aqw-form { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; border-top:1px solid #8d1726; padding-top:22px; }
.aqw-site-roca .aqw-fields,.aqw-site-roca .aqw-hint { grid-column:1; }
.aqw-site-roca .aqw-actions { grid-column:2; grid-row:1 / span 2; }
.aqw-site-roca .aqw-result-title { padding:22px; color:#8d1726; background:#fff; font-size:1.25rem; }

.aqw-site-sfaaat {
  --aq-accent:#b38b2e; --aq-accent-contrast:#101b35; --aq-text:#101b35; --aq-muted:#647089;
  --aq-border:#cbd2df; --aq-radius:8px; --aq-shadow:0 18px 34px rgba(16,27,53,.1);
}
.aqw-site-sfaaat .aqw-shell { padding:clamp(20px,4vw,36px); border:2px solid #101b35; }
.aqw-site-sfaaat .aqw-button { color:#101b35; }
.aqw-site-sfaaat .aqw-result { border-top:5px solid #b38b2e; }
.aqw-site-sfaaat .aqw-result-title { background:#101b35; color:#fff; }
.aqw-site-sfaaat .aqw-table th { color:#7b5e18; }

.aqw-site-sgadc {
  --aq-accent:#0d7f4e; --aq-accent-contrast:#fff; --aq-text:#171a18; --aq-muted:#68706b;
  --aq-border:#cfd6d1; --aq-radius:5px; --aq-shadow:none;
}
.aqw-site-sgadc .aqw-title { display:none; }
.aqw-site-sgadc .aqw-intro { max-width:54ch; }
.aqw-site-sgadc .aqw-result { border-width:1px 0; }
.aqw-site-sgadc .aqw-result-title { padding:18px 0 12px; background:transparent; color:#0d7f4e; font-size:1.35rem; }
.aqw-site-sgadc .aqw-table th,.aqw-site-sgadc .aqw-table td { padding-inline:0; }

.aqw-site-ngadpa {
  --aq-accent:#e06b20; --aq-accent-contrast:#fff; --aq-text:#113156; --aq-muted:#62768d;
  --aq-border:#b9c8d8; --aq-radius:12px; --aq-shadow:none;
}
.aqw-site-ngadpa .aqw-form { padding:18px; border:1px solid #b9c8d8; border-bottom:5px solid #e06b20; }
.aqw-site-ngadpa .aqw-result { display:grid; grid-template-columns:minmax(180px,.45fr) 1fr; border:0; border-radius:0; border-bottom:1px solid #b9c8d8; }
.aqw-site-ngadpa .aqw-result-title { display:flex; align-items:center; background:#113156; color:#fff; }
.aqw-site-ngadpa .aqw-table th { color:#b24e10; }

@media (max-width:680px) {
  .aqw-site-roca .aqw-form { display:grid; grid-template-columns:1fr; }
  .aqw-site-roca .aqw-fields,.aqw-site-roca .aqw-hint,.aqw-site-roca .aqw-actions { grid-column:1; grid-row:auto; }
  .aqw-site-ngadpa .aqw-result { grid-template-columns:1fr; }
}
