[hidden] { display: none !important; }
:root {
  color-scheme: light;
  --bg: #f4f7f6;
  --surface: #ffffff;
  --ink: #15231f;
  --muted: #5d6d67;
  --line: #dbe5e1;
  --brand: #176b4d;
  --brand-dark: #0e4935;
  --accent: #dff4ea;
  --error: #9d2f2f;
  --warning: #8a5b00;
  --shadow: 0 14px 40px rgba(22, 61, 47, 0.09);
}

* { box-sizing: border-box; }

body {
  margin: 0;
  min-height: 100vh;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans JP", sans-serif;
  color: var(--ink);
  background:
    radial-gradient(circle at top right, rgba(55, 154, 111, 0.13), transparent 32rem),
    var(--bg);
}

button, a { font: inherit; }

.shell {
  width: min(1080px, calc(100% - 32px));
  margin: 0 auto;
  padding: 48px 0 32px;
}

.hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 24px;
}

.eyebrow {
  margin: 0 0 6px;
  color: var(--brand);
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

h1 { margin: 0; font-size: clamp(2rem, 6vw, 3.7rem); line-height: 1.08; }
.lead { margin: 10px 0 0; color: var(--muted); font-size: 1.05rem; }

.badge {
  flex: 0 0 auto;
  padding: 10px 14px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: var(--surface);
  box-shadow: var(--shadow);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.08em;
}
.badge-dev { color: #245fa6; background: #eaf3ff; border-color: #bfd6f2; }
.badge-staging { color: #7a4e00; background: #fff3d7; border-color: #ead198; }
.badge-demo { color: #753d86; background: #f7eafa; border-color: #dfc4e6; }
.badge-production { color: #0f6848; background: #e1f4eb; border-color: #b5dfcc; }
.badge-neutral { color: var(--muted); }

.notice {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  margin-bottom: 22px;
  padding: 16px 18px;
  border: 1px solid #bcdcca;
  border-radius: 16px;
  background: var(--accent);
  line-height: 1.65;
}
.notice strong { color: var(--brand-dark); white-space: nowrap; }

.grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.card, .result {
  border: 1px solid var(--line);
  border-radius: 20px;
  background: var(--surface);
  box-shadow: var(--shadow);
}

.card { padding: 22px; }
.card h2, .result h2 { margin: 0 0 16px; font-size: 1.04rem; }
dl { margin: 0; }
dl div { padding: 12px 0; border-top: 1px solid var(--line); }
dl div:first-child { padding-top: 0; border-top: 0; }
dt { margin-bottom: 5px; color: var(--muted); font-size: 0.78rem; font-weight: 700; }
dd { margin: 0; overflow-wrap: anywhere; font-size: 0.92rem; font-weight: 700; }

.actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 22px 0;
}

button, .secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 18px;
  border-radius: 12px;
  font-weight: 800;
  text-decoration: none;
  cursor: pointer;
}
button {
  border: 1px solid var(--brand);
  color: #fff;
  background: var(--brand);
}
button:disabled { cursor: wait; opacity: 0.65; }
.secondary { border: 1px solid var(--line); color: var(--ink); background: var(--surface); }

.result { padding: 22px; }
.result[data-status="success"] { border-color: #a8d7c1; }
.result[data-status="error"] { border-color: #e0b4b4; }
.result[data-status="error"] #resultMessage { color: var(--error); }
.result[data-status="loading"] #resultMessage { color: var(--warning); }
#resultMessage { margin: 0; line-height: 1.7; }
pre {
  margin: 18px 0 0;
  padding: 16px;
  max-height: 360px;
  overflow: auto;
  border-radius: 12px;
  color: #dcece5;
  background: #14231e;
  font-size: 0.78rem;
  line-height: 1.55;
}

footer {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-top: 24px;
  padding: 0 4px;
  color: var(--muted);
  font-size: 0.78rem;
}

@media (max-width: 820px) {
  .shell { width: min(100% - 24px, 680px); padding-top: 28px; }
  .hero { align-items: flex-start; }
  .grid { grid-template-columns: 1fr; }
}

@media (max-width: 520px) {
  .hero { display: grid; }
  .badge { justify-self: start; }
  .notice { display: grid; }
  .actions > * { width: 100%; }
  footer { display: grid; }
}


.status-grid { margin-bottom: 20px; }
.auth-layout { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; align-items: start; }
.auth-card h3 { margin: 20px 0 10px; font-size: 0.98rem; }
.help { margin: -6px 0 16px; color: var(--muted); font-size: 0.85rem; line-height: 1.6; }
.form-stack { display: grid; gap: 14px; }
.form-stack label { display: grid; gap: 7px; color: var(--muted); font-size: 0.8rem; font-weight: 800; }
input, select { width: 100%; min-height: 46px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 11px; color: var(--ink); background: var(--surface); font: inherit; }
input:focus, select:focus { outline: 3px solid rgba(23,107,77,.15); border-color: var(--brand); }
hr { margin: 22px 0; border: 0; border-top: 1px solid var(--line); }
.danger-button { width: 100%; margin-top: 16px; border-color: #9d2f2f; background: #9d2f2f; }
@media (max-width: 820px) { .auth-layout { grid-template-columns: 1fr; } }

/* SALESNAVI-3 DPRO本部管理 */
.management-link { display:flex; align-items:center; justify-content:center; min-height:46px; margin-bottom:12px; border-radius:12px; color:#fff; background:#245fa6; text-decoration:none; font-weight:800; }
.compact-hero h1 { font-size:clamp(2rem,5vw,3.1rem); }
.header-actions { display:flex; align-items:center; gap:10px; flex-wrap:wrap; justify-content:flex-end; }
.compact-button { width:auto; margin:0; }
.hq-shell { width:min(1440px,calc(100% - 32px)); }
.hq-summary-grid { grid-template-columns:repeat(5,minmax(0,1fr)); margin-bottom:18px; }
.metric-card { display:grid; gap:8px; }
.metric-card span,.metric-card small { color:var(--muted); }
.metric-card strong { font-size:2rem; line-height:1; }
.hq-layout { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr); gap:18px; align-items:start; margin-bottom:18px; }
.section-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.section-heading .help { margin-top:-8px; }
.filter-grid { display:grid; grid-template-columns:2fr 1fr 1fr auto; gap:10px; align-items:end; margin-bottom:16px; }
.filter-grid label,.inline-form label { display:grid; gap:6px; color:var(--muted); font-size:.78rem; font-weight:800; }
.table-wrap { overflow:auto; border:1px solid var(--line); border-radius:14px; }
table { width:100%; border-collapse:collapse; min-width:720px; }
th,td { padding:12px 13px; border-bottom:1px solid var(--line); text-align:left; vertical-align:middle; font-size:.84rem; }
th { position:sticky; top:0; background:#f8fbfa; color:var(--muted); font-size:.74rem; letter-spacing:.03em; }
tbody tr:last-child td { border-bottom:0; }
td strong,td small { display:block; }
td small { margin-top:3px; color:var(--muted); }
.table-button,.link-button,.secondary-button { min-height:36px; padding:0 12px; border-radius:9px; }
.secondary-button { border:1px solid var(--line); color:var(--ink); background:var(--surface); }
.link-button { margin-top:8px; border:1px solid var(--line); color:var(--brand); background:#fff; }
.status-pill { display:inline-flex; padding:5px 8px; border-radius:999px; font-size:.72rem; font-weight:900; background:#eef2f0; }
.status-active,.status-trial { color:#0f6848; background:#e1f4eb; }
.status-setup { color:#245fa6; background:#eaf3ff; }
.status-suspended,.status-terminated,.status-archived { color:#8b3333; background:#f9e7e7; }
.form-two,.form-three { display:grid; gap:12px; }
.form-two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.form-three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.detail-card { margin-bottom:18px; scroll-margin-top:16px; }
.feature-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.feature-item { display:flex!important; grid-template-columns:none!important; align-items:flex-start; gap:10px!important; padding:12px; border:1px solid var(--line); border-radius:12px; color:var(--ink)!important; }
.feature-item input { width:18px; min-height:18px; margin-top:2px; }
.feature-item span { display:grid; gap:3px; }
.feature-item small { color:var(--muted); font-weight:600; }
.detail-columns { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:22px; }
.detail-columns h3 { margin:0 0 10px; }
.mini-list { display:grid; gap:8px; }
.mini-list>div { padding:11px 12px; border:1px solid var(--line); border-radius:11px; background:#fafcfb; }
.mini-list strong,.mini-list span { display:block; }
.mini-list span { margin-top:4px; color:var(--muted); font-size:.78rem; }
.inline-form { display:grid; grid-template-columns:2fr 1fr auto; gap:10px; align-items:end; margin-bottom:14px; }
.audit-card { margin-bottom:18px; }
.toast { position:fixed; right:20px; bottom:20px; z-index:20; max-width:min(460px,calc(100% - 40px)); padding:16px 18px; border-radius:14px; color:#fff; background:var(--brand-dark); box-shadow:0 16px 48px rgba(0,0,0,.2); font-weight:800; line-height:1.55; }
.toast[data-status="error"] { background:var(--error); }
@media (max-width:1100px) { .hq-summary-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } .hq-layout { grid-template-columns:1fr; } }
@media (max-width:820px) { .hq-shell { width:min(100% - 20px,720px); } .hq-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .filter-grid,.form-three,.feature-grid,.detail-columns,.inline-form { grid-template-columns:1fr; } .form-two { grid-template-columns:1fr; } .header-actions { justify-content:flex-start; } }
@media (max-width:520px) { .hq-summary-grid { grid-template-columns:1fr; } }

/* SALESNAVI-4 契約会社管理 */
.management-body{background:#f4f8f6;color:#12271f}.management-shell{min-height:100vh;display:grid;grid-template-columns:260px minmax(0,1fr)}.side-nav{position:sticky;top:0;height:100vh;padding:28px 22px;background:#10271f;color:#fff;display:flex;flex-direction:column;gap:28px;overflow:auto}.side-nav .eyebrow{color:#8cdab9}.side-nav h1{font-size:24px;margin:3px 0 8px}.side-nav p{margin:0;color:#c9d8d1;font-size:13px}.side-nav nav{display:grid;gap:8px}.nav-item{appearance:none;width:100%;text-align:left;background:transparent;color:#dfece7;border:1px solid transparent;padding:13px 14px;border-radius:10px;font-weight:700;cursor:pointer}.nav-item:hover,.nav-item.active{background:#1d4a39;color:#fff;border-color:#39735b}.side-actions{margin-top:auto;display:grid;gap:10px}.side-actions .secondary-link{display:block;text-align:center;color:#eaf5f1;border:1px solid #638f7e;border-radius:10px;padding:11px;text-decoration:none}.management-main{min-width:0;padding:28px clamp(18px,3vw,44px) 24px}.management-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.management-header h2{font-size:30px;margin:3px 0}.management-header p{margin:0;color:#5c7068}.inline-notice{padding:13px 16px;border-radius:10px;margin-bottom:16px;background:#e1f4ea;color:#12573d;border:1px solid #a8d8c3}.inline-notice[data-status="error"]{background:#fff0f0;color:#9e2727;border-color:#e8b3b3}.management-view{display:none}.management-view.active{display:grid;gap:18px}.metric-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.metric-card,.panel-card{background:#fff;border:1px solid #d9e5df;border-radius:16px;box-shadow:0 12px 30px rgba(20,65,47,.07)}.metric-card{padding:18px}.metric-card span{font-size:13px;color:#63756e}.metric-card strong{display:block;font-size:30px;margin:8px 0 4px}.metric-card small{color:#70827a}.panel-card{padding:22px}.panel-card h3{font-size:20px;margin:0 0 5px}.panel-card p{margin:0;color:#6b7b75}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.section-heading button,.secondary-button{background:#fff;color:#146143;border:1px solid #81b8a0}.summary-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0 0}.summary-list div{background:#f5f9f7;padding:13px;border-radius:10px}.summary-list dt{font-size:12px;color:#687a72}.summary-list dd{margin:5px 0 0;font-weight:800}.check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.setup-item{display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto;column-gap:10px;padding:14px;border-radius:12px;background:#f6f9f8;border:1px solid #dde8e3}.setup-item>span{grid-row:1/3;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-weight:900}.setup-item.done>span{background:#d7f1e5;color:#0f744d}.setup-item.pending>span{background:#fff0d8;color:#9c5b00}.setup-item small{color:#6d7e76}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid .span-2{grid-column:1/-1}.form-grid label,.form-stack label{display:grid;gap:7px;font-size:13px;font-weight:700;color:#30473e}.form-grid input,.form-grid select,.form-grid textarea,.form-stack input,.form-stack select,.form-stack textarea{width:100%;box-sizing:border-box;border:1px solid #ccdcd5;border-radius:9px;background:#fff;padding:11px 12px;color:#142a21;font:inherit}.form-grid textarea,.form-stack textarea{resize:vertical}.form-actions{display:flex;justify-content:flex-end}.form-actions button{min-width:180px}.compact-grid{gap:10px}.check-label{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:9px!important}.check-label input{width:auto!important}.split-layout{display:grid;grid-template-columns:minmax(230px,.8fr) minmax(320px,1.2fr);gap:18px}.item-list{display:grid;align-content:start;gap:8px;max-height:680px;overflow:auto;padding-right:4px}.list-item{appearance:none;text-align:left;background:#f6f9f8;color:#173127;border:1px solid #d8e5df;border-radius:11px;padding:13px 14px;cursor:pointer}.list-item:hover{border-color:#4a9877;background:#eff8f4}.list-item strong,.list-item span{display:block}.list-item span{font-size:12px;color:#6b7d75;margin-top:4px}.editor-card{background:#f7faf8;border:1px solid #d8e4df;border-radius:13px;padding:16px}.editor-card small{font-weight:400;color:#718078}.empty-state{padding:24px;text-align:center;background:#f7faf8;border-radius:12px;color:#7a8983}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:18px}.feature-grid .feature-item{display:flex;align-items:center;gap:10px;background:#f7faf8;border:1px solid #dae6e1;border-radius:11px;padding:13px}.feature-item input{width:18px;height:18px}.feature-item span{font-weight:700}.feature-item small{display:block;color:#718078;font-weight:400;margin-top:3px}.management-main footer{display:flex;justify-content:space-between;gap:20px;color:#718078;font-size:12px;margin-top:20px}.management-body button{border:0;border-radius:10px;padding:11px 15px;background:#14734f;color:#fff;font-weight:800;cursor:pointer}.management-body button:disabled{opacity:.45;cursor:not-allowed}.management-body .danger-button{background:#ae3030}.management-body .badge{flex:none}
@media(max-width:1100px){.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.management-shell{display:block}.side-nav{position:static;height:auto;padding:18px}.side-nav nav{grid-template-columns:repeat(3,minmax(0,1fr))}.nav-item{text-align:center;padding:10px 6px;font-size:12px}.side-actions{grid-template-columns:1fr 1fr}.management-main{padding:18px}.management-header h2{font-size:25px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.split-layout{grid-template-columns:1fr}.item-list{max-height:300px}.check-grid,.feature-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.side-nav nav{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-grid,.check-grid,.feature-grid,.form-grid,.summary-list{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}.management-header{align-items:flex-start}.management-main footer{display:grid}.panel-card{padding:16px}.section-heading{display:grid}.section-heading button{width:100%}}

/* SALESNAVI-5 スマートフォン営業 */
.staff-app{background:#f1f6f3;color:#11271f;padding-bottom:86px}.staff-app button,.staff-app input,.staff-app select,.staff-app textarea{font:inherit}.staff-header{position:sticky;top:0;z-index:30;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:18px max(16px,env(safe-area-inset-left)) 14px;background:rgba(245,249,247,.96);backdrop-filter:blur(16px);border-bottom:1px solid #d9e6e0}.staff-header h1{font-size:22px;margin:2px 0 4px}.staff-user-line{display:flex;gap:8px;flex-wrap:wrap;margin:0;color:#65776f;font-size:12px}.staff-user-line span+span:before{content:"·";margin-right:8px}.staff-header-actions{display:flex;gap:8px;align-items:center}.icon-button{width:42px;min-height:42px;padding:0;border-radius:50%;font-size:22px;background:#fff;color:#173c2e;border:1px solid #cfe0d8}.staff-main{width:min(760px,100%);margin:0 auto;padding:20px 16px 30px}.staff-view{display:none}.staff-view.is-active{display:block}.staff-view-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.staff-view-heading h2{margin:2px 0 0;font-size:28px}.small-button{min-height:38px;padding:0 13px;border-radius:10px;background:#fff;color:#166847;border:1px solid #94c7b0}.small-button.primary{background:#16724f;color:#fff;border-color:#16724f}.mobile-notice{margin-bottom:14px;padding:13px 14px;border-radius:12px;background:#dcf3e7;color:#165b40;border:1px solid #b5dec9;font-size:13px;line-height:1.6}.mobile-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.mobile-stat{display:grid;gap:5px;min-height:86px;padding:12px 8px;border-radius:14px;background:#fff;color:#122b21;border:1px solid #d6e4de;box-shadow:0 8px 24px rgba(17,61,44,.06)}.mobile-stat span{font-size:27px;font-weight:900}.mobile-stat small{color:#687970;font-size:11px}.quick-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:20px}.quick-action{min-height:50px;border-radius:13px;background:#fff;color:#145e42;border:1px solid #a6ccb9}.quick-action.primary{background:#146f4c;color:#fff;border-color:#146f4c}.mobile-section{margin-top:18px}.mobile-section-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.mobile-section-title h3{margin:0}.text-button{min-height:auto;padding:5px 0;background:transparent;color:#176b4d;border:0}.mobile-card-list{display:grid;gap:10px}.mobile-card{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid #d5e3dd;border-radius:15px;background:#fff;box-shadow:0 8px 24px rgba(14,58,41,.06)}.card-main{min-width:0;flex:1}.card-main h3{margin:0;font-size:16px;overflow-wrap:anywhere}.card-main p{margin:6px 0 0;color:#63756d;font-size:12px;line-height:1.55}.card-title-row{display:flex;align-items:center;gap:8px}.priority{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:8px;font-size:12px;font-weight:900}.priority-A{background:#fee9df;color:#a54116}.priority-B{background:#e7f2ff;color:#2b6392}.priority-C{background:#edf1ef;color:#66766f}.chip-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.chip{display:inline-flex;align-items:center;min-height:23px;padding:3px 8px;border-radius:999px;background:#eff4f1;color:#456158;font-size:10px;font-weight:800}.chip.success{background:#dff3e8;color:#0c7148}.chip.warning{background:#fff1d6;color:#925b00}.chip.danger{background:#ffe4e4;color:#a33131}.card-inline-actions,.queue-actions{display:grid;gap:7px;flex:0 0 auto}.card-inline-actions a,.card-inline-actions button,.queue-actions button{min-height:34px;padding:0 10px;border-radius:9px;background:#f7faf8;color:#145f43;border:1px solid #cdded6;text-decoration:none;font-size:11px}.card-inline-actions a{display:flex;align-items:center;justify-content:center}.queue-actions .primary{background:#146f4c;color:#fff;border-color:#146f4c}.mobile-filter-bar{display:grid;grid-template-columns:minmax(0,1fr) 150px auto;gap:8px;margin-bottom:10px}.mobile-filter-bar input,.mobile-filter-bar select{min-height:42px;background:#fff}.mobile-filter-bar button{min-height:42px;padding:0 14px}.list-count{margin:0 0 9px;color:#687a72;font-size:12px}.load-more{width:100%;margin-top:12px;background:#fff;color:#176b4d;border:1px solid #9cc5b2}.date-banner{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:12px 14px;border-radius:12px;background:#173d2f;color:#fff}.date-banner span{font-weight:900}.date-banner small{color:#cde1d8;font-size:10px}.queue-card{align-items:stretch}.queue-order{display:grid;place-items:center;flex:0 0 36px;width:36px;border-radius:10px;background:#edf5f1;color:#176747;font-weight:900}.queue-card.status-COMPLETED{opacity:.74}.queue-card.status-SKIPPED{opacity:.68}.status-dot{width:8px;height:8px;border-radius:50%;background:#df9b22}.status-COMPLETED .status-dot{background:#1a9667}.status-SKIPPED .status-dot{background:#8b9490}.empty-message{margin:0;padding:24px;text-align:center;color:#718179;background:#f8fbf9;border:1px dashed #cbdcd4;border-radius:14px}.empty-message.compact{padding:12px}.empty-state{padding:24px;text-align:center;background:#fff;border:1px dashed #c9dad2;border-radius:15px}.empty-state strong{display:block;margin-bottom:6px}.empty-state p{color:#6c7d75;font-size:12px}.empty-state button{margin-top:8px}.segmented-control{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;margin-bottom:12px;border-radius:12px;background:#dfe9e4}.segmented-control button{min-height:38px;padding:0 8px;border:0;background:transparent;color:#4c655b}.segmented-control button.is-active{background:#fff;color:#155f43;box-shadow:0 4px 12px rgba(0,0,0,.06)}.followup-card.is-overdue{border-color:#efb6b6}.date-block{display:grid;gap:4px;flex:0 0 102px}.date-block strong{font-size:12px}.date-block small{color:#687a72}.followup-card>button,.history-card>button{min-height:34px;padding:0 10px;background:#f7faf8;color:#145f43;border:1px solid #cdded6}.history-card time{flex:0 0 92px;color:#61736a;font-size:11px}.memo-preview{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.staff-bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:35;display:grid;grid-template-columns:repeat(5,1fr);padding:7px max(6px,env(safe-area-inset-left)) calc(7px + env(safe-area-inset-bottom));background:rgba(255,255,255,.98);border-top:1px solid #d6e3dd;box-shadow:0 -8px 24px rgba(13,54,39,.08)}.staff-bottom-nav button{display:grid;gap:2px;min-height:52px;padding:4px;border:0;background:transparent;color:#6b7d75}.staff-bottom-nav button span{font-size:19px;line-height:1}.staff-bottom-nav button small{font-size:10px;font-weight:800}.staff-bottom-nav button.is-active{color:#146d4b}.offline-bar{position:fixed;left:0;right:0;top:0;z-index:60;padding:8px 12px;text-align:center;background:#8c4f00;color:#fff;font-size:12px}.offline-bar:not([hidden])~.staff-header{top:34px}.sheet-backdrop{position:fixed;inset:0;z-index:40;background:rgba(8,28,21,.45);backdrop-filter:blur(3px)}.mobile-sheet{position:fixed;left:50%;bottom:0;z-index:45;width:min(760px,100%);max-height:92vh;overflow:auto;transform:translate(-50%,100%);transition:transform .22s ease;border-radius:24px 24px 0 0;background:#fff;box-shadow:0 -20px 60px rgba(0,0,0,.22);padding-bottom:calc(16px + env(safe-area-inset-bottom))}.mobile-sheet.is-open{transform:translate(-50%,0)}.compact-sheet{max-height:75vh}.sheet-handle{width:52px;height:5px;margin:9px auto 3px;border-radius:999px;background:#d6e0dc}.sheet-header{position:sticky;top:0;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:15px 18px 12px;background:#fff;border-bottom:1px solid #e0e9e5}.sheet-header h2{margin:2px 0 0;font-size:23px}.sheet-close{width:40px;min-height:40px;padding:0;border-radius:50%;background:#eff4f1;color:#224d3d;border:0;font-size:24px}.sheet-content{padding:16px 18px}.sheet-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:12px 18px}.sticky-sheet-actions{position:sticky;bottom:0;background:#fff;border-top:1px solid #e0e9e5}.sheet-actions button{min-height:48px;background:#fff;color:#146747;border:1px solid #9dc8b4}.sheet-actions .primary,.mobile-form .primary{background:#146f4c;color:#fff;border-color:#146f4c}.detail-hero{padding:15px;border-radius:14px;background:#f3f8f5}.detail-hero p{margin:8px 0 0;color:#5e7268}.detail-action-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.detail-action-grid a,.detail-action-grid button,.disabled-action{display:flex;align-items:center;justify-content:center;min-height:42px;padding:8px;border-radius:10px;background:#fff;color:#176647;border:1px solid #c7dbd2;text-decoration:none;font-size:12px;font-weight:800}.disabled-action{color:#89958f;background:#f3f5f4}.detail-list{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.detail-list div{padding:11px;border:1px solid #dce7e2;border-radius:10px}.detail-section{margin-top:18px}.detail-section h3{margin:0 0 9px;font-size:15px}.activity-timeline{display:grid;gap:9px}.activity-timeline article{padding-left:13px;border-left:3px solid #a8d5c1}.activity-timeline time,.activity-timeline strong{display:block}.activity-timeline time{color:#687a72;font-size:11px}.activity-timeline p{margin:5px 0 0;color:#53685e;font-size:12px}.mobile-form label{font-size:12px}.mobile-form input,.mobile-form select,.mobile-form textarea{min-height:46px;border:1px solid #cbdcd4;border-radius:10px;padding:10px 12px;background:#fff}.mobile-form textarea{resize:vertical}.two-column-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.required{margin-left:5px;color:#b23131;font-size:10px}.full-button{width:100%;display:flex}.form-summary{display:grid;gap:5px;padding:12px 13px;border-radius:11px;background:#eef6f2}.form-summary span{color:#65776f;font-size:12px}.draft-notice{margin:0;padding:10px 12px;border-radius:10px;background:#fff4d9;color:#8b5a00;font-size:12px}.account-panel dl{margin-bottom:14px}.account-panel .full-button{margin-top:9px}.loading-overlay{position:fixed;inset:0;z-index:80;display:grid;place-content:center;justify-items:center;gap:12px;background:rgba(244,248,246,.86);backdrop-filter:blur(5px)}.spinner{width:40px;height:40px;border:4px solid #c9ddd4;border-top-color:#176b4d;border-radius:50%;animation:spin .8s linear infinite}.loading-overlay p{margin:0;font-weight:800}@keyframes spin{to{transform:rotate(360deg)}}.mobile-toast{position:fixed;left:50%;bottom:88px;z-index:90;transform:translateX(-50%);width:min(420px,calc(100% - 28px));padding:13px 16px;border-radius:12px;background:#103e2e;color:#fff;box-shadow:0 12px 36px rgba(0,0,0,.22);text-align:center;font-weight:800;font-size:13px}.mobile-toast[data-kind="error"]{background:#a42f2f}.sheet-open{overflow:hidden}.staff-link{background:#176b4d}.staff-app input:focus,.staff-app select:focus,.staff-app textarea:focus{outline:3px solid rgba(23,107,77,.14);border-color:#1a7954}
@media(max-width:620px){.staff-main{padding-left:12px;padding-right:12px}.mobile-stat-grid{grid-template-columns:repeat(2,1fr)}.mobile-filter-bar{grid-template-columns:1fr 120px}.mobile-filter-bar button{grid-column:1/-1}.mobile-card{align-items:flex-start}.card-inline-actions,.queue-actions{grid-template-columns:repeat(3,1fr);width:100%;grid-column:1/-1}.prospect-card,.queue-card,.followup-card,.history-card{flex-wrap:wrap}.queue-order{align-self:stretch}.date-block,.history-card time{flex-basis:82px}.detail-list{grid-template-columns:1fr}.detail-action-grid{grid-template-columns:repeat(2,1fr)}.detail-action-grid>*:last-child{grid-column:1/-1}.two-column-fields{grid-template-columns:1fr}.sheet-actions{grid-template-columns:1fr 1fr}}
@media(min-width:900px){.staff-app{padding-bottom:30px}.staff-header{padding-left:calc((100% - 760px)/2);padding-right:calc((100% - 760px)/2)}.staff-bottom-nav{left:50%;right:auto;width:760px;transform:translateX(-50%);border:1px solid #d6e3dd;border-bottom:0;border-radius:18px 18px 0 0}.staff-main{padding-bottom:100px}}


/* SALESNAVI-6 Google営業先検索 */
.prospect-source-tabs{margin:0 0 14px}.google-search-panel{display:grid;gap:14px}.google-search-form{display:grid;gap:12px;padding:16px;border:1px solid #d7e5df;border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(13,51,39,.05)}
.google-search-form label{display:grid;gap:6px;font-size:.84rem;font-weight:700;color:#29483f}.google-search-form input,.google-search-form select{width:100%;min-height:44px;border:1px solid #cbdcd5;border-radius:10px;padding:9px 11px;background:#fff;color:#102b23;font:inherit}
.google-search-form .segmented-control.compact{margin:0}.location-status{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid #cbdcd5;border-radius:12px;background:#f7fbf9;font-size:.82rem}.location-status button{white-space:nowrap}
.check-field.google-open-now{display:flex;align-items:center;gap:8px;align-self:end;min-height:44px;padding:10px 12px;border:1px solid #cbdcd5;border-radius:10px}.check-field.google-open-now input{width:18px;min-height:auto}
.google-usage-row{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 12px;border-radius:12px;background:#e7f5ef;color:#174838;font-size:.8rem}.google-usage-row small{color:#527066}.search-summary{padding:10px 12px;border:1px solid #b8ddcd;border-radius:12px;background:#f4fbf8;font-size:.82rem;font-weight:700}
.google-place-card{border-left:4px solid #9bb4aa}.google-place-card.status-new{border-left-color:#157954}.google-place-card.status-registered{border-left-color:#2771b9}.google-place-card.status-excluded{border-left-color:#9b9b9b;opacity:.84}.google-place-card.status-possible_duplicate{border-left-color:#d18a20}
.google-status{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border-radius:999px;font-size:.7rem;font-weight:800;white-space:nowrap}.google-status.status-new{background:#dff5eb;color:#12633f}.google-status.status-registered{background:#e1eefb;color:#1b5a91}.google-status.status-excluded{background:#ecefee;color:#5f6965}.google-status.status-possible_duplicate{background:#fff0d7;color:#86530b}
.google-candidate-actions{grid-template-columns:1fr 1fr 1.35fr}.business-hours-list{display:grid;gap:5px;margin:0;padding:0;list-style:none;font-size:.83rem;color:#38564d}.business-hours-list li{padding:7px 9px;border-radius:8px;background:#f3f8f6}
@media(max-width:600px){.google-candidate-actions{grid-template-columns:1fr 1fr}.google-candidate-actions .primary{grid-column:1/-1}.google-usage-row{display:grid}.location-status{align-items:flex-start;flex-direction:column}}

/* SALESNAVI-7 route / claim */
.route-control-panel{background:#fff;border:1px solid #cfe1d8;border-radius:18px;padding:14px;margin-bottom:12px;box-shadow:0 10px 28px rgba(13,51,39,.06)}
.route-control-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px}.route-control-head div{display:grid;gap:4px}.route-control-head small,.queue-help-row small{color:#597066;line-height:1.5}.route-summary{margin-top:12px;padding:12px;border-radius:14px;background:#e7f6ee;display:grid;gap:5px}.route-summary[hidden]{display:none}.queue-help-row{padding:0 4px 10px}.queue-move-actions{display:flex;gap:5px}.queue-move-actions button{min-width:34px}.queue-actions button:disabled{opacity:.45;cursor:not-allowed}

/* SALESNAVI-8 analytics / CSV */
.analytics-filter-card{position:sticky;top:12px;z-index:5}.analytics-period{display:inline-flex;align-items:center;min-height:32px;padding:5px 10px;border-radius:999px;background:#e8f4ef;color:#165c42;font-size:.78rem;font-weight:800;white-space:nowrap}.analytics-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr)) auto;gap:10px;align-items:end}.analytics-filter-grid label{display:grid;gap:6px;font-size:.78rem;font-weight:800;color:#38574c}.analytics-filter-grid input,.analytics-filter-grid select{width:100%;min-height:42px;padding:8px 10px;border:1px solid #cbdcd4;border-radius:10px;background:#fff;color:#15372c;font:inherit}.analytics-filter-grid button{min-height:42px;white-space:nowrap}.analytics-metric-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:18px}.analytics-metric{display:grid;gap:5px;min-width:0;padding:16px;border:1px solid #d6e3dd;border-radius:15px;background:#fff;box-shadow:0 8px 24px rgba(13,51,39,.05)}.analytics-metric span{color:#557066;font-size:.76rem;font-weight:800}.analytics-metric strong{color:#103f2e;font-size:1.75rem;line-height:1}.analytics-metric small{color:#718179;font-size:.68rem;line-height:1.4}.analytics-two-column{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:18px}.analytics-chart{display:grid;gap:7px;max-height:390px;overflow:auto;padding-right:6px}.analytics-day{display:grid;grid-template-columns:52px minmax(100px,1fr) 38px;gap:9px;align-items:center;min-height:25px}.analytics-day time{color:#65786f;font-size:.72rem}.analytics-day>strong{text-align:right;font-size:.78rem}.day-bars{display:grid;gap:2px}.day-bar{display:block;width:100%;height:4px;border:0;border-radius:999px;overflow:hidden;appearance:none;background:#edf3f0}.day-bar::-webkit-progress-bar{background:#edf3f0;border-radius:999px}.day-bar::-webkit-progress-value{border-radius:999px}.day-bar::-moz-progress-bar{border-radius:999px}.day-bar.activity::-webkit-progress-value,.chart-legend .activity::before{background:#176f4e}.day-bar.activity::-moz-progress-bar{background:#176f4e}.day-bar.visit::-webkit-progress-value,.chart-legend .visit::before{background:#659f88}.day-bar.visit::-moz-progress-bar{background:#659f88}.day-bar.win::-webkit-progress-value,.chart-legend .win::before{background:#d59a37}.day-bar.win::-moz-progress-bar{background:#d59a37}.chart-legend{display:flex;gap:14px;justify-content:flex-end;padding-top:7px;color:#62756c;font-size:.7rem}.chart-legend span{display:inline-flex;align-items:center;gap:5px}.chart-legend span::before{content:"";width:16px;height:4px;border-radius:999px}.analytics-bars{display:grid;gap:12px}.analytics-bar-row{display:grid;grid-template-columns:minmax(110px,1fr) minmax(80px,1.4fr) 40px;gap:10px;align-items:center}.analytics-bar-row>div{display:grid;gap:2px}.analytics-bar-row strong{font-size:.8rem}.analytics-bar-row small{color:#687a72;font-size:.68rem}.analytics-bar-row>progress{width:100%;height:9px;border:0;border-radius:999px;overflow:hidden;appearance:none;background:#edf3f0}.analytics-bar-row>progress::-webkit-progress-bar{background:#edf3f0;border-radius:999px}.analytics-bar-row>progress::-webkit-progress-value{background:#24805e;border-radius:999px}.analytics-bar-row>progress::-moz-progress-bar{background:#24805e;border-radius:999px}.analytics-bar-row>b{text-align:right;font-size:.8rem}.pipeline-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}.pipeline-card{display:grid;gap:5px;padding:14px;border:1px solid #d8e4df;border-radius:13px;background:#f9fbfa}.pipeline-card span{color:#526a60;font-size:.75rem;font-weight:800}.pipeline-card strong{font-size:1.45rem;color:#124b37}.pipeline-card small{color:#78877f;font-size:.68rem}.analytics-table-wrap{overflow:auto;border:1px solid #dbe6e1;border-radius:13px}.analytics-table{width:100%;border-collapse:collapse;min-width:720px}.analytics-table th,.analytics-table td{padding:11px 12px;border-bottom:1px solid #e2ebe7;text-align:right;font-size:.76rem;white-space:nowrap}.analytics-table th{position:sticky;top:0;background:#f1f7f4;color:#526a60;font-weight:800}.analytics-table th:first-child,.analytics-table td:first-child{text-align:left}.analytics-table tbody tr:last-child td{border-bottom:0}.analytics-table td strong,.analytics-table td small{display:block}.analytics-table td small{margin-top:3px;color:#78877f;font-size:.65rem}.value-alert{color:#a33a2d;font-weight:800}.empty-cell{text-align:center!important;color:#6f8178;padding:24px!important}.analytics-recent{display:grid;gap:8px;max-height:390px;overflow:auto}.analytics-recent article{display:grid;grid-template-columns:92px 1fr;gap:11px;padding:10px 0;border-bottom:1px solid #e3ebe7}.analytics-recent article:last-child{border-bottom:0}.analytics-recent time{color:#687b72;font-size:.69rem}.analytics-recent strong{font-size:.82rem}.analytics-recent p,.analytics-recent small{display:block;margin:3px 0 0;color:#60736a;font-size:.72rem;line-height:1.45}.csv-export-grid{display:grid;grid-template-columns:1fr;gap:9px}.csv-export-grid button{width:100%;min-height:44px}.form-note{margin:12px 0 0;color:#64766e;font-size:.75rem;line-height:1.6}.empty-state{margin:0;padding:22px;text-align:center;color:#718078;background:#f7faf8;border-radius:12px;font-size:.78rem}
@media(max-width:1180px){.analytics-metric-grid{grid-template-columns:repeat(3,1fr)}.analytics-filter-grid{grid-template-columns:repeat(2,1fr)}.analytics-filter-grid button{grid-column:1/-1}.analytics-two-column{grid-template-columns:1fr}}
@media(max-width:700px){.analytics-filter-card{position:static}.analytics-metric-grid{grid-template-columns:repeat(2,1fr)}.analytics-filter-grid{grid-template-columns:1fr}.analytics-filter-grid button{grid-column:auto}.analytics-metric{padding:13px}.analytics-metric strong{font-size:1.45rem}.analytics-two-column{gap:12px}.analytics-day{grid-template-columns:46px 1fr 32px}.analytics-period{white-space:normal}.pipeline-grid{grid-template-columns:repeat(2,1fr)}}

/* SALESNAVI-10 DEMO and system check */
.system-check-shell{max-width:1180px}
.system-check-summary{grid-template-columns:repeat(5,minmax(0,1fr))}
.system-check-actions .section-heading{align-items:center}
.system-dependency-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.dependency-item{border:1px solid var(--line);border-radius:14px;padding:14px;display:grid;gap:5px;background:#fff}
.dependency-item strong{font-size:.92rem}.dependency-item span{font-weight:800}.dependency-item small{color:var(--muted)}
.dependency-item.is-ok{border-color:#b9ddcc;background:#f3fbf7}.dependency-item.is-error{border-color:#efb7b7;background:#fff5f5}
.check-pass{color:#0d734c;font-weight:800}.check-fail{color:#b72c2c;font-weight:800}
.severity{display:inline-flex;padding:3px 8px;border-radius:999px;font-size:.75rem;font-weight:800}
.severity-critical{background:#fee2e2;color:#991b1b}.severity-warning{background:#fff3cd;color:#7a5200}.severity-info{background:#e6f0ff;color:#174ea6}
.system-check-shell td small{display:block;color:var(--muted);margin-top:3px}
@media(max-width:980px){.system-check-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.system-dependency-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.system-check-summary,.system-dependency-grid{grid-template-columns:1fr}.system-check-actions .section-heading{align-items:stretch}.system-check-actions .header-actions{display:grid;grid-template-columns:1fr 1fr}}


.demo-guide{display:grid;grid-template-columns:1.4fr 1fr;gap:22px;align-items:center;margin:0 0 18px;background:linear-gradient(135deg,#effbf6,#f8fcfa)}
.demo-guide[hidden],.demo-reset[hidden],.demo-quick-login[hidden]{display:none!important}
.demo-credentials{display:grid;gap:5px;padding:15px;border:1px solid #bddfce;border-radius:14px;background:#fff;font-size:13px;overflow-wrap:anywhere}
.demo-quick-login{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}
.demo-quick-login p{grid-column:1/-1;margin:2px 0 0;font-size:12px;color:#52655d}
.demo-reset{display:grid;grid-template-columns:1.3fr 1fr;gap:18px;align-items:end;margin:0 0 18px}
.demo-reset-form{display:grid;grid-template-columns:1fr auto;gap:8px}
.demo-reset-form input{min-width:0}
@media(max-width:760px){.demo-guide,.demo-reset{grid-template-columns:1fr}.demo-quick-login{grid-template-columns:1fr}.demo-reset-form{grid-template-columns:1fr}}
