/* 個人ページに限定した、作業のためのUI */
body.member-workspace,body.member-login{
 /* 会員サイト（style.css）と同じ顔にそろえる。色とフォントは上書きしない */
 --muted:#6F6A5C;--paper:var(--tint);
 background:var(--paper);font-family:var(--sans);line-height:1.9;
 padding:0;word-break:auto-phrase;line-break:strict;
}
.member-workspace *, .member-login *{box-sizing:border-box}
.member-workspace h1,.member-workspace h2,.member-workspace h3,.member-login h1,.member-login h2{
 font-family:var(--serif);color:var(--navy);line-height:1.5;font-weight:600;
}
.member-workspace h1{font-size:32px;font-weight:600;margin:0 0 8px}
.member-workspace h2{font-size:24px;margin:0}
.member-workspace h3{font-size:20px;margin:0}
.member-workspace p{margin:0}
.workspace-header{border-bottom:1px solid var(--line);background:var(--tint);padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.workspace-brand{font-size:16px;font-weight:600;color:var(--ink);text-decoration:none}
.workspace-account{display:flex;align-items:center;gap:16px;flex-wrap:wrap;font-size:16px}
.workspace-account a{color:var(--muted);min-height:44px;display:inline-flex;align-items:center}
.workspace-shell{max-width:1200px;margin:auto;padding:32px 24px 64px}
.workspace-heading{margin-bottom:24px}
.eyebrow{font-size:16px;letter-spacing:.12em;color:var(--muted);margin-bottom:8px!important}
.workspace-goal{color:var(--muted);max-width:56em}
.workspace-tabs{display:flex;gap:24px;border-bottom:1px solid var(--line);margin-bottom:32px;overflow-x:auto}
.workspace-tabs a{padding:16px 0;color:var(--muted);white-space:nowrap;text-decoration:none;min-height:48px;font-size:16px}
.workspace-tabs a:first-child:not([role=tab]){border-bottom:2px solid var(--ink);color:var(--ink);font-weight:600}
.workspace-grid{display:grid;gap:32px}
.workspace-main{min-width:0}
.next-action{background:var(--navy);color:#fff;border-radius:0;padding:24px;position:relative;margin-bottom:32px}
.next-action .eyebrow{color:#C7CEDF}
.next-action h2{color:#fff;margin:8px 0 16px;font-size:24px;max-width:28em}
.next-action p{color:#DDE1EA;font-size:18px}
.next-action .action-link{background:var(--tint);color:var(--navy);margin-top:24px;border-color:var(--tint)}
.action-link,.secondary-link,.task-copy,.login-submit{
 display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;
 padding:8px 24px;border:1px solid var(--navy);border-radius:0;font:inherit;font-size:18px;
 text-decoration:none;cursor:pointer;background:var(--navy);color:#fff;line-height:1.8;
}
.secondary-link{background:var(--tint);color:var(--ink);border-color:var(--line)}
.section-heading{display:flex;gap:16px;justify-content:space-between;align-items:baseline;margin-bottom:16px}
.section-heading p{font-size:16px;color:var(--muted);white-space:nowrap}
.outcome-overview{display:grid;gap:16px;margin:0 0 32px;padding:0;list-style:none}
.outcome-overview a{height:100%;display:flex;gap:16px;align-items:start;padding:24px;border:1px solid var(--line);border-radius:0;background:var(--tint);color:var(--ink);text-decoration:none}
.outcome-overview a:hover{border-color:var(--navy)}
.outcome-number{font-size:24px;line-height:1.5;font-variant-numeric:tabular-nums;color:var(--gold);letter-spacing:0}
.outcome-overview strong{color:var(--ink);font-size:18px;font-weight:500;display:block}
.outcome-state{font-size:16px;color:var(--muted);display:block;margin-top:8px}
.outcome-details{background:var(--tint);border:1px solid var(--line);border-radius:0;margin-bottom:16px;scroll-margin-top:24px;overflow:hidden}
.outcome-details>summary{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding:24px;cursor:pointer;list-style:none}
.outcome-details>summary::-webkit-details-marker{display:none}
.outcome-details>summary::after{content:'＋';font-size:24px;color:var(--muted)}
.outcome-details[open]>summary::after{content:'−'}
.outcome-details>summary h3{font-size:18px}
.outcome-details[open]>summary{border-bottom:1px solid var(--line)}
.outcome-body{padding:24px}
.small-label{font-size:16px;font-weight:600;color:var(--muted);display:block;margin-bottom:8px}
.first-result{background:var(--paper);padding:24px;border-radius:0;margin:24px 0}
.first-result strong{color:var(--ink);font-size:18px}
.task-checklist{list-style:none;margin:0;padding:0}
.task-checklist li{border-bottom:1px solid var(--line);padding:24px 0;scroll-margin-top:24px}
.task-checklist li:first-child{padding-top:0}
.task-checklist label{display:flex;align-items:center;gap:16px;min-height:48px;cursor:pointer;color:var(--ink);font-weight:600}
.task-checklist input{appearance:none;flex:0 0 24px;width:24px;height:24px;border:1px solid var(--line);border-radius:0;background:var(--tint);display:grid;place-content:center;margin:0}
.task-checklist input:checked{background:var(--navy);border-color:var(--navy)}
.task-checklist input:checked::before{content:'✓';color:#fff;font-size:18px;line-height:1}
.task-checklist .step-body{margin:8px 0 0 40px;color:var(--muted);font-size:18px}
.task-prompt{margin:24px 0 0 40px}
.task-prompt summary{font-size:16px;cursor:pointer;min-height:48px;display:flex;align-items:center;color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.task-prompt pre{white-space:pre-wrap;word-break:normal;overflow-wrap:anywhere;font-family:var(--sans);font-size:16px;line-height:1.8;background:var(--paper);padding:24px;border-radius:0;letter-spacing:.05em;margin:0 0 16px;user-select:text}
.task-copy{font-size:16px;min-height:48px}
.copy-status{font-size:16px;margin-top:8px!important;color:var(--muted)}
.next-scope{padding:24px 0 0;font-size:16px;color:var(--muted)}
.task-footer{display:flex;gap:16px;flex-wrap:wrap;margin-top:24px}
.task-footer a{font-size:16px;min-height:44px;display:flex;align-items:center}
.workspace-side{min-width:0}
.side-card{background:var(--tint);border:1px solid var(--line);border-radius:0;padding:24px;margin-bottom:16px}
.side-card h2{font-size:18px;margin-bottom:16px}
.progress-number{font-size:48px;line-height:1.4;letter-spacing:-.02em;color:var(--ink)}
.progress-number small{font-size:18px;color:var(--muted)}
.side-card progress{appearance:none;width:100%;height:8px;border:none;border-radius:0;overflow:hidden;display:block;margin:16px 0;background:var(--line)}
.side-card progress::-webkit-progress-bar{background:var(--line)}
.side-card progress::-webkit-progress-value{background:var(--navy)}
.side-card progress::-moz-progress-bar{background:var(--navy)}
.side-card p{font-size:16px;color:var(--muted)}
.side-card a{display:block;min-height:44px;padding:8px 0;font-size:16px}
.roadmap-summary{margin-top:32px;border-top:1px solid var(--line);padding-top:32px;scroll-margin-top:24px}
.roadmap-summary>summary{font-size:24px;font-weight:600;color:var(--ink);cursor:pointer;min-height:48px}
.roadmap-phases{display:grid;gap:16px;margin:24px 0}
.roadmap-phase{border-left:2px solid var(--pink);padding:0 0 16px 24px}
.roadmap-phase p{font-size:16px;color:var(--muted);margin-bottom:8px}
.roadmap-phase h3{font-size:18px;margin-bottom:8px}
.roadmap-phase ul{padding-left:24px;font-size:16px;color:var(--muted)}
.memo-section{margin-top:48px;padding:0!important;background:transparent;scroll-margin-top:24px}
.memo-section>p{color:var(--muted);margin:16px 0 24px}
.member-workspace .memo-form select,.member-workspace .memo-form textarea{font-family:var(--sans);border-radius:0;padding:16px;border-color:var(--line)}
.member-workspace .memo-form button{border-radius:0;min-height:48px;background:var(--navy);border:0;font-family:var(--sans);padding:8px 24px}
.member-workspace .memo-note,.member-workspace .memo-list .m-meta{color:var(--muted)}
.member-workspace .memo-group{border-radius:0;padding:16px 24px}
.workspace-footer{border-top:1px solid var(--line);padding:24px;text-align:center;color:var(--muted);font-size:16px}
.member-workspace [hidden],.member-login [hidden]{display:none!important}
.workspace-login-box{max-width:480px;margin:48px auto;padding:32px 24px;border:1px solid var(--line);border-radius:0;background:var(--tint)}
.workspace-login-box h1{font-size:32px;margin-bottom:16px}
.workspace-login-box p{color:var(--muted);margin-bottom:24px;font-size:18px}
.workspace-login-box label{display:block;font-size:16px;font-weight:600;margin:24px 0 8px}
.workspace-login-box input,.workspace-login-box select{width:100%;min-height:56px;padding:16px;border:1px solid var(--line);border-radius:0;font:inherit;background:var(--tint);color:var(--ink)}
.workspace-login-box input[type=password]{letter-spacing:.16em}
.login-submit{width:100%;margin-top:24px}
.login-error{color:#9b3434!important;font-size:16px!important;margin:16px 0!important}
.member-workspace #pin-gate,.member-login #gate{background:var(--paper);padding:24px;z-index:100}
.member-workspace #pin-gate .box,.member-login #gate .box{border-radius:0;padding:32px 24px}
.member-workspace #pin-gate h1,.member-login #gate h1{font-family:var(--sans);font-size:24px}
.member-workspace #pin-gate input{border-radius:0}
.member-workspace #pin-gate button{border-radius:0}
.member-workspace :focus-visible,.member-login :focus-visible{outline:3px solid var(--navy);outline-offset:4px}
.storage-warning{font-size:16px;color:#9b3434!important;margin-top:16px!important}
.skip-link{position:absolute;left:24px;top:-100px;z-index:200;background:var(--tint);padding:16px}
.skip-link:focus{top:16px}
@media(min-width:768px){
 .workspace-shell{padding:48px 32px 64px}.member-workspace h1{font-size:40px}
 .outcome-overview{grid-template-columns:repeat(2,minmax(0,1fr))}
 .next-action{padding:32px}.next-action h2{font-size:32px}
 .outcome-details>summary,.outcome-body{padding:32px}
}
@media(min-width:1200px){.workspace-grid{grid-template-columns:minmax(0,1fr) 256px;gap:32px}.workspace-side>div{position:sticky;top:24px}}
@media(max-width:767px){.task-checklist .step-body{margin-left:0}.task-prompt{margin-left:0}.workspace-heading h1{font-size:28px}.workspace-header{padding:16px 24px}.workspace-account{gap:16px}.workspace-shell{padding-top:24px}.workspace-login-box{margin:24px}.outcome-details>summary{gap:8px}.section-heading{display:block}.section-heading p{margin-top:8px}}
/* 承認済みの個別計画と詳細な操作手順 */
.personal-start{background:var(--tint);border:1px solid var(--line);border-radius:0;padding:24px;margin-bottom:32px;scroll-margin-top:24px}
.personal-start h2{font-size:24px}.personal-start dl{display:grid;gap:8px;margin:24px 0}
.personal-start dt{font-size:16px;color:var(--muted);font-weight:600}.personal-start dd{margin:0 0 16px;font-size:18px}
.personal-start .task-prompt{margin:16px 0 24px}.plan-status{padding:16px;background:var(--tint);border-radius:0;margin:16px 0!important;font-size:16px}
.step-tool{margin:8px 0 8px 40px!important;font-size:16px;color:var(--muted)}
.step-check{margin:16px 0 0 40px!important;padding:16px;background:var(--paper);border-radius:0;font-size:16px;color:var(--ink)}
.step-check strong{display:block;margin-bottom:8px}.step-help{margin:8px 0 0 40px;font-size:16px;color:var(--muted)}
.step-help summary{cursor:pointer;min-height:48px;display:flex;align-items:center}.step-help p{padding-bottom:16px}
.tool-guides{margin:48px 0;scroll-margin-top:24px}.tool-guides>p{margin:16px 0 24px;color:var(--muted)}
.tool-links{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px}.tool-links a{min-height:48px;display:inline-flex;align-items:center}
.support-guide{background:var(--tint);border:1px solid var(--line);border-radius:0;margin-bottom:16px;scroll-margin-top:24px}
.support-guide>summary{cursor:pointer;padding:24px;min-height:48px;font-weight:600;display:flex;justify-content:space-between;gap:16px}
.support-guide>summary span{font-weight:400;font-size:16px;white-space:nowrap;color:var(--muted)}
.support-guide-link{display:flex;justify-content:space-between;gap:16px;padding:24px;min-height:48px;font-weight:600;text-decoration:none;color:inherit}
.support-guide-link>span{font-weight:400;font-size:16px;white-space:nowrap;color:var(--muted)}
.support-guide-note{color:var(--muted)}
.tool-extra-heading{font-size:18px;margin:32px 0 16px}
@media(max-width:767px){.support-guide-link{flex-wrap:wrap}}
.support-guide .task-checklist{padding:0 24px 24px}.support-guide h4{font-size:18px;line-height:1.8;letter-spacing:.02em;margin:0;font-weight:600;color:var(--ink)}
.support-guide .step-body,.support-guide .step-tool,.support-guide .step-check,.support-guide .step-help,.support-guide .task-prompt{margin-left:0!important}
@media(min-width:768px){.personal-start{padding:32px}.personal-start h2{font-size:32px}}
@media(max-width:767px){.step-tool,.step-check,.step-help{margin-left:0!important}.support-guide>summary{flex-wrap:wrap}}
/* Member journeys: a single topic at a time, with reusable tool instructions. */
.member-workspace [hidden]{display:none!important}
.workspace-tabs [aria-selected=true]{background:var(--navy);color:#fff;border-radius:0}
.journey,.common-learning{padding:24px;margin:24px 0;border:1px solid var(--line);border-radius:0;background:var(--tint)}
.journey h4,.common-learning h2{margin:0 0 8px;font-size:18px}
.journey p,.common-learning p{margin:8px 0 16px;color:var(--muted);font-size:16px;line-height:1.8}
.journey>div{display:grid;gap:8px}
.journey-link{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;padding:16px;background:var(--tint);border:1px solid var(--line);border-radius:0;text-decoration:none;color:var(--ink);font-size:16px;line-height:1.8}
.personal-instructions{margin:24px 0}.personal-instructions>summary{cursor:pointer;min-height:48px;padding:16px;border:1px solid var(--line);border-radius:0;font-weight:600}
.workspace-tabs{overflow-x:auto;flex-wrap:nowrap!important;scrollbar-width:thin}.workspace-tabs a{white-space:nowrap;min-height:44px}
@media(max-width:767px){.journey,.common-learning{padding:16px}.workspace-account{flex-wrap:wrap}.workspace-side{margin-top:24px}}

.workspace-tabs{gap:8px}.workspace-tabs a[role=tab]{padding:8px 16px;border:1px solid transparent;border-radius:0;color:var(--muted);display:flex;align-items:center}.workspace-tabs a[role=tab][aria-selected=true]{background:var(--navy);color:#fff;font-weight:600}.personal-start>.action-link{margin:16px 0}.workspace-tabs a:focus-visible{outline:3px solid var(--navy);outline-offset:2px}

/* まず1投する欄（読ませずに動いてもらう） */
.first-throw{background:var(--tint);border:1px solid var(--line);padding:24px;margin:24px 0}
.first-throw .eyebrow{margin-bottom:8px!important}
.first-throw p{font-size:18px;color:var(--muted);margin-bottom:16px}
.first-throw pre{white-space:pre-wrap;word-break:normal;overflow-wrap:anywhere;font-family:var(--sans);
  font-size:18px;line-height:1.9;background:#fff;border:1px solid var(--line);padding:24px;margin:0 0 16px;user-select:text}
/* 工程の番号を、座布団にして見つけやすくする */
.step-badge{display:inline-block;font-family:var(--serif);font-size:16px;color:var(--gold);
  border:1px solid var(--gold);padding:3px 12px;margin-bottom:12px;font-weight:600}
.task-checklist li>label{margin-top:0}

/* スマホでは余白が積み重なって、文字の幅がなくなる。内側の余白を減らす */
@media(max-width:767px){
  .workspace-shell{padding:24px 16px 48px}
  .outcome-body{padding:16px}
  .outcome-details>summary{padding:16px}
  .first-throw{padding:16px;margin:16px 0}
  .first-throw pre{padding:16px}
  .task-prompt{margin-left:0}
  .task-prompt pre{padding:16px}
  .task-checklist .step-body{margin-left:0}
  .side-card{padding:16px}
  .journey,.common-learning{padding:16px}
  .support-guide-link,.support-guide>summary{padding:16px}
}

/* 実践のタブ。教材ページと同じカードを、そのまま置く */
.member-jissen{margin-top:8px}
.member-jissen>h2{font-family:var(--serif);font-size:26px;line-height:1.5;margin-bottom:12px}
.member-jissen>p{font-size:18px;line-height:1.9;margin-bottom:12px}
.member-jissen .jissen-group-name{font-size:21px}
.member-jissen .card{background:#fff}
@media(max-width:767px){ .member-jissen .card{padding:16px} }

/* 机（2026/9/17）。手順を読ませず、何を作るんだったかを思い出すための目次 */
.desk{margin-top:8px}
.desk-gate{border:1px solid var(--line);background:var(--tint);padding:20px 24px;margin-bottom:32px}
.desk-gate .eyebrow{margin-bottom:6px}
.desk-gate p{font-size:18px;line-height:1.9;margin-bottom:12px}
.desk-gate .secondary-link{margin:0}
.desk-list{list-style:none;margin:0;padding:0}
.desk-item{border:1px solid var(--line);background:#fff;padding:24px;margin-bottom:16px}
.desk-item.is-done{background:var(--tint)}
.desk-head{display:flex;align-items:flex-start;gap:12px}
.desk-number{font-family:var(--serif);font-size:18px;color:var(--gold);line-height:1.6;flex:0 0 auto}
.desk-head label{display:flex;align-items:flex-start;gap:12px;cursor:pointer;flex:1 1 auto;margin:0}
.desk-head input[type=checkbox]{width:22px;height:22px;flex:0 0 auto;margin-top:4px;accent-color:var(--navy)}
.desk-title{font-family:var(--serif);font-size:19px;line-height:1.7;font-weight:600}
.desk-item.is-done .desk-title{color:#8A8577}
.desk-remove{flex:0 0 auto;background:none;border:1px solid var(--line);color:#6F6A5C;
  font-family:var(--sans);font-size:16px;padding:6px 14px;cursor:pointer}
.desk-tags{margin:12px 0 0 34px}
.desk-tag{display:inline-block;font-size:16px;line-height:1;padding:5px 10px;margin:0 6px 6px 0;
  background:var(--tint);color:#7A6B4E;border:1px solid var(--line)}
.desk-body{font-size:18px;line-height:1.9;margin:12px 0 0 34px}
.desk-target{font-size:18px;line-height:1.9;margin:16px 0 0 34px}
.desk-target .small-label{display:block;margin-bottom:2px}
.desk-note{margin:16px 0 0 34px;padding-top:16px;border-top:1px solid var(--line);
  display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.desk-note input[type=text]{flex:1 1 240px;border:1px solid var(--line);background:var(--base);
  font-family:var(--sans);font-size:18px;line-height:1.8;padding:12px 14px}
.desk-note>button{flex:0 0 auto;background:var(--navy);color:#fff;border:0;border-bottom:3px solid var(--gold);
  font-family:var(--sans);font-size:18px;padding:12px 24px;cursor:pointer}
.desk-note>button:disabled{opacity:.6;cursor:default}
.desk-status{flex:1 1 100%;font-size:16px;line-height:1.8;color:#6F6A5C;margin:0}
.desk-saved{flex:1 1 100%;list-style:none;margin:0;padding:0}
.desk-saved li{font-size:17px;line-height:1.8;padding:8px 0;border-top:1px solid var(--line);overflow-wrap:anywhere}
.desk-add{border:1px solid var(--line);background:var(--tint);padding:24px;margin-top:32px}
.desk-add>p{font-size:18px;line-height:1.9;margin-bottom:12px}
.desk-add-row{display:flex;flex-wrap:wrap;gap:8px}
.desk-add input[type=text]{flex:1 1 240px;border:1px solid var(--line);background:var(--base);
  font-family:var(--sans);font-size:18px;line-height:1.8;padding:12px 14px}
.desk-add button{flex:0 0 auto;background:var(--navy);color:#fff;border:0;border-bottom:3px solid var(--gold);
  font-family:var(--sans);font-size:18px;padding:12px 32px;cursor:pointer}
@media(max-width:767px){
  .desk-gate{padding:16px}
  .desk-item{padding:16px}
  .desk-add{padding:16px}
  .desk-tags,.desk-body,.desk-target,.desk-note{margin-left:0}
}

/* 教材ページと同じ「次へ」の案内（2026/9/18 あや指示） */
.next-jissen{margin-top:40px;padding:28px 24px;background:var(--tint,#FAF8F3);border:1px solid var(--line,#E3DCD2)}
.next-jissen h3{margin:0 0 12px;font-size:20px}
.next-jissen p{margin:0 0 12px}
.next-jissen .btn{margin-top:16px}

/* ===== スマホの見え方（2026/9/18 あや指示） =====
   1. タブが右に隠れていて、最初の項目が見えなかった → 折り返す
   2. 箱の中の箱のまた箱で、文字の入る幅が247pxしかなかった → 外側の余白を1枚ぶんにする
   3. 見出しと本文とボタンがくっついていた → 余白を戻す
   4. 今回、最初に作るものの枠を外して、横幅いっぱいに                        */

/* 1. タブを折り返して、5つとも見えるようにする */
.workspace-tabs{flex-wrap:wrap!important;overflow-x:visible;row-gap:4px}
.workspace-tabs a{white-space:normal}

@media(max-width:767px){
  /* 2. 共通CSSのsectionの左右余白が、外の枠と二重になっていた */
  .member-workspace .workspace-main section{padding-left:0;padding-right:0}
  .member-workspace .card{padding:18px}
  .member-workspace .cards{gap:24px}

  /* 4. 今回、最初に作るもの。枠と地色を外して全幅で読ませる */
  .member-workspace .personal-start{background:transparent;border:0;padding:0}
  .member-workspace .first-throw{padding:0;background:transparent;border:0}
  .member-workspace .first-throw pre{padding:16px}
}

/* 3. カードの中の余白。見出し・本文・ボタンがくっつかないようにする */
.member-workspace .card .tag{margin-bottom:10px}
.member-workspace .card h3{margin:0 0 10px}
.member-workspace .card p{margin:0 0 18px}
.member-workspace .card p:last-child{margin-bottom:0}
.member-workspace .card .btn{margin-top:4px}
.member-workspace .personal-start h2{margin:0 0 12px}
.member-workspace .personal-start dt{margin-top:8px}

/* 机の道筋（使うもの・進め方の目安・参考にする実践）。
   見出しと中身がくっつき、番号が枠の外に出ていた（2026/9/18 あや指示） */
.desk-route{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}
.desk-route>p{margin:0 0 18px}
.desk-route>p>strong{color:var(--navy);line-height:2.4}
.desk-route ol,.desk-route ul{padding-left:1.8em;margin:0 0 20px}
.desk-route li{margin-bottom:8px;line-height:1.9}
.desk-route li:last-child{margin-bottom:0}
.desk-route>p:has(+ol),.desk-route>p:has(+ul){margin-bottom:8px}
.desk-route .next-scope{margin:0;color:var(--muted)}
.desk-route a{text-underline-offset:4px}

/* 上の3つ（講座ホーム・別の方のページへ・ログアウト）を押し間違える件（2026/9/19 あや指摘）
   下線がついているせいで、本来のタブより目立っていた。目立ち方を入れ替える。 */
.workspace-account{font-size:14px;gap:20px}
.workspace-account a{color:var(--muted);text-decoration:none;border-bottom:1px solid transparent}
.workspace-account a:hover,.workspace-account a:focus-visible{color:var(--ink);border-bottom-color:var(--line)}
.workspace-account a[data-member-logout]{color:#9A958C}

/* タブのほうを、押せるものとしてはっきりさせる */
.workspace-tabs a{color:var(--ink)}
.workspace-tabs a[role=tab]{color:var(--ink);border:1px solid var(--line)}
.workspace-tabs a[role=tab][aria-selected=true]{border-color:var(--navy)}
.workspace-tabs a[role=tab]:hover{border-color:var(--navy)}

/* 3ヶ月の目標・今日やること（2026/9/19 あや指示。取り組みのタブの上に置く） */
.desk-fixed{border:1px solid var(--line);padding:24px;margin-bottom:24px;background:#FBFAF7}
.desk-fixed .section-heading{margin-bottom:8px}
.desk-fixed .desk-note{margin-top:16px}
#member-goal{border-left:3px solid var(--gold)}
#member-today{border-left:3px solid var(--pink)}

/* パソコンで見たときに、横幅を使う。スクロールしないで4つが見えるように（2026/9/19 あや指示） */
@media(min-width:1200px){
  .workspace-shell{max-width:1440px;padding:28px 40px 56px}
  .workspace-grid{grid-template-columns:minmax(0,1fr) 300px;gap:40px}
  .workspace-heading{margin-bottom:20px}
  .workspace-tabs{margin-bottom:24px}
  .workspace-main > section:first-child,.workspace-main > .personal-start{margin-top:0}
}
@media(min-width:1320px){
  /* 作っていく4つのことを、2列に並べる */
  .desk-list{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}
  .desk-list .desk-item{margin-bottom:0}
  /* 3ヶ月の目標と今日やることは、字が少ないので余白を詰める */
  .desk-fixed{padding:20px 24px;margin-bottom:16px}
}
@media(min-width:1700px){
  .workspace-shell{max-width:1600px}
}

/* 取り組みのタブは、この順番で見せる（2026/9/19 あや指示）
   1 3ヶ月の目標 → 2 今日やること → 3 作っていく4つのこと → そのあとに詳しい話 */
#member-projects{display:flex;flex-direction:column}
#member-projects > *{order:5}
#member-projects > #member-goal{order:1}
#member-projects > #member-today{order:2}
#member-projects > .personal-start{order:3}
#member-projects > #member-desk{order:4}

/* 今回、最初に作るもの。他の枠と見え方をそろえて、縦を詰める（2026/9/19 あや指示） */
.personal-start{border-left:3px solid var(--navy)}
.member-workspace .personal-start h2{margin:0 0 10px}
.personal-start dl{margin:14px 0}
.member-workspace .personal-start dt{margin-top:4px}
.personal-start dd{margin:0 0 10px}
.personal-start .task-prompt{margin:12px 0 14px}
.personal-start .next-scope{padding-top:14px}
/* 相談文は折りたたみに。開いたときだけ長くなる */
.first-throw{background:transparent;border:0;border-top:1px solid var(--line);padding:14px 0 0;margin:14px 0 0}
.first-throw > summary{cursor:pointer;color:var(--ink);font-weight:500;font-size:16px;min-height:44px;display:flex;align-items:center;text-decoration:underline;text-underline-offset:4px}
.first-throw[open] > summary{margin-bottom:10px}
.first-throw p{font-size:16px;margin-bottom:12px}
@media(max-width:767px){
  .member-workspace .personal-start{padding:0 0 0 14px}
  .member-workspace .first-throw{padding:14px 0 0}
}

/* メモ・相談は、取り組みのいちばん下に（2026/9/19 あや指示） */
#member-projects > #workspace-memo{order:5;border-left:3px solid var(--line);padding-left:16px;margin-top:8px}

/* 個人ページの操作も教材のボタンと同じ形にする。 */
.member-workspace .primary-link,.member-workspace .secondary-link,
.member-workspace .task-copy,.member-workspace .memo-form button,
.member-workspace .desk-note>button,.member-workspace .desk-add button,
.member-workspace .journey-link{border-radius:18px;min-height:48px}
.member-workspace .task-copy{padding:8px 24px;cursor:pointer}
.member-workspace .journey-link:hover{border-color:var(--navy);background:var(--base)}
.member-workspace .workspace-account a{min-height:44px;display:inline-flex;align-items:center}

/* 個人ページ：読む場所と操作する場所を分けた、余白のある共通デザイン。 */
body.member-workspace{--paper:#f5f6f8;--tint:#f5f6f8;--line:#dfe3e9;--navy:#2c3550;--ink:#303747;--muted:#5e6777;font-family:'Noto Sans JP','游ゴシック','Yu Gothic','ヒラギノ角ゴ ProN',sans-serif;font-weight:400;line-height:1.8;letter-spacing:.05em}
.member-workspace h1,.member-workspace h2,.member-workspace h3{font-family:inherit;letter-spacing:.02em;font-weight:700}
.member-workspace .workspace-header{background:#fff;padding:16px 24px}
.member-workspace .workspace-brand{color:var(--navy);font-size:16px}
.member-workspace .workspace-heading{padding:16px 0 24px;margin-bottom:0}
.member-workspace .workspace-heading h1{font-size:32px;margin:0 0 16px}
.member-workspace .eyebrow{font-size:12px;letter-spacing:.12em;font-weight:700}
.member-workspace .workspace-goal{font-size:18px;color:var(--muted);max-width:56em}
.member-workspace .workspace-tabs{gap:8px;padding:8px;background:#e9edf2;border:0;border-radius:18px;margin-bottom:32px}
.member-workspace .workspace-tabs a[role=tab]{border:0;border-radius:18px;padding:8px 16px;min-height:48px;color:#495366;font-size:16px;font-weight:600}
.member-workspace .workspace-tabs a[role=tab][aria-selected=true]{background:var(--navy);color:#fff}
.member-workspace .workspace-tabs a[role=tab]:not([aria-selected=true]):hover{background:#fff;color:var(--navy)}
.member-workspace .workspace-main>section,.member-workspace .tool-guides,.member-workspace .member-jissen{padding:0;margin:0}
.member-workspace .tool-guides>h2,.member-workspace .member-jissen>h2{font-size:28px;margin-bottom:16px}
.member-workspace .tool-guides>p,.member-workspace .member-jissen>p{font-size:17px;line-height:1.8;margin:0 0 24px}
.member-workspace .cards{gap:24px;align-items:stretch}
.member-workspace .card{padding:24px;background:#fff;border:1px solid var(--line);border-radius:18px;min-width:0}
.member-workspace .card h3{font-size:22px;line-height:1.6;margin:0 0 16px}
.member-workspace .card p{font-size:17px;line-height:1.8;color:var(--muted);margin-bottom:24px}
.member-workspace .tool-card-heading{display:flex;align-items:center;gap:16px;margin-bottom:24px}
.member-workspace .tool-icon{display:block;flex:0 0 48px;width:48px;height:48px;padding:8px;background:#eef1f6;border-radius:16px;color:var(--navy)}
.member-workspace .tool-card-heading .tag{background:none;color:var(--muted);font-family:inherit;font-size:13px;font-weight:600;padding:0;margin:0}
.member-workspace .btn{min-height:48px;padding:16px 48px 16px 16px;font-family:inherit;font-size:16px;line-height:1.8;border:1px solid #c4cbd7;border-radius:18px;background:#fff;color:var(--navy);text-align:left;justify-content:flex-start;font-weight:600;margin-top:auto}
.member-workspace .btn::before{right:24px;border-color:currentColor}
.member-workspace .btn:hover{background:var(--navy);color:#fff;border-color:var(--navy)}
.member-workspace #guide-kit .btn,.member-workspace .next-jissen .btn{background:var(--navy);color:#fff;border-color:var(--navy)}
.member-workspace .next-jissen{border:1px solid var(--line);border-radius:18px;background:#eef1f6;padding:24px;margin-top:32px}
.member-workspace .next-jissen h3{margin-bottom:16px}
.member-workspace .next-jissen .btn{margin-top:24px}
.member-workspace .side-card{padding:24px;background:#fff;border:1px solid var(--line);border-radius:18px;margin-bottom:16px}
.member-workspace .side-card h2{font-size:17px;margin-bottom:16px}
.member-workspace .side-card p{font-size:14px;line-height:1.8}
.member-workspace .progress-number{font-size:40px;line-height:1.4;font-weight:600;color:var(--navy)}
.member-workspace .side-card progress{border-radius:8px;margin:16px 0}
.member-workspace .progress-help,.member-workspace .support-resources{margin-top:16px;border-top:1px solid var(--line);padding-top:8px}
.member-workspace .progress-help summary,.member-workspace .support-resources summary{font-size:14px;min-height:48px;padding:8px 0;cursor:pointer;align-content:center;color:var(--ink)}
.member-workspace .side-card a.support-action{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:48px;padding:16px 0;border-bottom:1px solid var(--line);font-size:14px;font-weight:600;color:var(--navy);text-decoration:none}
.member-workspace .support-action span{flex-shrink:0}
.member-workspace .support-action:hover{text-decoration:underline;text-underline-offset:4px}
.member-workspace .support-resources a{font-size:14px;line-height:1.8;padding:8px 0;text-underline-offset:4px}
.member-workspace .desk-item,.member-workspace .desk-fixed,.member-workspace .desk-gate,.member-workspace .common-learning,.member-workspace .roadmap-phase{border-radius:18px;background:#fff}
.member-workspace .desk-note>button,.member-workspace .desk-add button{border-bottom:0;font-size:16px}
.member-workspace .desk-note>input,.member-workspace .desk-add input{border-radius:18px;background:#fff}
.member-workspace .workspace-footer{font-size:13px;color:var(--muted);padding:32px 24px}

/* 4つの取り組み：道具の札、番号付きの流れ、教材へのボタン。 */
.member-workspace .desk-head{align-items:flex-start;gap:16px}
.member-workspace .desk-number{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;border-radius:16px;background:#eef1f6;color:var(--navy);font-family:inherit;font-size:16px;font-weight:700}
.member-workspace .desk-title{font-family:inherit;font-size:20px;font-weight:700;line-height:1.6;letter-spacing:.02em}
.member-workspace .desk-body{font-size:17px;line-height:1.8;color:var(--muted);margin:16px 0 0}
.member-workspace .desk-route{display:grid;gap:24px;margin-top:24px;padding-top:24px}
.member-workspace .route-block{min-width:0}
.member-workspace .route-heading{display:flex;align-items:center;gap:8px;font-family:inherit;font-size:16px;font-weight:700;line-height:1.8;letter-spacing:.02em;color:var(--navy);margin:0 0 16px}
.member-workspace .route-heading svg{width:24px;height:24px;flex-shrink:0;color:#65728c}
.member-workspace .route-tool-list{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0}
.member-workspace .route-tool-list li{margin:0;padding:8px 16px;border-radius:18px;background:#eef1f6;color:#3d4b65;font-size:15px;line-height:1.8;overflow-wrap:anywhere}
.member-workspace .route-tool-note{font-size:15px;color:var(--muted);line-height:1.8;margin:16px 0 0}
.member-workspace .route-workflow{padding:24px;background:#f7f8fa;border-radius:18px}
.member-workspace .route-step-list{list-style:none;padding:0;margin:0;display:grid;gap:0}
.member-workspace .route-step-list li{position:relative;display:flex;align-items:flex-start;gap:16px;margin:0;padding:0 0 24px;font-size:16px;line-height:1.8}
.member-workspace .route-step-list li:last-child{padding-bottom:0}
.member-workspace .route-step-list li:not(:last-child)::before{content:"";position:absolute;left:15px;top:32px;bottom:0;width:2px;background:#dfe4ed}
.member-workspace .route-step-number{position:relative;display:flex;align-items:center;justify-content:center;flex:0 0 32px;height:32px;border:1px solid #dfe4ed;border-radius:50%;background:#fff;color:var(--navy);font-size:12px;line-height:1;font-weight:700;letter-spacing:0}
.member-workspace .route-resource-list{display:grid;gap:8px;list-style:none;padding:0;margin:0}
.member-workspace .route-resource-list li{margin:0}
.member-workspace .route-resource-link{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;min-height:48px;padding:16px;border:1px solid #c4cbd7;border-radius:18px;text-decoration:none;color:var(--navy);font-size:16px;font-weight:600;line-height:1.8;background:#fff}
.member-workspace .route-resource-action{font-size:13px;font-weight:500;white-space:nowrap;display:inline-flex;gap:16px;align-items:center}
.member-workspace .route-resource-link:hover{background:var(--navy);color:#fff;border-color:var(--navy)}
body.member-workspace .desk-route a.route-resource-link{padding:16px}
.member-workspace .desk-route>.next-scope{font-size:14px;line-height:1.8;padding:0;margin:0;color:var(--muted)}
@media(max-width:767px){.member-workspace .route-workflow{padding:16px}.member-workspace .desk-item{padding:24px 16px}.member-workspace .desk-head{gap:8px}.member-workspace .desk-title{font-size:18px}.member-workspace .route-tool-list li{padding:8px 16px}.member-workspace .route-resource-link{align-items:flex-start}.member-workspace .route-resource-action{margin-left:auto}}
@media(min-width:1200px){.member-workspace .workspace-shell{padding:32px 40px 64px}.member-workspace .workspace-grid{grid-template-columns:minmax(0,1fr) 256px;gap:32px}.member-workspace .workspace-heading h1{font-size:40px}}
@media(max-width:767px){.member-workspace .workspace-shell{padding:24px 16px 48px}.member-workspace .workspace-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px}.member-workspace .workspace-tabs a[role=tab]{font-size:14px;justify-content:center;text-align:center;padding:8px}.member-workspace .workspace-heading h1{font-size:32px}.member-workspace .tool-guides>h2,.member-workspace .member-jissen>h2{font-size:24px}.member-workspace .card h3{font-size:20px}.member-workspace .card{padding:24px}.member-workspace .workspace-grid{gap:24px}.member-workspace .workspace-side{margin-top:0}}

/* Keep the route back to the course visible on personal and login pages. */
.workspace-account a[href="/?course=1"] {
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:48px;padding:8px 16px;border:1px solid #cbd5e3;border-radius:18px;
  background:#e9eef5;color:#2c3550;font-weight:600;text-decoration:none;
  font-family:"Noto Sans JP","Yu Gothic","Hiragino Kaku Gothic ProN",sans-serif;
  font-size:16px;line-height:1.8;letter-spacing:.02em;
}
.workspace-account a[href="/?course=1"]::before {content:"←";font-size:20px;}
.workspace-account a[href="/?course=1"]:hover {background:#dce5f1;border-color:#9cacc3;}
@media(max-width:767px){
  .workspace-account {width:100%;gap:8px 16px;}
  .workspace-account a[href="/?course=1"] {flex-basis:100%;justify-content:flex-start;}
}
