/* Wiルート design v2 テーマ (Claude Design「物件詳細 v2」系)
 * mvp-mockup.css の後に読み込み、デザイントークンと共通コンポーネントの見た目だけを上書きする。
 * DOM・JSには依存しない。rollbackはこのファイルの読み込みを外す(revert)だけで完了する。
 * トークンの正本はこのファイル。画面側でborder-radius等を直書きしない(square-ui-contract参照)。
 */

:root {
    --navy: #232c55;
    --navy-deep: #1b2244;
    --blue: #4353c9;
    --green: #34a26b;
    --red: #e5484d;
    --amber: #e8a23d;
    --ink: #212a38;
    --muted: #8a93a6;
    --line: #e3e7f0;
    --soft: #eef1f7;
    --panel: #ffffff;
    --teal: #0b8494;
    --ui-corner-radius: 10px;
    --ui-corner-radius-pill: 999px;
    --shadow: 0 12px 28px rgba(20, 28, 60, .12);
}

body {
    font-family: "Noto Sans JP", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Segoe UI", sans-serif;
}

/* ===== シェル: デスクトップはヘッダーレス。ブランドとセクション切替はサイドバー上部へ ===== */

.sidebar-brand {
    display: flex;
    align-items: center;
    padding: 16px 14px 12px;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: .04em;
}

.sidebar-current-user {
    min-width: 0;
    margin: 0 10px 12px;
    border-radius: var(--ui-corner-radius);
    padding: 8px 9px;
    color: #fff;
    background: rgba(255, 255, 255, .08);
    display: grid;
    grid-template-columns: 17px minmax(0, 1fr);
    align-items: center;
    gap: 9px;
}

.sidebar-current-user svg {
    width: 17px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
}

.sidebar-current-user span {
    min-width: 0;
    display: grid;
    gap: 1px;
}

.sidebar-current-user small {
    color: #9ca6cf;
    font-size: 10px;
}

.sidebar-current-user strong {
    overflow: hidden;
    font-size: 12px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sidebar-global-nav {
    display: none;
    gap: 4px;
    padding: 0 10px 12px;
}

.sidebar-global-nav button {
    flex: 1 1 0;
    min-height: 32px;
    padding: 0 6px;
    font-size: 12px;
}

/* Keep the desktop shell aligned with the 1023px drawer and navigationMode(). */
@media (min-width: 1024px) {
    .app:not(.login-mode) {
        grid-template-rows: 1fr;
    }

    .app:not(.login-mode) .topbar {
        display: none;
    }

    .workspace-shell {
        grid-template-columns: 208px minmax(0, 1fr);
        min-height: 100vh;
    }

    .sidebar {
        top: 0;
        height: 100vh;
    }

    .sidebar-global-nav {
        display: flex;
    }
}

@media (min-width: 1024px) {
    .sidebar {
        display: flex;
        flex-direction: column;
        overflow-y: hidden;
    }

    .sidebar-workspace {
        min-height: 0;
        flex: 1 1 auto;
    }
}

/* ===== サイドバー: ネイビー化 ===== */

.sidebar {
    background: var(--navy);
    border-right: 1px solid var(--navy-deep);
}

.workspace-switcher {
    background: transparent;
    border-bottom-color: rgba(255, 255, 255, .12);
}

.workspace-switcher-group p {
    color: #7d87b3;
}

.workspace-switcher-options {
    border-color: transparent;
    border-radius: var(--ui-corner-radius);
    background: var(--navy-deep);
    overflow: hidden;
}

.workspace-switcher button {
    color: #aab2d4;
}

.workspace-switcher button + button {
    border-left-color: rgba(255, 255, 255, .08);
}

.workspace-switcher button:hover,
.workspace-switcher button:focus-visible {
    color: #fff;
    background: rgba(255, 255, 255, .08);
}

.workspace-switcher button.active {
    color: var(--navy);
    background: #fff;
    box-shadow: none;
}

.workspace-company-selector span {
    color: #8d96bf;
}

.sidebar-label {
    color: #7d87b3;
}

.sidebar-nav button,
.sidebar-account {
    color: #c3c9e4;
}

.sidebar-nav button:hover,
.sidebar-nav button:focus-visible,
.sidebar-account:hover,
.sidebar-account:focus-visible {
    color: #fff;
    background: rgba(255, 255, 255, .08);
}

.sidebar-nav button.active {
    color: #fff;
    background: var(--blue);
}

.sidebar-account {
    border-top-color: rgba(255, 255, 255, .14);
}

/* ===== バッジ・状態表示: pill化 ===== */

.badge {
    border-radius: var(--ui-corner-radius-pill);
    font-weight: 800;
}

.badge.soft {
    color: #5a6377;
    background: #e8ebf3;
}

/* ===== 通知・サマリ系: 左アクセント線が常時付く箱は角形状(角丸と左線の混在を避ける) ===== */

.warning-banner,
.location-policy-text,
.assignment-mode-summary,
.coaching-fact-notice,
.manager-sales-analysis-pattern,
.tenant-feedback {
    border-radius: 0;
}

/* ===== パネル・影の調整 ===== */

.panel {
    box-shadow: none;
}
