/* CHINOKAN 賃貸管理システム - Material Design 3 カスタムスタイル */

:root {
    --primary: #1a73e8;
    --on-primary: #ffffff;
    --primary-container: #d3e3fd;
    --on-primary-container: #062e6f;
    --surface: #ffffff;
    --surface-container: #ffffff;
    --surface-container-low: #ffffff;
    --surface-container-high: #ffffff;
    --surface-container-highest: #ffffff;
}

/* ===== Global font size (一回り小さく) ===== */
body {
    font-family: "Inter", "Roboto", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
    font-size: 0.8rem;
    line-height: 1.5;
    background: #fff !important;
    padding-left: 0 !important;
    margin-left: 0 !important;

	padding-top: 10px;
}
/* Beer CSS applies padding-left to body when .left.drawer.l exists — kill it */
@media (min-width: 993px) {
    body {
        padding-left: 180px !important;
    }
}
h5 { font-size: 1.2rem; }
h6 { font-size: 0.82rem; }
table td, table th {
    font-size: 0.78rem;
}
.field label {
    font-size: 0.70rem;
	margin-top:5px !important;
	display: block;	color: #666 !important;
}
.field input, .field select, .field textarea {
    font-size: 0.8rem;
	border: 1px solid #ccc !important;

}
.chip {
    font-size: 0.68rem;
    height: 22px;
    padding: 0 8px;
}
button, .button, a.button {
    font-size: 0.78rem;
}
small, .small-text {
    font-size: 0.72rem;
}

/* ===== Side navigation - Google Admin style ===== */

/* Override Beer CSS drawer defaults: force left-align, kill centering */
nav.left.drawer {
    z-index: 10;
    background: #fff;


    display: flex;
    flex-direction: column;
    width: 180px !important;
    min-width: 180px !important;
}

/* Kill Beer CSS default centering on all drawer children */
nav.left.drawer > a,
nav.left.drawer > div,
nav.left.drawer .nav-scroll > a {
    text-align: left !important;
    justify-content: flex-start !important;
    align-items: center !important;
}

/* Scrollable nav body */
nav.left.drawer .nav-scroll {
    overflow-y: auto;
    overflow-x: hidden;
    flex: 1 1 auto;
    padding: 4px 0 8px;
    scrollbar-width: thin;
    scrollbar-color: #c4c4c4 transparent;
}
nav.left.drawer .nav-scroll::-webkit-scrollbar {
    width: 6px;
}
nav.left.drawer .nav-scroll::-webkit-scrollbar-track {
    background: transparent;
}
nav.left.drawer .nav-scroll::-webkit-scrollbar-thumb {
    background: #c4c4c4;
    border-radius: 3px;
}
nav.left.drawer .nav-scroll::-webkit-scrollbar-thumb:hover {
    background: #999;
}

/* Nav item - Google Admin look */
nav.left.drawer .nav-item {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px;
    padding: 0 10px !important;
    height: 32px !important;
    min-height: 32px !important;
    max-height: 32px !important;
    margin: 1px 6px 1px 0 !important;
    border-radius: 0 18px 18px 0 !important;
    font-size: 0.78rem !important;
    font-weight: 400;
    color: #3c4043;
    text-decoration: none !important;
    transition: background-color 0.12s;
    white-space: nowrap;
    overflow: hidden;
    line-height: 32px !important;
    /* Kill Beer CSS defaults */
    background: transparent;
    border: none;
    text-align: left !important;
    width: auto !important;
}
nav.left.drawer .nav-item i {
    font-size: 18px !important;
    width: 18px !important;
    height: 18px !important;
    color: #5f6368;
    flex-shrink: 0;
    transition: color 0.12s;
    line-height: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
}
nav.left.drawer .nav-item span {
    overflow: hidden;
    text-overflow: ellipsis;
    flex: 1;
}

/* Hover */
nav.left.drawer .nav-item:hover {
    background: #f1f3f4 !important;
    color: #3c4043;
}

/* Active - blue pill like Google Admin */
nav.left.drawer .nav-item.active {
    background: #d3e3fd !important;
    color: #1967d2 !important;
    font-weight: 500;
}
nav.left.drawer .nav-item.active i {
    color: #1967d2 !important;
}

/* Section labels - left aligned, compact */
nav.left.drawer .nav-section-label {
    font-size: 0.66rem !important;
    font-weight: 600;
    color: #5f6368;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    padding: 8px 10px 2px 10px !important;
    text-align: left !important;
    line-height: 1.4;
}

/* Dividers in nav */
nav.left.drawer .nav-scroll .divider {
    margin: 4px 10px !important;
}

/* ===== Main content area ===== */
main.responsive {
    min-height: 100vh;
    padding: 0.75rem 1rem !important;
    margin-left: 0 !important;
    background: #fff;
}

/* ===== Tables ===== */
table td, table th {
    vertical-align: middle;
    white-space: nowrap;
    padding: 0.45rem 0.65rem;
}
table.stripes tbody tr:nth-child(even) {

  background-color: rgba(0, 0, 0, 0.02) !important;
}
table.stripes tbody tr:nth-child(odd) {

  background-color: #FFF !important;
}
table.stripes td {
  border: 1px solid rgba(0, 0, 0, 0.04) !important;
}
table.stripes thead tr th {
  background-color: rgba(0, 0, 0, 0.04) !important;
}
/* ===== Cards / Articles ===== */
article.border {
    border-radius: 4px;
    margin-bottom: 0.85rem;
	border: 1px solid rgba(0, 0, 0, 0.2) !important;
}
form article h6.surface-variant {
    border-radius: 5px;
    margin: 0;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    font-size: 0.78rem;

}
.h6{
	padding: 10px;
    font-size: 0.78rem;
	background: #F0F4F9
}
/* ===== Form fields ===== */
.field.border {
    border-radius: 28px;
}
.field.border.large {
    border-radius: 16px;
}

/* Filter row */
form .field.small {
    min-width: 130px;
}

/* ===== FAB ===== */
.fixed.bottom.right {
    z-index: 5;
}

/* ===== Snackbar ===== */
.snackbar {
    z-index: 100;
}

/* ===== Login page ===== */
.login-container {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--surface);
}
.login-card {
    width: 100%;
    max-width: 420px;
}

/* ===== Status chips ===== */
.chip.green { --chip-bg: #e8f5e9; color: #2e7d32; }
.chip.red { --chip-bg: #ffebee; color: #c62828; }
.chip.amber { --chip-bg: #fff8e1; color: #f57f17; }
.chip.blue { --chip-bg: #e3f2fd; color: #1565c0; }

/* ===== Inline delete forms ===== */
form.form-delete {
    display: inline;
}

/* ===== Thumbnail in list ===== */
.list-thumb {
    width: 36px;
    aspect-ratio: 4/3;
    object-fit: cover;
    border-radius: 4px;
}

/* ===== Pagination spacing ===== */
nav.center-align .button,
nav.center-align button {
    margin: 0 2px;
}

/* ===== Photo grid ===== */
.photo-item img {
    aspect-ratio: 4/3;
    object-fit: cover;
    border-radius: 12px 12px 0 0;
}

/* ===== Responsive ===== */
@media (max-width: 992px) {
    main.responsive {
        padding: 0.75rem !important;
        padding-top: 3.5rem !important;
    }
}
.scroll{
	padding-top: 1rem;

}
table{
	margin-top: 0 !important;	
}
.list-nav{
	display: flex;
	background-color: #eee ;
	padding: 0 15px;
	margin: 0 !important;
}

.list-nav li{
	list-style: none;
	padding: 0;
	margin: 0;
}
.list-nav li a{
	display: block;
	padding: 10px;
}