/* C案の共通テーマ。機能用のID・hidden・権限制御には触れない。 */
:root{--ink:#10284d;--text:#10284d;--muted:#576b86;--accent:#1460ef;--paper:#f5f9ff;--bg:#f5f9ff;--white:#fff;--card:#fff;--line:#dbe6f5;--pale:#eaf2ff;--soft:#eaf2ff;--up:#137b58;--down:#bf3838;--orange:#ef8a32}
body{color:var(--text);background:radial-gradient(ellipse at 85% 0%,#e2efff 0,transparent 42%),var(--bg);line-height:1.75;-webkit-font-smoothing:antialiased}
body,button,input,select,textarea{font-family:-apple-system,BlinkMacSystemFont,'Hiragino Sans','Yu Gothic',sans-serif}
a{color:var(--accent)}button,a,input,select,summary{touch-action:manipulation}
button,a,input,select,textarea,summary{outline-offset:4px}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #eb8b28}
/* 白いヘッダーとロゴ、青い主要操作を全画面で統一する。 */
header{background:#fff;border-bottom:1px solid var(--line);box-shadow:0 3px 18px #1f54a008}
.site-header{max-width:none;padding:22px max(24px,calc((100% - 1160px)/2));gap:18px}.top{max-width:1240px;padding:22px 24px}
.brand{color:var(--ink);font-size:23px;font-weight:900;letter-spacing:.015em;text-decoration:none;display:flex;align-items:center;gap:12px;white-space:nowrap}
.workspace .brand:before{content:'';display:inline-block;width:27px;height:29px;background:linear-gradient(var(--accent),var(--accent)) 0 15px/6px 14px no-repeat,linear-gradient(#5598ff,#5598ff) 10px 7px/6px 22px no-repeat,linear-gradient(var(--accent),var(--accent)) 20px 0/6px 29px no-repeat}
.brand-mark{display:flex;align-items:end;justify-content:space-between;background:none;border-radius:0;width:29px;height:30px}.brand-mark i{width:7px;background:var(--accent);border-radius:2px 2px 0 0;height:100%}.brand-mark i:first-child{height:45%;background:#6ba8ff}.brand-mark i:nth-child(2){height:72%}
.tagline{font-size:12px;color:var(--muted);margin-top:5px}
.primary{background:var(--accent);border:1px solid var(--accent);border-radius:9px;color:#fff!important;box-shadow:0 6px 16px #1460ef24;padding:12px 19px;min-height:46px;transition:background .15s,box-shadow .15s}
.primary:hover{background:#084ac9;border-color:#084ac9;box-shadow:0 8px 20px #1460ef35}
.secondary,.login-link{background:white;color:#1853b3!important;border:1px solid #bbd1f4;border-radius:9px;min-height:42px;padding:10px 16px;text-decoration:none;font-weight:700}.secondary:hover,.login-link:hover{background:#edf4ff;border-color:#1460ef}.login-link{font-size:12px}
.eyebrow{color:var(--accent);letter-spacing:.15em;font-size:11px;font-weight:850;margin:0 0 12px}
h1,h2,h3{color:var(--ink)}.card,.upload-card,.detail-card{border-color:var(--line);border-radius:14px;box-shadow:0 6px 24px #1c4b8906}
input,select,textarea{border-color:#bdcfe7;color:var(--ink);background:#fff;accent-color:var(--accent)}input::file-selector-button{border:0;border-radius:6px;background:#e8f1ff;color:#174d9c;padding:10px 14px;margin-right:12px;font-weight:700;cursor:pointer}
/* 無料診断：価値の説明を短く、グラフのイメージと入口を近くに配置。 */
.trial main{max-width:1208px;padding:0 24px}.trial .hero{grid-template-columns:1.05fr 1fr;gap:48px;padding:50px 0 34px}.trial h1{font-size:clamp(36px,4.5vw,62px);line-height:1.28;letter-spacing:-.035em;margin-bottom:22px}.trial h1 em{color:var(--accent)}.hero-lead{color:#435e80;font-size:16px;line-height:1.9}.hero-badges{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 14px}.hero-badges span{font-size:11px;font-weight:700;border:1px solid #cddff6;border-radius:6px;padding:3px 9px;background:#fff;color:#235188}.trial .hero-action{font-size:14px;margin:0}
.insight-preview{background:linear-gradient(145deg,#fff,#f0f6ff);border:1px solid #d4e4fa;border-radius:18px;padding:26px;box-shadow:0 18px 45px #2f69bc12;min-width:0}.preview-heading{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:12px}.preview-dot{width:9px;height:9px;border-radius:50%;background:#1460ef}.preview-caption{margin-left:auto;font-size:10px;color:var(--muted)}.preview-chart{display:flex;align-items:end;justify-content:space-between;gap:13px;height:170px;padding:20px 10px 0;border-bottom:1px solid #bed4f2;background:repeating-linear-gradient(to top,transparent 0,transparent 39px,#dbe7f6 40px)}.preview-chart span{width:9%;background:linear-gradient(#3889ff,#a4ceff);border-radius:4px 4px 0 0;height:35%}.preview-chart span:nth-child(2){height:48%}.preview-chart span:nth-child(3){height:40%}.preview-chart span:nth-child(4){height:67%}.preview-chart span:nth-child(5){height:58%}.preview-chart span:nth-child(6){height:82%}.preview-chart span:nth-child(7){height:66%}.preview-chart span:nth-child(8){height:94%;background:linear-gradient(#ff9c45,#ffd3a7)}.preview-labels{display:flex;justify-content:space-between;gap:8px;font-size:10px;color:var(--muted);margin-top:10px}.preview-labels strong{color:var(--accent)}.insight-chips{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:22px}.insight-chips div{background:white;border:1px solid var(--line);border-radius:8px;padding:12px 8px}.insight-chips span{display:block;color:var(--accent);font-size:10px;margin-bottom:5px}.insight-chips strong{font-size:11px;white-space:nowrap}
.steps{background:#fff;border:1px solid var(--line);border-radius:10px;padding:16px 24px;gap:20px}.steps div{font-size:12px;gap:12px}.steps b{color:var(--accent);font-weight:900;background:#eef5ff;padding:4px 9px;border-radius:5px}.upload-section{gap:36px;grid-template-columns:.8fr 1.4fr;padding:36px 0 44px}.section-intro{padding-top:12px}.section-intro h2{font-size:28px;line-height:1.55}.upload-card{border-top:3px solid var(--accent);padding:26px}.file-area{border:1px dashed #94baf5;background:#f8fbff;padding:20px 16px}.file-symbol{color:var(--accent);font-size:30px}.file-area input{color:#345272}.privacy{font-size:12px}.consent{font-size:12px;line-height:1.8}.trial .secondary.full{color:var(--accent)}
/* 数字を主役にし、売上・会計・客単価に青／緑／橙のアクセント。 */
.metrics{gap:16px}.metric,.kpi{position:relative;border-color:var(--line);background:white;box-shadow:0 5px 18px #29548b06;min-width:0}.trial .metric{padding:22px;border-top:3px solid var(--accent)}.trial .metric:nth-child(3n+2){border-top-color:#1b9a8d}.trial .metric:nth-child(3n){border-top-color:var(--orange)}.metric strong{color:var(--ink);font-size:32px;letter-spacing:-.025em;overflow-wrap:anywhere}.metric span{font-weight:650}.trial #results{border-top:0;padding:30px 0}.result-heading h2{font-size:30px}.result-heading{padding-left:18px;border-left:5px solid var(--accent)}.takeaway{background:linear-gradient(110deg,#e7f0ff,#f6faff);border:1px solid #cbdefc;border-left:4px solid var(--accent)}.suggestion{border-color:var(--line);border-top:3px solid var(--accent);box-shadow:0 6px 24px #1c4b8906}.suggestion-number{background:#eaf2ff;padding:5px 10px;border-radius:6px}.suggestion .measure{background:#f1f6ff;color:#375479}.detail-card h2{border-left:4px solid var(--accent);padding-left:12px}.row-head strong{color:var(--ink)}.pair-row{background:#f5f9ff;margin-top:10px;padding:15px;border:1px solid var(--line);border-radius:8px}.pair-row:last-child{border-bottom:1px solid var(--line)}progress{height:7px;background:#eaf1fb}progress::-webkit-progress-bar{background:#eaf1fb}progress::-webkit-progress-value{background:linear-gradient(90deg,#2377f3,#7cb8ff)}progress::-moz-progress-bar{background:#2377f3}.continue-card{background:#123e82;border:1px solid #174993;box-shadow:0 8px 30px #17499316}.continue-card h2{color:white}.continue-card .eyebrow,.continue-card .micro{color:#d0e3ff}.continue-card .primary{color:#124baf!important;border-color:white;background:white}.trial footer{background:white;color:var(--ink)}
/* 実利用：ナビと期間選択を明確にし、全タブに同じカード表現を適用。 */
.workspace main{margin-top:28px}.workspace nav{gap:8px;padding:0 24px;overflow-x:auto}.workspace nav button{padding:12px 23px;border-radius:8px 8px 0 0;white-space:nowrap;font-size:14px}.workspace nav button.active{color:var(--accent);border-color:var(--accent);background:#edf4ff}.workspace nav button:hover{background:#f1f6ff}.workspace .hero{margin:26px 0 20px;align-items:center}.workspace .hero h1{font-size:32px;letter-spacing:-.025em}.workspace .card{padding:23px}.workspace .card>h2{border-left:4px solid var(--accent);padding-left:12px}.workspace .period-bar{background:#fff;border-left:4px solid var(--accent);padding:16px 20px}.workspace .period-bar .toolbar{gap:16px}.workspace .summary{background:linear-gradient(100deg,#e5efff,#f3f8ff);border:1px solid #c6dafb;padding:20px 24px;color:#204878}.workspace .summary strong{color:#123d7b}.workspace .kpis{gap:13px}.workspace .kpi{padding:20px 17px;border-top:3px solid var(--accent)}.workspace .kpi:nth-child(2){border-top-color:#1b9a8d}.workspace .kpi:nth-child(3){border-top-color:var(--orange)}.workspace .kpi .label{font-weight:700;color:#4d6485}.workspace .kpi .value{font-size:clamp(23px,2.3vw,32px);letter-spacing:-.035em;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.workspace .grid2{gap:20px;margin-top:20px}.workspace .todo-card{border:1px solid #d3e2f8;background:linear-gradient(120deg,#fff,#f8fbff);padding:18px}.workspace .pill{background:#e7f0ff;color:#1956b8}.workspace .rec{background:#eef5ff;color:#294f7f}.workspace .bar span{background:linear-gradient(90deg,#1460ef,#76b0ff)}.workspace .month-bar,.workspace .colbar{background:linear-gradient(#2c7ff5,#add1ff)}.workspace .metric .n,.workspace .budget-kpis .n{color:#12448f}.workspace .combo-card,.workspace .basketcell,.workspace .abccard{background:white;border-color:#d3e2f8}.workspace .combo-card{border-left:3px solid #6ca6fa}.workspace .pair{padding:14px 0}.workspace summary{color:#164fa7}.workspace th{background:#f0f6ff;color:#425f86;padding:12px 10px}.workspace td{padding:12px 10px}.workspace tbody tr:hover{background:#f8fbff}.workspace .empty{border-color:#b9cfee;background:#f6faff}.workspace .notice{background:#fff7e9;color:#73501e}.workspace .notice.error{background:#fff0ee;color:#932722}.workspace .auth{border-top:4px solid var(--accent);padding:34px;margin:7vh auto;box-shadow:0 16px 48px #1647890c}.workspace .auth h1{font-size:29px}.workspace .auth input{min-height:46px}.workspace .auth .primary{margin:10px 0 16px}.account-page main>h1{font-size:32px}.account-page main>h1:before{content:'';display:inline-block;width:5px;height:28px;background:var(--accent);margin-right:13px;vertical-align:middle}.upload-page main{max-width:800px;margin:48px auto}.upload-page .card{padding:34px;border-top:4px solid var(--accent)}.upload-page input[type=file]{padding:25px 15px;background:#f6faff;border:1px dashed #9cbff2}.upload-page .back{color:var(--accent)}.upload-page .brand{font-size:23px}.upload-page h1{font-size:28px}
/* タップしやすいサイズと、狭い画面での横はみ出しを防ぐ。 */
@media(max-width:900px){.trial .hero{gap:24px}.trial h1{font-size:42px}.insight-preview{padding:18px}.insight-chips{gap:5px}.insight-chips strong{font-size:10px}.workspace .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace .hero h1{font-size:28px}.workspace .kpis .kpi:first-child{grid-column:1/-1}}
@media(max-width:760px){.site-header{padding:17px 20px}.brand{font-size:19px}.login-link{padding:8px 10px;font-size:10px}.trial main{padding:0 20px}.trial .hero{grid-template-columns:1fr;padding:34px 0 24px;gap:26px}.trial h1{font-size:44px}.hero-lead{font-size:14px}.insight-preview{max-width:520px;width:100%;margin:auto}.preview-chart{height:130px}.insight-chips strong{font-size:11px}.steps{padding:16px;gap:12px}.upload-section{grid-template-columns:1fr;gap:18px;padding:28px 0}.section-intro h2{font-size:25px}.section-intro{padding:0}.upload-card{padding:20px}.metrics{gap:10px}.trial .metric{padding:16px}.metric strong{font-size:26px}.result-heading h2{font-size:25px}.trial #results{padding-top:20px}.result-actions{flex-wrap:wrap}.workspace .top{padding:18px 20px}.workspace .card{padding:18px}.workspace .auth{padding:26px}.workspace nav{padding:0 16px}.workspace nav button{padding:12px 19px}.workspace .hero h1{font-size:26px}.workspace .toolbar{gap:8px}.workspace .grid2{gap:16px}.upload-page main{margin:28px auto}.upload-page h1{font-size:23px}}
@media(max-width:400px){.site-header{gap:8px;padding:16px}.trial main{padding:0 16px}.brand{font-size:17px;gap:8px}.brand-mark{width:23px;height:25px}.brand-mark i{width:5px}.trial h1{font-size:39px}.login-link{font-size:9px;padding:8px}.preview-heading{font-size:11px}.insight-chips strong{font-size:10px}.workspace .kpi .value{font-size:23px}.trial .metric strong{font-size:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
@media print{body{background:white}.insight-preview{display:none}.trial #results{padding:0}.metric,.card,.suggestion{box-shadow:none}.workspace header,.workspace .period-bar,.workspace .toolbar{display:none}.workspace main{max-width:none;margin:0}.workspace .card{break-inside:avoid}.workspace .kpi .value{font-size:20px}.trial .metric strong{font-size:18pt}}
