/* 관리자 공통 규격 (시안 1 · 한 줄 머리). 색은 account.css :root의 --mg-* 이름만, 글자는 12px 이상. */
.db-layout{font-family:var(--mg-font)}
/* 왼쪽 메뉴 */
.db-layout .db-sidebar,#db-mobile-menu{background:var(--mg-black-2);color:var(--mg-ink)}
.db-layout .db-sidebar .db-brand{color:var(--mg-white);font-size:var(--mg-fs-md)}
.db-layout .db-section-label{font-size:var(--mg-fs-2xs);color:var(--mg-gray);letter-spacing:.04em}
.db-layout .db-sidebar .db-button{color:var(--mg-muted)!important;font-size:var(--mg-fs-sm);min-height:40px}
.db-layout .db-sidebar .db-button:hover{color:var(--mg-white)!important;background:var(--mg-black-3)!important}
.db-layout .db-sidebar .db-button.active{background:var(--mg-black-4)!important;color:var(--mg-white)!important;font-weight:var(--mg-weight-bold)}
.db-layout .db-sidebar .db-button[hidden]{display:none!important}
.db-layout .db-work-count{background:var(--mg-red)!important;color:var(--mg-white)!important;font-size:var(--mg-fs-2xs)!important}
.db-layout .db-home{font-size:var(--mg-fs-2xs);color:var(--mg-muted)!important}

/* 페이지 머리: 제목·설명 | 기간·새로고침 */
.db-layout .db-top.ad-head{height:auto;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--mg-space-8) var(--mg-space-16);padding:var(--mg-space-16) var(--mg-space-24) var(--mg-space-12);background:var(--mg-white);border-bottom:1px solid var(--mg-paper-2)}
.ad-head .ad-title{min-width:0}
.db-layout .ad-head h1{font-size:var(--mg-fs-2xl);font-weight:var(--mg-weight-heavy);line-height:var(--mg-leading-tight);color:var(--mg-black);white-space:normal;overflow:visible}
.ad-head .ad-desc{margin:var(--mg-space-2) 0 0;font-size:var(--mg-fs-sm);line-height:var(--mg-leading-snug);color:var(--mg-gray)}
.db-layout .ad-head .ad-tools{display:flex;align-items:center;gap:var(--mg-space-8);flex-wrap:nowrap}
.ad-period-slot:empty{display:none}
.db-layout .ad-head .ad-tools button{font:inherit;font-size:var(--mg-fs-sm);min-height:36px;border:1px solid var(--mg-paper-3);border-radius:var(--mg-radius-md);background:var(--mg-white);color:var(--mg-black);padding:var(--mg-space-6) var(--mg-space-12)}
.db-layout .ad-head .ad-tools button:hover{border-color:var(--mg-muted)}
.ad-period{display:inline-flex;align-items:center;gap:var(--mg-space-6);font-weight:var(--mg-weight-semibold);cursor:pointer;white-space:nowrap}
.ad-period svg,.db-layout .ad-head #db-refresh svg{width:16px;height:16px;flex:none}
.db-layout .ad-head #db-refresh{width:36px;padding:0;display:inline-flex;align-items:center;justify-content:center}
.db-layout .ad-head .db-refreshed{font-size:var(--mg-fs-2xs);color:var(--mg-gray);margin:0}
.ad-head .ad-global{display:flex;gap:var(--mg-space-6);margin-left:var(--mg-space-8);padding-left:var(--mg-space-12);border-left:1px solid var(--mg-paper-2)}
.db-layout .ad-head .ad-global button{font-size:var(--mg-fs-xs);color:var(--mg-black-4)}
/* 화면 안 탭 */
.db-layout .db-workspace-tabs{background:var(--mg-white);border-bottom:1px solid var(--mg-paper-2);padding:0 var(--mg-space-24);gap:var(--mg-space-20)}
.db-layout .db-workspace-tabs .db-button{font-size:var(--mg-fs-sm);color:var(--mg-gray);border-radius:0;border:0;border-bottom:2px solid transparent;background:none;padding:var(--mg-space-10) 0}
.db-layout .db-workspace-tabs .db-button[aria-current="page"]{color:var(--mg-black);font-weight:var(--mg-weight-bold);border-bottom-color:var(--mg-black)}

/* 필터 줄: 칩 + 검색 + 정렬 */
.db-layout .db-toolbar.ad-toolbar{display:grid;gap:var(--mg-space-8);padding:var(--mg-space-12) var(--mg-space-24);background:var(--mg-white);border-bottom:1px solid var(--mg-paper-2)}
.ad-toolbar>div:empty{display:none}
.ad-filterbar{display:flex;align-items:center;flex-wrap:wrap;gap:var(--mg-space-8);min-width:0}
.ad-chips{display:flex;flex-wrap:wrap;gap:var(--mg-space-6)}
.db-layout .ad-filterbar .ad-chip{font:inherit;font-size:var(--mg-fs-sm);font-weight:var(--mg-weight-semibold);display:inline-flex;align-items:center;gap:var(--mg-space-6);min-height:36px;padding:var(--mg-space-6) var(--mg-space-12);border:1px solid var(--mg-paper-3);border-radius:var(--mg-radius-pill);background:var(--mg-white);color:var(--mg-black-4);cursor:pointer}
.db-layout .ad-filterbar .ad-chip b{font-variant-numeric:tabular-nums;color:var(--mg-black)}
.db-layout .ad-filterbar .ad-chip.hot b{color:var(--mg-red)}
.db-layout .ad-filterbar .ad-chip[aria-pressed="true"]{background:var(--mg-black);border-color:var(--mg-black);color:var(--mg-white)}
.db-layout .ad-filterbar .ad-chip[aria-pressed="true"] b{color:var(--mg-white)}
.ad-chip:focus-visible,.ad-period:focus-visible,.ad-search:focus-visible,.ad-period-pop :focus-visible{outline:2px solid var(--mg-focus-ring);outline-offset:2px}
.ad-spacer{flex:1}
.db-layout .ad-search{font:inherit;font-size:var(--mg-fs-sm);width:260px;max-width:100%;min-height:36px;margin:0;padding:var(--mg-space-6) var(--mg-space-12);border:1px solid var(--mg-paper-3);border-radius:var(--mg-radius-md);background:var(--mg-white)}
.ad-sort{display:inline-flex;align-items:center;gap:var(--mg-space-6);font-size:var(--mg-fs-xs);color:var(--mg-gray)}
.db-layout .ad-sort select{font:inherit;font-size:var(--mg-fs-sm);min-height:36px;padding:var(--mg-space-4) var(--mg-space-8);border:1px solid var(--mg-paper-3);border-radius:var(--mg-radius-md);background:var(--mg-white);color:var(--mg-black)}
.ad-toolbar #db-change-alert .db-button,.ad-toolbar #db-outside .db-button,.ad-toolbar #db-update .db-button{font-size:var(--mg-fs-xs)}
.ad-toolbar #db-update{font-size:var(--mg-fs-xs);color:var(--mg-gray)}

/* 표·빈 화면·쪽 넘김: 12px 이상 */
.db-layout .db-table{font-size:var(--mg-fs-sm)}
.db-layout .db-table th{font-size:var(--mg-fs-xs);background:var(--mg-ink);color:var(--mg-gray);font-weight:var(--mg-weight-semibold)}
.db-layout .db-table tbody tr:hover,.db-layout .db-table tr.selected{background:var(--mg-ink)}
.db-layout .db-table .db-button{font-size:var(--mg-fs-xs)}
.db-layout .db-badge{font-size:var(--mg-fs-2xs)}
.db-layout .db-empty{font-size:var(--mg-fs-sm);color:var(--mg-gray)}
.db-layout .db-pagination{font-size:var(--mg-fs-xs);color:var(--mg-gray)}
.db-layout .db-mobile-card p{font-size:var(--mg-fs-xs)}
.db-layout .db-mobile-card time{font-size:var(--mg-fs-2xs)}
.db-layout .db-button.primary{background:var(--mg-black);border-color:var(--mg-black);color:var(--mg-white)}

/* 기간 창: PC는 버튼 아래, 휴대폰은 아래에서 올라오는 판 */
.ad-period-pop{position:fixed;margin:0;inset:auto;width:320px;max-width:calc(100vw - 16px);padding:var(--mg-space-16);border:1px solid var(--mg-paper-3);border-radius:var(--mg-radius-lg);background:var(--mg-white);color:var(--mg-black);box-shadow:var(--mg-shadow-2);font-family:var(--mg-font);display:grid;gap:var(--mg-space-10)}
.ad-period-pop:not([open]){display:none}
.ad-period-pop::backdrop{background:transparent}
.ad-period-pop.sheet{inset:auto 0 0 0;width:100%;max-width:none;border-radius:var(--mg-radius-xl) var(--mg-radius-xl) 0 0;padding-bottom:calc(var(--mg-space-16) + env(safe-area-inset-bottom));box-shadow:var(--mg-shadow-3-up)}
.ad-period-pop.sheet::backdrop{background:color-mix(in srgb,var(--mg-black) 40%,transparent)}
.ad-pop-label{margin:0;font-size:var(--mg-fs-xs);color:var(--mg-gray);font-weight:var(--mg-weight-semibold)}
.ad-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--mg-space-6)}
.ad-quick button,.ad-btn{font:inherit;font-size:var(--mg-fs-sm);font-weight:var(--mg-weight-semibold);min-height:40px;border:1px solid var(--mg-paper-3);border-radius:var(--mg-radius-md);background:var(--mg-white);color:var(--mg-black);cursor:pointer;padding:0 var(--mg-space-12)}
.ad-quick button[aria-pressed="true"],.ad-btn.dark{background:var(--mg-black);border-color:var(--mg-black);color:var(--mg-white)}
.ad-dates{display:grid;grid-template-columns:1fr 1fr;gap:var(--mg-space-8)}
.ad-field{display:grid;gap:var(--mg-space-4);font-size:var(--mg-fs-xs);color:var(--mg-gray)}
.ad-field input,.ad-field select{font:inherit;font-size:var(--mg-fs-sm);min-height:40px;width:100%;min-width:0;padding:var(--mg-space-6) var(--mg-space-8);border:1px solid var(--mg-paper-3);border-radius:var(--mg-radius-md);background:var(--mg-white);color:var(--mg-black)}
.ad-pop-error{grid-column:1/-1;margin:0;font-size:var(--mg-fs-xs);color:var(--mg-red)}
.ad-pop-error:empty{display:none}
.ad-pop-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:var(--mg-space-6)}

/* 환경설정 */
.ad-settings{max-width:760px}
.ad-menu-order{list-style:none;margin:0;padding:0;display:grid;gap:var(--mg-space-4)}
.ad-menu-order>li{font-size:var(--mg-fs-sm);border:1px solid var(--mg-paper-2);border-radius:var(--mg-radius-md)}
.ad-note{font-size:var(--mg-fs-2xs)!important}

/* 글자 크게 */
.ad-large-text .db-layout .db-table,.ad-large-text .db-layout .ad-chip,.ad-large-text .db-layout .ad-search,.ad-large-text .db-layout .ad-head .ad-tools button{font-size:var(--mg-fs-md)}
.ad-large-text .db-layout .db-mobile-card p,.ad-large-text .db-layout .ad-head .ad-desc{font-size:var(--mg-fs-sm)}

@media(max-width:800px){
 .db-layout .db-top.ad-head{grid-template-columns:36px minmax(0,1fr) auto;padding:var(--mg-space-10) var(--mg-space-12);gap:var(--mg-space-6) var(--mg-space-8);height:auto;min-height:0}
 .db-layout .ad-head #db-menu-toggle{grid-row:1;grid-column:1;display:inline-flex;width:36px;min-height:40px;border-color:transparent;background:transparent}
 .db-layout .ad-head .ad-title{grid-column:2/4;grid-row:1}
 .db-layout .ad-head h1{font-size:var(--mg-fs-xl)}
 .ad-head .ad-desc{font-size:var(--mg-fs-xs)}
 .db-layout .ad-head .ad-tools{grid-column:1/-1;grid-row:2;flex-wrap:wrap;gap:var(--mg-space-6)}
 .db-layout .ad-head .db-refreshed{position:static;width:auto;height:auto;clip-path:none;overflow:visible;flex-basis:auto;order:0}
 .ad-head .ad-global{margin-left:auto;padding-left:0;border-left:0}
 .db-layout .ad-head .ad-tools button{min-height:40px}
 .db-layout .db-workspace-tabs{padding:0 var(--mg-space-12);gap:var(--mg-space-16);overflow-x:auto}
 .db-layout .db-toolbar.ad-toolbar{padding:var(--mg-space-10) var(--mg-space-12);max-height:none}
 .ad-chips{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:var(--mg-space-2)}
 .ad-chip{min-height:40px;flex:none}
 .ad-spacer{display:none}
 .db-layout .ad-search{width:100%;flex:1 1 100%;font-size:var(--mg-fs-md);min-height:40px}
 .ad-sort{margin-left:auto}
}
@media(prefers-reduced-motion:reduce){.ad-period-pop{transition:none}}
.db-layout .db-top.ad-head>.ad-title{display:block}
.db-layout input[type=checkbox]{accent-color:var(--mg-black)}
.ad-pop-note{margin:0;font-size:var(--mg-fs-xs);line-height:var(--mg-leading-snug);color:var(--mg-black-4);background:var(--mg-ink);border-radius:var(--mg-radius-md);padding:var(--mg-space-8) var(--mg-space-10)}
.db-layout .ad-filterbar [data-new]{font:inherit;font-size:var(--mg-fs-sm);font-weight:var(--mg-weight-bold);min-height:36px;padding:var(--mg-space-6) var(--mg-space-16);border:1px solid var(--mg-black);border-radius:var(--mg-radius-md);background:var(--mg-black);color:var(--mg-white)}
.db-layout .ad-toolbar .ad-filterbar button[data-new].bg-primary{background:var(--mg-black);border-color:var(--mg-black);color:var(--mg-white)}
.ad-menu-logout{display:none}
#db-mobile-menu .ad-menu-logout{display:block;font:inherit;font-size:var(--mg-fs-sm);min-height:44px;margin-top:var(--mg-space-8);border:1px solid var(--mg-black-4);border-radius:var(--mg-radius-md);background:none;color:var(--mg-ink);text-align:left;padding:0 var(--mg-space-12)}
@media(max-width:800px){
 .db-layout .db-top.ad-head{grid-template-columns:36px minmax(0,1fr) auto}
 .ad-head .ad-global{grid-column:3;grid-row:1;align-self:start;margin:0}
 .ad-head #db-logout{display:none}
 .db-layout .ad-head .ad-title{grid-column:2}
 .db-layout .ad-head .ad-tools{display:contents}
 .ad-head .ad-period-slot{grid-column:1/3;grid-row:2;min-width:0}
 .ad-head .ad-period{width:100%;justify-content:space-between}
 .ad-head .ad-period span{overflow:hidden;text-overflow:ellipsis}
 .db-layout .ad-head #db-refresh{grid-column:3;grid-row:2;justify-self:end;width:40px;height:40px}
 .db-layout .ad-head .db-refreshed{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}
 /* 기간이 없는 화면: 새로고침이 혼자 한 줄을 차지하지 않게 첫 줄 알림 옆으로 */
 .db-layout .db-top.ad-head:not(:has(.ad-period)){grid-template-columns:36px minmax(0,1fr) auto auto}
 .db-layout .db-top.ad-head:not(:has(.ad-period)) #db-refresh{grid-column:3;grid-row:1;align-self:start}
 .db-layout .db-top.ad-head:not(:has(.ad-period)) .ad-global{grid-column:4}
}
/* 메뉴·탭 이름과 순서 (환경설정) */
.ad-menu-order>li{display:grid;gap:var(--mg-space-4);padding:var(--mg-space-8) var(--mg-space-10)}
.ad-menu-row,.ad-tab-order li{display:flex;align-items:center;gap:var(--mg-space-8)}
.db-layout .ad-name{font:inherit;font-size:var(--mg-fs-sm);flex:1;min-width:0;min-height:36px;margin:0;padding:var(--mg-space-4) var(--mg-space-10);border:1px solid var(--mg-paper-3);border-radius:var(--mg-radius-md);background:var(--mg-white);color:var(--mg-black)}
.db-layout .ad-name::placeholder{color:var(--mg-black-4)}
.ad-tab-order{list-style:none;margin:0 0 0 var(--mg-space-24);padding:0;display:grid;gap:var(--mg-space-4)}
.ad-tab-order li{border:0;padding:0}
.ad-tab-mark{font-size:var(--mg-fs-2xs);color:var(--mg-gray);flex:none}
.db-layout .ad-menu{display:grid;gap:var(--mg-space-4)}
@media(max-width:800px){.ad-tab-order{margin-left:var(--mg-space-12)}.ad-menu-row .ui-check{white-space:nowrap}}
.db-layout .db-sidebar .db-home{border-top-color:var(--mg-black-4);color:var(--mg-muted)!important}
/* 접수품목: 품목 편집 줄(사진 | 입력칸) — 부품은 표준, 배치만 여기 */
.ad-item-list{list-style:none;margin:0;padding:0;display:grid}
.ad-item{display:grid;grid-template-columns:112px minmax(0,1fr);gap:var(--mg-space-16);padding:var(--mg-space-16) 0;border-bottom:1px solid var(--mg-paper-2)}
.ad-item:first-child{padding-top:var(--mg-space-4)}
.ad-item:last-child{border-bottom:0}
.ad-item-photo{display:grid;gap:var(--mg-space-8);align-content:start}
.ad-item-photo img,.ad-item-photo>.ui-thumb-empty{width:112px;height:112px;object-fit:cover;border-radius:var(--mg-radius-md);display:grid}
.ad-item-photo>.ui-thumb-empty svg{width:28px;height:28px}
.ad-item-photo-actions{display:grid;gap:var(--mg-space-4)}
.ad-item-photo-actions .ui-btn{width:100%}
.ad-item-fields{display:grid;gap:var(--mg-space-12);min-width:0}
.ad-item-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--mg-space-8)}
.ad-item-move{display:inline-flex;gap:var(--mg-space-4)}
.ad-item-preview{position:sticky;top:0;align-self:start}
.ad-item-preview .ui-grid{--ui-tile-min:132px}
/* 일정관리: 달력 | 그날 칸 */
.ad-days .ui-cols{grid-template-columns:minmax(0,3fr) minmax(280px,2fr);align-items:start}
.ad-day-editor{position:sticky;top:0}
.ad-day-editor .ui-panel-body{display:grid;gap:var(--mg-space-16)}
.ad-day-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
.ad-day-actions{display:flex;gap:var(--mg-space-8);flex-wrap:wrap}
.ad-day-actions .ui-btn{flex:1}
@media(max-width:800px){.ad-item{grid-template-columns:88px minmax(0,1fr);gap:var(--mg-space-12)}.ad-item-photo img,.ad-item-photo>.ui-thumb-empty{width:88px;height:88px}.ad-item-preview,.ad-day-editor{position:static}.ad-days .ui-cols{grid-template-columns:minmax(0,1fr)}.ad-day-actions .ui-btn{--h:44px}}
@media(max-width:430px){.ad-item{grid-template-columns:minmax(0,1fr)}.ad-item-photo{grid-template-columns:88px minmax(0,1fr);align-items:start}}

/* 필터 줄에 정렬 칸이 둘이면 붙여 둔다 */
.ad-filterbar .ad-sort+.ad-sort{margin-left:0}
.ad-settings .ui-panel-body{display:grid;gap:var(--mg-space-12)}
.ad-menu-row,.ad-tab-order li{min-width:0}
.ad-preference-notice{margin:var(--mg-space-16)}
.ad-menu-row .ad-name,.ad-tab-order .ad-name{flex:1 1 140px}
.ad-menu-row .ui-check{padding-top:0;align-items:center}
@media(max-width:480px){.ad-menu-row{flex-wrap:wrap}.ad-menu-order>li{padding:var(--mg-space-8)}.ad-tab-order{margin-left:0}}
