body { background: var(--bulma-body-background-color); min-height: 100vh; color: var(--bulma-body-color); }
.app-header { background: var(--bulma-scheme-main); border-bottom: 1px solid var(--bulma-border); padding: 1.4rem 2rem; display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.eyebrow { font-size: .7rem; letter-spacing: .15em; color: var(--bulma-text-weak); margin-bottom: .5rem; }
.header-actions { display: flex; align-items: flex-end; gap: 1rem; }
.header-actions > a { display: flex; align-items: center; min-height: var(--bulma-control-height, 2.5em); }
.header-actions form { display: flex; align-items: end; gap: .5rem; margin-bottom: 0; }
.header-actions form .field { margin: 0 !important; }
.header-actions .label { font-size: .75rem; }
.app-layout { display: grid; grid-template-columns: 220px minmax(0,1fr); }
.sidebar { padding: 2rem 1rem; border-right: 1px solid var(--bulma-border); min-height: calc(100vh - 115px); background: var(--bulma-scheme-main); }
.workspace-container { padding: 2rem; max-width: 1500px; width: 100%; }
.page-title { margin-bottom: 1.5rem; }
.box { border: 1px solid var(--bulma-border); box-shadow: var(--bulma-box-shadow); }
.metric-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1rem; margin-bottom: 1.5rem; }
.metric { margin-bottom: 0 !important; }
.metric .heading { font-size: .85rem; text-transform: none; min-height: 2.5rem; }
.metric .title { font-size: 2.4rem; }
.quick-links { display: flex; gap: 1.5rem; flex-wrap: wrap; margin-top: 1rem; }
.search-row { display: flex; align-items: end; gap: .75rem; margin-bottom: 1.5rem; flex-wrap: wrap; }
.search-row .input { max-width: 500px; }
.search-row .field { margin-bottom: 0; }
.operation { margin: .5rem 0; min-width: 180px; }
.operation summary { cursor: pointer; color: var(--bulma-link-text); font-size: .9rem; }
.operation-body { padding: 1rem 0; min-width: 260px; max-width: 600px; }
.operation-body .field { margin-bottom: .8rem; }
.operation-body pre { white-space: pre-wrap; overflow-wrap: anywhere; font-size: .8rem; max-height: 400px; overflow-y: auto; }
.box > form { max-width: 650px; }
.table td { vertical-align: top; font-size: .9rem; }
.table th { font-size: .8rem; color: var(--bulma-text-weak); }
.table .button { font-size: .8rem; }
.tag { margin: .25rem .25rem .25rem 0; }
.placement { border-bottom: 1px solid var(--bulma-border); padding: .5rem 0; }
.empty-state { padding: 2rem; color: var(--bulma-text-weak); text-align: center; }
.login-shell { max-width: 460px; margin: 8vh auto; padding: 1rem; }
.invoice-sheet { background: var(--bulma-scheme-main); max-width: 1000px; margin: 2rem auto; padding: 3rem; }
.address { white-space: pre-line; }
:root { color-scheme: light dark; }
:root[data-theme="light"] { color-scheme: light; }
:root[data-theme="dark"] { color-scheme: dark; }
@media (max-width: 1000px) { .metric-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .app-header { align-items: start; flex-direction: column; } .header-actions { flex-wrap: wrap; } }
@media (max-width: 700px) { .app-layout { grid-template-columns: 1fr; } .sidebar { min-height: auto; padding: 1rem; border-right: none; border-bottom: 1px solid var(--bulma-border); } .menu-list { display: flex; flex-wrap: wrap; } .workspace-container { padding: 1rem; } .app-header { padding: 1rem; } .header-actions form { flex-wrap: wrap; } .operation-body { min-width: 220px; } .invoice-sheet { padding: 1rem; } }
@media print { .no-print { display: none !important; } body { background: var(--bulma-white); } .invoice-sheet { margin: 0; padding: 0; max-width: none; } .table-container { overflow: visible; } .table tr { break-inside: avoid; } }
