:root{--owner-bg:#f3f7f6;--owner-card:#fff;--owner-border:#d6e3e0;--owner-text:#17312d;--owner-muted:#60746f;--owner-accent:#0b6b62;--owner-soft:#e8f5f2;--owner-warning:#a86200;--owner-danger:#aa2828;--owner-shadow:0 14px 34px rgba(24,58,51,.08)}
*{box-sizing:border-box}.owner-body{margin:0;background:var(--owner-bg);color:var(--owner-text);font-family:"Noto Sans JP","Yu Gothic",sans-serif;font-size:16px;line-height:1.65}.owner-header{position:sticky;top:0;z-index:30;background:#fff;border-bottom:1px solid var(--owner-border)}.owner-header-inner{max-width:1500px;margin:auto;padding:12px 24px;display:flex;align-items:center;justify-content:space-between}.owner-brand{display:flex;gap:12px;align-items:center}.owner-brand .brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--owner-accent);color:#fff;font-weight:800}.owner-brand strong,.owner-brand small{display:block}.owner-brand strong{font-size:18px}.owner-brand small{color:var(--owner-muted)}.owner-header-actions{display:flex;gap:10px}.owner-login-wrap{min-height:calc(100vh - 70px);display:grid;place-items:center;padding:30px}.owner-login-card{width:min(640px,100%);background:#fff;border:1px solid var(--owner-border);border-radius:24px;padding:38px;box-shadow:var(--owner-shadow)}.owner-login-card h1{font-size:32px;line-height:1.35;margin:.4rem 0}.owner-eyebrow{letter-spacing:.12em;color:var(--owner-accent);font-weight:800;font-size:13px;margin:0}.owner-login-form{display:grid;gap:12px;margin-top:26px}.owner-code-row{display:grid;grid-template-columns:1fr auto;gap:10px}.owner-code-row input,.date-label input,.search-bar input,.work-item select,.work-item textarea,.dialog-comment textarea{min-height:48px;border:1px solid #bfd2ce;border-radius:12px;padding:10px 13px;font:inherit;background:#fff}.owner-help{color:var(--owner-muted);font-size:14px}.owner-app{max-width:1600px;margin:auto;display:grid;grid-template-columns:260px minmax(0,1fr);min-height:calc(100vh - 70px)}.owner-sidebar{position:sticky;top:70px;height:calc(100vh - 70px);padding:24px 18px;background:#123e38;color:#fff;overflow:auto}.sidebar-office{padding:8px 10px 20px;border-bottom:1px solid rgba(255,255,255,.18)}.sidebar-office strong,.sidebar-office span{display:block}.sidebar-office span{opacity:.75;font-size:14px}.owner-sidebar nav{display:grid;gap:6px;margin-top:18px}.nav-button{border:0;background:transparent;color:#e9f7f4;text-align:left;padding:12px 13px;border-radius:11px;font:inherit;font-weight:700;display:flex;justify-content:space-between;cursor:pointer}.nav-button:hover,.nav-button.active{background:#fff;color:#16453f}.nav-button span{min-width:24px;text-align:center;background:rgba(255,255,255,.16);border-radius:999px}.nav-button.active span{background:var(--owner-soft)}.sidebar-links{display:grid;gap:8px;margin-top:28px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18)}.sidebar-links a{color:#d9f0eb;text-decoration:none;padding:7px 10px}.owner-main{padding:28px 30px 60px;min-width:0}.owner-topbar{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:18px}.owner-topbar h1{font-size:34px;line-height:1.25;margin:.2rem 0}.owner-topbar p{margin:.15rem 0;color:var(--owner-muted)}.date-label{display:grid;gap:5px;font-weight:700;min-width:190px}.owner-demo-banner{display:flex;gap:12px;align-items:center;padding:12px 16px;margin-bottom:18px;border:1px solid #efc878;background:#fff6e5;border-radius:13px;color:#7c4a00}.owner-section{display:none}.owner-section.active{display:block}.summary-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:16px}.summary-card{background:#fff;border:1px solid var(--owner-border);border-radius:17px;padding:16px;box-shadow:var(--owner-shadow)}.summary-card span{display:block;color:var(--owner-muted);font-size:14px}.summary-card strong{font-size:30px;color:var(--owner-accent)}.summary-card.alert strong{color:var(--owner-danger)}.dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.owner-card{background:#fff;border:1px solid var(--owner-border);border-radius:19px;padding:18px;box-shadow:var(--owner-shadow)}.span-2{grid-column:span 2}.card-heading,.section-header{display:flex;justify-content:space-between;gap:18px;align-items:start;margin-bottom:14px}.card-heading h2,.section-header h2{margin:0;font-size:22px}.card-heading p,.section-header p{margin:2px 0;color:var(--owner-muted)}.text-link{color:var(--owner-accent);font-weight:700}.timeline-list,.compact-list,.work-list{display:grid;gap:10px}.timeline-item,.work-item{border:1px solid var(--owner-border);border-radius:14px;padding:14px;background:#fbfdfc}.timeline-item{display:grid;grid-template-columns:90px 1fr auto;gap:14px;align-items:center}.timeline-time{font-size:18px;font-weight:800;color:var(--owner-accent)}.status-pill,.importance-pill{display:inline-flex;padding:4px 9px;border-radius:999px;font-size:13px;font-weight:800;background:var(--owner-soft);color:var(--owner-accent)}.status-pill.warning,.importance-pill.high{background:#fff0d9;color:#8f5500}.status-pill.danger,.importance-pill.urgent{background:#ffe6e6;color:#a62020}.empty-box{border:1px dashed #bfd2ce;border-radius:14px;padding:28px;text-align:center;color:var(--owner-muted)}.metric-list{display:grid;gap:10px}.metric-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #e7efed}.metric-row strong{font-size:20px}.section-header{margin-bottom:16px}.work-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px}.work-main h3{margin:0 0 4px;font-size:19px}.work-main p{margin:3px 0;color:var(--owner-muted)}.work-detail{margin-top:8px;color:var(--owner-text)!important;white-space:pre-wrap}.work-actions{display:flex;flex-wrap:wrap;gap:8px;align-content:start;justify-content:end}.button-small{min-height:40px;padding:8px 13px}.button-danger{background:#fff0f0;color:var(--owner-danger);border:1px solid #e6aaaa}.search-bar{display:grid;grid-template-columns:1fr auto;gap:10px;margin-bottom:16px}.staff-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.staff-card{background:#fff;border:1px solid var(--owner-border);border-radius:15px;padding:16px}.staff-card h3{margin:0}.staff-card p{margin:4px 0;color:var(--owner-muted)}.owner-dialog{border:0;padding:0;background:transparent;width:min(900px,94vw);max-height:92vh}.owner-dialog::backdrop{background:rgba(15,40,36,.6)}.dialog-panel{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 24px 80px rgba(0,0,0,.25)}.dialog-panel>header{display:flex;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--owner-border)}.dialog-panel h2{margin:2px 0}.dialog-panel header p{margin:0;color:var(--owner-muted)}.dialog-close{border:0;background:transparent;font-size:30px;cursor:pointer}.dialog-content{max-height:58vh;overflow:auto;padding:20px 22px;display:grid;gap:14px}.detail-block{border:1px solid var(--owner-border);border-radius:13px;padding:14px}.detail-block h3{margin:0 0 8px}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.record-item{display:flex;justify-content:space-between;gap:15px;padding:8px 0;border-bottom:1px solid #e7efed}.internal-block{background:#eef7ff;border-color:#a9cde1}.family-block{background:#f0fbf7;border-color:#a9d8c9}.dialog-comment{display:grid;gap:6px;padding:0 22px 16px;font-weight:700}.dialog-panel>footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 22px;border-top:1px solid var(--owner-border)}.loading-overlay{position:fixed;inset:0;z-index:100;background:rgba(255,255,255,.72);display:grid;place-items:center;align-content:center;gap:12px}.spinner{width:42px;height:42px;border:4px solid #c8dbd7;border-top-color:var(--owner-accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.toast{position:fixed;right:24px;bottom:24px;z-index:110;background:#174a43;color:#fff;padding:13px 18px;border-radius:12px;box-shadow:var(--owner-shadow)}.toast.error{background:#a52424}
@media(max-width:1200px){.summary-grid{grid-template-columns:repeat(3,1fr)}.dashboard-grid{grid-template-columns:1fr 1fr}.staff-grid{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.owner-app{grid-template-columns:1fr}.owner-sidebar{position:static;height:auto}.owner-sidebar nav{grid-template-columns:repeat(4,1fr)}.sidebar-links{grid-template-columns:repeat(2,1fr)}.owner-main{padding:22px}.dashboard-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.owner-topbar{align-items:start}.staff-grid{grid-template-columns:1fr}}
@media(max-width:620px){.owner-header-inner{padding:10px 14px}.owner-brand small{display:none}.owner-login-card{padding:24px}.owner-login-card h1,.owner-topbar h1{font-size:26px}.owner-sidebar nav{grid-template-columns:1fr 1fr}.owner-main{padding:16px 12px 50px}.owner-topbar{display:grid}.summary-grid{grid-template-columns:1fr 1fr}.timeline-item{grid-template-columns:1fr}.work-item{grid-template-columns:1fr}.work-actions{justify-content:start}.detail-grid{grid-template-columns:1fr}.dialog-panel>footer{display:grid;grid-template-columns:1fr 1fr}}

/* STEP HOMECARE-6-R1: 事業所名を単語途中で切らず、自然な位置で折り返す */
.sidebar-office strong{
  line-height:1.45;
  word-break:keep-all;
  overflow-wrap:normal;
}

/* STEP HOMECARE-6-R2: 事業所名を明示的な2行表示に固定 */
.sidebar-office strong br{
  display:block;
}

/* STEP HOMECARE-12: UI/UX横断ブラッシュアップ */
.owner-body { font-size: 17px; }
.nav-button {
  min-height: 48px;
  font-size: 16px;
  align-items: center;
}
.button-small,
.owner-header-actions .button {
  min-height: 48px;
  font-size: 16px;
}
.status-pill,
.importance-pill {
  min-height: 30px;
  align-items: center;
  font-size: 14px;
}
.owner-help,
.sidebar-office span,
.summary-card span { font-size: 15px; }
@media (max-width: 620px) {
  .owner-body { font-size: 17px; }
  .owner-header-actions .button { min-width: 84px; }
}
