:root{
  --paper:#eef4f9;--paper-2:#dbe9f3;--card:#ffffff;
  --navy:#005f92;--navy-2:#0082c6;--sun:#0082c6;--sun-2:#3aa4d8;
  --brick:#484848;--brick-2:#666666;--ink:#20262b;--ink-soft:#57626c;
  --line:#9dc3db;--line-soft:#cfe4f0;
  --term-bg:#001b2e;--term-fg:#4fc3f7;
  --wa:#25d366;--wa-ink:#06341c;
  --focus:#0082c6;
}
*{box-sizing:border-box;}
body{margin:0;padding:24px 12px 48px;background:var(--paper);
  background-image:repeating-linear-gradient(135deg,var(--paper-2) 0,var(--paper-2) 2px,var(--paper) 2px,var(--paper) 16px);
  color:var(--ink);font-family:'Space Mono',ui-monospace,Menlo,Consolas,monospace;
  font-size:15px;line-height:1.5;}
a{color:var(--navy-2);}a:visited{color:#5c7a90;}a:hover{color:var(--brick-2);}
h1,h2{font-family:'Rubik Mono One',ui-monospace,monospace;text-transform:uppercase;text-wrap:balance;}
.wrap{max-width:800px;margin:0 auto;}
.bump-flag{display:inline-block;background:var(--sun);color:#fff;font-size:10.5px;font-weight:700;
  padding:1px 6px;border-radius:2px;margin-left:6px;letter-spacing:.02em;vertical-align:middle;}
.banner-strip{overflow:hidden;white-space:nowrap;background:var(--ink);color:var(--sun-2);
  border:2px solid var(--ink);font-weight:700;letter-spacing:.04em;padding:6px 0;margin-bottom:16px;
  border-radius:3px;}
.banner-strip span{display:inline-block;padding-left:100%;animation:ticker 22s linear infinite;}
@keyframes ticker{0%{transform:translateX(0);}100%{transform:translateX(-100%);}}
@media (prefers-reduced-motion:reduce){.banner-strip span{animation:none;padding-left:0;}}
.page{background:var(--card);border:3px solid var(--ink);box-shadow:6px 6px 0 var(--line-soft);}
.masthead{background:linear-gradient(180deg,var(--navy-2),var(--navy) 65%,#003a5c);
  padding:22px 20px 18px;text-align:center;border-bottom:3px solid var(--ink);}
.masthead h1{color:#fff;font-size:clamp(28px,5vw,42px);margin:0;letter-spacing:.03em;
  text-shadow:3px 3px 0 var(--navy);}
.masthead .tag{color:#bfe0f2;font-style:italic;margin-top:8px;font-size:13px;letter-spacing:.02em;}
.navbar{display:flex;flex-wrap:wrap;gap:0;justify-content:center;background:var(--sun);
  border-bottom:3px solid var(--ink);font-weight:700;}
.navbar a{padding:10px 18px;color:#fff;text-decoration:none;border-right:1px dashed rgba(255,255,255,.35);}
.navbar a:last-child{border-right:none;}
.navbar a:hover{background:var(--navy);color:#fff;}
.content{padding:20px;display:flex;flex-direction:column;gap:22px;}
.box{border:2px solid var(--ink);background:var(--paper-2);}
.box-title{background:var(--brick);color:#ffffff;font-family:'Rubik Mono One',monospace;
  font-size:14px;padding:8px 12px;letter-spacing:.03em;display:flex;align-items:center;gap:8px;}
.box-title .pin{filter:drop-shadow(1px 1px 0 rgba(0,0,0,.4));}
.box-body{padding:14px;}
label{font-weight:700;display:block;margin-bottom:3px;font-size:13px;}
.field{margin-bottom:12px;}
.field small{display:block;color:var(--ink-soft);margin-top:3px;}
input[type=text],input[type=password],input[type=tel],input[type=file],select,textarea{
  width:100%;font-family:'Space Mono',monospace;font-size:14px;padding:7px 8px;
  border:2px solid var(--line);background:#fffdf3;color:var(--ink);border-radius:2px;}
input[type=file]{padding:6px;cursor:pointer;}
input:focus,select:focus,textarea:focus{outline:3px solid var(--focus);outline-offset:1px;}
textarea{resize:vertical;min-height:90px;}
.row{display:flex;gap:12px;flex-wrap:wrap;align-items:end;}
.row>.field{flex:1;min-width:160px;}
.hp-field{position:absolute;left:-9999px;top:-9999px;}
button{font-family:'Space Mono',monospace;font-weight:700;font-size:13px;
  background:var(--sun);color:#fff;border:2px solid var(--ink);padding:9px 16px;cursor:pointer;
  border-radius:2px;box-shadow:3px 3px 0 var(--ink);}
button:hover{background:var(--sun-2);}
button:active{box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px);}
button.ghost{background:var(--paper-2);color:var(--ink);}
button.small{padding:4px 10px;font-size:12px;box-shadow:2px 2px 0 var(--ink);}
button[disabled]{opacity:.5;cursor:not-allowed;box-shadow:none;}
.wa-btn{display:inline-block;font-family:'Space Mono',monospace;font-weight:700;font-size:12px;
  background:var(--wa);color:var(--wa-ink);border:2px solid var(--ink);padding:6px 12px;
  border-radius:2px;box-shadow:2px 2px 0 var(--ink);text-decoration:none;margin-top:6px;}
.wa-btn:hover{background:#3ee07f;color:var(--wa-ink);}
.report-btn{background:var(--paper-2);color:var(--ink);font-size:11px;padding:4px 9px;box-shadow:2px 2px 0 var(--ink);}
.notice{padding:9px 12px;border:2px solid;border-radius:2px;font-size:13px;margin-top:10px;font-weight:700;}
.notice.ok{background:#dff4d8;border-color:#3c7a2e;color:#204a17;}
.delete-code{display:inline-block;font-family:'Space Mono',monospace;font-weight:700;
  font-size:16px;letter-spacing:.08em;background:#fff;border:2px dashed #3c7a2e;
  padding:3px 8px;border-radius:2px;}
.notice.err{background:#f8d9d2;border-color:var(--brick);color:#5c1710;}
.notice.info{background:#dbeef8;border-color:var(--navy-2);color:var(--navy);}
table{width:100%;border-collapse:collapse;font-size:13.5px;}
th{background:var(--navy);color:#fff;text-align:left;padding:7px 8px;font-weight:700;
  font-size:12px;letter-spacing:.03em;text-transform:uppercase;}
td{padding:8px;border-bottom:1px dashed var(--line-soft);vertical-align:top;}
tr.odd td{background:var(--card);}
tr.even td{background:var(--paper-2);}
.listing-title-btn{font-weight:700;background:none;border:none;box-shadow:none;padding:0;
  text-align:left;color:var(--navy-2);cursor:pointer;font-size:13.5px;text-decoration:underline;
  text-decoration-style:dotted;font-family:'Space Mono',monospace;}
.listing-title-btn:hover{color:var(--brick-2);}
.price{color:#1e6b2f;font-weight:700;white-space:nowrap;}
.views{white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--ink-soft);}
.detail{background:#fffdf3;border:1px dashed var(--line-soft);padding:10px;margin-top:6px;
  white-space:pre-wrap;}
.detail-photo{display:block;max-width:260px;max-height:260px;width:auto;height:auto;
  border:2px solid var(--ink);margin-bottom:8px;object-fit:cover;}
.meta{font-size:11.5px;color:var(--ink-soft);margin-top:6px;}
.detail-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px;align-items:center;}
.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:end;margin-bottom:12px;}
.toolbar .field{margin-bottom:0;min-width:220px;flex:1;}
.count-line{font-size:12px;color:var(--ink-soft);margin-bottom:8px;}
.pager{display:flex;gap:8px;justify-content:center;align-items:center;margin-top:14px;font-size:12px;}
.pager button[disabled]{opacity:.35;}
footer{border-top:3px solid var(--ink);background:var(--navy);color:#d7ebf5;
  padding:18px 20px;text-align:center;font-size:12px;}
footer a{color:var(--sun-2);}
.counter-box{display:inline-flex;align-items:center;gap:8px;margin-bottom:10px;}
.counter{background:var(--term-bg);color:var(--term-fg);font-weight:700;letter-spacing:4px;
  padding:5px 10px;border:2px inset #333;font-variant-numeric:tabular-nums;font-size:15px;
  border-radius:2px;}
.badges{display:flex;gap:6px;justify-content:center;flex-wrap:wrap;margin:10px 0;}
.badge{background:#003a5c;color:#bfe0f2;border:1px solid #bfe0f2;
  font-size:9.5px;padding:3px 6px;letter-spacing:.03em;}
.dim{color:#a9c8dc;}
.empty{font-style:italic;color:var(--ink-soft);padding:10px 0;}
#photo-preview-wrap:not([hidden]){margin-top:8px;display:flex;align-items:center;gap:10px;}
#photo-preview{max-width:110px;max-height:110px;border:2px solid var(--ink);object-fit:cover;}
@media (max-width:520px){.masthead h1{font-size:24px;} .box-body{padding:10px;}}
