:root{--green:#254d3b;--ink:#25352b;--muted:#677267;--line:#dde3d6;--paper:#f6f7f1;--accent:#d6e49c;font-family:-apple-system,BlinkMacSystemFont,"Noto Sans TC","PingFang TC",sans-serif;color:var(--ink);background:var(--paper);font-size:16px}*{box-sizing:border-box}body{margin:0}a{color:var(--green)}button,input,textarea,select{font:inherit}button,a,input,textarea,select{touch-action:manipulation}button,a{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #a2bb5f;outline-offset:3px}h1{font-size:30px;line-height:1.5;margin:5px 0 8px}h2{font-size:22px;margin:0 0 12px}h3{font-size:18px;margin:0 0 10px}p{line-height:1.85;margin:8px 0 16px}.cms-shell{display:flex;min-height:100vh}.sidebar{width:246px;background:var(--green);color:#f6f7f1;position:fixed;inset:0 auto 0 0;padding:32px 22px;display:flex;flex-direction:column}.wordmark{display:flex;align-items:center;gap:11px;color:white;text-decoration:none;font-size:23px;font-weight:700}.mark{display:grid;place-items:center;background:var(--accent);color:var(--green);height:44px;width:44px;border-radius:13px;font-size:27px}.wordmark small{display:block;font-size:14px;font-weight:400;margin-top:3px}.workspace-tag{font-size:12px;letter-spacing:.08em;color:#c4d0bd;padding:26px 0 20px}.nav-item{display:block;width:100%;color:#d9e4d6;background:none;border:0;text-align:left;padding:13px 12px;border-radius:8px;margin:3px 0;font-size:15px;text-decoration:none}.nav-item.active,.nav-item:hover{background:#ffffff15;color:white}.profile{margin-top:auto;padding-top:28px;overflow-wrap:anywhere;font-size:14px}.profile small{display:block;color:#cbdac3;margin:8px 0}.profile a{color:white}.main-wrap{margin-left:246px;width:calc(100% - 246px);min-width:0}.topbar{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:22px 38px;border-bottom:1px solid var(--line);background:#fff;font-size:14px}main{padding:30px 38px;max-width:1480px;margin:auto}.page-intro{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-bottom:22px}.page-intro p{font-size:14px;color:var(--muted);margin-bottom:0}.eyebrow{font-size:12px;letter-spacing:.09em;color:var(--muted);margin-bottom:7px}.actions{display:flex;gap:9px;flex-wrap:wrap;align-items:center}.btn{border:1px solid #bdcbbb;background:#fff;border-radius:8px;padding:11px 16px;color:var(--green);text-decoration:none;display:inline-block;font-size:14px;white-space:nowrap}.btn.primary{background:var(--green);border-color:var(--green);color:#fff}.btn.publish{background:var(--accent);border-color:#c4d582}.text-button{border:0;padding:0;background:none;color:var(--green);font-size:14px;text-decoration:underline;text-underline-offset:4px}.draft-tools{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin:0 0 24px}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px;margin-bottom:20px;min-width:0}.card>p,.muted{color:var(--muted)}.grid-two{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:8px;margin:18px 0}.field>span{font-size:14px;font-weight:600}.field small,.small{font-size:14px}.input{width:100%;padding:12px 13px;border:1px solid #ccd5c5;border-radius:8px;color:var(--ink);background:#fff;line-height:1.7;resize:vertical}.input:focus{border-color:var(--green)}textarea{min-height:110px}.banner{padding:16px 20px;border:1px solid #cfdbc1;background:#edf3e6;border-radius:10px;margin-bottom:20px;line-height:1.75;font-size:15px}.banner.warning{background:#fff6e8;border-color:#e8d0a7;color:#7b5426}.tag{font-size:13px;display:inline-block;border-radius:6px;padding:5px 9px;background:#edf3e6;color:var(--green)}.tag.gray{background:#eef0ec;color:#65705f}.role-layout{display:grid;grid-template-columns:275px minmax(0,1fr);gap:20px}.role-picker{max-height:680px;overflow:auto}.role-option{border:0;border-bottom:1px solid var(--line);background:white;text-align:left;width:100%;padding:15px 12px;color:var(--ink);font-size:15px;line-height:1.6}.role-option.selected{background:#edf3e6;border-left:3px solid var(--green)}.role-option small{display:block;font-size:13px;color:var(--muted)}.filter-row{display:flex;gap:12px;margin-bottom:18px}.filter-row input{flex:1}.filter-row select{max-width:250px}.section-top{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}.version-row{display:flex;align-items:center;gap:20px;justify-content:space-between;border-bottom:1px solid var(--line);padding:20px 0}.version-row:last-child{border:0}.version-row p{font-size:14px;margin:5px 0 0}.version-row strong{font-size:16px}.empty{padding:35px 20px;text-align:center;color:var(--muted)}footer{padding:20px 38px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}dialog{max-width:800px;width:calc(100% - 32px);border:1px solid var(--line);border-radius:15px;padding:28px;max-height:85vh;color:var(--ink);background:#fff}dialog::backdrop{background:#132d2260}.modal-head{display:flex;justify-content:space-between;gap:12px;align-items:center}dialog pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;padding:14px;background:var(--paper)}.auth-card{max-width:570px;margin:12vh auto;padding:32px;background:#fff;border:1px solid var(--line);border-radius:16px}.auth-card .btn{margin:7px 0}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:15px 12px;border-bottom:1px solid var(--line);line-height:1.75}.scroll{overflow:auto}details{padding:16px 0;border-bottom:1px solid var(--line)}summary{cursor:pointer;font-weight:600}.diff-before{border-left:3px solid #c99b77;padding-left:13px}.diff-after{border-left:3px solid #8ea75a;padding-left:13px}[hidden]{display:none!important}@media(max-width:1100px){.sidebar{width:215px;padding:28px 16px}.main-wrap{margin-left:215px;width:calc(100% - 215px)}main{padding:28px}.page-intro{display:block}.page-intro .actions{margin-top:16px}.role-layout{grid-template-columns:230px minmax(0,1fr)}.grid-two{grid-template-columns:1fr}}@media(max-width:800px){.cms-shell{display:block}.sidebar{position:static;width:100%;padding:18px 20px}.workspace-tag{display:none}.sidebar nav{display:flex;overflow:auto;margin-top:14px;gap:6px}.nav-item{width:auto;white-space:nowrap;padding:9px}.profile{display:flex;gap:12px;flex-wrap:wrap;align-items:center;padding-top:12px}.profile small{margin:0}.profile a{margin-left:auto}.main-wrap{margin:0;width:100%}.topbar{padding:18px 22px}main{padding:24px 20px}.role-layout{grid-template-columns:1fr}.role-picker{max-height:220px}.filter-row{flex-direction:column}.filter-row select{max-width:none}.card{padding:20px}.version-row{align-items:flex-start;flex-direction:column;gap:12px}footer{padding:20px}.auth-card{margin:6vh 16px}h1{font-size:26px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* Shared visual refresh: sea blue, apricot, and neutral paper surfaces. */
:root {
  --navy: #203f58;
  --navy-deep: #152f45;
  --apricot: #f3b57d;
  --apricot-soft: #fff1e4;
  --blue-soft: #edf3f8;
  --green: var(--navy);
  --lime: var(--apricot);
  --accent: var(--apricot);
  --ink: #233746;
  --muted: #5c6e7c;
  --line: #dce4eb;
  --bg: #f5f7fa;
  --paper: #ffffff;
  --soft: var(--blue-soft);
  --amber: #80501f;
  --amber-bg: var(--apricot-soft);
  --radius: 14px;
  color-scheme: light;
  font-family: "PingFang TC", "Microsoft JhengHei", "Noto Sans TC", system-ui, sans-serif;
  font-size: 16px;
}
body.site-refresh, body.cms-refresh {
  color: var(--ink);
  background: var(--bg);
  font-family: "PingFang TC", "Microsoft JhengHei", "Noto Sans TC", system-ui, sans-serif;
  font-size: 1.0625rem;
  line-height: 1.8;
  letter-spacing: .01em;
  -webkit-font-smoothing: antialiased;
}
button, input, select, textarea { font-family: inherit; }
.site-refresh h1, .cms-refresh h1 { font-size: 2rem; line-height: 1.45; letter-spacing: -.025em; }
.site-refresh h2, .cms-refresh h2 { font-size: 1.5rem; line-height: 1.5; letter-spacing: -.01em; }
.site-refresh h3, .cms-refresh h3 { font-size: 1.1875rem; line-height: 1.6; }
.site-refresh p, .cms-refresh p { line-height: 1.85; }
.site-refresh .small, .site-refresh small, .cms-refresh .small, .cms-refresh small { font-size: .875rem; line-height: 1.7; }
.site-refresh .sidebar, .cms-refresh .sidebar {
  width: 252px;
  padding: 34px 22px 24px;
  color: var(--ink);
  background: var(--paper);
  border-right: 1px solid var(--line);
}
.site-refresh .wordmark, .cms-refresh .wordmark {
  color: var(--navy);
  font-size: 1.5rem;
  gap: 12px;
  letter-spacing: .015em;
}
.site-refresh .wordmark small, .cms-refresh .wordmark small { color: var(--muted); font-size: .875rem; letter-spacing: .12em; }
.site-refresh .mark, .cms-refresh .mark { background: var(--apricot); color: var(--navy-deep); width: 45px; height: 45px; border-radius: 12px; font-size: 1.6875rem; }
.site-refresh .workspace-tag, .cms-refresh .workspace-tag { color: var(--muted); font-size: .8125rem; letter-spacing: .07em; margin: 36px 0 16px; padding: 0 10px; }
.site-refresh .workspace-tag span { color: var(--muted); }
.site-refresh .nav-item, .cms-refresh .nav-item {
  min-height: 50px;
  padding: 12px 14px;
  margin: 4px 0;
  gap: 10px;
  border-radius: 8px;
  color: var(--muted);
  background: transparent;
  font-size: 1rem;
  font-weight: 500;
  text-decoration: none;
  line-height: 1.55;
}
.site-refresh .nav-item:hover, .cms-refresh .nav-item:hover { color: var(--navy); background: var(--blue-soft); }
.site-refresh .nav-item.active, .cms-refresh .nav-item.active { color: white; background: var(--navy); font-weight: 600; }
.site-refresh .nav-icon { display: none; }
.site-refresh .nav-count { font-size: .8125rem; border: 0; background: var(--blue-soft); color: var(--navy); padding: 2px 7px; opacity: 1; }
.site-refresh .nav-item.active .nav-count { color: white; background: #ffffff20; }
.site-refresh .side-note { color: var(--muted); border: 0; border-top: 1px solid var(--line); border-radius: 0; padding: 22px 6px 0; font-size: .875rem; }
.site-refresh .side-note strong { color: var(--ink); font-size: .9375rem; font-weight: 600; }
.site-refresh .side-note p { color: var(--muted); font-size: .875rem; margin: 8px 0 12px; }
.site-refresh .live-dot { display: none; }
.site-refresh .profile, .cms-refresh .profile { color: var(--ink); font-size: .9375rem; border-top: 1px solid var(--line); padding-top: 20px; gap: 10px; }
.site-refresh .profile small, .cms-refresh .profile small { color: var(--muted); font-size: .8125rem; }
.cms-refresh .profile a { color: var(--navy); }
.site-refresh .avatar { color: var(--navy); background: var(--apricot-soft); width: 36px; height: 36px; }
.site-refresh .main-wrap, .cms-refresh .main-wrap { margin-left: 252px; width: calc(100% - 252px); }
.site-refresh .topbar, .cms-refresh .topbar {
  min-height: 80px;
  height: auto;
  padding: 18px 38px;
  background: #ffffff;
  border-bottom: 1px solid var(--line);
  gap: 16px;
  flex-wrap: wrap;
  font-size: .9375rem;
}
.site-refresh .breadcrumb { font-size: .9375rem; color: var(--muted); }
.site-refresh .breadcrumb strong { color: var(--navy); font-weight: 600; }
.site-refresh .top-actions { gap: 12px; flex-wrap: wrap; }
.site-refresh .pill { padding: 9px 12px; min-height: 42px; font-size: .875rem; border-color: var(--line); color: var(--muted); background: white; }
.site-refresh .top-actions a.pill { background: var(--navy); border-color: var(--navy); color: white; font-weight: 600; }
.site-refresh main, .cms-refresh main { max-width: 1320px; margin: 0 auto; padding: 30px 38px 44px; }
.site-refresh .share-notice { margin: 24px 38px 0; padding: 12px 18px; border: 1px solid #f1d8bf; background: var(--apricot-soft); color: #70502f; font-size: .875rem; line-height: 1.75; border-radius: 8px; }
.site-refresh .home-intro { margin-bottom: 24px; }
.site-refresh .home-greeting { color: var(--navy); font-size: 1.0625rem; font-weight: 600; margin: 0; }
.site-refresh .home-intro-note { color: var(--muted); font-size: .9375rem; margin: 3px 0 0; }
.site-refresh .hero { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(240px,.8fr); gap: 0; border: 1px solid var(--line); background: var(--paper); border-radius: 16px; overflow: hidden; box-shadow: none; margin-bottom: 26px; }
.site-refresh .hero-copy { padding: 36px 36px 38px; }
.site-refresh .hero .eyebrow { color: #77502d; font-size: .9375rem; font-weight: 500; letter-spacing: .03em; margin-bottom: 16px; }
.site-refresh .hero h1 { font-size: clamp(2rem,2.9vw,2.625rem); line-height: 1.4; letter-spacing: -.03em; color: var(--navy-deep); margin: 0 0 18px; font-weight: 650; }
.site-refresh .hero-copy p { color: var(--muted); font-size: 1.0625rem; line-height: 1.85; max-width: 34em; margin-bottom: 26px; }
.site-refresh .hero .actions { gap: 12px; }
.site-refresh .task-outline { margin: 28px 0; padding: 10px 28px; border-left: 1px solid var(--line); align-self: stretch; }
.site-refresh .task-outline h2 { color: var(--muted); font-size: .9375rem; font-weight: 500; margin: 0 0 18px; }
.site-refresh .task-outline ul { padding: 0; margin: 0; list-style: none; }
.site-refresh .task-outline li { display: grid; grid-template-columns: 22px 1fr; align-items: baseline; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--line); font-size: 1rem; line-height: 1.6; }
.site-refresh .task-outline li:last-child { border-bottom: 0; }
.site-refresh .task-outline li span { color: #80501f; font-size: .8125rem; font-variant-numeric: tabular-nums; }
.site-refresh .page-intro { margin: 0 0 28px; gap: 20px; }
.site-refresh .page-intro .eyebrow { display: none; }
.site-refresh .page-intro h1 { font-size: 1.875rem; margin-bottom: 10px; }
.site-refresh .page-intro p { color: var(--muted); font-size: 1rem; max-width: 48em; }
.site-refresh .btn, .cms-refresh .btn { min-height: 46px; padding: 11px 18px; font-size: 1rem; line-height: 1.5; font-weight: 550; border-radius: 8px; border-color: #cad6df; background: white; color: var(--navy); box-shadow: none; white-space: normal; text-align: center; }
.site-refresh .btn:hover, .cms-refresh .btn:hover { border-color: var(--navy); background: var(--blue-soft); }
.site-refresh .btn.primary, .cms-refresh .btn.primary { background: var(--navy); color: white; border-color: var(--navy); }
.site-refresh .btn.primary:hover, .cms-refresh .btn.primary:hover { background: var(--navy-deep); }
.site-refresh .btn.quiet { background: white; color: var(--navy); border: 1px solid var(--line); }
.site-refresh .btn.danger { color: var(--red); }
.site-refresh .btn.small-btn { font-size: .9375rem; padding: 9px 14px; min-height: 42px; }
.site-refresh .text-button, .cms-refresh .text-button { color: var(--navy); font-size: .9375rem; line-height: 1.7; text-underline-offset: 5px; }
.site-refresh .section-heading { margin: 32px 0 16px; gap: 14px; align-items: baseline; flex-wrap: wrap; }
.site-refresh .section-heading h2 { font-size: 1.375rem; margin: 0; }
.site-refresh .flow-line { grid-template-columns: repeat(3,minmax(0,1fr)); border: 1px solid var(--line); background: white; border-radius: 12px; padding: 0 22px; overflow: hidden; gap: 0 24px; }
.site-refresh .flow-item { display: grid; grid-template-columns: 32px 1fr; gap: 0 10px; text-align: left; padding: 22px 0; border: 0; border-bottom: 1px solid var(--line); background: transparent; }
.site-refresh .flow-item:nth-child(n+4) { border-bottom: 0; }
.site-refresh .flow-item::after { display: none; }
.site-refresh .flow-item .number { grid-row: span 2; align-self: center; width: auto; height: auto; margin: 0; font-size: .9375rem; background: transparent; color: #80501f; border-radius: 0; font-variant-numeric: tabular-nums; }
.site-refresh .flow-item strong { font-size: 1rem; color: var(--navy); font-weight: 600; }
.site-refresh .flow-item small { font-size: .875rem; line-height: 1.75; color: var(--muted); }
.site-refresh .card, .cms-refresh .card { border: 1px solid var(--line); border-radius: 12px; padding: 28px; background: white; box-shadow: none; }
.site-refresh .card p { font-size: 1rem; line-height: 1.85; color: var(--muted); }
.site-refresh .card .card-top { margin-bottom: 18px; gap: 10px; flex-wrap: wrap; }
.site-refresh .grid-two, .site-refresh .library-grid { gap: 22px; }
.site-refresh .tag, .cms-refresh .tag { font-size: .8125rem; line-height: 1.55; font-weight: 500; padding: 5px 9px; border-radius: 5px; color: var(--navy); background: var(--blue-soft); }
.site-refresh .tag.gray, .cms-refresh .tag.gray { color: var(--muted); background: #f1f4f6; }
.site-refresh .tag.amber { color: #80501f; background: var(--apricot-soft); }
.site-refresh .banner, .cms-refresh .banner { font-size: .9375rem; line-height: 1.8; border-radius: 8px; padding: 16px 20px; background: var(--blue-soft); border-color: var(--line); color: var(--navy); }
.site-refresh .banner.warning, .cms-refresh .banner.warning { background: var(--apricot-soft); color: #80501f; border-color: #f1d8bf; }
.site-refresh .banner.error { color: #973e36; background: #fff0ed; border-color: #e9c3bd; }
.site-refresh .banner strong, .cms-refresh .banner strong { font-weight: 600; }
.site-refresh .footer, .cms-refresh footer { padding: 22px 38px; color: var(--muted); font-size: .8125rem; border-color: var(--line); gap: 16px; }
.site-refresh .stepper { max-width: 800px; margin: 0 0 28px; }
.site-refresh .step { font-size: .9375rem; line-height: 1.55; min-height: 44px; gap: 9px; color: var(--muted); }
.site-refresh .step b { width: 30px; height: 30px; font-size: .875rem; border-color: #c9d6df; }
.site-refresh .step.active { color: var(--navy); }
.site-refresh .step.active b { background: var(--navy); border-color: var(--navy); color: white; }
.site-refresh .step.done b { color: var(--navy); background: var(--apricot); border-color: var(--apricot); }
.site-refresh .form-grid { gap: 23px 20px; }
.site-refresh .field label { font-size: 1rem; margin-bottom: 8px; font-weight: 600; }
.site-refresh .field small { font-size: .875rem; margin-top: 9px; line-height: 1.8; }
.site-refresh .input, .cms-refresh .input { padding: 12px 14px; font-size: 1.0625rem; line-height: 1.75; color: var(--ink); background: #fff; border-color: #beced9; border-radius: 8px; min-height: 48px; }
.site-refresh .input::placeholder, .cms-refresh .input::placeholder { color: #738392; }
.site-refresh .input:focus, .cms-refresh .input:focus { border-color: var(--navy); }
.site-refresh textarea.input { min-height: 118px; line-height: 1.85; }
.site-refresh .preset-row { gap: 10px; margin-bottom: 24px; }
.site-refresh .preset { font-size: .9375rem; padding: 9px 14px; min-height: 44px; color: var(--muted); background: white; border-color: var(--line); }
.site-refresh .preset.selected { color: var(--navy); background: var(--apricot-soft); border-color: #dba36e; }
.site-refresh .side-panel h3 { font-size: 1.1875rem; }
.site-refresh .checkrow { font-size: .9375rem; padding: 13px 0; gap: 10px; }
.site-refresh .summary-label { font-size: .875rem; color: var(--muted); }
.site-refresh .summary-value { font-size: 1rem; margin: 5px 0 20px; }
.site-refresh .topic-grid { gap: 18px; }
.site-refresh .topic { padding: 25px; min-height: 260px; border-radius: 12px; border-color: var(--line); }
.site-refresh .topic.selected { padding: 24px; border-color: var(--navy); background: var(--blue-soft); }
.site-refresh .topic h3 { font-size: 1.3125rem; line-height: 1.65; margin: 16px 0 12px; }
.site-refresh .topic p { font-size: 1rem; line-height: 1.8; }
.site-refresh .topic-id, .site-refresh .topic-foot { font-size: .875rem; line-height: 1.7; }
.site-refresh .topic-check { border-color: #bccbd7; }
.site-refresh .mode-chip { font-size: 1rem; padding: 12px 18px; min-height: 48px; border-color: var(--line); }
.site-refresh .mode-chip.active { background: var(--blue-soft); border-color: var(--navy); color: var(--navy); }
.site-refresh .bottom-action .muted { font-size: .875rem; line-height: 1.8; }
.site-refresh .tabs { gap: 8px; overflow-x: auto; }
.site-refresh .tab { font-size: 1rem; padding: 14px 12px; min-height: 50px; white-space: nowrap; }
.site-refresh .tab.active { color: var(--navy); border-color: var(--navy); }
.site-refresh .result-header h2 { font-size: 1.6875rem; line-height: 1.55; }
.site-refresh .result-header p { font-size: .875rem; line-height: 1.8; }
.site-refresh .eyebrow { font-size: .875rem; }
.site-refresh .empty { border-color: var(--line); }
.site-refresh .result-content { font-size: 1.0625rem; line-height: 1.9; padding-top: 20px; }
.site-refresh .result-content p, .site-refresh .result-content li { font-size: 1.0625rem; line-height: 1.95; }
.site-refresh .result-content h3 { font-size: 1.3125rem; margin: 30px 0 14px; }
.site-refresh .result-content h4 { font-size: 1.0625rem; margin: 24px 0 12px; }
.site-refresh table { font-size: .9375rem; line-height: 1.8; }
.site-refresh th, .site-refresh td { padding: 16px 14px; min-width: 100px; }
.site-refresh th { background: var(--blue-soft); color: var(--navy); }
.site-refresh .result-side .card { padding: 23px; }
.site-refresh .review-list label, .site-refresh .review-list label span { font-size: .9375rem; line-height: 1.85; }
.site-refresh .review-list input { width: 18px; height: 18px; margin-top: 5px; accent-color: var(--navy); }
.site-refresh .status-text { font-size: .9375rem; line-height: 1.75; }
.site-refresh .edit-area { font-family: inherit; font-size: 1.0625rem; line-height: 1.9; min-height: 420px; }
.site-refresh .role-grid { gap: 18px; }
.site-refresh .role-card { padding: 25px; border-color: var(--line); border-radius: 10px; transition: border-color .15s ease, background .15s ease; }
.site-refresh .role-card:hover { background: #fbfcfe; border-color: #6e8ca3; }
.site-refresh .role-card .role-top { gap: 10px; flex-wrap: wrap; margin-bottom: 18px; }
.site-refresh .role-card h3 { font-size: 1.1875rem; line-height: 1.6; margin-bottom: 10px; }
.site-refresh .role-card p { font-size: .9375rem; line-height: 1.85; margin: 0 0 20px; }
.site-refresh .role-card .role-id { font-size: .8125rem; }
.site-refresh .filter-row { gap: 14px; margin-bottom: 20px; }
.site-refresh .filter-row select { max-width: 270px; }
.site-refresh .help-block h3 { font-size: 1.25rem; }
.site-refresh .help-block p { font-size: 1rem; line-height: 1.9; }
.site-refresh .toast { background: var(--navy-deep); color: white; font-size: 1rem; padding: 14px 22px; border-radius: 8px; box-shadow: 0 8px 30px #203f5820; }
.site-refresh dialog { max-width: 750px; border-radius: 14px; padding: 32px; border-color: var(--line); }
.site-refresh dialog::backdrop, .cms-refresh dialog::backdrop { background: #152f4566; }
.site-refresh dialog h2 { font-size: 1.5rem; line-height: 1.6; }
.site-refresh dialog p, .site-refresh dialog li { font-size: 1rem; line-height: 1.85; }
.site-refresh .definition { padding: 17px 0; }
.site-refresh .definition small { font-size: .875rem; margin-bottom: 6px; }
.site-refresh .definition p { font-size: 1rem; }
.site-refresh .definition h3 { font-size: 1rem; color: var(--navy); margin: 0 0 10px; }
.site-refresh .definition ul, .site-refresh .definition ol { margin: 0; padding-left: 1.4em; }
.site-refresh .definition li { margin: 8px 0; }
.site-refresh .role-availability { margin: 18px 0 8px; color: var(--muted); }
.site-refresh .research-note { margin: 18px 0 24px; padding: 18px 20px; border: 1px solid var(--line); border-radius: 8px; background: white; }
.site-refresh .research-note summary { cursor: pointer; color: var(--navy); font-size: 1rem; font-weight: 600; }
.site-refresh .research-note p { margin: 12px 0 0; font-size: .9375rem; line-height: 1.8; }
.site-refresh .research-note ul { margin: 14px 0 0; padding-left: 1.4em; }
.site-refresh .research-note li { margin: 12px 0; font-size: .9375rem; }
.site-refresh .research-note a { color: var(--navy); text-underline-offset: 4px; overflow-wrap: anywhere; }
.site-refresh dialog pre { background: var(--blue-soft); font-size: .9375rem; }
.site-refresh .busy-banner { background: var(--blue-soft); border-color: var(--line); }
.site-refresh .spinner { border-color: #b8ccd9; border-top-color: var(--navy); }
.site-refresh .code-inline { font-size: .875rem; background: var(--blue-soft); }
.site-refresh :focus-visible, .cms-refresh :focus-visible, .auth-card :focus-visible { outline: 3px solid #b27a42; outline-offset: 3px; }
.auth-card { max-width: 620px; padding: 40px; border-radius: 14px; border-color: var(--line); border-top: 5px solid var(--apricot); box-shadow: none; font-size: 1.0625rem; line-height: 1.85; }
.auth-card h1 { color: var(--navy); font-size: 2rem; line-height: 1.45; }
.auth-card .eyebrow { color: var(--muted); font-size: .9375rem; }
.auth-card .btn { min-height: 48px; font-size: 1rem; padding: 12px 20px; }
.auth-card .btn.primary { background: var(--navy); border-color: var(--navy); color: white; }
.cms-refresh .page-intro { margin-bottom: 24px; align-items: flex-start; }
.cms-refresh .page-intro .eyebrow { font-size: .875rem; letter-spacing: .04em; }
.cms-refresh .page-intro h1 { margin: 8px 0 12px; }
.cms-refresh .page-intro p { font-size: .9375rem; line-height: 1.8; overflow-wrap: anywhere; }
.cms-refresh main { padding-bottom: 48px; }
.cms-refresh footer { padding-bottom: 140px; }
.cms-refresh .field { gap: 9px; margin: 23px 0; }
.cms-refresh .field > span { font-size: 1rem; font-weight: 600; }
.cms-refresh textarea { min-height: 126px; }
.cms-refresh .card > p { font-size: 1rem; line-height: 1.85; }
.cms-refresh .grid-two { gap: 24px; }
.cms-refresh .draft-tools { gap: 16px 24px; padding: 0 0 24px; border-bottom: 1px solid var(--line); margin-bottom: 28px; }
.cms-refresh .draft-tools .small { font-size: .875rem; }
.cms-refresh .role-layout { grid-template-columns: 285px minmax(0,1fr); gap: 24px; }
.cms-refresh .role-picker { padding: 10px; max-height: 740px; }
.cms-refresh .role-option { padding: 16px 14px; font-size: 1rem; line-height: 1.75; color: var(--ink); }
.cms-refresh .role-option small { font-size: .8125rem; color: var(--muted); margin-bottom: 5px; }
.cms-refresh .role-option.selected { background: var(--blue-soft); border-left-color: var(--navy); color: var(--navy); }
.cms-refresh .role-option:hover { background: #f7f9fb; }
.cms-refresh .section-top h2 { margin-bottom: 10px; }
.cms-refresh .version-row { padding: 24px 0; gap: 24px; }
.cms-refresh .version-row strong { font-size: 1.0625rem; }
.cms-refresh .version-row p { font-size: .9375rem; line-height: 1.8; overflow-wrap: anywhere; }
.cms-refresh .version-row .actions { flex-shrink: 0; }
.cms-refresh table { font-size: 1rem; }
.cms-refresh th, .cms-refresh td { padding: 17px 14px; border-color: var(--line); }
.cms-refresh th { color: var(--navy); background: var(--blue-soft); }
.cms-refresh dialog { padding: 32px; border-color: var(--line); border-radius: 14px; }
.cms-refresh dialog p { font-size: 1rem; line-height: 1.85; }
.cms-refresh dialog pre { background: var(--blue-soft); font-size: .9375rem; line-height: 1.8; }
.cms-refresh .diff-before { border-left-color: #d6a371; }
.cms-refresh .diff-after { border-left-color: #587c98; }
.cms-refresh .editor-toolbar {
  position: fixed;
  z-index: 25;
  inset: auto 0 0 252px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
  padding: 18px 38px;
  border-top: 1px solid #ccd9e3;
  background: #ffffff;
  box-shadow: 0 -4px 24px #203f5807;
}
.cms-refresh .toolbar-status { display: flex; flex-direction: column; gap: 3px; }
.cms-refresh #save-status { font-size: .9375rem; font-weight: 600; color: var(--navy); }
.cms-refresh .toolbar-status small { color: var(--muted); font-size: .8125rem; }
.cms-refresh .editor-toolbar .actions { gap: 10px; flex-wrap: wrap; }
.cms-refresh .btn.publish { color: var(--navy); background: var(--apricot-soft); border-color: #d8b797; }
.cms-refresh .btn.publish:hover { background: #ffe5cc; border-color: #bd8551; }
@media (max-width: 1200px) {
  .site-refresh .hero { grid-template-columns: minmax(0,1.3fr) minmax(210px,.85fr); }
  .site-refresh .hero-copy { padding: 30px; }
  .site-refresh .task-outline { padding: 8px 22px; }
  .site-refresh .role-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .site-refresh .topic-grid { grid-template-columns: 1fr; }
  .site-refresh .topic { min-height: 0; }
  .site-refresh .form-layout { grid-template-columns: minmax(0,1fr); }
  .site-refresh .form-layout .side-panel { position: static; display: block; }
  .site-refresh .result-layout { grid-template-columns: minmax(0,1fr); }
  .site-refresh .result-side { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
  .site-refresh .result-side .card { margin: 0 !important; }
  .cms-refresh .role-layout { grid-template-columns: 245px minmax(0,1fr); }
  .cms-refresh .version-row { flex-wrap: wrap; }
}
@media (max-width: 1000px) {
  .site-refresh .sidebar, .cms-refresh .sidebar { width: 222px; padding-left: 16px; padding-right: 16px; }
  .site-refresh .main-wrap, .cms-refresh .main-wrap { margin-left: 222px; width: calc(100% - 222px); }
  .site-refresh main, .cms-refresh main { padding: 28px; }
  .site-refresh .topbar, .cms-refresh .topbar { padding: 18px 28px; }
  .site-refresh .share-notice { margin: 20px 28px 0; }
  .site-refresh .hero { grid-template-columns: 1fr; }
  .site-refresh .task-outline { margin: 0 30px 28px; padding: 22px 0 0; border-left: 0; border-top: 1px solid var(--line); }
  .site-refresh .task-outline ul { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 20px; }
  .site-refresh .task-outline li { border: 0; padding: 7px 0; }
  .site-refresh .flow-line { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .site-refresh .flow-item:nth-child(n) { border-bottom: 1px solid var(--line); }
  .site-refresh .flow-item:nth-last-child(-n+2) { border-bottom: 0; }
  .site-refresh .grid-two, .site-refresh .library-grid { grid-template-columns: 1fr; }
  .cms-refresh .editor-toolbar { left: 222px; padding: 16px 28px; }
  .cms-refresh .role-layout { grid-template-columns: 1fr; }
  .cms-refresh .role-picker { max-height: 260px; }
  .cms-refresh footer { padding-bottom: 180px; }
}
@media (max-width: 800px) {
  .site-refresh .sidebar, .cms-refresh .sidebar { position: static; width: 100%; padding: 18px 22px 14px; border-right: 0; border-bottom: 1px solid var(--line); }
  .site-refresh .main-wrap, .cms-refresh .main-wrap { margin: 0; width: 100%; }
  .site-refresh .sidebar nav, .cms-refresh .sidebar nav { display: flex; gap: 6px; margin: 16px -6px 0; padding: 0 6px 5px; overflow-x: auto; scrollbar-width: thin; scrollbar-color: #bcccd8 transparent; }
  .site-refresh .nav-item, .cms-refresh .nav-item { width: auto; flex-shrink: 0; min-height: 44px; padding: 10px 13px; margin: 0; white-space: nowrap; font-size: .9375rem; }
  .site-refresh .workspace-tag, .cms-refresh .workspace-tag, .site-refresh .side-note, .site-refresh .profile { display: none; }
  .site-refresh .wordmark, .cms-refresh .wordmark { font-size: 1.3125rem; }
  .site-refresh .wordmark small, .cms-refresh .wordmark small { font-size: .8125rem; }
  .site-refresh .mark, .cms-refresh .mark { width: 39px; height: 39px; font-size: 1.5rem; }
  .site-refresh .topbar, .cms-refresh .topbar { min-height: 74px; padding: 16px 22px; gap: 10px; }
  .site-refresh .top-actions { gap: 8px; }
  .site-refresh .pill { font-size: .8125rem; padding: 9px 11px; min-height: 42px; }
  .site-refresh #save-state { display: none; }
  .site-refresh .breadcrumb { font-size: .875rem; }
  .site-refresh main, .cms-refresh main { padding: 25px 22px 36px; }
  .site-refresh .share-notice { margin: 18px 22px 0; font-size: .875rem; padding: 12px 16px; }
  .site-refresh .hero-copy { padding: 30px; }
  .site-refresh .hero h1 { font-size: 2.1875rem; }
  .site-refresh .flow-line { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0 16px; }
  .site-refresh .flow-item:nth-child(n) { border-bottom: 1px solid var(--line); }
  .site-refresh .flow-item:nth-child(n+4) { border-bottom: 0; }
  .site-refresh .page-intro h1 { font-size: 1.75rem; }
  .site-refresh .form-layout .side-panel { display: block; }
  .site-refresh .stepper { max-width: none; }
  .site-refresh .footer, .cms-refresh footer { padding: 20px 22px; font-size: .8125rem; }
  .cms-refresh .profile { padding-top: 14px; margin-top: 12px; border-top: 1px solid var(--line); }
  .cms-refresh .editor-toolbar { left: 0; padding: 16px 22px; }
  .cms-refresh footer { padding-bottom: 180px; }
  .cms-refresh .grid-two { grid-template-columns: 1fr; }
}
@media (max-width: 580px) {
  .site-refresh .topbar { align-items: flex-start; }
  .site-refresh .breadcrumb { width: 100%; }
  .site-refresh .top-actions { width: 100%; justify-content: space-between; }
  .site-refresh .top-actions a.pill { min-height: 44px; font-size: .875rem; padding: 10px 14px; }
  .site-refresh .home-intro-note { font-size: .875rem; }
  .site-refresh .hero-copy { padding: 27px 23px; }
  .site-refresh .hero h1 { font-size: clamp(1.875rem,7.5vw,2.1875rem); line-height: 1.45; }
  .site-refresh .hero-copy p { font-size: 1rem; }
  .site-refresh .hero .actions { display: grid; grid-template-columns: 1fr; }
  .site-refresh .hero .btn { width: 100%; }
  .site-refresh .task-outline { display: none; }
  .site-refresh .section-heading h2 { font-size: 1.25rem; }
  .site-refresh .flow-line { grid-template-columns: repeat(2,minmax(0,1fr)); padding: 0 17px; gap: 0 16px; }
  .site-refresh .flow-item { padding: 20px 0; grid-template-columns: 1fr; gap: 5px; }
  .site-refresh .flow-item .number { grid-row: auto; align-self: start; font-size: .8125rem; }
  .site-refresh .flow-item:nth-child(n) { border-bottom: 1px solid var(--line); }
  .site-refresh .flow-item:nth-last-child(-n+2) { border-bottom: 0; }
  .site-refresh .flow-item strong { font-size: .9375rem; }
  .site-refresh .flow-item small { font-size: .875rem; }
  .site-refresh .card { padding: 23px 20px; }
  .site-refresh .form-grid { grid-template-columns: 1fr; gap: 23px; }
  .site-refresh .form-actions { align-items: stretch; flex-direction: column; gap: 18px; }
  .site-refresh .form-actions .actions { width: 100%; }
  .site-refresh .step { font-size: .875rem; flex-direction: column; align-items: flex-start; gap: 7px; }
  .site-refresh .step b { font-size: .8125rem; width: 28px; height: 28px; }
  .site-refresh .step-line { margin: 0 10px; align-self: flex-start; margin-top: 14px; }
  .site-refresh .result-side { display: block; }
  .site-refresh .result-side .card { margin-top: 20px !important; }
  .site-refresh .role-grid { grid-template-columns: 1fr; }
  .site-refresh .filter-row { flex-direction: column; }
  .site-refresh .filter-row select { max-width: none; }
  .site-refresh .tabs { margin-left: -20px; margin-right: -20px; padding: 0 10px; }
  .site-refresh .tab { font-size: .9375rem; padding: 13px 10px; }
  .site-refresh dialog { padding: 24px; }
  .auth-card { margin: 32px 18px; padding: 30px 24px; }
  .cms-refresh .card { padding: 23px 20px; }
  .cms-refresh .editor-toolbar { display: block; padding: 12px 18px 16px; }
  .cms-refresh .toolbar-status { margin-bottom: 10px; }
  .cms-refresh .toolbar-status small { display: none; }
  .cms-refresh .editor-toolbar .actions { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
  .cms-refresh .editor-toolbar .btn { padding: 10px 8px; font-size: .9375rem; min-height: 46px; }
  .cms-refresh footer { padding-bottom: 150px; }
  .cms-refresh .filter-row { flex-direction: column; }
  .cms-refresh .filter-row select { max-width: none; }
}
@media print {
  .site-refresh .sidebar, .site-refresh .topbar, .site-refresh .footer, .site-refresh .share-notice, .site-refresh .task-outline { display: none !important; }
  .site-refresh .main-wrap { width: 100%; margin: 0; }
  .site-refresh main { padding: 0; }
}
.work-mode{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:22px}
.work-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(290px,.75fr);gap:24px;align-items:start}
.work-layout fieldset{border:0;padding:0;margin:0;min-width:0}
.work-layout .field label,.work-output-field label{display:block;font-weight:650;margin-bottom:8px}
.work-layout .field textarea{min-height:120px;resize:vertical}
.work-actions{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0 16px}
.work-side ol{padding-left:24px;margin:0}.work-side li{padding:7px 0}.work-side li p{font-size:14px;line-height:1.75;color:var(--muted);margin:5px 0 0}
.work-side>.card{margin-bottom:20px}.work-side .banner p{margin:8px 0 0}.work-output{margin-top:28px;scroll-margin-top:24px}.work-output-field{margin:25px 0}.work-output-field textarea{resize:vertical;line-height:1.9}
@media(max-width:950px){.work-layout{grid-template-columns:1fr}.work-side{display:block}.work-actions .btn{flex-grow:1}}
