*{box-sizing:border-box}:root{--bg:#f8fafc;--card:#fff;--text:#1c1c1e;--muted:#6e6e73;--main:#4f46e5;--main2:#6366f1;--red:#ff3b30;--pink:#ff2d55;--blue:#007aff;--green:#16a34a;--border:rgba(60,60,67,.16)}body{margin:0;padding:0 0 96px;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Sans","Yu Gothic",sans-serif}.app-header{position:sticky;top:0;z-index:10;text-align:center;padding:calc(18px + env(safe-area-inset-top)) 16px 16px;background:linear-gradient(135deg,var(--main),var(--main2));color:#fff;box-shadow:0 8px 20px rgba(79,70,229,.25)}.eyebrow{margin:0 0 4px;font-size:12px;opacity:.9}.lead{margin:6px 0 0;font-size:13px;opacity:.92;line-height:1.5}h1{margin:0;font-size:23px;letter-spacing:-.02em}h2{margin:0 0 16px;font-size:20px}h3{margin:20px 0 10px;font-size:16px}main{padding:14px}.notice{background:#fff3cd;color:#6b4e00;padding:10px;border-radius:14px;margin-bottom:12px;line-height:1.5;font-size:13px}.tab{display:none}.tab.active{display:block;animation:fadeUp .28s ease}@keyframes fadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}button,.file-label{border:none;border-radius:14px;padding:12px 14px;font-weight:800;font-size:15px;cursor:pointer;transition:all .1s ease}button:active,.file-label:active{transform:scale(.96);opacity:.86}.install-btn{margin-top:10px;background:rgba(255,255,255,.18);color:#fff}.primary{background:linear-gradient(135deg,var(--main),var(--main2));color:#fff;box-shadow:0 8px 18px rgba(79,70,229,.22)}.secondary{background:#e5e5ea;color:var(--text)}.danger{background:var(--red);color:#fff}.wide{width:100%;margin-top:12px}.summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}.summary-card,.panel,.item-card,.ranking-item,.category-analysis-item{background:var(--card);border-radius:22px;box-shadow:0 8px 24px rgba(0,0,0,.055)}.panel{padding:16px;animation:fadeUp .35s ease}.hero-panel{border:2px solid rgba(79,70,229,.12)}.summary-card{padding:14px}.summary-card span,.summary-list span,label,.note{color:var(--muted);font-size:13px}.summary-card strong{display:block;margin-top:6px;font-size:22px}#sumProfit,.profit,.price-box.profit strong,.profit-preview strong,.rank-profit{color:var(--green)}.tool-row{display:grid;grid-template-columns:1fr 112px;gap:8px;margin-bottom:12px}.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}input,textarea,select{width:100%;border:1px solid var(--border);border-radius:14px;padding:12px;font-size:16px;background:#fff;color:var(--text);outline:none}textarea{resize:vertical}label{display:block;margin:14px 0 6px;font-weight:800}.button-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.item-list{display:grid;gap:12px}.item-card{padding:14px;border-left:7px solid var(--blue);animation:fadeUp .35s ease}.item-card.mercari{border-left-color:var(--red)}.item-card.rakuma{border-left-color:var(--pink)}.item-card.yahoo{border-left-color:var(--blue)}.item-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.item-title{font-size:17px;font-weight:900;margin:0 0 4px}.badge{white-space:nowrap;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:900;background:#e5e5ea}.badge.sold{background:#dcfce7;color:#166534}.badge.listing{background:#e0e7ff;color:#3730a3}.badge.withdraw{background:#fee2e2;color:#991b1b}.item-desc{white-space:pre-wrap;color:#3a3a3c;font-size:14px;line-height:1.6}.price-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}.price-box,.mini-box{border-radius:14px;background:#f7f7f9;padding:10px}.price-box span,.mini-box span{display:block;color:var(--muted);font-size:12px}.price-box strong,.mini-box strong{font-size:18px}.card-actions{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:10px}.card-actions button{padding:10px 4px;font-size:13px}.file-label{display:block;text-align:center;background:#e5e5ea;color:var(--text);margin-top:12px}.file-label input{display:none}.ranking-list,.category-analysis-list{display:grid;gap:10px}.ranking-item{padding:12px;display:grid;grid-template-columns:42px 1fr auto;gap:8px;align-items:center}.rank-num{width:34px;height:34px;border-radius:999px;display:grid;place-items:center;background:#eef2ff;color:var(--main);font-weight:900}.bottom-nav{position:fixed;left:0;right:0;bottom:0;padding:8px 8px calc(8px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(6,1fr);gap:4px;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-top:1px solid var(--border);z-index:20}.bottom-nav button{background:transparent;color:var(--muted);padding:10px 2px;border-radius:14px;font-size:12px}.bottom-nav button.active{color:var(--main);background:#eef2ff}dialog{width:min(92vw,420px);border:none;border-radius:24px;padding:0}dialog::backdrop{background:rgba(0,0,0,.35)}.dialog-box{padding:18px}.profit-preview,.result-box{margin-top:14px;padding:14px;border-radius:16px;background:#f7f7f9;font-size:15px;line-height:1.7;white-space:pre-wrap}.result-box strong{color:var(--green)}.empty{padding:30px 18px;text-align:center;color:var(--muted);background:var(--card);border-radius:22px}.theme-btn{position:absolute;right:14px;top:calc(16px + env(safe-area-inset-top));width:42px;height:42px;padding:0;border-radius:999px;background:rgba(255,255,255,.22);color:#fff;font-size:18px;display:grid;place-items:center}.theme-popup{position:fixed;top:calc(72px + env(safe-area-inset-top));right:10px;z-index:30;background:var(--card);border:1px solid var(--border);border-radius:18px;padding:10px;display:grid;grid-template-columns:repeat(4,44px);gap:8px;box-shadow:0 14px 34px rgba(0,0,0,.18);animation:fadeUp .2s ease}.theme-popup.hidden{display:none}.theme-popup button{width:44px;height:44px;padding:0;border-radius:14px;background:#f1f5f9;font-size:20px}.theme-panel{margin:14px 0;padding:12px;border-radius:18px;background:rgba(127,127,127,.08)}.generator-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0 4px}.analysis-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:10px 0 14px}.analysis-card{background:var(--card);border-radius:18px;padding:12px;box-shadow:0 8px 24px rgba(0,0,0,.055)}.analysis-card span{display:block;color:var(--muted);font-size:12px}.analysis-card strong{display:block;margin-top:6px;font-size:18px;color:var(--green)}.analysis-comment{margin:10px 0 16px;padding:12px;border-radius:18px;background:rgba(127,127,127,.08);line-height:1.6;font-size:14px}.category-analysis-item{padding:12px}.category-analysis-item .row{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--border);padding:7px 0}.category-analysis-item .row:last-child{border-bottom:none}.category-analysis-item strong{color:var(--green)}.image-preview,.item-images{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-top:10px}.image-box{position:relative;aspect-ratio:1/1;overflow:hidden;border-radius:12px;background:rgba(127,127,127,.12)}.image-box img,.item-images img{width:100%;height:100%;object-fit:cover}.image-box button{position:absolute;top:4px;right:4px;width:26px;height:26px;padding:0;border-radius:999px;background:rgba(0,0,0,.62);color:white;font-size:14px}.quick-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.quick-grid button{background:#f4f4f5;color:#111827}.quick-grid button.hot{background:#fee2e2;color:#991b1b}.quick-grid button.buy{background:#dcfce7;color:#166534}.toast{position:fixed;left:50%;bottom:90px;transform:translateX(-50%);z-index:99;padding:12px 18px;border-radius:999px;background:rgba(17,24,39,.92);color:white;font-weight:800;box-shadow:0 10px 24px rgba(0,0,0,.25)}body.theme-purple{--bg:#f8fafc;--main:#4f46e5;--main2:#6366f1;--green:#16a34a}body.theme-pink{--bg:#fff7fb;--main:#ec4899;--main2:#f472b6;--green:#16a34a}body.theme-mint{--bg:#f0fdfa;--main:#14b8a6;--main2:#2dd4bf;--green:#059669}body.theme-beige{--bg:#fffbeb;--main:#b45309;--main2:#d97706;--green:#15803d}body.theme-coral{--bg:#fff7ed;--main:#f97316;--main2:#fb7185;--green:#16a34a}body.theme-navy{--bg:#f8fafc;--main:#1e3a8a;--main2:#2563eb;--green:#16a34a}body.theme-green{--bg:#f0fdf4;--main:#16a34a;--main2:#22c55e;--green:#15803d}@media(max-width:520px){body{padding-bottom:98px}.app-header{padding:calc(14px + env(safe-area-inset-top)) 12px 12px}h1{font-size:19px}.lead{font-size:12px}.summary-card{padding:12px}.summary-card strong{font-size:18px}.tool-row,.two{grid-template-columns:1fr}input,textarea,select{font-size:16px;padding:14px}.item-card{padding:10px}.item-title{font-size:15px}.price-box strong{font-size:16px}.card-actions{grid-template-columns:repeat(2,1fr)}.ranking-item{grid-template-columns:36px 1fr}.rank-profit{grid-column:span 2;text-align:right;font-size:14px}.bottom-nav button{font-size:11px}.analysis-grid{grid-template-columns:1fr}.image-preview,.item-images{grid-template-columns:repeat(3,1fr)}.theme-btn{right:10px;top:calc(12px + env(safe-area-inset-top));width:38px;height:38px}.theme-popup{top:calc(60px + env(safe-area-inset-top));grid-template-columns:repeat(4,42px)}.theme-popup button{width:42px;height:42px}}@media(min-width:760px){main{max-width:920px;margin:0 auto}}@media(prefers-color-scheme:dark){:root{--bg:#0f172a;--card:#1e293b;--text:#e5e7eb;--muted:#94a3b8;--border:rgba(255,255,255,.1)}body{background:var(--bg);color:var(--text)}.app-header{background:linear-gradient(135deg,#1e293b,#334155)}.summary-card,.panel,.item-card,.ranking-item,.empty,.category-analysis-item{background:var(--card)}input,textarea,select{background:#1e293b;color:#e5e7eb;border:1px solid var(--border)}.bottom-nav{background:rgba(15,23,42,.9)}.price-box,.mini-box,.profit-preview,.result-box{background:#0f172a}.item-desc{color:#cbd5e1}.secondary,.file-label{background:#334155;color:#e5e7eb}.badge{background:#334155;color:#e5e7eb}.quick-grid button{background:#0f172a;color:#e5e7eb}}

/* 上部AIスコア：控えめ・色付き・条件付き表示 */
.top-ai-score {
  max-width: 880px;
  margin: 10px auto 0;
  padding: 9px 14px;
  border-radius: 16px;
  font-weight: 800;
  font-size: 13px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  box-shadow: 0 8px 20px rgba(0,0,0,0.055);
}

.top-ai-score small {
  font-size: 12px;
  font-weight: 700;
  opacity: 0.82;
  line-height: 1.4;
  text-align: right;
}

.top-ai-score.ai-high {
  background: #fee2e2;
  color: #991b1b;
}

.top-ai-score.ai-mid {
  background: #e0f2fe;
  color: #075985;
}

.top-ai-score.ai-low {
  background: #f3f4f6;
  color: #374151;
}

.hidden {
  display: none !important;
}

@media (max-width: 520px) {
  .top-ai-score {
    margin: 8px 10px 0;
    padding: 8px 11px;
    border-radius: 14px;
    font-size: 12px;
  }

  .top-ai-score small {
    font-size: 11px;
  }
}


/* スマホで標準ファイル選択表示が崩れるため、写真追加ボタンをアプリ風に統一 */
.photo-input {
  display: none !important;
}

.photo-add-btn {
  display: block;
  width: 100%;
  margin-top: 8px;
  padding: 13px 14px;
  border-radius: 16px;
  background: #eef2ff;
  color: #3730a3;
  text-align: center;
  font-weight: 900;
  font-size: 15px;
  border: 1px solid rgba(79, 70, 229, 0.18);
  cursor: pointer;
  user-select: none;
}

.photo-add-btn:active {
  transform: scale(0.97);
  opacity: 0.88;
}

@media (prefers-color-scheme: dark) {
  .photo-add-btn {
    background: #334155;
    color: #e5e7eb;
    border-color: rgba(255,255,255,0.1);
  }
}


/* OCR＋AI整形 */
.ocr-panel {
  margin: 14px 0;
  padding: 12px;
  border-radius: 18px;
  background: rgba(79, 70, 229, 0.07);
  border: 1px solid rgba(79, 70, 229, 0.12);
}

.ocr-panel h3 {
  margin-top: 0;
}

.ocr-add-btn {
  display: block;
  width: 100%;
  margin-top: 8px;
  padding: 13px 14px;
  border-radius: 16px;
  background: #eef2ff;
  color: #3730a3;
  text-align: center;
  font-weight: 900;
  font-size: 15px;
  border: 1px solid rgba(79, 70, 229, 0.18);
  cursor: pointer;
  user-select: none;
}

.ocr-add-btn:active {
  transform: scale(0.97);
  opacity: 0.88;
}

.ocr-status {
  margin-top: 10px;
  padding: 10px;
  border-radius: 14px;
  background: rgba(127,127,127,0.09);
  color: var(--muted);
  font-size: 13px;
  line-height: 1.6;
}

.ocr-raw {
  margin-top: 10px;
}

@media (prefers-color-scheme: dark) {
  .ocr-panel {
    background: rgba(255,255,255,0.05);
    border-color: rgba(255,255,255,0.1);
  }

  .ocr-add-btn {
    background: #334155;
    color: #e5e7eb;
    border-color: rgba(255,255,255,0.1);
  }
}


/* クイック修正・削除の見やすさ強化 */
.card-actions .edit-quick-btn {
  background: #e0f2fe;
  color: #075985;
}

.card-actions .delete-btn {
  background: #fee2e2;
  color: #991b1b;
}

.quick-edit-note {
  font-size: 12px;
  color: var(--muted);
  margin-top: 6px;
}
