:root { color-scheme: light; font-family: system-ui, sans-serif; color: #16213e; background: #f5f7fb; }
* { box-sizing: border-box; }
body { margin: 0; overflow-x: hidden; }
.page-shell, form { width: min(100% - 2rem, 1120px); margin: 0 auto; padding: 1.25rem 0; }
a { color: #283593; }
button, .button, input, select, textarea { font: inherit; }
button, .button { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: .55rem .85rem; border: 1px solid #3847a7; border-radius: .5rem; background: white; color: #1e2b78; cursor: pointer; text-decoration: none; }
.button--primary { background: #3847a7; color: white; }.button--danger { border-color: #b42318; color: #9b1c13; }
:focus-visible { outline: 3px solid #4f46e5; outline-offset: 2px; }
.catalog-header, .detail-header { display: flex; align-items: start; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.eyebrow, .muted { color: #596579; }.catalog-filters { padding-left: 0; padding-right: 0; }.search-field, .item-form label { display: grid; gap: .4rem; font-weight: 600; }.search-field input, .item-form input, .item-form select, .item-form textarea { width: 100%; min-height: 44px; border: 1px solid #9ba7ba; border-radius: .4rem; padding: .55rem; background: white; }.item-form textarea { min-height: 6rem; }.quick-filters, .card-actions { display: flex; gap: .5rem; flex-wrap: wrap; margin-top: .75rem; }.filter { display: inline-flex; align-items: center; min-height: 44px; padding: .55rem .7rem; }.filter--active { font-weight: 700; color: #172554; background: #dbeafe; border-radius: .4rem; }
.catalog-grid { display: grid; grid-template-columns: 1fr; gap: 1rem; }.app-card { min-width: 0; padding: 1rem; border: 1px solid #c4cada; border-left: .45rem solid #74809a; border-radius: .75rem; background: white; box-shadow: 0 1px 2px rgb(15 23 42 / 8%); }.app-card--unknown { border-left-color: #9a6700; }.app-card__type { margin: 0; color: #4d5d75; font-size: .9rem; font-weight: 700; }.status { display: inline-block; padding: .25rem .5rem; border-radius: 1rem; font-weight: 700; }.status--unknown { color: #704e00; background: #fff4c2; }.empty-state, .form-errors { padding: 1rem; border-radius: .5rem; background: #fff4c2; }.form-errors { color: #7a1f1f; background: #fde8e7; }
.detail-section, fieldset { margin: 1rem 0; padding: 1rem; border: 1px solid #c4cada; border-radius: .75rem; background: white; }.definition-list { display: grid; grid-template-columns: minmax(8rem, 1fr) minmax(0, 3fr); gap: .6rem 1rem; }.definition-list dt { font-weight: 700; }.definition-list dd { margin: 0; overflow-wrap: anywhere; }.stack-list { display: grid; gap: .65rem; padding-left: 1.25rem; }.item-form { display: grid; gap: 1rem; padding-left: 0; padding-right: 0; }.date-fields, .repeat-row { display: grid; gap: .75rem; grid-template-columns: 1fr; }.checkbox { display: flex !important; align-items: center; min-height: 44px; }.checkbox input { width: auto; min-height: 1rem; }
.monitoring-hint { padding: .75rem; border-left: .3rem solid #3847a7; background: #eaf0ff; }
@media (min-width: 640px) { .catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }.date-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .catalog-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }.repeat-row { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.status--working { color: #166534; background: #dcfce7; }.status--unavailable, .status--computer_off { color: #991b1b; background: #fee2e2; }.app-card--working { border-left-color: #16a34a; }.app-card--unavailable, .app-card--computer_off { border-left-color: #dc2626; }.monitor-error { color: #991b1b; overflow-wrap: anywhere; }
