:root{
  --bg: #fdf3ef; --panel: #ffffff; --panel-2: #f6e3d8; --line: #ecc9b1;
  --accent: #c15b1f; --accent-soft: #f4d9c4; --accent-dim: #fbf1e9;
  --text: #341f10; --muted: #856248; --muted-2: #c1a58c; --bad: #b3402f;
}

.url-row{ display: flex; gap: 10px; }
.url-row input{ flex: 1; padding: 12px 14px; border: 1px solid var(--line); border-radius: 8px; font-family: 'JetBrains Mono', monospace; font-size: 14px; background: var(--panel-2); color: var(--text); }
.url-row input:focus{ outline: none; border-color: var(--accent); }
.app{ padding: 12px 22px; border: none; border-radius: 8px; cursor: pointer; font-weight: 600; font-size: 13.5px; font-family: 'Inter', sans-serif; color: #fff; background: var(--accent); white-space: nowrap; }
.app:hover{ filter: brightness(1.08); }
.app[disabled]{ opacity: .65; cursor: not-allowed; }

.spinner{ display: inline-block; width: 14px; height: 14px; border: 2px solid var(--accent); border-right-color: transparent; border-radius: 50%; animation: spin .7s linear infinite; vertical-align: middle; }
.app .spinner{ border-color: #fff; border-right-color: transparent; margin-right: 7px; }
@keyframes spin{ to{ transform: rotate(360deg); } }

.age-card{ display: none; margin-top: 20px; text-align: center; background: var(--panel-2); border: 1px solid var(--line); border-radius: 12px; padding: 26px; }
.age-card.show{ display: block; }
.age-card .num{ font-size: 44px; font-weight: 800; color: var(--accent); font-family: 'JetBrains Mono', monospace; }
.age-card .lbl{ font-size: 12.5px; color: var(--muted); margin-top: 4px; }

.section-title{ font-size: 11px; font-weight: 700; letter-spacing: 1.2px; text-transform: uppercase; color: var(--muted); margin: 20px 0 8px; }
.info-grid{ border: 1px solid var(--line); border-radius: 10px; overflow: hidden; display: none; }
.info-grid.show{ display: block; }
.info-row{ display: grid; grid-template-columns: 170px 1fr; gap: 12px; padding: 10px 14px; border-bottom: 1px solid var(--line); background: var(--panel); }
.info-row:last-child{ border-bottom: none; }
.info-row:nth-child(even){ background: var(--accent-dim); }
.info-row .k{ font-size: 11.5px; font-weight: 700; color: var(--muted); }
.info-row .v{ font-family: 'JetBrains Mono', monospace; font-size: 12.5px; word-break: break-word; }
.info-grid.placeholder{ opacity: .5; }

.error-box{ display: none; margin-top: 16px; padding: 14px; border-radius: 8px; background: rgba(179,64,47,0.08); border: 1px solid var(--bad); color: var(--bad); font-size: 13px; font-weight: 600; }
.error-box.show{ display: block; }

.note{ margin-top: 16px; font-size: 12px; color: var(--muted); line-height: 1.6; background: var(--panel-2); border: 1px solid var(--line); border-radius: 8px; padding: 10px 14px; }

.attribution{ margin-top: 10px; font-size: 12px; color: var(--muted); text-align: center; }
.attribution a{ color: var(--accent); font-weight: 600; text-decoration: none; }
.attribution a:hover{ text-decoration: underline; }
