/* award.aicu.ai の共通の外枠。デジタル庁デザインシステムの色と余白。
   **面ごとに色や余白を決めない。**ここが正本（CEO 2026-09-22「共通部品として管理」）。 */
:root{
  --ac-blue-50:#E8F1FE;--ac-blue-600:#3460FB;--ac-blue-900:#0017C1;--ac-blue-1000:#00118F;
  --ac-gray-50:#F2F2F2;--ac-gray-100:#E6E6E6;--ac-gray-200:#CCCCCC;--ac-gray-800:#666666;--ac-gray-900:#4D4D4D;--ac-gray-1100:#1A1A1A;
  --ac-rail:264px;--ac-radius:8px;
}
.ac-sr{position:absolute;left:-9999px}

/* 左のレール */
.ac-rail{background:#fff;border-right:1px solid var(--ac-gray-200);padding:20px 12px 110px;
  display:flex;flex-direction:column;gap:6px;position:sticky;top:0;align-self:start;height:100vh;overflow:auto}
.ac-brand{display:flex;gap:10px;align-items:center;padding:4px 8px 16px;text-decoration:none;color:var(--ac-gray-1100);
  font-weight:700;font-size:.8125rem;letter-spacing:.04em;line-height:1.3}
.ac-brand img{width:40px;height:40px;background:#fff;flex:none}
.ac-brand small{display:block;font-weight:500;letter-spacing:.06em;color:var(--ac-gray-800);font-size:.75rem;margin-top:2px}
.ac-menu{display:flex;flex-direction:column;gap:2px}
.ac-link{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--ac-radius);
  color:var(--ac-gray-1100);text-decoration:none;font-weight:500;border-left:4px solid transparent;font-size:.9375rem}
.ac-link svg{width:20px;height:20px;flex:none;color:var(--ac-gray-800)}
.ac-link:hover{background:var(--ac-gray-50)}
.ac-link.on{background:var(--ac-blue-50);color:var(--ac-blue-1000);font-weight:700;border-left-color:var(--ac-blue-900)}
.ac-link.on svg{color:var(--ac-blue-900)}
.ac-sep{height:1px;background:var(--ac-gray-100);margin:10px 12px}

/* 上の帯: 面の切り替え・言語・サインイン中の人 */
.ac-top{display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:space-between;
  padding-bottom:16px;margin-bottom:20px;border-bottom:1px solid var(--ac-gray-100)}
.ac-surfaces{display:flex;gap:4px;background:var(--ac-gray-50);border-radius:999px;padding:3px}
.ac-surf{padding:7px 16px;border-radius:999px;text-decoration:none;color:var(--ac-gray-900);
  font-weight:700;font-size:.8125rem;white-space:nowrap}
.ac-surf:hover{color:var(--ac-blue-1000)}
.ac-surf.on{background:var(--ac-blue-900);color:#fff}
.ac-right{display:flex;align-items:center;gap:14px;margin-left:auto}
.ac-lang select{min-height:36px;padding:0 10px;border:1px solid var(--ac-gray-200);border-radius:var(--ac-radius);
  background:#fff;font:inherit;font-size:.8125rem;color:var(--ac-gray-900)}
.ac-user{display:flex;align-items:center;gap:12px;font-size:.875rem}
.ac-who{display:flex;flex-direction:column;align-items:flex-end;line-height:1.4;min-width:0}
.ac-name{font-weight:700}
.ac-mail{color:var(--ac-gray-800);font-size:.75rem;overflow-wrap:anywhere}
.ac-out{background:none;border:0;padding:0;color:var(--ac-blue-900);text-decoration:underline;font:inherit;font-size:.875rem;cursor:pointer}
.ac-rail :focus-visible,.ac-top :focus-visible{outline:4px solid #000;outline-offset:2px;box-shadow:0 0 0 2px #FFD43D;border-radius:4px}

@media (max-width:900px){
  .ac-rail{position:static;height:auto;border-right:0;border-bottom:1px solid var(--ac-gray-200);padding:14px 12px}
  .ac-menu{flex-direction:row;flex-wrap:wrap;gap:4px}
  .ac-link{border-left:0;border-bottom:3px solid transparent;padding:8px 10px}
  .ac-link.on{border-left-color:transparent;border-bottom-color:var(--ac-blue-900)}
  .ac-sep{display:none}
  .ac-top{gap:10px}.ac-right{width:100%;justify-content:space-between;margin-left:0}
}
