:root{
    --bg:#081C10;
    --panel:#0E2A1B;
    --panel-light:#123421;
    --white:#FFFFFF;
    --green:#6FCF4C;
    --green-bright:#8CE85B;
    --green-dark:#1F5C33;
    --muted:#A9BBAE;
    --line:#1C4429;
    --amber:#E8B84B;
    --amber-bg:#2A2612;
    --danger:#FF6B5E;
    --radius:10px;
  }
  *{box-sizing:border-box;}
  html,body{margin:0;padding:0;}
  body{
    background:var(--bg);
    color:var(--white);
    font-family:'Inter',system-ui,sans-serif;
    line-height:1.5;
    -webkit-font-smoothing:antialiased;
  }
  h1,h2,h3{
    font-family:'Poppins',system-ui,sans-serif;
    margin:0;
    letter-spacing:-0.01em;
  }
  .mono{font-family:'JetBrains Mono',monospace;}
  a{color:var(--green-bright);}

  .page{
    max-width:1180px;
    margin:0 auto;
    padding:0 20px 80px;
  }

  .hero-banner{
    width:100%;
    max-width:520px;
    display:block;
    margin:0 auto;
    border-radius:0 0 var(--radius) var(--radius);
    box-shadow:0 20px 60px rgba(0,0,0,0.5);
  }

  header.intro{
    padding:36px 20px 24px;
    max-width:1180px;
    margin:0 auto;
    text-align:center;
  }
  header.intro .eyebrow{
    font-family:'JetBrains Mono',monospace;
    font-size:12px;
    letter-spacing:0.14em;
    text-transform:uppercase;
    color:var(--green-bright);
    margin-bottom:10px;
  }
  header.intro h1{
    font-size:clamp(24px,3.6vw,34px);
    font-weight:700;
    color:var(--white);
  }
  header.intro p{
    color:var(--muted);
    margin:10px auto 0;
    max-width:56ch;
    font-size:15px;
  }

  .layout{
    display:grid;
    grid-template-columns:1.5fr 1fr;
    gap:28px;
    align-items:start;
    margin-top:30px;
  }
  @media (max-width:880px){
    .layout{grid-template-columns:1fr;}
    .summary-col{order:-1;}
  }

  .card{
    background:var(--panel);
    border:1px solid var(--line);
    border-radius:var(--radius);
    padding:24px;
    margin-bottom:20px;
  }
  .card h2{
    font-size:18px;
    font-weight:600;
    margin-bottom:4px;
    color:var(--white);
  }
  .card .sub{
    color:var(--muted);
    font-size:13px;
    margin-bottom:18px;
  }
  .section-index{
    font-family:'JetBrains Mono',monospace;
    font-size:12px;
    color:var(--green-bright);
    background:rgba(111,207,76,0.12);
    display:inline-block;
    padding:2px 8px;
    border-radius:5px;
    margin-bottom:10px;
    letter-spacing:0.04em;
  }

  .field{margin-bottom:14px;}
  .field label{
    display:block;
    font-size:13px;
    font-weight:500;
    margin-bottom:6px;
    color:var(--muted);
  }
  .field .req{color:var(--danger);}
  .field input[type=text],
  .field input[type=email],
  .field input[type=tel],
  .field input[type=number],
  .field select,
  .field textarea{
    width:100%;
    padding:10px 12px;
    border:1px solid var(--line);
    border-radius:8px;
    font-family:inherit;
    font-size:14px;
    color:var(--white);
    background:var(--bg);
    transition:border-color .15s, box-shadow .15s;
  }
  .field select{
    appearance:none;
    -webkit-appearance:none;
    background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238CE85B' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position:right 12px center;
    background-size:16px;
    padding-right:36px;
  }
  .field select option{ background:var(--panel); color:var(--white); }
  .field input::placeholder, .field textarea::placeholder{color:#5C7264;}
  .field input:focus,
  .field select:focus,
  .field textarea:focus{
    outline:none;
    border-color:var(--green);
    box-shadow:0 0 0 3px rgba(111,207,76,0.18);
    background-color:#0A2114;
  }
  .field textarea{resize:vertical; min-height:78px;}

  .grid-2{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px 16px;
  }
  @media (max-width:560px){ .grid-2{grid-template-columns:1fr;} }

  .item-row{
    border:1px dashed var(--line);
    border-radius:8px;
    padding:14px;
    margin-bottom:12px;
    position:relative;
    background:var(--panel-light);
  }
  .item-row .row-grid{
    display:grid;
    grid-template-columns:2fr 1fr 1fr auto;
    gap:10px;
    align-items:end;
  }
  @media (max-width:640px){
    .item-row .row-grid{grid-template-columns:1fr 1fr; }
    .item-row .row-grid .remove-btn{grid-column:1/-1;}
  }
  .item-row .field{margin-bottom:0;}
  .line-total{
    font-family:'JetBrains Mono',monospace;
    font-size:12px;
    color:var(--muted);
    margin-top:8px;
  }

  .price-list-panel{
    margin-top:18px;
    border:1px solid var(--line);
    border-radius:8px;
    background:var(--panel-light);
    overflow:hidden;
  }
  .price-list-head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    padding:14px;
    border-bottom:1px solid var(--line);
  }
  .price-list-title{
    font-size:14px;
    font-weight:700;
    color:var(--white);
  }
  .price-list-count{
    font-family:'JetBrains Mono',monospace;
    font-size:11px;
    color:var(--green-bright);
    white-space:nowrap;
  }
  .price-list-search{
    padding:12px 14px;
    border-bottom:1px solid var(--line);
  }
  .price-list-search input{
    width:100%;
    padding:10px 12px;
    border:1px solid var(--line);
    border-radius:8px;
    font-family:inherit;
    font-size:14px;
    color:var(--white);
    background:var(--bg);
  }
  .price-list-table-wrap{
    max-height:360px;
    overflow:auto;
  }
  .price-list-table{
    width:100%;
    border-collapse:collapse;
    font-size:13px;
  }
  .price-list-table th,
  .price-list-table td{
    padding:9px 12px;
    border-bottom:1px dotted var(--line);
    vertical-align:middle;
  }
  .price-list-table th{
    position:sticky;
    top:0;
    z-index:1;
    background:var(--panel);
    color:var(--muted);
    text-align:left;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:0.08em;
  }
  .price-list-table td.price{
    font-family:'JetBrains Mono',monospace;
    color:var(--amber);
    white-space:nowrap;
    text-align:right;
  }
  .price-list-table th.price-head{text-align:right;}
  .price-list-table .add-price-item{
    padding:5px 9px;
    font-size:12px;
    white-space:nowrap;
  }
  .price-list-empty{
    padding:16px;
    color:var(--muted);
    font-size:13px;
  }

  button{
    font-family:'Inter',system-ui,sans-serif;
    cursor:pointer;
    border-radius:8px;
    border:1px solid transparent;
    font-size:14px;
    font-weight:500;
    padding:10px 16px;
  }
  .btn-ghost{
    background:var(--bg);
    border:1px solid var(--line);
    color:var(--white);
  }
  .btn-ghost:hover{border-color:var(--green);}
  .btn-remove{
    background:transparent;
    color:var(--danger);
    border:1px solid rgba(255,107,94,0.35);
    white-space:nowrap;
  }
  .btn-remove:hover{background:rgba(255,107,94,0.08);}
  .btn-add{
    background:transparent;
    border:1px dashed var(--green);
    color:var(--green-bright);
    width:100%;
    margin-top:2px;
  }
  .btn-add:hover{background:rgba(111,207,76,0.1);}

  .bank-details{
    background:var(--panel-light);
    border:1px solid var(--line);
    border-radius:8px;
    padding:4px 16px;
  }
  .bank-row{
    display:flex;
    justify-content:space-between;
    gap:12px;
    padding:11px 0;
    border-bottom:1px dotted var(--line);
    font-size:14px;
  }
  .bank-row:last-child{border-bottom:none;}
  .bank-label{color:var(--muted);}
  .bank-value{color:var(--white); font-weight:600; text-align:right;}
  .bank-value.mono{font-family:'JetBrains Mono',monospace; letter-spacing:0.03em;}
  .bank-hint{
    font-size:12.5px;
    color:var(--green-bright);
    margin-top:10px;
    font-family:'JetBrains Mono',monospace;
  }
  .bank-warning{
    font-size:12.5px;
    color:var(--amber);
    background:var(--amber-bg);
    border:1px solid rgba(232,184,75,0.3);
    border-radius:8px;
    padding:10px 12px;
    margin-top:10px;
    line-height:1.5;
  }
  .copy-mini{
    padding:3px 10px;
    font-size:11px;
    font-family:'Inter',system-ui,sans-serif;
    font-weight:600;
    flex-shrink:0;
  }
  .bank-row{ flex-wrap:wrap; }

  .file-drop{
    border:1px dashed var(--line);
    border-radius:8px;
    padding:16px;
    text-align:left;
    background:var(--panel-light);
  }
  .file-drop .filename{
    font-size:13px;
    color:var(--muted);
    margin-top:8px;
    font-family:'JetBrains Mono',monospace;
  }
  .file-drop input[type=file]{display:none;}

  .btn-primary{
    background:linear-gradient(135deg,var(--green) 0%,var(--green-dark) 100%);
    color:#08170D;
    width:100%;
    padding:14px 18px;
    font-size:15px;
    font-weight:700;
    border:none;
    letter-spacing:0.02em;
  }
  .btn-primary:hover{filter:brightness(1.08);}
  .btn-primary:disabled{opacity:.6; cursor:not-allowed;}

  .error-banner{
    display:none;
    background:rgba(255,107,94,0.12);
    border:1px solid rgba(255,107,94,0.35);
    color:#FFB3AA;
    padding:12px 14px;
    border-radius:8px;
    font-size:13px;
    margin-bottom:16px;
  }

  .summary-col{position:sticky; top:20px;}
  .receipt{
    background:var(--panel);
    border:1px solid var(--line);
    border-radius:var(--radius);
    overflow:hidden;
  }
  .receipt-head{
    padding:20px 22px 14px;
    border-bottom:1px dashed var(--line);
  }
  .receipt-head .tag{
    font-family:'JetBrains Mono',monospace;
    font-size:11px;
    letter-spacing:0.1em;
    text-transform:uppercase;
    color:var(--muted);
  }
  .receipt-head h3{
    font-size:17px;
    margin-top:4px;
    color:var(--white);
  }
  .receipt-body{padding:16px 22px;}
  .receipt-line{
    display:flex;
    justify-content:space-between;
    gap:10px;
    font-family:'JetBrains Mono',monospace;
    font-size:12.5px;
    color:var(--white);
    padding:6px 0;
    border-bottom:1px dotted var(--line);
  }
  .receipt-line .name{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    max-width:60%;
  }
  .receipt-line .val{color:var(--muted);}
  .receipt-empty{
    color:var(--muted);
    font-size:12.5px;
    font-style:italic;
    padding:10px 0;
  }
  .receipt-total{
    display:flex;
    justify-content:space-between;
    align-items:baseline;
    background:var(--amber-bg);
    margin:14px -22px -16px;
    padding:16px 22px;
    border-top:1px dashed var(--line);
  }
  .receipt-total .label{
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:0.08em;
    color:var(--amber);
    font-weight:600;
  }
  .receipt-total .amount{
    font-family:'JetBrains Mono',monospace;
    font-size:22px;
    font-weight:700;
    color:var(--amber);
  }
  .receipt-note{
    font-size:12px;
    color:var(--muted);
    padding:14px 22px 20px;
  }

  .success-panel{
    display:none;
    background:rgba(111,207,76,0.12);
    border:1px solid rgba(111,207,76,0.35);
    color:var(--green-bright);
    padding:16px 18px;
    border-radius:10px;
    font-size:13.5px;
    margin-bottom:20px;
  }
  .success-panel strong{display:block; margin-bottom:4px; font-size:14px; color:var(--white);}

  footer{
    text-align:center;
    color:var(--muted);
    font-size:12px;
    padding:30px 20px 10px;
  }
  footer a{color:var(--green-bright);}

  .pay-options{display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:18px;}
  @media (max-width:560px){ .pay-options{grid-template-columns:1fr;} }
  .pay-option{
    display:flex; gap:12px; align-items:flex-start;
    background:var(--panel-light); border:1px solid var(--line); border-radius:8px;
    padding:14px; cursor:pointer; transition:border-color .15s, background .15s;
  }
  .pay-option:hover{border-color:var(--green-dark);}
  .pay-option input{margin-top:3px; accent-color:var(--green);}
  .pay-option.selected{border-color:var(--green); background:rgba(111,207,76,0.08);}
  .pay-option.disabled{opacity:.55; cursor:not-allowed;}
  .pay-option .t, .pay-option .d{display:block;}
  .pay-option .t{font-weight:600; color:var(--white); font-size:14px;}
  .pay-option .d{color:var(--muted); font-size:12.5px; margin-top:2px;}
  .pay-panel{display:none;}
  .pay-panel.active{display:block;}
  #paypal-button-container{margin-top:14px; min-height:50px; background:#fff; border-radius:8px; padding:12px;}
  .paypal-status{font-size:13px; color:var(--muted); margin-top:10px;}
  .usd-line{font-size:12.5px; color:var(--amber); padding:10px 22px 0; text-align:right;}
  .field input[readonly]{color:var(--muted); cursor:default;}
  .layout > div, .row-grid > *, .grid-2 > *{min-width:0;}
  .field select{max-width:100%; text-overflow:ellipsis;}
  .sandbox-flag{display:inline-block; background:var(--amber-bg); color:var(--amber); border:1px solid var(--amber); border-radius:5px; font-size:11px; padding:1px 6px; margin-left:6px; font-family:'JetBrains Mono',monospace;}

/* ---------- Site-wide additions ---------- */
.field input[type=password]{
  width:100%; padding:10px 12px; border:1px solid var(--line); border-radius:8px;
  font-family:inherit; font-size:14px; color:var(--white); background:var(--bg);
}
.field input[type=password]:focus{outline:none; border-color:var(--green); box-shadow:0 0 0 3px rgba(111,207,76,0.18);}
.field input[readonly]{color:var(--muted); cursor:default;}
[hidden]{display:none !important;}

.topbar{border-bottom:1px solid var(--line); background:rgba(8,28,16,0.92); position:sticky; top:0; z-index:20; backdrop-filter:blur(6px);}
.topbar-inner{max-width:1180px; margin:0 auto; padding:12px 20px; display:flex; align-items:center; gap:16px; flex-wrap:wrap;}
.brand{font-family:'Poppins',sans-serif; font-weight:700; color:var(--white); text-decoration:none; font-size:16px; margin-right:auto;}
.brand span{color:var(--green-bright);}
.nav{display:flex; gap:6px; flex-wrap:wrap; align-items:center;}
.nav a, .nav button{
  color:var(--muted); text-decoration:none; font-size:13.5px; padding:7px 11px; border-radius:7px;
  background:none; border:1px solid transparent; cursor:pointer; font-family:inherit; font-weight:500;
}
.nav a:hover, .nav button:hover{color:var(--white); border-color:var(--line);}
.nav a.active{color:var(--green-bright); background:rgba(111,207,76,0.1);}
.nav .who{color:var(--muted); font-size:12.5px; padding:0 6px;}

.narrow{max-width:460px; margin:40px auto; padding:0 16px;}
.mid{max-width:900px; margin:30px auto 80px; padding:0 20px;}
.wide{max-width:1180px; margin:30px auto 80px; padding:0 20px;}
.page-title{font-size:clamp(22px,3vw,28px); margin:0 0 6px;}
.page-sub{color:var(--muted); margin:0 0 22px; font-size:14px;}

.tabs{display:flex; gap:4px; border-bottom:1px solid var(--line); margin-bottom:20px; overflow-x:auto;}
.tab{background:none; border:none; border-bottom:2px solid transparent; color:var(--muted); padding:10px 14px;
  font-family:inherit; font-size:14px; font-weight:600; cursor:pointer; white-space:nowrap;}
.tab.active{color:var(--green-bright); border-bottom-color:var(--green);}
.tab:hover{color:var(--white);}

.btn{display:inline-block; border-radius:8px; padding:9px 14px; font-family:inherit; font-size:13.5px; font-weight:600; cursor:pointer; text-decoration:none; border:1px solid var(--line);}
.btn.small{padding:6px 10px; font-size:12.5px;}
.btn.green{background:var(--green); color:#08170D; border-color:var(--green);}
.btn.green:hover{filter:brightness(1.08);}
.btn.ghost{background:var(--bg); color:var(--white);}
.btn.ghost:hover{border-color:var(--green);}
.btn.danger{background:transparent; color:var(--danger); border-color:rgba(255,107,94,0.35);}
.btn:disabled{opacity:.55; cursor:not-allowed;}
.link{background:none; border:none; color:var(--green-bright); cursor:pointer; font-family:inherit; font-size:13px; padding:0; text-decoration:underline;}

.msg{border-radius:8px; padding:11px 14px; font-size:13.5px; margin-bottom:14px;}
.msg.err{background:rgba(255,107,94,0.12); border:1px solid rgba(255,107,94,0.35); color:#FFB3AA;}
.msg.ok{background:rgba(111,207,76,0.1); border:1px solid rgba(111,207,76,0.35); color:var(--green-bright);}

.table-wrap{overflow-x:auto; border:1px solid var(--line); border-radius:8px;}
table.data{width:100%; border-collapse:collapse; font-size:13.5px;}
table.data th{text-align:left; color:var(--muted); font-weight:600; font-size:11.5px; letter-spacing:.06em; text-transform:uppercase; padding:10px 12px; background:var(--panel-light); border-bottom:1px solid var(--line); white-space:nowrap;}
table.data td{padding:10px 12px; border-bottom:1px solid var(--line); vertical-align:middle;}
table.data tr:last-child td{border-bottom:none;}
table.data td.num, table.data th.num{text-align:right; font-family:'JetBrains Mono',monospace;}
table.data input[type=text], table.data input[type=number], table.data select{
  width:100%; padding:7px 9px; border:1px solid var(--line); border-radius:6px; background:var(--bg);
  color:var(--white); font-family:inherit; font-size:13px;
}
table.data input:focus, table.data select:focus{outline:none; border-color:var(--green);}
table.data tr.muted td input[type=text], table.data tr.muted td input[type=number], table.data tr.muted .check{opacity:.55;}
.detail-row td{background:var(--panel-light); font-size:13px; color:var(--muted);}
.detail-row pre{white-space:pre-wrap; font-family:'JetBrains Mono',monospace; font-size:12px; margin:0; color:var(--white);}

.badge{display:inline-block; padding:2px 8px; border-radius:20px; font-size:11.5px; font-weight:600; white-space:nowrap; border:1px solid;}
.badge.awaiting_payment{color:var(--amber); border-color:rgba(232,184,75,.5); background:var(--amber-bg);}
.badge.paid{color:var(--green-bright); border-color:rgba(111,207,76,.5); background:rgba(111,207,76,.1);}
.badge.shipped{color:#8EC5FF; border-color:rgba(142,197,255,.45); background:rgba(142,197,255,.08);}
.badge.cancelled, .badge.pending_paypal{color:var(--muted); border-color:var(--line);}

.toolbar{display:flex; gap:10px; align-items:center; flex-wrap:wrap; margin-bottom:14px;}
.toolbar .grow{flex:1;}
.toolbar select, .toolbar input{padding:8px 10px; border:1px solid var(--line); border-radius:7px; background:var(--bg); color:var(--white); font-family:inherit; font-size:13px;}
.stats{display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:12px; margin-bottom:18px;}
.stat{background:var(--panel); border:1px solid var(--line); border-radius:10px; padding:14px 16px;}
.stat .k{color:var(--muted); font-size:12px;}
.stat .v{font-family:'JetBrains Mono',monospace; font-size:20px; font-weight:700; margin-top:4px;}
.check{display:flex; gap:8px; align-items:center; font-size:13.5px; color:var(--muted); cursor:pointer;}
.check input{accent-color:var(--green);}
.empty{color:var(--muted); text-align:center; padding:26px; font-size:13.5px;}
.note{font-size:12.5px; color:var(--muted);}

/* order page */
.pay-options{display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:18px;}
@media (max-width:560px){ .pay-options{grid-template-columns:1fr;} }
.pay-option{display:flex; gap:12px; align-items:flex-start; background:var(--panel-light); border:1px solid var(--line); border-radius:8px; padding:14px; cursor:pointer;}
.pay-option input{margin-top:3px; accent-color:var(--green);}
.pay-option.selected{border-color:var(--green); background:rgba(111,207,76,0.08);}
.pay-option.disabled{opacity:.55; cursor:not-allowed;}
.pay-option .t, .pay-option .d{display:block;}
.pay-option .t{font-weight:600; color:var(--white); font-size:14px;}
.pay-option .d{color:var(--muted); font-size:12.5px; margin-top:2px;}
.pay-panel{display:none;}
.pay-panel.active{display:block;}
#paypal-button-container{margin-top:14px; min-height:50px; background:#fff; border-radius:8px; padding:12px;}
.paypal-status{font-size:13px; color:var(--muted); margin-top:10px;}
.usd-line{font-size:12.5px; color:var(--amber); padding:10px 22px 0; text-align:right;}
.sandbox-flag{display:inline-block; background:var(--amber-bg); color:var(--amber); border:1px solid var(--amber); border-radius:5px; font-size:11px; padding:1px 6px; margin-left:6px; font-family:'JetBrains Mono',monospace;}
.layout > div, .row-grid > *, .grid-2 > *{min-width:0;}
.field select{max-width:100%; text-overflow:ellipsis;}

/* ---------- Landscape banner ---------- */
.hero-band{
  position:relative; overflow:hidden; width:100%;
  background:radial-gradient(ellipse at 75% 40%, #1F5C33 0%, #0E2A1B 45%, #081C10 100%);
  border-bottom:1px solid var(--line);
}
.hb-pattern{position:absolute; right:0; top:0; height:100%; width:55%; pointer-events:none;}
.hb-inner{
  position:relative; max-width:1180px; margin:0 auto; padding:34px 20px;
  display:grid; grid-template-columns:auto 1fr auto; gap:36px; align-items:center;
}
.hb-brand{display:flex; align-items:center; gap:14px;}
.hb-logo{width:84px; height:84px; flex:none;}
.hb-name{font-family:'Poppins',sans-serif; font-weight:600; font-size:22px; line-height:1.1; color:#fff; letter-spacing:.02em;}
.hb-name span{display:block; color:var(--green); font-weight:500; letter-spacing:.14em;}
.hb-title{font-family:'Poppins',sans-serif; font-size:clamp(24px,3vw,36px); font-weight:800; text-transform:uppercase; letter-spacing:.02em; line-height:1.05; color:#fff; margin:0;}
.hb-text{color:#CFE0D3; font-size:14.5px; margin:8px 0 14px; max-width:54ch;}
.hb-features{list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:8px;}
.hb-features li{font-size:12.5px; color:#E6F2E9; border:1px solid rgba(111,207,76,.45); background:rgba(8,28,16,.55); border-radius:20px; padding:5px 11px;}
.hb-features b{color:var(--green-bright); font-weight:600;}
.hb-contact{
  display:flex; align-items:center; gap:12px; text-decoration:none;
  background:rgba(8,28,16,.7); border:1px solid var(--green); border-radius:12px; padding:14px 16px;
}
.hb-contact:hover{background:rgba(31,92,51,.6);}
.hb-mail{width:42px; height:42px; border-radius:50%; background:var(--green); display:flex; align-items:center; justify-content:center; flex:none;}
.hb-small{display:block; font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:#CFE0D3;}
.hb-email{display:block; color:var(--green-bright); font-weight:700; font-size:15px; word-break:break-all;}
@media (max-width:980px){
  .hb-inner{grid-template-columns:1fr; gap:18px; padding:26px 16px;}
  .hb-contact{justify-self:start;}
  .hb-pattern{width:100%; opacity:.45;}
}
@media (max-width:560px){
  .hb-logo{width:60px; height:60px;}
  .hb-name{font-size:18px;}
  .hb-text{font-size:13.5px;}
  .hb-contact{justify-self:stretch;}
}

/* shipping tick box */
.ship-toggle{display:flex; gap:12px; align-items:flex-start; background:var(--panel-light); border:1px solid var(--green); border-radius:8px; padding:14px; cursor:pointer; margin:12px 0 18px;}
.ship-toggle input{margin-top:3px; width:18px; height:18px; accent-color:var(--green); flex:none;}
.ship-toggle .t, .ship-toggle .d{display:block;}
.ship-toggle .t{font-weight:600; color:var(--white); font-size:14.5px;}
.ship-toggle .d{color:var(--muted); font-size:12.5px; margin-top:2px;}
.ship-toggle.off{border-color:var(--line);}
.ship-fee{color:var(--amber); font-family:'JetBrains Mono',monospace; font-weight:700; margin-left:4px;}
#addressBlock{margin-bottom:12px;}

/* toast */
.toast{position:fixed; left:50%; bottom:22px; transform:translate(-50%,20px); opacity:0; pointer-events:none;
  background:var(--panel-light); border:1px solid var(--green); color:var(--white); font-size:13.5px;
  padding:11px 16px; border-radius:10px; box-shadow:0 10px 30px rgba(0,0,0,.45); transition:opacity .2s, transform .2s;
  z-index:100; max-width:calc(100vw - 32px); text-align:center;}
.toast.show{opacity:1; transform:translate(-50%,0);}

/* price editing */
.bulk-row{display:flex; flex-wrap:wrap; gap:8px; align-items:center;}
.bulk-row input, .bulk-row select{padding:8px 10px; border:1px solid var(--line); border-radius:7px; background:var(--bg); color:var(--white); font-family:inherit; font-size:13.5px;}
.bulk-row input{width:130px;}
.bulk-label{color:var(--muted); font-size:13.5px;}
.save-bar{position:sticky; top:62px; z-index:10; display:flex; gap:10px; align-items:center; flex-wrap:wrap;
  background:var(--panel); border:1px solid var(--line); border-radius:10px; padding:10px 14px; margin:0 0 14px; font-size:13.5px; color:var(--muted);}
.save-bar .grow{flex:1;}
.save-bar.dirty{border-color:var(--amber); background:var(--amber-bg); color:var(--amber); font-weight:600;}
table.data tr.changed td{background:rgba(232,184,75,0.08);}
table.data tr.changed input{border-color:rgba(232,184,75,0.6);}
.was{font-size:11px; color:var(--amber); margin-top:3px; font-family:'JetBrains Mono',monospace;}
