:root {
    --navy: #082b58;
    --blue: #1558df;
    --blue-soft: #eaf1ff;
    --teal: #12b8a6;
    --ink: #10233e;
    --muted: #64748b;
    --line: #dbe4f0;
    --paper: #f6f9fd;
    --white: #fff;
    --amber: #a75a00;
    --amber-bg: #fff6df;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

/* Restricted statistics */
.tmstats-page{min-height:80vh;background:#f3f7fc}.tmstats-shell{display:grid;gap:24px;padding-top:44px}.tmstats-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.tmstats-heading h1{font-size:clamp(38px,5vw,64px)}.tmstats-heading p:not(.eyebrow){max-width:720px;margin:10px 0 0;color:var(--muted);line-height:1.55}.tmstats-heading>a{padding:12px 16px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--navy);font-weight:800;text-decoration:none}.tmstats-tabs{display:flex;flex-wrap:wrap;gap:6px;padding:9px;border-radius:14px;background:var(--navy)}.tmstats-tabs a{padding:10px 13px;border-radius:8px;color:#fff;font-size:13px;font-weight:800}.tmstats-tabs a:hover{background:rgba(255,255,255,.12);color:#fff}.tmstats-summary,.tmstats-registry{display:grid;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.tmstats-summary{grid-template-columns:repeat(6,minmax(0,1fr))}.tmstats-registry{grid-template-columns:repeat(4,minmax(0,1fr))}.tmstats-summary article,.tmstats-registry article{padding:21px;border-right:1px solid var(--line)}.tmstats-summary article:last-child,.tmstats-registry article:last-child{border-right:0}.tmstats-summary span,.tmstats-registry span,.tmstats-scope-grid span{display:block;color:var(--muted);font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.tmstats-summary b,.tmstats-registry b{display:block;margin-top:8px;color:var(--navy);font-size:27px}.tmstats-registry{background:var(--navy);border-color:var(--navy)}.tmstats-registry article{border-color:rgba(255,255,255,.14)}.tmstats-registry span{color:#b9cce7}.tmstats-registry b{color:#fff}.tmstats-section{padding:26px;border:1px solid var(--line);border-radius:18px;background:#fff}.tmstats-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}.tmstats-section-title>div>span{color:var(--teal);font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.tmstats-section-title h2{margin:4px 0 0!important;color:var(--navy);font-size:27px}.tmstats-section-title p{margin:5px 0 0;color:var(--muted);font-size:13px}.tmstats-section-title form{display:flex;gap:8px}.tmstats-section-title input,.tmstats-section-title select{min-height:42px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font:inherit;font-size:13px}.tmstats-section-title button{min-height:42px;padding:0 15px;border:0;border-radius:8px;background:var(--navy);color:#fff;font-weight:800;cursor:pointer}.tmstats-chart-card{overflow:hidden}.tmstats-legend{display:flex;align-items:center;flex-wrap:wrap;gap:16px;color:var(--muted);font-size:12px;font-weight:800}.tmstats-legend span{display:inline-flex;align-items:center;gap:7px}.tmstats-legend i{width:22px;height:3px;display:inline-block;border-radius:3px}.tmstats-legend .human-hits i{background:var(--teal)}.tmstats-legend .human-hosts i{background:var(--blue)}.tmstats-legend .bot-hits i{height:0;border-top:3px dashed #e49b2f}.tmstats-highlights{display:flex;flex-wrap:wrap;gap:8px;margin:-3px 0 14px}.tmstats-highlights span{padding:8px 10px;border-radius:8px;background:#f2f6fb;color:var(--muted);font-size:12px}.tmstats-highlights b{color:var(--ink)}.tmstats-chart-scroll{overflow-x:auto;padding-top:4px}.tmstats-chart{width:100%;min-width:720px;height:auto;display:block;font-family:inherit}.tmstats-grid line{stroke:#dbe4f0;stroke-width:1}.tmstats-axis text,.tmstats-date{fill:#74849b;font-size:10px;font-weight:750}.tmstats-line{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.tmstats-line.human-hits{stroke:var(--teal)}.tmstats-line.human-hosts{stroke:var(--blue)}.tmstats-line.bot-hits{stroke:#e49b2f;stroke-width:2;stroke-dasharray:6 6}.tmstats-point{stroke:#fff;stroke-width:2}.tmstats-point.human-hits{fill:var(--teal)}.tmstats-point.human-hosts{fill:var(--blue)}.tmstats-note{margin:2px 0 0;color:var(--muted);font-size:11px}.tmstats-chart-card details{margin-top:16px;border-top:1px solid var(--line)}.tmstats-chart-card summary{padding-top:15px;color:var(--navy);font-size:12px;font-weight:850;cursor:pointer}.tmstats-chart-card details .tmstats-table-wrap{max-height:360px;margin-top:12px;overflow:auto}.tmstats-scope-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.tmstats-scope-grid article{padding:17px;border-left:4px solid var(--teal);border-radius:10px;background:#f4f8fc}.tmstats-scope-grid b{display:block;margin:8px 0 4px;color:var(--navy);font-size:25px}.tmstats-scope-grid small{color:var(--muted)}.tmstats-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px}.tmstats-table-wrap table{width:100%;min-width:620px;border-collapse:collapse;font-size:13px}.tmstats-table-wrap th{padding:12px 14px;background:#eef3f9;color:#64748b;text-align:left;font-size:10px;letter-spacing:.07em;text-transform:uppercase}.tmstats-table-wrap td{padding:13px 14px;border-top:1px solid var(--line);vertical-align:top}.tmstats-table-wrap td>a{display:grid;gap:3px;color:var(--ink);text-decoration:none}.tmstats-table-wrap td>a:hover b{text-decoration:underline}.tmstats-table-wrap small{color:var(--muted)}.tmstats-table-wrap code{padding:3px 6px;border-radius:4px;background:#eef3f9}.tmstats-type{display:inline-block;padding:5px 7px;border-radius:6px;background:#e8f7f4;color:#087c70;font-size:10px;font-weight:850;white-space:nowrap;text-transform:uppercase}.tmstats-type.bot{background:#fff2d8;color:#985d00}.tmstats-empty{padding:30px!important;color:var(--muted);text-align:center}.tmstats-pagination{display:flex;justify-content:center;gap:10px;margin-top:18px}.tmstats-pagination a,.tmstats-pagination span{padding:10px 13px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--navy);text-decoration:none}
@media(max-width:980px){.tmstats-summary{grid-template-columns:repeat(3,1fr)}.tmstats-summary article:nth-child(3){border-right:0}.tmstats-summary article:nth-child(-n+3){border-bottom:1px solid var(--line)}.tmstats-registry{grid-template-columns:repeat(2,1fr)}.tmstats-registry article:nth-child(2){border-right:0}.tmstats-registry article:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.14)}}
@media(max-width:700px){.tmstats-shell{padding-top:28px}.tmstats-heading,.tmstats-section-title{align-items:stretch;flex-direction:column}.tmstats-summary{grid-template-columns:repeat(2,1fr)}.tmstats-summary article:nth-child(3){border-right:1px solid var(--line)}.tmstats-summary article:nth-child(even){border-right:0}.tmstats-summary article:nth-child(-n+4){border-bottom:1px solid var(--line)}.tmstats-section{padding:16px}.tmstats-section-title form{display:grid;grid-template-columns:1fr}.tmstats-chart{min-width:650px}.tmstats-registry{grid-template-columns:1fr}.tmstats-registry article{border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.tmstats-registry article:last-child{border-bottom:0}}
.breadcrumbs{margin:0 0 24px;color:var(--muted);font-size:14px}.breadcrumbs a{color:var(--blue)}
.owner-list{display:grid;gap:10px;margin:12px 0 26px}.owner-list article{padding:16px;border:1px solid var(--line);border-radius:14px;background:#f9fbfd}.owner-list a{display:flex;align-items:center;justify-content:space-between;gap:18px;color:var(--ink);text-decoration:none}.owner-list a span{font-size:13px;color:var(--blue)}.owner-list p{margin:7px 0 0;color:var(--muted);font-size:13px}
.valid-until{background:#ecfbf5;border-radius:10px;padding:12px!important}.valid-until dd{color:#08775a!important;font-weight:800}.class-list a{display:inline-grid;place-items:center;min-width:38px;height:38px;padding:0 10px;border-radius:10px;background:#edf3fa;color:var(--ink);font-weight:800;text-decoration:none}.class-list a:hover,.class-list a.selected{background:var(--blue);color:#fff}.class-nav{margin:22px 0 34px}
.link-list{display:grid;gap:10px;margin:18px 0}.link-list a{display:flex;justify-content:space-between;gap:20px;padding:16px 18px;border:1px solid var(--line);border-radius:14px;color:var(--ink);text-decoration:none;background:#fff}.link-list a span{color:var(--blue);font-size:13px}.mini-counter{margin-top:14px;color:var(--muted);font-size:13px;text-align:center}
.traffic-chart{height:190px;display:flex;align-items:flex-end;gap:5px;padding:22px 10px 8px;border:1px solid var(--line);border-radius:18px;overflow-x:auto;background:#fff;margin:16px 0 26px}.traffic-day{min-width:25px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px;height:100%}.traffic-day span{display:block;width:18px;min-height:2px;border-radius:5px 5px 2px 2px;background:linear-gradient(180deg,var(--aqua),var(--blue))}.traffic-day small{font-size:9px;color:var(--muted);transform:rotate(-55deg);transform-origin:center;white-space:nowrap;margin-bottom:8px}.stats-page h2{margin-top:36px}.stats-table{overflow:auto;border:1px solid var(--line);border-radius:16px;background:#fff}.stats-table table{width:100%;border-collapse:collapse;min-width:560px}.stats-table th,.stats-table td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line)}.stats-table th{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);background:#f7f9fc}.stats-table tr:last-child td{border-bottom:0}
@media(max-width:700px){.owner-list a,.link-list a{align-items:flex-start;flex-direction:column}.traffic-chart{gap:3px}.traffic-day{min-width:21px}.traffic-day span{width:14px}}
* { box-sizing: border-box; }
body { margin: 0; color: var(--ink); background: var(--white); }
a { color: inherit; }
.site-header { height: 78px; padding: 0 max(24px, calc((100vw - 1180px) / 2)); display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(219,228,240,.8); background: rgba(255,255,255,.94); position: sticky; top: 0; z-index: 20; backdrop-filter: blur(12px); }
.brand { width: 148px; height: 54px; display: flex; align-items: center; overflow: hidden; }
.brand img { width: 148px; height: auto; display: block; }
nav { display: flex; align-items: center; gap: 28px; font-size: 14px; font-weight: 650; }
nav a { text-decoration: none; }
nav a:hover { color: var(--blue); }
.preview-pill { color: #745000; background: #fff2c8; padding: 7px 11px; border-radius: 999px; font-size: 12px; }
.nav-feedback { padding: 8px 12px; color: var(--blue); border: 1px solid #b9ccec; border-radius: 9px; }
.nav-feedback:hover { color: white; background: var(--blue); border-color: var(--blue); }
.hero { min-height: 570px; display: grid; grid-template-columns: 1.16fr .84fr; align-items: center; overflow: hidden; padding: 72px max(24px, calc((100vw - 1180px) / 2)); background: radial-gradient(circle at 82% 35%, #d9f7f3 0, transparent 28%), linear-gradient(135deg, #f8fbff 0%, #eef4ff 100%); }
.hero__content { max-width: 720px; position: relative; z-index: 2; }
.eyebrow { margin: 0 0 14px; color: var(--blue); font-size: 12px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
h1 { margin: 0; color: var(--navy); font-size: clamp(42px, 5vw, 72px); line-height: 1.02; letter-spacing: -.045em; }
h1 span { color: var(--blue); }
.lede { max-width: 660px; margin: 24px 0 30px; color: #50637d; font-size: 19px; line-height: 1.6; }
.search { max-width: 760px; padding: 7px; display: flex; gap: 8px; background: var(--white); border: 1px solid #cdd9e8; border-radius: 14px; box-shadow: 0 18px 50px rgba(19, 55, 100, .13); }
.search input { min-width: 0; flex: 1; padding: 15px 16px; border: 0; outline: 0; color: var(--ink); font: inherit; font-size: 16px; background: transparent; }
.search button { border: 0; border-radius: 10px; padding: 0 24px; color: white; background: var(--blue); font-weight: 750; cursor: pointer; }
.search button:hover { background: #0d46bc; }
.search-note { margin: 12px 4px; color: var(--muted); font-size: 12px; }
.hero__visual { min-height: 400px; position: relative; }
.orbit { position: absolute; border: 1px solid rgba(21,88,223,.18); border-radius: 50%; }
.orbit--one { width: 390px; height: 390px; top: 5px; left: 35px; }
.orbit--two { width: 270px; height: 270px; top: 65px; left: 95px; border-color: rgba(18,184,166,.3); }
.hero-card { width: 225px; height: 150px; padding: 24px; position: absolute; border: 1px solid rgba(255,255,255,.8); border-radius: 22px; box-shadow: 0 25px 70px rgba(8,43,88,.2); display: flex; flex-direction: column; background: rgba(255,255,255,.88); backdrop-filter: blur(15px); }
.hero-card span { color: var(--teal); font-size: 11px; font-weight: 850; letter-spacing: .13em; }
.hero-card strong { margin-top: auto; color: var(--navy); font-size: 30px; }
.hero-card small { color: var(--muted); }
.hero-card--front { top: 90px; left: 20px; transform: rotate(-6deg); z-index: 2; }
.hero-card--back { top: 190px; left: 200px; transform: rotate(7deg); }
.stat-strip { max-width: 1180px; margin: -40px auto 50px; position: relative; z-index: 3; padding: 28px 34px; display: grid; grid-template-columns: repeat(4,1fr); gap: 20px; background: var(--navy); border-radius: 18px; box-shadow: 0 20px 55px rgba(8,43,88,.22); color: white; }
.stat-strip div { display: flex; flex-direction: column; border-right: 1px solid rgba(255,255,255,.17); }
.stat-strip div:last-child { border: 0; }
.stat-strip strong { font-size: 27px; }
.stat-strip span { margin-top: 4px; color: #bfd0e8; font-size: 12px; text-transform: uppercase; letter-spacing: .08em; }
.page-shell { max-width: 1180px; margin: 0 auto; padding: 62px 24px 90px; }
.section-heading { margin-bottom: 24px; display: flex; align-items: end; justify-content: space-between; gap: 20px; }
.section-heading h2, .related h2, .panel h2, .source-page h2 { margin: 0; color: var(--navy); font-size: 30px; letter-spacing: -.025em; }
.section-heading > span { color: var(--muted); font-size: 13px; }
.result-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.result-card { min-width: 0; min-height: 210px; padding: 22px; display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--line); border-radius: 15px; color: inherit; text-decoration: none; background: white; transition: transform .2s, border-color .2s, box-shadow .2s; }
.result-card:hover { transform: translateY(-3px); border-color: #9db7e4; box-shadow: 0 16px 35px rgba(21, 54, 100, .1); }
.card-top, .card-bottom { min-width: 0; display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.card-top { flex-wrap: wrap; }
.result-card h3 { min-width: 0; margin: 25px 0 9px; overflow-wrap: anywhere; color: var(--navy); font-size: 20px; line-height: 1.25; }
.result-card p { min-width: 0; margin: 0; overflow-wrap: anywhere; color: var(--muted); font-size: 13px; line-height: 1.45; }
.card-bottom { margin-top: auto; padding-top: 20px; align-items: flex-start; flex-wrap: wrap; color: var(--blue); font-size: 12px; font-weight: 700; }
.card-bottom span:first-child { min-width: 0; overflow-wrap: anywhere; }
.card-bottom span:last-child { flex: 0 0 auto; margin-left: auto; white-space: nowrap; }
.mark-number { min-width: 0; overflow-wrap: anywhere; color: var(--muted); font: 12px ui-monospace, SFMono-Regular, Menlo, monospace; }
.status, .type-pill { width: fit-content; padding: 6px 9px; border-radius: 999px; font-size: 10px; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.status--live { color: #087564; background: #dcfaf4; }
.status--quiet { color: #59677a; background: #edf1f5; }
.status--pending { color: #8b5900; background: #fff2cf; }
.type-pill { color: #315884; background: var(--blue-soft); }
.empty-state { padding: 50px; color: var(--muted); border: 1px dashed #b9c9dd; border-radius: 16px; text-align: center; background: var(--paper); }
.back-link { display: inline-block; margin-bottom: 32px; color: var(--blue); font-weight: 700; text-decoration: none; }
.record-hero { padding: 45px; display: flex; justify-content: space-between; align-items: center; gap: 25px; border-radius: 22px; color: white; background: linear-gradient(135deg, var(--navy), #0e4ba2); overflow: hidden; }
.record-hero h1 { max-width: 820px; color: white; font-size: clamp(36px,5vw,62px); }
.record-hero .eyebrow { color: #72e3d5; }
.record-badges { margin-top: 24px; display: flex; gap: 8px; }
.record-monogram { color: rgba(255,255,255,.12); font-size: 110px; font-weight: 900; letter-spacing: -.09em; }
.mark-visual { margin-top: 24px; padding: clamp(22px,4vw,36px); display: grid; grid-template-columns: minmax(220px,.7fr) minmax(300px,1.3fr); gap: 32px; align-items: center; border: 1px solid var(--line); border-radius: 20px; background: white; box-shadow: 0 12px 34px rgba(11,43,82,.07); }
.mark-visual h2 { margin: 4px 0 10px; }
.mark-visual p { color: var(--muted); line-height: 1.6; }
.mark-image-list { display: grid; gap: 14px; }
.mark-image-list figure { margin: 0; padding: 18px; border: 1px solid var(--line); border-radius: 16px; background: linear-gradient(145deg,#fff,#f3f7fa); text-align: center; }
.mark-image-list img { width: auto; height: auto; max-width: 100%; max-height: 440px; display: block; margin: auto; object-fit: contain; }
.mark-image-list figcaption { margin-top: 11px; color: var(--muted); font-size: 12px; }
.record-layout { margin-top: 24px; display: grid; grid-template-columns: 1fr 340px; gap: 22px; align-items: start; }
.panel, .source-card { padding: 30px; border: 1px solid var(--line); border-radius: 17px; background: white; }
.detail-grid { margin: 28px 0; display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--line); border: 1px solid var(--line); border-radius: 12px; overflow: hidden; }
.detail-grid div { padding: 18px; background: white; }
.detail-grid > div:last-child:nth-child(odd) { grid-column: 1 / -1; }
.detail-grid dt { margin-bottom: 7px; color: var(--muted); font-size: 11px; font-weight: 750; text-transform: uppercase; letter-spacing: .07em; }
.detail-grid dd { margin: 0; font-weight: 650; overflow-wrap: anywhere; }
.panel h3 { margin-top: 28px; }
.class-list { display: flex; flex-wrap: wrap; gap: 8px; }
.class-list span { min-width: 38px; padding: 8px; color: var(--blue); background: var(--blue-soft); border-radius: 8px; text-align: center; font-weight: 800; }
.notice { padding: 20px; border-radius: 13px; font-size: 13px; line-height: 1.55; }
.notice--amber { color: #704600; background: var(--amber-bg); border: 1px solid #f2d899; }
.source-button { margin-top: 12px; padding: 14px 18px; display: block; border: 1px solid var(--line); border-radius: 11px; color: var(--navy); text-align: center; text-decoration: none; font-weight: 750; }
.related { margin-top: 65px; }
.related .result-grid { margin-top: 22px; }
.journal-extras { padding-top: 0; }
.journal-data { margin-bottom: 24px; }
.journal-data .detail-grid { margin-bottom: 0; }
.goods-services { padding: clamp(24px,4vw,38px); border: 1px solid var(--line); border-radius: 20px; background: white; }
.goods-services h2 { margin: 4px 0 8px; }
.goods-intro { color: var(--muted); }
.goods-list { margin-top: 22px; display: grid; gap: 10px; }
.goods-list details { border: 1px solid var(--line); border-radius: 12px; background: #fbfdff; overflow: hidden; }
.goods-list summary { padding: 16px 18px; color: var(--navy); cursor: pointer; font-weight: 800; }
.goods-list details[open] summary { border-bottom: 1px solid var(--line); background: var(--blue-soft); }
.goods-list details p { margin: 0; padding: 18px; color: #33465f; line-height: 1.7; white-space: pre-wrap; }
.source-page h1 { font-size: clamp(42px,6vw,70px); }
.source-card { margin: 38px 0 20px; display: grid; grid-template-columns: 70px 1fr; gap: 22px; }
.source-card h2 { font-size: 23px; }
.source-card p { color: var(--muted); line-height: 1.65; }
.source-mark { width: 64px; height: 64px; display: grid; place-items: center; border-radius: 14px; color: white; background: var(--navy); font-weight: 900; }
.source-meta { color: var(--blue) !important; font-weight: 750; }
.feedback-page { min-height: 72vh; background: radial-gradient(circle at 10% 15%, #e6f5ff 0, transparent 28%), linear-gradient(135deg,#f7faff,#eef5ff); }
.feedback-shell { padding-top: 48px; }
.feedback-layout { display: grid; grid-template-columns: minmax(0,.88fr) minmax(460px,1.12fr); gap: clamp(34px,6vw,76px); align-items: start; }
.feedback-intro { padding-top: 16px; }
.feedback-intro h1 { font-size: clamp(42px,5vw,64px); }
.feedback-intro > p:not(.eyebrow) { max-width: 620px; margin: 24px 0 0; color: var(--muted); font-size: 17px; line-height: 1.7; }
.feedback-guidance { display: grid; gap: 10px; margin-top: 32px; }
.feedback-guidance article { padding: 16px 18px; display: grid; grid-template-columns: 122px 1fr; gap: 16px; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.76); }
.feedback-guidance b { color: var(--navy); font-size: 12px; }
.feedback-guidance span { color: var(--muted); font-size: 12px; line-height: 1.55; }
.feedback-card { padding: clamp(24px,4vw,40px); border: 1px solid var(--line); border-top: 5px solid var(--teal); border-radius: 18px; background: white; box-shadow: 0 20px 55px rgba(8,43,88,.12); }
.feedback-form { display: grid; gap: 18px; }
.feedback-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
.feedback-form label { display: grid; gap: 7px; color: var(--ink); font-size: 12px; font-weight: 800; }
.feedback-form label > span { display: flex; justify-content: space-between; gap: 12px; }
.feedback-form label > span small { color: var(--muted); font-weight: 600; }
.feedback-form input, .feedback-form select, .feedback-form textarea { width: 100%; min-width: 0; padding: 12px 13px; color: var(--ink); background: #fbfdff; border: 1px solid #bfcddd; border-radius: 9px; outline: 0; font: inherit; font-size: 14px; line-height: 1.45; }
.feedback-form input, .feedback-form select { min-height: 47px; }
.feedback-form textarea { resize: vertical; }
.feedback-form input:focus, .feedback-form select:focus, .feedback-form textarea:focus { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(21,88,223,.12); }
.feedback-form button { min-height: 52px; padding: 0 18px; display: flex; align-items: center; justify-content: space-between; color: white; background: var(--blue); border: 0; border-radius: 10px; font-weight: 850; cursor: pointer; }
.feedback-form button:hover { background: #0d46bc; }
.field-note, .feedback-privacy { color: var(--muted); font-size: 11px; font-weight: 500; line-height: 1.55; }
.feedback-privacy { margin: -5px 0 0; }
.feedback-errors { margin-bottom: 20px; padding: 17px 19px; color: #7a241c; background: #fff0ed; border: 1px solid #efb1a9; border-radius: 11px; }
.feedback-errors ul { margin: 8px 0 0; padding-left: 18px; }
.feedback-success { display: grid; grid-template-columns: 48px 1fr; gap: 18px; align-items: start; }
.feedback-success > span { width: 48px; height: 48px; display: grid; place-items: center; color: white; background: var(--teal); border-radius: 50%; font-size: 23px; font-weight: 900; }
.feedback-success h2 { margin: 0 0 8px; color: var(--navy); font-size: 30px; }
.feedback-success p { margin: 0; color: var(--muted); line-height: 1.6; }
.feedback-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
footer { padding: 38px max(24px, calc((100vw - 1180px) / 2)); display: flex; justify-content: space-between; align-items: center; gap: 20px; color: #8da0b9; background: #071f3f; font-size: 12px; }
footer div { display: flex; flex-direction: column; }
footer strong { color: white; font-size: 18px; }
footer p { margin: 0; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
@media (max-width: 900px) {
    .hero { grid-template-columns: 1fr; min-height: auto; padding-top: 60px; padding-bottom: 100px; }
    .hero__visual { display: none; }
    .stat-strip { margin: -42px 20px 45px; grid-template-columns: 1fr 1fr; }
    .stat-strip div:nth-child(2) { border: 0; }
    .result-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .mark-visual { grid-template-columns: 1fr; gap: 18px; }
    .record-layout { grid-template-columns: 1fr; }
    .feedback-layout { grid-template-columns: 1fr; }
}
@media (max-width: 620px) {
    .site-header { height: 68px; padding: 0 16px; }
    .brand, .brand img { width: 120px; }
    .site-header nav a { display: none; }
    .site-header nav .nav-feedback { display: inline-flex; padding: 7px 10px; }
    .preview-pill { display: none; }
    .hero { padding: 48px 18px 85px; }
    h1 { font-size: 43px; }
    .lede { font-size: 16px; }
    .search { display: block; }
    .search input { width: 100%; }
    .search button { width: 100%; min-height: 48px; }
    .stat-strip { padding: 23px; }
    .stat-strip strong { font-size: 22px; }
    .mark-image-list img { max-height: 320px; }
    .result-grid { grid-template-columns: minmax(0, 1fr); }
    .section-heading { align-items: start; flex-direction: column; }
    .record-hero { padding: 28px; }
    .record-monogram { display: none; }
    .detail-grid { grid-template-columns: 1fr; }
    .feedback-shell { padding: 32px 18px 64px; }
    .feedback-intro h1 { font-size: 42px; }
    .feedback-fields, .feedback-guidance article { grid-template-columns: 1fr; }
    footer { align-items: start; flex-direction: column; }
}

/* Statistics layout safeguards: keep wide charts/tables inside their scrollers. */
.tmstats-shell {
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
}
.tmstats-shell > *,
.tmstats-section,
.tmstats-section-title,
.tmstats-section-title > * {
    min-width: 0;
}
.tmstats-tabs a {
    display: block;
}
@media (max-width: 700px) {
    .tmstats-tabs {
        display: flex;
        flex-wrap: nowrap;
        gap: 4px;
        overflow-x: auto;
        scrollbar-width: thin;
    }
    .tmstats-tabs a {
        flex: 0 0 auto;
        white-space: nowrap;
    }
    .tmstats-heading > a {
        width: 100%;
    }
    .tmstats-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .tmstats-registry {
        grid-template-columns: minmax(0, 1fr);
    }
    .tmstats-chart {
        min-width: 650px;
    }
}
