/* Small additions to the Filament panel (no build step; loaded from AdminPanelProvider). */

.jw-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; }
.jw-dropdown { position: relative; }
.jw-panel {
    position: absolute; left: 0; z-index: 30; margin-top: .5rem;
    width: min(22rem, calc(100vw - 2rem));
    background: #fff; border-radius: .75rem;
    box-shadow: 0 10px 25px -5px rgb(0 0 0 / .12), 0 0 0 1px rgb(3 7 18 / .06);
}
.jw-panel--wide { width: min(36rem, calc(100vw - 2rem)); }
.jw-panel-section { padding: 1rem; }
.jw-panel .jw-panel-section { border-top: 1px solid rgb(3 7 18 / .08); }
.jw-panel-title { margin-bottom: .75rem; font-size: .875rem; font-weight: 500; }
.jw-presets { display: grid; grid-template-columns: 1fr; gap: .125rem; padding: .75rem; }
@media (min-width: 640px) { .jw-presets { grid-template-columns: 1fr 1fr; } }
.jw-preset {
    display: flex; align-items: center; gap: .5rem; text-align: left;
    padding: .5rem .75rem; border-radius: .5rem; font-size: .875rem;
}
.jw-preset:hover { background: rgb(3 7 18 / .04); }
.jw-preset.is-active { background: rgb(3 7 18 / .07); font-weight: 500; }
.jw-check { width: 1rem; color: var(--primary-600); }
.jw-range { margin-bottom: .75rem; min-width: 18rem; }
.jw-stack > * + * { margin-top: 1rem; }
.jw-field { display: block; font-size: .875rem; }
.jw-field > span { display: block; margin-bottom: .25rem; font-weight: 500; }
.jw-muted { font-size: .875rem; color: rgb(107 114 128); }

.jw-table { width: 100%; font-size: .875rem; border-collapse: collapse; }
.jw-table th { text-align: left; font-weight: 500; color: rgb(107 114 128); padding: .5rem .75rem; border-bottom: 1px solid rgb(3 7 18 / .08); }
.jw-table td { padding: .5rem .75rem; border-bottom: 1px solid rgb(3 7 18 / .05); }
.jw-table .num { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.jw-table tfoot td { font-weight: 600; border-bottom: 0; }
/* Phones: four columns in ~340px; the amounts were touching the card edge. */
@media (max-width: 639px) { .jw-table th, .jw-table td { padding: .5rem .375rem; } .jw-table th:first-child, .jw-table td:first-child { padding-left: 0; } .jw-table th:last-child, .jw-table td:last-child { padding-right: 0; } }

.dark .jw-panel { background: rgb(24 24 27); box-shadow: 0 0 0 1px rgb(255 255 255 / .1); }
.dark .jw-panel .jw-panel-section { border-top-color: rgb(255 255 255 / .1); }
.dark .jw-preset:hover { background: rgb(255 255 255 / .05); }
.dark .jw-preset.is-active { background: rgb(255 255 255 / .1); }
.dark .jw-muted, .dark .jw-table th { color: rgb(156 163 175); }
.dark .jw-table th, .dark .jw-table td { border-bottom-color: rgb(255 255 255 / .08); }

/* myDATA details slide-over (filament/mydata-details.blade.php) */
.jw-mydata { display: grid; gap: 1rem; font-size: .875rem; }
.jw-mydata-type { font-size: 1.25rem; font-weight: 600; margin: .125rem 0 .75rem; }
.jw-mydata-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; margin: 0; }
.jw-mydata-grid dt { color: rgb(107 114 128); font-size: .75rem; }
.jw-mydata-grid dd { margin: 0; font-weight: 500; }
.jw-mydata-h { font-weight: 600; font-size: .95rem; margin: .5rem 0 -.25rem; }
.jw-mydata code { font-size: .75rem; word-break: break-all; background: rgb(3 7 18 / .04); padding: .125rem .375rem; border-radius: .25rem; }
.jw-kv th { width: 45%; font-weight: 500; vertical-align: top; }
.jw-link { color: rgb(2 132 199); text-decoration: underline; }
.jw-mydata-flags { display: flex; flex-wrap: wrap; gap: .375rem; }
.jw-mydata-flags span { font-size: .75rem; color: rgb(107 114 128); border: 1px solid rgb(3 7 18 / .12); border-radius: .25rem; padding: .125rem .5rem; }
.jw-mydata-parties { display: grid; gap: 1rem; }
@media (min-width: 640px) { .jw-mydata-parties { grid-template-columns: 1fr 1fr; } }
.jw-mydata-error { color: rgb(185 28 28); background: rgb(254 242 242); border-radius: .375rem; padding: .5rem .75rem; }
.jw-mydata-event { border-left: 3px solid rgb(14 165 233); padding: .25rem .75rem; }
.jw-mydata-event.is-failed { border-left-color: rgb(220 38 38); }
.dark .jw-mydata code { background: rgb(255 255 255 / .06); }
.dark .jw-mydata-flags span { border-color: rgb(255 255 255 / .12); }
.dark .jw-mydata-error { background: rgb(127 29 29 / .3); color: rgb(254 202 202); }
/* Long AADE errors (URLs, XML) wrap instead of running off the panel. */
.jw-mydata-event, .jw-mydata-error { overflow-wrap: anywhere; }

/* Monthly overview */
.jw-scroll { overflow-x: auto; }
.jw-neg { color: rgb(185 28 28); }
.dark .jw-neg { color: rgb(252 165 165); }

/* Profit & tax */
.jw-cards { display: grid; gap: 1rem; }
@media (min-width: 900px) { .jw-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); } .jw-cards--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.jw-big { font-size: 1.6rem; font-weight: 600; margin: .25rem 0; font-variant-numeric: tabular-nums; }
.jw-future td { color: rgb(156 163 175); }
.jw-inline-form { display: flex; flex-wrap: wrap; align-items: flex-end; gap: .75rem; margin: 1rem 0 .5rem; }
.jw-inline-form .jw-field { flex: 1 1 16rem; }
