
:root{
  --bg:#f4f6f8;
  --surface:#ffffff;
  --surface-soft:#f8fbff;
  --border:#17304d;
  --text:#172333;
  --muted:#5b6877;
  --accent:#1d4ed8;
  --accent-soft:#edf3ff;
  --max:1220px;
  --header-main-h:86px;
  --header-h:86px;
  --radius:10px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.45;padding-top:var(--header-h)}
a{color:var(--accent);text-decoration:none} a:hover{text-decoration:underline}
img{max-width:100%;display:block}
.site-header{position:fixed;top:0;left:0;right:0;background:#fff;border-bottom:1px solid var(--border);z-index:100}
.site-header-inner{max-width:var(--max);margin:0 auto;padding:10px 14px;display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.brand{display:flex;align-items:center;gap:0;min-width:auto;flex:0 0 auto;color:var(--text);font-weight:700}
.brand img{height:52px;width:auto}.brand span,.brand small{display:none}
.nav{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center;flex:1 1 auto;min-width:0}
.actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-left:auto;flex:0 0 auto}
.btn, .nav a, button, select, input[type="text"], input[type="email"], textarea{border:1px solid var(--border);background:#fff;color:var(--text);padding:8px 12px;border-radius:8px;font:inherit;min-height:40px}
textarea{width:100%;min-height:40px;resize:vertical}
button,.btn,.nav a{font-weight:600;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.nav a.active,.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}
.btn-subtle{background:var(--accent-soft)}
.main{max-width:var(--max);margin:0 auto;padding:16px 14px 36px;display:grid;gap:14px}
.box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px}
.section-title{font-size:1.85rem;margin:0 0 12px}
.box h2{margin:0 0 10px;font-size:1.15rem}.box p{margin:0 0 10px;color:var(--muted)}
.pin-box{position:relative}
.pin-check{position:absolute;top:10px;right:10px;width:18px;height:18px;cursor:pointer}
.site-header.has-pinned-box{border-bottom:none}
.pin-box.pinned{position:fixed;top:var(--header-main-h);left:0;right:0;transform:none;z-index:95;width:100%;max-width:none;margin:0;border:0;border-bottom:1px solid var(--border);border-radius:0;box-shadow:none;background:#fff;padding:6px 0 8px}
.pin-box.pinned::before{display:none}
.pin-box.pinned > :not(.pin-check){max-width:var(--max);margin-left:auto;margin-right:auto;padding-left:14px;padding-right:14px}
.pin-box.pinned .pin-shell{background:transparent}
.compact-row,.top-line{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.top-line .grow,.compact-row .grow{flex:1 1 320px}
.code-pill{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:700;padding:8px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft)}
.status-text{margin-left:auto;color:var(--muted);font-size:.95rem}
.inline-title{font-weight:700;color:var(--accent)}
.hero-text{display:grid;gap:10px}
.intro-toggle{margin-left:auto;color:var(--accent);font-weight:600;background:none;border:none;min-height:auto;padding:0;cursor:pointer}
.intro-head{display:flex;gap:8px;align-items:center;justify-content:space-between}
.intro-content.is-collapsed{display:none}
.grid-2{display:grid;gap:12px}
@media(min-width:920px){.grid-2{grid-template-columns:1fr 1fr}}
.details-group{border:1px solid var(--border);border-radius:8px;background:#fff;overflow:hidden}
.details-group + .details-group{margin-top:10px}
.details-group summary{list-style:none;cursor:pointer;padding:12px 14px;display:flex;justify-content:space-between;gap:8px;font-weight:700;background:var(--surface-soft)}
.details-group summary::-webkit-details-marker{display:none}
.details-body{padding:0}
.code-option{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;padding:12px 14px;border-top:1px solid #d4deea}
.code-option strong{display:block;margin-bottom:4px}
.helper{color:var(--muted);font-size:.95rem}
.meta-grid{display:grid;gap:10px}
@media(min-width:900px){.meta-grid.meta-3{grid-template-columns:1.3fr .8fr 1.2fr}.meta-grid.meta-2{grid-template-columns:1fr 1fr}}
.field{display:grid;gap:6px}.field .label{font-weight:600;display:flex;gap:4px;align-items:center;flex-wrap:wrap}
.help-inline{color:var(--accent);font-weight:600;cursor:pointer}
.row-card{padding:12px 0;border-top:1px solid #d4deea;display:grid;gap:10px}
.row-card:first-child{border-top:none;padding-top:0}
.row-card .top{display:grid;gap:10px}
@media(min-width:900px){.row-card .top{grid-template-columns:2fr 1.2fr 1.4fr}.row-card .bottom{grid-template-columns:1fr 1fr 0.9fr}.row-card .bottom,.inline-grid-3{display:grid;gap:10px}}
.inline-grid-3{display:grid;gap:10px}
.row-actions{display:flex;justify-content:flex-end}
.section-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px}
.section-card h3{margin:0 0 8px;font-size:1.1rem}
.action-link{background:none;border:none;color:var(--accent);padding:0;min-height:auto}
.list-block{display:grid;gap:10px}
.result-card{border:1px solid var(--border);border-radius:8px;padding:12px;background:#fff;display:grid;gap:8px}
.result-card.delay{background:#fff8e8}
.result-title{font-weight:700}
.note-box{border-top:1px solid #d4deea;padding-top:8px;color:var(--muted)}
.qr-layout{display:grid;gap:14px}
@media(min-width:900px){.qr-layout{grid-template-columns:minmax(240px,320px) 180px}}
.qr-panel{border:1px solid var(--border);border-radius:8px;padding:12px;display:grid;place-items:center;background:#fff}
.qr-panel img{width:100%;max-width:280px;height:auto}
.qr-actions{display:grid;gap:8px;align-content:start}
.external-note{font-size:.95rem;color:var(--muted)}
.hide{display:none !important}
@media(max-width:820px){
  body{padding-top:64px}
  .site-header-inner{padding:8px 10px}
  .brand{display:none}
  .nav{order:1;flex:1 1 100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}
  .nav a,.actions .btn, .actions select{white-space:nowrap}
  .actions{order:1;margin-left:0;flex-wrap:nowrap}
  .main{padding:12px 10px 28px}
  .pin-box.pinned{top:var(--header-main-h);padding-left:0;padding-right:0}
}

.actions-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.eyebrow{display:inline-block;padding:4px 10px;border:1px solid var(--border);border-radius:999px;background:var(--accent-soft);color:var(--accent);font-weight:700;font-size:.92rem;margin-bottom:8px}
@media(max-width:820px){.site-header-inner{display:flex;flex-wrap:nowrap;overflow-x:auto;align-items:center}.nav,.actions{flex:0 0 auto}.actions{margin-left:0}.brand{display:none}.site-header-inner::-webkit-scrollbar{height:4px}.site-header-inner::-webkit-scrollbar-thumb{background:#9db5d8}}

.pin-shell{display:grid;gap:8px}
.code-inline{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:700;letter-spacing:.02em}
.access-pin-layout{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center}
.pin-left{display:grid;gap:8px;align-content:center;min-width:190px}
.selection-inline{display:inline-flex;gap:8px;align-items:center;font-weight:600}
.selection-inline input{width:18px;height:18px;margin:0}
.pin-file{display:flex;gap:8px;align-items:center;min-width:0}
.pin-file .grow{flex:1 1 auto;min-width:180px}
@media(max-width:820px){.pin-box.pinned{width:100%}.access-pin-layout{grid-template-columns:1fr;gap:10px}.pin-file{flex-wrap:wrap}}
.build-refs{display:grid;gap:10px;grid-template-columns:1fr 1fr 1fr;grid-template-areas:'inst version contact' 'dept link link'}
.refs-inst{grid-area:inst}.refs-version{grid-area:version}.refs-dept{grid-area:dept}.refs-link{grid-area:link}.refs-contact{grid-area:contact}
.build-version-row{display:flex;gap:8px;align-items:end}.build-version-row input{width:72px}.build-version-row button{min-width:44px;padding:8px 10px}
.build-dept-list{display:grid;gap:10px}.other-department-row{display:grid;gap:10px;grid-template-columns:1fr 1fr auto;align-items:end}.other-department-row button{min-width:42px;padding:8px 10px}
.row-card{padding:12px 0;border-top:1px solid #d4deea;display:grid;gap:10px}
.adapt-block{display:grid;gap:10px;padding:10px 0;border-top:1px solid #d4deea}.adapt-block:first-child{border-top:none}

.add-inline{align-self:start;justify-self:start;padding-left:12px;padding-right:12px}
@media(max-width:980px){.build-refs{grid-template-columns:1fr;grid-template-areas:'inst' 'dept' 'version' 'link' 'contact'}.adapt-top,.adapt-bottom{grid-template-columns:1fr}.difficulty-wrap{grid-template-columns:1fr 42px}.other-department-row{grid-template-columns:1fr}}

.refs-link input,.refs-link textarea,.refs-dept input,.refs-inst input,.refs-contact input{width:100%}

.pin-box.pinned .pin-check{right:max(14px, calc((100vw - var(--max))/2 + 14px));top:10px;}
.pin-box.pinned.access-pin .pin-check{top:10px;}
.pin-box.pinned .access-pin-layout,.pin-box.pinned .compact-row{margin-top:0;}
.adapt-top{display:grid;gap:10px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 115px;}
.adapt-bottom{display:grid;gap:10px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 90px;}
.adapt-top > *, .adapt-bottom > *, .difficulty-wrap, .difficulty-wrap .field{min-width:0;}
.difficulty-wrap{display:grid;gap:6px;grid-template-columns:minmax(0,1fr) 40px;align-items:end;}
@media(max-width:980px){.adapt-top,.adapt-bottom{grid-template-columns:1fr;}.pin-box.pinned .pin-check{right:14px;}}
