:root {
  --bg: #f2efe8;
  --bg-warm: #e7e1d4;
  --card: #faf8f3;
  --ink: #0e1a1d;
  --fg: #1a2326;
  --muted: #5c676b;
  --subtle: #8a9396;
  --accent: #2a6a6e;
  --accent-fg: #f2efe8;
  --line: #d4cfc4;
  --danger: #8f3d32;
  --ok: #2f6b4f;
  --sans: "Noto Sans SC", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", system-ui, sans-serif;
  --display: "Noto Serif SC", "Songti SC", "Source Han Serif SC", serif;
  --mono: "IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;
  --shadow: 0 0 0 1px rgb(14 26 29 / 0.06), 0 1px 2px -1px rgb(14 26 29 / 0.06);
}

* { box-sizing: border-box; }
html, body { margin: 0; background: var(--bg); color: var(--fg); font-family: var(--sans); }
a { color: var(--accent); text-decoration: none; }
a:hover { text-decoration: underline; }
img { max-width: 100%; display: block; }
button, [type=submit] { cursor: pointer; font-family: inherit; }
.wrap { max-width: 72rem; margin: 0 auto; padding: 0 1.5rem; }
.font-display { font-family: var(--display); }
.muted { color: var(--muted); }
.subtle { color: var(--subtle); }

.site { min-height: 100vh; display: flex; flex-direction: column; }
.legal-strip { background: var(--ink); color: var(--bg); font-size: .72rem; letter-spacing: .04em; }
.legal-strip .wrap { min-height: 2rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
header.top {
  position: sticky; top: 0; z-index: 40;
  border-bottom: 1px solid rgb(212 207 196 / 0.8);
  background: rgb(242 239 232 / 0.9);
  backdrop-filter: blur(10px);
}
header.top .bar {
  display: flex; align-items: center; justify-content: space-between;
  height: 5rem; gap: 1rem;
}
@media (min-width: 768px) { header.top .bar { height: 6rem; } }
.brand { display: flex; align-items: center; gap: 0.7rem; color: var(--ink); text-decoration: none; }
.brand img { width: 3rem; height: 3rem; object-fit: contain; outline: none; border: 0; }
@media (min-width: 768px) { .brand img { width: 4rem; height: 4rem; } }
.brand span { font-family: var(--display); font-size: 1.5rem; white-space: nowrap; }
@media (min-width: 768px) { .brand span { font-size: 1.875rem; } }
nav.desk { display: none; gap: 0.25rem; align-items: center; }
@media (min-width: 768px) { nav.desk { display: flex; } }
nav.desk a {
  display: inline-flex; height: 2.75rem; align-items: center; padding: 0 0.75rem;
  font-size: 0.875rem; color: var(--muted); text-decoration: none;
}
nav.desk a:hover { color: var(--fg); text-decoration: none; }
nav.desk a.on { color: var(--accent); }
.auth { display: none; align-items: center; gap: 0.5rem; }
@media (min-width: 640px) { .auth { display: flex; } }
.auth a { font-size: 0.875rem; color: var(--muted); text-decoration: none; height: 2.75rem; display: inline-flex; align-items: center; padding: 0 0.75rem; }
.auth a:hover { color: var(--fg); }
.auth a.btn { color: var(--accent-fg); }
.auth a.btn:hover { color: var(--accent-fg); }
.burger { width: 2.75rem; height: 2.75rem; border: 0; background: none; display: flex; align-items: center; justify-content: center; }
@media (min-width: 768px) { .burger { display: none; } }
.mob { display: none; border-top: 1px solid var(--line); padding: 1rem 1.5rem; background: var(--bg); }
.mob.open { display: block; }
.mob a { display: flex; height: 2.75rem; align-items: center; color: var(--ink); text-decoration: none; }

footer.foot { margin-top: auto; background: var(--ink); color: var(--bg); }
footer.foot .inner { padding: 3.5rem 1.5rem; display: grid; gap: 2rem; }
@media (min-width: 768px) { footer.foot .inner { grid-template-columns: 1.4fr 1fr 1fr 1fr; } }
footer.foot a { color: rgb(242 239 232 / 0.75); }
footer.foot .copy { border-top: 1px solid rgb(242 239 232 / 0.12); padding: 1rem 1.5rem .35rem; font-size: 0.75rem; color: rgb(242 239 232 / 0.45); display:flex; flex-wrap:wrap; justify-content:space-between; gap:.5rem 1.5rem; }
.site-version { margin:0; padding:.35rem 1.5rem 1.25rem; text-align:center; font-size:.72rem; color:rgb(242 239 232 / .4); }

.hero { position: relative; overflow: hidden; background: var(--ink); color: var(--bg); }
.hero .grid { display: grid; gap: 2.5rem; padding: 4rem 1.5rem; align-items: center; }
@media (min-width: 1024px) { .hero .grid { grid-template-columns: 1.1fr 0.9fr; padding: 6rem 1.5rem; } }
.hex {
  pointer-events: none; position: absolute; inset: 0; opacity: .8;
  background-image: radial-gradient(circle at 1px 1px, rgb(242 239 232 / 0.08) 1px, transparent 0);
  background-size: 22px 22px;
}
h1 { font-family: var(--display); font-weight: 700; line-height: 1.15; margin: 0; }
.lead { margin-top: 1.25rem; max-width: 32rem; line-height: 1.7; color: rgb(242 239 232 / 0.75); }
.warnbox {
  margin-top: 1rem; max-width: 32rem; border: 1px solid rgb(242 239 232 / 0.15);
  background: rgb(242 239 232 / 0.1); padding: 0.65rem 0.75rem; border-radius: 6px;
  font-size: 0.875rem; font-weight: 500;
}
.btn {
  display: inline-flex; align-items: center; justify-content: center;
  height: 2.75rem; padding: 0 1.1rem; border-radius: 8px; border: 1px solid transparent;
  background: var(--accent); color: var(--accent-fg); font-weight: 500; text-decoration: none; font-size: 0.95rem;
}
.btn:hover { opacity: 0.95; text-decoration: none; }
.btn.ghost { background: transparent; border-color: rgb(242 239 232 / 0.2); color: var(--bg); }
.btn.outline { background: transparent; border-color: var(--line); color: var(--ink); }
.row { display: flex; flex-wrap: wrap; gap: 0.75rem; margin-top: 2rem; }
.shot { position: relative; }
.shot > img:first-child { width: 100%; aspect-ratio: 16/9; object-fit: cover; border-radius: 12px; }
.shot .float {
  position: absolute; right: 1rem; bottom: -2rem; width: 8rem; border-radius: 8px;
  object-fit: cover; box-shadow: var(--shadow);
}
@media (min-width: 640px) { .shot .float { width: 10rem; } }

.section { padding: 4rem 1.5rem; }
.warm { background: rgb(231 225 212 / 0.6); }
.cards { display: grid; gap: 1rem; margin-top: 2.5rem; }
@media (min-width: 640px) { .cards { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1024px) { .cards { grid-template-columns: 1fr 1fr 1fr; } }
.card {
  background: var(--card); border: 1px solid var(--line); border-radius: 12px;
  padding: 1.25rem; box-shadow: var(--shadow);
}
.card h3 { margin: 0.5rem 0 0; font-size: 1.05rem; }
.card p { color: var(--muted); font-size: 0.9rem; line-height: 1.6; }
.card img.icon { width: 1.25rem; height: 1.25rem; }
.hint { font-size: 0.75rem; color: var(--subtle); margin-top: 0.4rem; }

.news-list { display: grid; gap: 1rem; margin-top: 2rem; }
.home-news-list { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; margin-top:2rem; }
.news-item { display: block; padding: 1.25rem; border: 1px solid var(--line); border-radius: 12px; background: var(--card); color: inherit; text-decoration: none; box-shadow: var(--shadow); }
.news-item:hover h3 { color: var(--accent); }
@media (max-width:980px){.home-news-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.home-news-list{grid-template-columns:1fr}}
.article { max-width: 48rem; margin: 0 auto; padding: 3.5rem 1.5rem; }
.article .body { line-height: 1.8; color: var(--muted); }
.article .body h2 { font-family: var(--display); color: var(--ink); margin-top: 2rem; }
.article .body ul, .article .body ol { padding-left: 1.2rem; }

.form { max-width: 28rem; display: grid; gap: 0.85rem; }
label { font-size: 0.8rem; color: var(--muted); display: block; margin-bottom: 0.25rem; }
input, textarea, select {
  width: 100%; height: 2.75rem; border: 1px solid var(--line); border-radius: 8px;
  background: var(--card); padding: 0 0.75rem; font: inherit; color: var(--ink);
}
input[type="checkbox"], input[type="radio"] {
  width: 1rem; height: 1rem; padding: 0; margin: 0; flex: 0 0 auto;
  accent-color: var(--accent);
}
.checkline { display: flex; align-items: flex-start; gap: 0.5rem; line-height: 1.6; }
.checkline input { margin-top: 0.2rem; }
textarea { height: auto; min-height: 8rem; padding: 0.75rem; }
.err { background: #f8e8e4; color: var(--danger); padding: 0.7rem 0.9rem; border-radius: 8px; font-size: 0.875rem; }
.ok { background: #e4f0e8; color: var(--ok); padding: 0.7rem 0.9rem; border-radius: 8px; font-size: 0.875rem; }
.table { width: 100%; border-collapse: collapse; font-size: 0.9rem; }
.table th, .table td { text-align: left; padding: 0.6rem 0.4rem; border-bottom: 1px solid var(--line); }
.admin-shell { width:min(100% - 2rem, 80rem); margin:0 auto; padding:3rem 0 5rem; }
.admin-head { display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:1rem; }
.admin-head .eyebrow { margin:0; color:var(--muted); font-size:.72rem; letter-spacing:.28em; }
.admin-head h1 { margin:.45rem 0 0; color:var(--ink); font-family:var(--display); font-size:clamp(2rem,5vw,3rem); }
.admin-title-hint { max-width:58rem; margin:.55rem 0 0; color:var(--muted); font-size:.9rem; line-height:1.6; }
.admin-who { display:flex; align-items:center; gap:1rem; color:var(--muted); font-size:.9rem; }
.admin-who a { color:var(--accent); }
.admin-nav { display:flex; flex-wrap:wrap; gap:.25rem; margin-top:2rem; padding:.3rem; border-radius:18px; background:var(--bg-warm); }
.admin-nav a { display:inline-flex; min-height:2.75rem; align-items:center; padding:0 1rem; border-radius:12px; color:var(--muted); font-size:.9rem; text-decoration:none; }
.admin-nav a:hover { color:var(--fg); text-decoration:none; }
.admin-nav a.on { color:var(--ink); background:var(--card); box-shadow:var(--shadow); }
.admin-content { margin-top:2.5rem; }
.admin-content > .form { max-width:48rem !important; padding:1.5rem; border-radius:18px; background:var(--card); box-shadow:var(--shadow); }
.admin-content > .table, .admin-content > table.table { overflow:hidden; border-radius:14px; background:var(--card); box-shadow:var(--shadow); }
.admin-content h3 { color:var(--ink); }
.admin-overview a.card { color:inherit; text-decoration:none; }
.admin-overview a.card:hover { border-color:var(--accent); }
.admin-content button:not(.btn):not(.plan-expand) { min-height:2.35rem; padding:0 .75rem; border:1px solid var(--line); border-radius:8px; background:var(--card); color:var(--ink); }
.admin-page-head { max-width: 60rem; margin-bottom: 1.25rem; }
.admin-page-head p { margin: 0 0 .45rem; line-height: 1.65; }
.plan-create { margin: 1rem 0 2rem; }
.plan-create > summary { list-style: none; width: max-content; }
.plan-create > summary::-webkit-details-marker, .admin-plan-card > summary::-webkit-details-marker { display: none; }
.admin-plan-list { max-width: 64rem; border-top: 1px solid var(--line); }
.admin-plan-card { border-bottom: 1px solid var(--line); }
.admin-plan-card > summary { list-style: none; display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; padding: 1.15rem .25rem; cursor: pointer; }
.plan-card-title { color: var(--ink); font-weight: 600; font-size: 1rem; }
.plan-card-title span { color: var(--accent); font-size: .78rem; font-weight: 500; }
.plan-card-meta { color: var(--muted); font-size: .85rem; margin-top: .4rem; line-height: 1.5; }
.plan-edit-link { border: 1px solid var(--line); border-radius: 7px; padding: .4rem .75rem; color: var(--ink); font-size: .82rem; background: var(--card); }
.plan-delete { margin:-.5rem 1.25rem 1.5rem; }
.plan-delete button { border:0; background:transparent; color:var(--danger); font:inherit; font-size:.82rem; }
.plan-form { max-width: 64rem; margin: 0 0 1.5rem; padding: 1.25rem; border-radius: 12px; background: var(--card); box-shadow: var(--shadow); }
.plan-form-grid { display: grid; gap: 1rem; }
@media (min-width: 760px) { .plan-form-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .plan-form-grid-3 { grid-template-columns: repeat(3,minmax(0,1fr)); } }
.plan-section { margin-top: 1.25rem; padding-top: 1.1rem; border-top: 1px solid var(--line); }
.plan-section h4 { margin: 0 0 .9rem; color: var(--ink); font-size: .95rem; }
.field-help { margin: .35rem 0 0; color: var(--subtle); font-size: .75rem; line-height: 1.5; }
.code-area { font-family: var(--mono); font-size: .8rem; line-height: 1.55; min-height: 14rem; }
.plan-switches { display: flex; flex-wrap: wrap; gap: 1.5rem; margin-top: 1.25rem; }
.plan-actions { display: flex; gap: .75rem; margin-top: 1.25rem; }
.purchase-plan-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:.75rem; padding:1.25rem; border-top:1px solid var(--line); background:#f6f8f5; }
.purchase-plan-actions .btn { min-width:10rem; }
.purchase-modal[hidden] { display:none; }
.purchase-modal { position:fixed; z-index:1000; inset:0; display:grid; place-items:center; padding:1rem; }
.purchase-backdrop { position:absolute; inset:0; background:rgb(5 24 25 / .68); backdrop-filter:blur(5px); }
.purchase-dialog { position:relative; z-index:1; width:min(100%,42rem); max-height:calc(100vh - 2rem); overflow:auto; padding:2rem; border:1px solid var(--line); border-radius:18px; background:var(--card); box-shadow:0 28px 80px rgb(0 0 0 / .28); }
.purchase-dialog h2 { margin:.2rem 2.5rem .75rem 0; color:var(--ink); font-size:1.65rem; }
.purchase-dialog>p:not(.purchase-eyebrow) { color:var(--muted); line-height:1.75; }
.purchase-eyebrow { margin:0; color:var(--accent); font-size:.75rem; font-weight:700; letter-spacing:.16em; }
.purchase-close { position:absolute; top:1rem; right:1rem; width:2.4rem; height:2.4rem; border:1px solid var(--line); border-radius:50%; background:#fff; color:var(--ink); font-size:1.45rem; line-height:1; }
.purchase-form { display:grid; gap:.85rem; margin-top:1.25rem; }
.purchase-grid { display:grid; gap:.85rem; }
@media (min-width:620px){.purchase-grid{grid-template-columns:1fr 1fr}}
.purchase-form textarea { min-height:6rem; }
.purchase-form>.btn { width:100%; margin-top:.25rem; }
.purchase-honeypot { position:absolute!important; width:1px!important; height:1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; }
.modal-open { overflow:hidden; }
.purchase-toast { position:fixed; z-index:1100; left:50%; bottom:2rem; transform:translateX(-50%); width:max-content; max-width:calc(100% - 2rem); padding:.8rem 1.1rem; border-radius:9px; background:#174d47; color:#fff; box-shadow:var(--shadow-lg); transition:opacity .25s ease,transform .25s ease; }
.purchase-toast.hide { opacity:0; transform:translate(-50%,.75rem); pointer-events:none; }
.ok-text { color:var(--ok); }
.radio-stack { display:grid; gap:.8rem; }
.radio-stack > input { max-width:32rem; }
.feature-editor { display:grid; gap:.75rem; }
@media (min-width:700px){.feature-editor{grid-template-columns:repeat(2,minmax(0,1fr));}}
.feature-field { display:flex; min-height:3.6rem; align-items:center; justify-content:space-between; gap:1rem; margin:0; padding:.65rem .8rem; border:1px solid var(--line); border-radius:12px; background:var(--card); }
.feature-field > span { min-width:0; }
.feature-field strong { display:block; color:var(--ink); font-size:.85rem; font-weight:500; }
.feature-field small { display:block; margin-top:.15rem; color:var(--subtle); font-family:var(--mono); font-size:.7rem; }
.feature-field .feature-input { width:8rem; height:2.3rem; flex:0 0 auto; }
.json-preview { margin-top:1rem; border:1px solid var(--line); border-radius:12px; overflow:hidden; }
.json-preview summary { cursor:pointer; padding:.75rem 1rem; color:var(--muted); font-size:.8rem; }
.json-preview pre { max-height:22rem; overflow:auto; margin:0; padding:1rem; border-top:1px solid var(--line); background:var(--ink); color:var(--bg); font-family:var(--mono); font-size:.75rem; line-height:1.6; white-space:pre-wrap; }
.admin-hint { margin:-1.5rem 0 2rem; color:var(--muted); font-size:.9rem; line-height:1.65; }
.admin-card { margin-bottom:1.5rem; padding:1.6rem; border-radius:24px; background:var(--card); box-shadow:var(--shadow); }
.admin-card h2 { margin:0; color:var(--ink); font-size:1.05rem; }
.admin-card > .muted { line-height:1.65; }
.required-fields { margin:1.2rem 0 0; padding:0; list-style:none; color:var(--muted); font-size:.9rem; line-height:1.9; }
.required-fields code { color:var(--ink); }
.section-title { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1rem; }
.section-title p { margin:.4rem 0 0; }
.scope-list { display:grid; gap:1rem; margin-top:1.25rem; }
.scope-card { padding:1.25rem; border:1px solid var(--line); border-radius:18px; }
.scope-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; margin-top:1rem; }
@media (min-width:900px){.scope-options{grid-template-columns:repeat(5,minmax(0,1fr));}}
.scope-foot { display:flex; flex-wrap:wrap; align-items:center; gap:1rem 1.5rem; margin-top:1rem; }
.scope-buttons { margin-left:auto; display:flex; gap:.35rem; }
.scope-buttons button { min-width:2.5rem; height:2.5rem; border:1px solid var(--line); border-radius:8px; background:var(--card); color:var(--ink); }
.mono { font-family:var(--mono); }
.shots { display: flex; flex-wrap: wrap; justify-content: center; gap: 1rem; }
.shots figure { width: 7rem; margin: 0; }
@media (min-width: 640px) { .shots figure { width: 8rem; } }
.shots img { border-radius: 8px; box-shadow: var(--shadow); }
.shots figcaption { text-align: center; font-size: 0.75rem; color: var(--muted); margin-top: 0.4rem; }
.plans { display: grid; gap: 1rem; margin-top: 1.5rem; }
@media (min-width: 768px) { .plans { grid-template-columns: 1fr 1fr 1fr; } }
.plan-compare { overflow:hidden; border-radius:18px; background:var(--card); box-shadow:var(--shadow); }
.plan-current { display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:.5rem; padding:.8rem 1rem; border-bottom:1px solid var(--line); background:var(--bg-warm); font-size:.86rem; }
.plan-current strong { margin-left:.4rem; color:var(--accent); }
.plan-current small { color:var(--subtle); }
.plan-table-scroll { overflow-x:auto; }
.plan-compare table { width:100%; min-width:42rem; border-collapse:collapse; font-size:.9rem; }
.plan-compare th,.plan-compare td { border-bottom:1px solid var(--line); padding:.85rem 1rem; }
.plan-compare thead th { padding:.35rem; vertical-align:bottom; font-weight:400; }
.plan-compare th.feature-head { position:sticky; left:0; z-index:3; min-width:11rem; padding:1rem; background:var(--card); color:var(--muted); text-align:left; }
.plan-compare tbody th { position:sticky; left:0; z-index:2; min-width:11rem; background:var(--card); color:var(--ink); text-align:left; font-weight:400; }
.plan-compare td { min-width:9rem; text-align:center; transition:background .15s; }
.plan-compare td.selected { background:rgb(213 228 227 / .82); }
.plan-column-button { position:relative; display:flex; width:100%; min-width:9rem; min-height:4.35rem; flex-direction:column; align-items:center; justify-content:center; border:0; border-radius:12px; background:var(--bg-warm); color:var(--muted); }
.plan-column-button span { font-weight:600; font-size:.95rem; }
.plan-column-button small { margin-top:.2rem; color:var(--subtle); }
.plan-column-button em { margin-top:.2rem; padding:.1rem .45rem; border-radius:999px; background:var(--card); color:var(--accent); font-size:.68rem; font-style:normal; }
.plan-column-button.selected { background:var(--ink); color:var(--bg); }
.plan-column-button.selected small { color:rgb(242 239 232 / .7); }
.feature-value { display:inline-flex; align-items:center; gap:.2rem; }
.feature-value.on { color:var(--ok); }
.feature-value.off { color:var(--danger); }
.feature-value.num { color:var(--ink); font-weight:500; font-variant-numeric:tabular-nums; }
.plan-extra { display:none; }
.plan-compare.expanded .plan-extra { display:table-row; }
.plan-expand { width:100%; height:3.25rem; border:0; background:transparent; color:var(--accent); font:inherit; }
.plan-expand:hover { background:rgb(231 225 212 / .45); }
.plan-footnote { margin:0; padding:.8rem 1rem; border-top:1px solid var(--line); color:var(--subtle); font-size:.75rem; line-height:1.6; }
.eyebrow { margin:0; color:var(--muted); font-size:.72rem; letter-spacing:.28em; }
.account-page > h1 { margin:.5rem 0 0; font-family:var(--display); font-size:clamp(2rem,5vw,2.7rem); }
.account-tabs { display:flex; gap:.25rem; margin-top:2rem; padding:.3rem; border-radius:12px; background:var(--bg-warm); }
.account-tabs button { flex:1; min-height:2.75rem; border:0; border-radius:8px; background:transparent; color:var(--muted); }
.account-tabs button.on { background:var(--card); color:var(--ink); box-shadow:var(--shadow); }
.notice { display: flex; gap: 0.75rem; padding: 1.25rem; border: 1px solid var(--line); background: var(--card); border-radius: 12px; box-shadow: var(--shadow); }
dl.kv dt { font-size: 0.75rem; color: var(--subtle); }
dl.kv dd { margin: 0 0 0.8rem; }
pre.mono { font-family: var(--mono); font-size: 0.75rem; white-space: pre-wrap; word-break: break-all; }
.admin-challenge{font-family:var(--mono);font-size:1rem;line-height:1.8;letter-spacing:.08em;background:var(--ink);color:var(--bg);padding:.75rem 1rem;border-radius:8px;overflow-wrap:anywhere;word-break:break-all;user-select:all}
.rich-toolbar{display:flex;flex-wrap:wrap;gap:.4rem;padding:.55rem;border:1px solid var(--line);border-bottom:0;border-radius:12px 12px 0 0;background:#f4f0e7}
.rich-toolbar button,.rich-toolbar select{width:auto;min-height:2.3rem;padding:.35rem .65rem;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:7px}
.rich-editor{min-height:24rem;padding:1rem 1.15rem;border:1px solid var(--line);border-radius:0 0 12px 12px;background:#fff;line-height:1.8;outline:none;overflow:auto}
.rich-editor:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgb(35 112 113 / .12)}
.rich-editor img,.article-rich img{display:block;max-width:100%;height:auto;margin:1rem auto;border-radius:10px}
.rich-editor blockquote,.article-rich blockquote{margin:1rem 0;padding:.5rem 1rem;border-left:4px solid var(--teal);background:#f3f0e7;color:var(--muted)}
.article-rich font[size="2"]{font-size:.875rem}.article-rich font[size="3"]{font-size:1rem}.article-rich font[size="4"]{font-size:1.25rem}.article-rich font[size="5"]{font-size:1.55rem}
.link-danger{color:#9b3327;background:transparent;border:0;padding:.2rem .45rem}.table-wrap{overflow:auto}

/* v0.3.9 professional visual system */
:root{
  --bg:#f3f5f2;
  --bg-warm:#e8ece6;
  --card:#ffffff;
  --ink:#10292a;
  --fg:#172d2e;
  --muted:#607071;
  --subtle:#899696;
  --accent:#176d67;
  --accent-strong:#0f5753;
  --accent-soft:#dcebe7;
  --accent-fg:#ffffff;
  --copper:#b2773f;
  --line:#d9e0dc;
  --line-strong:#c6d0cb;
  --danger:#a14237;
  --ok:#287357;
  --teal:#176d67;
  --sans:"HarmonyOS Sans SC","Source Han Sans SC","Noto Sans CJK SC","PingFang SC","Microsoft YaHei",system-ui,sans-serif;
  --display:"Source Han Serif SC","Noto Serif CJK SC","Songti SC","STSong",serif;
  --mono:"Cascadia Mono","SFMono-Regular",Consolas,monospace;
  --shadow:0 1px 2px rgb(15 40 41 / .04),0 10px 30px rgb(15 40 41 / .06);
  --shadow-lg:0 18px 55px rgb(7 35 36 / .14);
}
html{scroll-behavior:smooth}
body{background:
  radial-gradient(circle at 8% 8%,rgb(23 109 103 / .055),transparent 25rem),
  linear-gradient(180deg,#f7f8f5 0,#f2f4f1 28rem,#f3f5f2 100%);
  color:var(--fg);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
::selection{background:rgb(23 109 103 / .2);color:var(--ink)}
a{transition:color .18s ease,opacity .18s ease,background-color .18s ease,border-color .18s ease,transform .18s ease}
.wrap{max-width:78rem}
.legal-strip{background:#0b2527;color:#dce8e5;border-bottom:1px solid rgb(255 255 255 / .07)}
.legal-strip .wrap{min-height:2.25rem}
header.top{border-bottom:1px solid rgb(198 208 203 / .72);background:rgb(250 251 249 / .9);box-shadow:0 4px 24px rgb(11 37 39 / .045);backdrop-filter:blur(18px) saturate(1.2)}
header.top .bar{height:5.25rem}
.brand{gap:.85rem}
.brand img{width:3.25rem;height:3.25rem;filter:drop-shadow(0 5px 12px rgb(15 60 58 / .13))}
.brand span{font-size:1.55rem;letter-spacing:.04em;color:var(--ink)}
nav.desk{gap:.15rem}
nav.desk a{position:relative;height:3rem;padding:0 .9rem;color:#566869;font-weight:500}
nav.desk a:after{content:"";position:absolute;left:.9rem;right:.9rem;bottom:.2rem;height:2px;border-radius:2px;background:var(--accent);transform:scaleX(0);transition:transform .18s ease}
nav.desk a:hover,nav.desk a.on{color:var(--ink)}
nav.desk a.on:after{transform:scaleX(1)}
.auth a{font-weight:500}
.burger{border:1px solid var(--line);border-radius:10px;background:var(--card)}
.mob{background:rgb(250 251 249 / .98);box-shadow:0 18px 35px rgb(11 37 39 / .08)}
.mob a{border-bottom:1px solid var(--line);font-weight:500}
.hero{isolation:isolate;background:linear-gradient(128deg,#0b2729 0%,#103c3c 53%,#15594f 100%)}
.hero:before{content:"";position:absolute;z-index:-1;width:34rem;height:34rem;right:-10rem;top:-15rem;border-radius:50%;background:radial-gradient(circle,rgb(178 119 63 / .24),transparent 68%)}
.hero:after{content:"";position:absolute;z-index:-1;inset:auto 0 0;height:35%;background:linear-gradient(0deg,rgb(0 0 0 / .13),transparent)}
.hero .grid{min-height:36rem;padding-top:5.4rem;padding-bottom:5.4rem}
.hero .grid>div:first-child{position:relative}
.hero .grid>div:first-child:before{content:"";display:block;width:3.5rem;height:3px;margin-bottom:1.25rem;border-radius:3px;background:var(--copper)}
.hero h1{max-width:10em;letter-spacing:.025em;text-wrap:balance}
.lead{font-size:1.02rem;line-height:1.85;color:rgb(244 249 247 / .76)}
.warnbox{padding:.8rem 1rem;border-color:rgb(255 255 255 / .13);border-left:3px solid var(--copper);border-radius:4px;background:rgb(255 255 255 / .075);color:rgb(255 255 255 / .84);font-weight:400}
.btn{min-height:2.9rem;height:auto;padding:.65rem 1.25rem;border-radius:7px;background:var(--accent);box-shadow:0 7px 18px rgb(7 67 63 / .16);font-weight:600;letter-spacing:.01em}
.btn:hover{opacity:1;background:var(--accent-strong);transform:translateY(-1px);box-shadow:0 10px 22px rgb(7 67 63 / .2)}
.hero .btn{background:#f2f5f1;color:#123334;box-shadow:0 10px 28px rgb(0 0 0 / .16)}
.hero .btn:hover{background:#fff}
.hero .btn.ghost{border-color:rgb(255 255 255 / .3);background:rgb(255 255 255 / .04);color:#fff;box-shadow:none}
.hero .btn.ghost:hover{background:rgb(255 255 255 / .1)}
.shot{padding:.55rem;border:1px solid rgb(255 255 255 / .16);border-radius:18px;background:rgb(255 255 255 / .075);box-shadow:var(--shadow-lg);backdrop-filter:blur(5px)}
.shot>img:first-child{border-radius:12px;filter:saturate(.86) contrast(1.03)}
.shot .float{right:-.8rem;bottom:-2.2rem;border:5px solid #f7f8f5;border-radius:15px;box-shadow:0 18px 40px rgb(0 0 0 / .28)}
.section{padding-top:5rem;padding-bottom:5rem}
.section>h1,.section>h2,.section>div>h2,.article>h1{color:var(--ink);letter-spacing:.015em}
.section>h2.font-display:after,.section>div>h2.font-display:after{content:"";display:block;width:2.5rem;height:2px;margin-top:.8rem;background:var(--copper)}
.warm{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(135deg,#e9eeea,#f3f1e9)}
.cards{gap:1.15rem}
.card{position:relative;overflow:hidden;padding:1.45rem;border-color:var(--line);border-radius:14px;box-shadow:var(--shadow);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.card:before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,var(--accent),transparent);opacity:0;transition:opacity .18s ease}
.card:hover{transform:translateY(-3px);border-color:#b9ccc6;box-shadow:0 16px 36px rgb(15 50 49 / .1)}
.card:hover:before{opacity:1}
.card img.icon{width:2.15rem;height:2.15rem;padding:.45rem;border-radius:9px;background:var(--accent-soft)}
.card h3{margin:.9rem 0 0;color:var(--ink);font-size:1.06rem}
.card p{font-size:.91rem;line-height:1.75}
.home-news-list{gap:1.15rem}
.news-item{position:relative;min-height:11.5rem;padding:1.4rem;border-radius:12px;box-shadow:var(--shadow);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.news-item:before{content:"";position:absolute;left:1.4rem;top:0;width:2.5rem;height:3px;background:var(--copper)}
.news-item:hover{transform:translateY(-3px);border-color:#b9ccc6;box-shadow:0 15px 34px rgb(15 50 49 / .09);text-decoration:none}
.news-item h3{color:var(--ink);line-height:1.5}
.news-item p{line-height:1.65}
.article{max-width:52rem;padding-top:4.5rem;padding-bottom:5rem}
.article>h1{font-size:clamp(2rem,5vw,3.25rem);line-height:1.25}
.article .body{font-size:1.02rem;line-height:1.95}
.article .body h2{padding-top:.5rem}
input,textarea,select{border-color:var(--line-strong);border-radius:7px;background:#fff;box-shadow:inset 0 1px 1px rgb(13 44 44 / .025);transition:border-color .16s ease,box-shadow .16s ease}
input:focus,textarea:focus,select:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px rgb(23 109 103 / .12)}
label{color:#4f6262;font-weight:500}
.err,.ok{border:1px solid currentColor;border-left-width:4px;border-radius:7px}
.table{background:var(--card)}
.table th{color:#405555;font-size:.78rem;font-weight:600;letter-spacing:.04em;background:#f1f4f1}
.table th,.table td{padding:.8rem .7rem}
.table tr:hover td{background:#f8faf8}
.notice{border-left:4px solid var(--copper);border-radius:9px}
.plan-compare{border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}
.plan-column-button{border-radius:9px;background:#edf0eb}
.plan-column-button.selected{background:linear-gradient(135deg,#102c2e,#16524f);box-shadow:0 8px 22px rgb(11 60 58 / .16)}
.plan-compare td.selected{background:#e1efeb}
.account-tabs,.admin-nav{border:1px solid var(--line);background:#e9ede8}
.admin-shell{width:min(100% - 2.5rem,88rem);padding-top:2.5rem}
.admin-head{padding:1.4rem 1.6rem;border:1px solid var(--line);border-radius:15px;background:linear-gradient(135deg,#fff,#f4f7f4);box-shadow:var(--shadow)}
.admin-head h1{font-size:clamp(1.9rem,4vw,2.65rem)}
.admin-nav{position:sticky;top:5.75rem;z-index:30;padding:.42rem;border-radius:12px;box-shadow:0 8px 24px rgb(12 40 40 / .07)}
.admin-nav a{min-height:2.65rem;border-radius:8px;font-weight:500}
.admin-nav a.on{color:#fff;background:var(--accent);box-shadow:0 5px 12px rgb(23 109 103 / .18)}
.admin-content{margin-top:2rem}
.admin-card{border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow)}
.admin-card h2{font-size:1.1rem}
.scope-card,.feature-field,.plan-form{border-color:var(--line);border-radius:11px}
.scope-card{background:#fbfcfa}
.rich-toolbar{background:#edf1ed;border-color:var(--line-strong)}
.rich-editor{border-color:var(--line-strong)}
footer.foot{position:relative;background:linear-gradient(135deg,#0a2426,#102f30);color:#eef4f1}
footer.foot:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgb(255 255 255 / .025) 1px,transparent 1px),linear-gradient(90deg,rgb(255 255 255 / .025) 1px,transparent 1px);background-size:32px 32px}
footer.foot .inner,footer.foot .copy,.site-version{position:relative}
footer.foot .inner{padding-top:4rem;padding-bottom:3rem}
footer.foot a{color:rgb(238 244 241 / .7)}
footer.foot a:hover{color:#fff}
@media (max-width:767px){
  header.top .bar{height:4.5rem}.brand img{width:2.8rem;height:2.8rem}.brand span{font-size:1.3rem}
  .hero .grid{min-height:auto;padding-top:3.8rem;padding-bottom:4.5rem}.section{padding-top:3.8rem;padding-bottom:3.8rem}
  .shot .float{right:.2rem}.admin-shell{width:min(100% - 1rem,88rem);padding-top:1rem}.admin-head{padding:1.1rem}
  .admin-nav{top:4.9rem;overflow-x:auto;flex-wrap:nowrap}.admin-nav a{white-space:nowrap}.admin-content{margin-top:1.2rem}.admin-card{padding:1.1rem}
  .purchase-dialog{padding:1.35rem;border-radius:14px}.purchase-dialog h2{font-size:1.35rem}
}

/* v0.4.2 refined corporate and administration system */
:root{
  --bg:#f1f5f3;--bg-warm:#e7efeb;--card:#fff;--ink:#092f35;--fg:#16373b;
  --muted:#5b7073;--subtle:#849496;--accent:#0d766f;--accent-strong:#075d58;
  --accent-soft:#d9efea;--copper:#c28a43;--line:#d5e0dc;--line-strong:#bdcec8;
  --shadow:0 1px 2px rgb(7 45 49 / .04),0 12px 34px rgb(7 45 49 / .07);
  --shadow-lg:0 24px 70px rgb(4 33 37 / .16)
}
body{background:radial-gradient(circle at 90% 4%,rgb(13 118 111 / .07),transparent 28rem),linear-gradient(180deg,#f8faf8 0,#f1f5f3 42rem,#f3f6f4 100%)}
header.top{background:rgb(251 253 252 / .92);border-bottom-color:#d6e2de}
.hero{background:linear-gradient(122deg,#06292e 0%,#0a3d42 48%,#0c625b 100%)}
.hero:before{width:42rem;height:42rem;background:radial-gradient(circle,rgb(205 151 77 / .24),transparent 67%)}
.card,.news-item,.plan-compare,.notice{border-color:#d8e3df}
.card:hover,.news-item:hover{border-color:#9fc4ba;box-shadow:0 18px 42px rgb(7 57 57 / .12)}
.btn{background:linear-gradient(135deg,#0d7d75,#09665f);box-shadow:0 9px 22px rgb(8 103 96 / .2)}
.btn.outline{background:#fff;color:var(--ink);border-color:var(--line-strong);box-shadow:none}
.btn.ghost-light{background:transparent;color:var(--muted);border:1px solid var(--line);box-shadow:none}

/* Professional administration layout */
.admin-shell{width:100%;min-height:100vh;margin:0;padding:0;display:grid;grid-template-columns:272px minmax(0,1fr);grid-template-rows:auto 1fr;align-items:start;background:#f1f5f3}
.admin-nav{grid-column:1;grid-row:1/3;position:sticky;z-index:50;top:0;width:100%;height:100vh;margin:0;padding:26px 18px 18px;display:flex;flex-direction:column;flex-wrap:nowrap;overflow:hidden;border:0;border-radius:0;background:linear-gradient(180deg,#082f34 0%,#09292e 100%);box-shadow:8px 0 30px rgb(3 31 35 / .08)}
.admin-brand{display:flex!important;min-height:auto!important;align-items:center!important;gap:12px!important;margin:0 3px 24px;padding:0!important;color:#fff!important;background:transparent!important;box-shadow:none!important}
.admin-brand:hover{text-decoration:none!important}
.admin-brand-mark{width:42px;height:42px;display:grid;flex:0 0 auto;place-items:center;border:1px solid rgb(255 255 255 / .2);border-radius:12px;background:linear-gradient(145deg,#14847b,#0b5f5a);color:#fff;font-family:var(--display);font-size:1.4rem;box-shadow:0 10px 24px rgb(0 0 0 / .18)}
.admin-brand strong,.admin-brand small{display:block}.admin-brand strong{font-size:1.06rem;letter-spacing:.08em}.admin-brand small{margin-top:2px;color:#91b5b2;font-size:.7rem;letter-spacing:.1em}
.admin-nav-scroll{min-height:0;padding:0 2px 20px;display:block;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgb(255 255 255 / .2) transparent}
.admin-nav-section{display:block;margin:22px 11px 7px;color:#6f9997;font-size:.68rem;font-weight:700;letter-spacing:.18em}
.admin-nav-section:first-child{margin-top:3px}
.admin-nav a:not(.admin-brand){display:flex;min-height:42px;align-items:center;margin:3px 0;padding:0 12px;border-radius:9px;color:#b8cfcd;font-size:.88rem;font-weight:500;box-shadow:none}
.admin-nav a:not(.admin-brand):hover{color:#fff;background:rgb(255 255 255 / .075);text-decoration:none}
.admin-nav a.on:not(.admin-brand){color:#fff;background:linear-gradient(90deg,rgb(21 132 123 / .78),rgb(18 112 105 / .42));box-shadow:inset 3px 0 #e0b36b,0 8px 18px rgb(0 0 0 / .12)}
.admin-nav-footer{margin-top:auto;padding:16px 10px 2px;display:flex;justify-content:space-between;gap:10px;border-top:1px solid rgb(255 255 255 / .09);color:#759996;font-size:.72rem}
.admin-nav-footer a{color:#d4e4e2}
.admin-head{grid-column:2;grid-row:1;margin:0;padding:30px 38px 25px;display:flex;align-items:flex-end;border:0;border-bottom:1px solid #d8e2de;border-radius:0;background:rgb(250 252 251 / .92);box-shadow:none;backdrop-filter:blur(14px)}
.admin-head h1{margin-top:.35rem;font-family:var(--sans);font-size:clamp(1.85rem,3vw,2.55rem);font-weight:720;letter-spacing:-.025em}
.admin-head .eyebrow{color:var(--accent);font-size:.68rem;font-weight:700;letter-spacing:.2em}
.admin-title-hint{max-width:54rem;margin:.45rem 0 0;color:#667a7c}
.admin-who{padding:.5rem .75rem;border:1px solid var(--line);border-radius:999px;background:#fff;color:#52696b;box-shadow:0 5px 16px rgb(13 55 57 / .05)}
.admin-user-dot{width:8px;height:8px;border-radius:50%;background:#2ba77a;box-shadow:0 0 0 3px rgb(43 167 122 / .13)}
.admin-content{grid-column:2;grid-row:2;min-width:0;margin:0;padding:28px 38px 64px}
.admin-card{margin-bottom:20px;padding:24px;border:1px solid #d6e1dd;border-radius:14px;background:#fff;box-shadow:0 1px 2px rgb(8 45 48 / .025),0 10px 30px rgb(8 45 48 / .05)}
.admin-card h2{color:#12383c;font-size:1.08rem;font-weight:700}
.admin-hint{margin:0 0 1.2rem;padding:12px 15px;border-left:3px solid var(--accent);background:#e9f3f0;color:#4e686a;border-radius:0 8px 8px 0}
.admin-page-actions{margin-bottom:20px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.admin-page-actions>div{display:flex;align-items:baseline;gap:7px;color:var(--muted)}
.admin-page-actions strong{color:var(--ink);font-size:2rem}.admin-page-actions span{font-size:.85rem}
.admin-filter-card{padding:18px 20px}
.admin-filter-form{display:grid;grid-template-columns:minmax(15rem,2fr) minmax(10rem,1fr) auto auto;align-items:end;gap:12px}
.admin-filter-form .btn{min-height:2.75rem;margin:0}
.admin-table-card{padding:0;overflow:hidden}.admin-table-card>.section-title,.admin-table-card>h2{padding:22px 24px 18px}.admin-table-card>.table-wrap{border-top:1px solid var(--line)}
.admin-data-table{margin:0}.admin-data-table th{padding:12px 16px;background:#f4f7f5;color:#5f7476}.admin-data-table td{padding:15px 16px;vertical-align:middle}
.admin-data-table td>strong,.admin-data-table td>small{display:block}.admin-data-table td>small{max-width:34rem;margin-top:4px;color:var(--subtle);line-height:1.45}
.status-pill{display:inline-flex;padding:4px 9px;border-radius:999px;font-size:.72rem;font-weight:700}.status-pill.published{background:#def2e8;color:#1b6c4b}.status-pill.draft{background:#edf0ef;color:#6d7979}
.table-actions{display:flex;align-items:center;gap:6px}.table-actions form{margin:0}.table-action{min-height:32px!important;padding:5px 9px!important;display:inline-flex;align-items:center;border:1px solid var(--line)!important;border-radius:7px!important;background:#fff!important;color:#31585a!important;font-size:.78rem;text-decoration:none}.table-action:hover{border-color:#91b8af!important;background:#f0f7f5!important;text-decoration:none}.table-action.danger{color:#a4473e!important}
.admin-empty{padding:38px;text-align:center;color:var(--subtle)}.comment-body{max-width:34rem;white-space:normal;line-height:1.65}

/* Dedicated content editor */
.admin-editor-heading{margin-bottom:18px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:.82rem}.admin-editor-heading a{font-weight:600}
.news-editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:20px;align-items:start}.news-editor-main{min-width:0}.news-editor-side{position:sticky;top:20px}
.news-editor-layout .admin-card{padding:24px}.news-title-field input{height:3.4rem;font-size:1.3rem;font-weight:650}.news-title-field{margin-bottom:18px}
.editor-workspace{padding:0!important;overflow:hidden}.editor-workspace>.section-title{padding:20px 22px;border-bottom:1px solid var(--line);background:#f8faf9}.editor-workspace>.field-help{padding:0 22px 18px}.editor-powered{padding:5px 9px;border-radius:6px;background:var(--accent-soft);color:var(--accent-strong);font-size:.68rem;font-weight:700;letter-spacing:.04em}
.editor-workspace .tox-tinymce{border:0!important;border-radius:0!important}.editor-workspace .tox .tox-editor-header{box-shadow:0 1px 0 var(--line)!important}.editor-workspace .tox-statusbar{border-top-color:var(--line)!important}
.publish-card{display:grid;gap:14px}.publish-card .btn{width:100%;margin:0}.publish-choice{padding:13px;display:flex;gap:10px;border:1px solid var(--line);border-radius:9px;background:#f8faf9}.publish-choice input{margin-top:3px}.publish-choice strong,.publish-choice small{display:block}.publish-choice small{margin-top:2px;color:var(--subtle);font-weight:400}
.editor-tips ul{margin:14px 0 0;padding-left:1.1rem;color:var(--muted);font-size:.82rem;line-height:1.8}

/* High-contrast private-key login */
.admin-login-body{min-height:100vh;background:#edf3f1}.admin-login-page{min-height:100vh;display:grid;grid-template-columns:minmax(22rem,.9fr) minmax(34rem,1.1fr)}
.admin-login-aside{position:relative;min-height:100vh;overflow:hidden;background:#062c31}.admin-login-aside>img{width:100%;height:100%;object-fit:cover;filter:saturate(.65) contrast(1.08)}.admin-login-shade{position:absolute;inset:0;background:linear-gradient(145deg,rgb(2 31 35 / .9),rgb(7 65 64 / .63) 60%,rgb(14 54 54 / .78))}
.admin-login-intro{position:absolute;left:clamp(28px,5vw,78px);right:38px;bottom:clamp(45px,9vh,100px);color:#fff}.admin-login-intro span{color:#d6aa69;font-size:.7rem;font-weight:700;letter-spacing:.22em}.admin-login-intro h1{margin:18px 0 12px;font-family:var(--display);font-size:clamp(2.1rem,3.5vw,3.6rem);font-weight:650;line-height:1.3}.admin-login-intro p{color:#b9d0ce}
.admin-login-main{padding:52px 30px;display:grid;place-items:center}.admin-login-box{width:min(100%,560px);padding:38px 42px;border:1px solid #d4e0dc;border-radius:18px;background:#fff;box-shadow:0 28px 80px rgb(5 45 47 / .13)}
.admin-login-badge{display:inline-flex;padding:5px 9px;border-radius:5px;background:#e0f0ec;color:#0a6c65;font-size:.7rem;font-weight:700;letter-spacing:.08em}.admin-login-box h2{margin:16px 0 6px;color:var(--ink);font-size:2rem}.admin-login-lead{margin:0 0 24px;color:var(--muted)}
.admin-login-form{display:grid;gap:18px}.admin-login-form label{font-size:.82rem;font-weight:650}.admin-login-form small{display:block;margin-top:7px;color:var(--subtle);line-height:1.55}.challenge-label{display:flex;align-items:center;justify-content:space-between}.challenge-label button{min-height:auto!important;padding:3px 7px!important;border:0!important;background:transparent!important;color:var(--accent)!important;font-size:.72rem}
.admin-challenge{width:100%;min-height:116px;height:auto;padding:16px;border:1px solid #194b50!important;border-radius:9px!important;background:#072f35!important;color:#f9ffff!important;font:700 1rem/1.75 var(--mono)!important;letter-spacing:.075em;overflow-wrap:anywhere;word-break:break-all;resize:none;box-shadow:inset 0 0 0 1px rgb(255 255 255 / .04)!important;user-select:text}
.admin-challenge:focus{border-color:#e3b76e!important;box-shadow:0 0 0 3px rgb(227 183 110 / .22)!important}.admin-challenge::selection{background:#ffd37b;color:#06262b}.admin-login-submit{width:100%;min-height:3.15rem;margin-top:4px}.admin-login-back{margin:22px 0 0;text-align:center;color:var(--subtle);font-size:.8rem}.admin-login-back span{margin:0 8px}

@media(max-width:1050px){.news-editor-layout{grid-template-columns:1fr}.news-editor-side{position:static;display:grid;grid-template-columns:1fr 1fr;gap:16px}.admin-filter-form{grid-template-columns:1fr 1fr auto}}
@media(max-width:880px){.admin-shell{display:block}.admin-nav{position:sticky;width:100%;height:auto;padding:10px 14px;display:flex;align-items:center;flex-direction:row;overflow:hidden}.admin-brand{margin:0 12px 0 0}.admin-brand-mark{width:34px;height:34px}.admin-brand small{display:none}.admin-nav-scroll{display:flex;align-items:center;gap:4px;padding:0;overflow-x:auto}.admin-nav-section{display:none}.admin-nav a:not(.admin-brand){flex:0 0 auto;margin:0;white-space:nowrap}.admin-nav-footer{display:none}.admin-head{padding:24px 22px 18px}.admin-who{display:none}.admin-content{padding:22px}.admin-login-page{grid-template-columns:1fr}.admin-login-aside{min-height:300px}.admin-login-main{padding:38px 20px 60px}.admin-login-box{padding:30px}}
@media(max-width:640px){.admin-head{padding:20px 15px}.admin-head h1{font-size:1.7rem}.admin-content{padding:16px 12px 44px}.admin-card{padding:18px}.admin-filter-form{grid-template-columns:1fr}.admin-page-actions{align-items:flex-start}.news-editor-side{display:block}.admin-login-aside{min-height:240px}.admin-login-intro{left:25px;bottom:30px}.admin-login-intro h1{font-size:1.75rem}.admin-login-intro p{display:none}.admin-login-main{padding:24px 12px 45px}.admin-login-box{padding:24px 18px;border-radius:13px}.admin-challenge{font-size:.83rem!important}}
