/*
Theme Name: A1OSIS Technology Platform
Theme URI: https://a1osis.com/
Author: A1OSIS Technology Inc.
Author URI: https://a1osis.com/
Description: Official A1OSIS commercial technology and WooCommerce theme. Connects the WordPress storefront to the A1OSIS managed platform.
Version: 1.0.3
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 8.1
Text Domain: a1osis
*/

:root {
  --a1-bg: #020b14;
  --a1-panel: #071827;
  --a1-panel-2: #0a2133;
  --a1-line: rgba(40, 210, 255, .34);
  --a1-cyan: #25d4ff;
  --a1-blue: #087ff5;
  --a1-amber: #f4b63c;
  --a1-text: #edf6fb;
  --a1-muted: #94aabd;
  --a1-green: #31dc8b;
  --a1-mono: "Courier New", ui-monospace, monospace;
  --a1-sans: Arial, Helvetica, sans-serif;
}

* { box-sizing: border-box; }
html { background: var(--a1-bg); color-scheme: dark; }
body {
  background:
    radial-gradient(circle at 82% 16%, rgba(0, 130, 220, .14), transparent 30rem),
    var(--a1-bg);
  color: var(--a1-text);
  font-family: var(--a1-sans);
  margin: 0;
}
a { color: var(--a1-cyan); }
img { height: auto; max-width: 100%; }

.a1osis-native-header {
  align-items: center;
  background: rgba(2, 10, 18, .96);
  border-bottom: 1px solid rgba(37, 212, 255, .22);
  display: flex;
  gap: 30px;
  justify-content: space-between;
  min-height: 92px;
  padding: 18px clamp(20px, 4vw, 60px);
}
.a1osis-native-header img { display: block; width: min(220px, 48vw); }
.a1osis-native-header nav { display: flex; flex-wrap: wrap; gap: 24px; }
.a1osis-native-header nav a {
  color: #dce9f1;
  font-size: 13px;
  text-decoration: none;
}
.a1osis-native-header nav a:hover { color: var(--a1-cyan); }

.a1osis-native-main {
  margin: 0 auto;
  max-width: 1360px;
  min-height: 60vh;
  padding: 70px clamp(20px, 4vw, 60px);
}
.a1osis-native-main h1 {
  font-size: clamp(40px, 7vw, 86px);
  letter-spacing: -.055em;
  line-height: .96;
  margin: 0 0 24px;
}
.a1osis-native-main p { color: var(--a1-muted); line-height: 1.75; }
.a1osis-setup-notice {
  background: var(--a1-panel);
  border: 1px solid var(--a1-line);
  max-width: 760px;
  padding: 32px;
}
.a1osis-setup-notice strong {
  color: var(--a1-cyan);
  display: block;
  font-family: var(--a1-mono);
  letter-spacing: .08em;
  margin-bottom: 12px;
  text-transform: uppercase;
}

.a1osis-native-footer {
  border-top: 1px solid rgba(37, 212, 255, .22);
  color: var(--a1-muted);
  display: flex;
  flex-wrap: wrap;
  font-size: 12px;
  gap: 18px;
  justify-content: space-between;
  padding: 30px clamp(20px, 4vw, 60px);
}

/* Native A1OSIS member access */
.a1osis-member-login {
  background:
    linear-gradient(145deg, rgba(10, 33, 51, .96), rgba(3, 13, 23, .98));
  border: 1px solid var(--a1-line);
  box-shadow: 0 24px 80px rgba(0, 0, 0, .3);
  margin: 0 auto;
  max-width: 720px;
  padding: clamp(28px, 5vw, 54px);
}
.a1osis-member-login .a1osis-kicker {
  color: var(--a1-cyan);
  font-family: var(--a1-mono);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .13em;
  margin: 0 0 18px;
}
.a1osis-member-login h1 {
  font-size: clamp(38px, 7vw, 68px);
  letter-spacing: -.05em;
  line-height: 1;
  margin: 0 0 18px;
}
.a1osis-member-login form { margin-top: 28px; }
.a1osis-member-login label {
  color: #b8ccd8;
  display: block;
  font-family: var(--a1-mono);
  font-size: 11px;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.a1osis-member-login input[type="text"],
.a1osis-member-login input[type="password"] {
  background: #020c16;
  border: 1px solid rgba(87, 160, 198, .52);
  color: var(--a1-text);
  min-height: 50px;
  padding: 10px 13px;
  width: 100%;
}
.a1osis-member-login input[type="submit"],
.a1osis-member-button {
  background: linear-gradient(135deg, var(--a1-blue), var(--a1-cyan));
  border: 0;
  color: #00101c;
  cursor: pointer;
  display: inline-block;
  font-weight: 800;
  min-height: 48px;
  padding: 15px 24px;
  text-decoration: none;
}
.a1osis-member-login .login-remember label {
  align-items: center;
  display: flex;
  gap: 9px;
}
.a1osis-login-links {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin: 20px 0;
}
.a1osis-member-login small {
  color: var(--a1-muted);
  display: block;
  line-height: 1.6;
}

/* Native WooCommerce shell */
.woocommerce-page .site-main,
.woocommerce .site-main,
.a1osis-woocommerce {
  margin: 0 auto;
  max-width: 1280px;
  min-height: 65vh;
  padding: 60px clamp(20px, 4vw, 60px);
}
.woocommerce-page h1,
.woocommerce-page h2,
.woocommerce-page h3 { color: var(--a1-text); }
.woocommerce-page table.shop_table,
.woocommerce-page form.checkout,
.woocommerce-page .woocommerce-order,
.woocommerce-page .woocommerce-MyAccount-content,
.woocommerce-page .cart_totals,
.woocommerce-page .woocommerce-checkout-review-order {
  background: rgba(7, 24, 39, .92);
  border: 1px solid var(--a1-line) !important;
  border-radius: 0 !important;
  padding: 24px;
}
.woocommerce-page input.input-text,
.woocommerce-page textarea,
.woocommerce-page select,
.woocommerce-page .select2-selection {
  background: #020c16 !important;
  border: 1px solid rgba(87, 160, 198, .45) !important;
  border-radius: 0 !important;
  color: var(--a1-text) !important;
  min-height: 48px;
}
.woocommerce-page label {
  color: #b9cbd6;
  font-family: var(--a1-mono);
  font-size: 11px;
  letter-spacing: .05em;
  text-transform: uppercase;
}
.woocommerce-page button.button,
.woocommerce-page a.button,
.woocommerce-page input.button,
.woocommerce-page #payment #place_order {
  background: linear-gradient(135deg, var(--a1-blue), var(--a1-cyan)) !important;
  border: 0 !important;
  border-radius: 2px !important;
  color: #00101c !important;
  font-weight: 700 !important;
  min-height: 48px;
  padding: 14px 22px !important;
}
.woocommerce-page .woocommerce-info,
.woocommerce-page .woocommerce-message {
  background: var(--a1-panel);
  border-top-color: var(--a1-cyan);
  color: var(--a1-text);
}
.woocommerce-page .woocommerce-error {
  background: #28111a;
  border-top-color: #ff5878;
  color: #fff;
}
.woocommerce-page #payment {
  background: #061521 !important;
  border: 1px solid var(--a1-line);
  border-radius: 0 !important;
}
.woocommerce-page #payment div.payment_box {
  background: #0b2436 !important;
  color: #c7d7e0 !important;
}
.woocommerce-page #payment div.payment_box::before { border-bottom-color: #0b2436 !important; }
.woocommerce-page .order-total strong,
.woocommerce-page .amount { color: var(--a1-amber); }
.woocommerce-page a.remove { color: #ff607c !important; }

@media (max-width: 800px) {
  .a1osis-native-header { align-items: flex-start; flex-direction: column; }
  .a1osis-native-header nav { gap: 14px 20px; }
  .a1osis-native-main { padding-top: 45px; }
}
