/* 管理画面(/admin)。JavaScriptなし */ .admin-nav { display: flex; flex-wrap: wrap; gap: 8px; border-bottom: 1px solid #c016c6; padding-bottom: 8px; margin-bottom: 8px; } .admin-nav a { padding: 2px 8px; text-decoration: none; } .admin-nav a.active { border: 1px solid #ea79d8; border-radius: 10px; background-color: #550f75; } .admin-message { border: 1px solid #2c980c; border-radius: 2px; padding: 4px 8px; } .admin-warn { border-left: 4px solid #ee4030; padding: 2px 8px; } small.admin-warn { display: block; border: 0; padding: 0; color: #ee4030; } .admin-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 8px; margin: 8px 0; } .admin-card { display: flex; flex-direction: column; gap: 4px; border: 1px solid #c016c6; border-radius: 2px; padding: 8px; text-decoration: none; } .admin-table { width: 100%; max-width: none; margin: 8px 0; } .admin-table th { width: auto; } .admin-table form { display: inline; } .admin-scroll { overflow-x: auto; } .admin-user img { width: 24px; height: 24px; vertical-align: middle; margin-right: 4px; } .admin-banned, .admin-off { opacity: 0.6; } .admin-current td { background-color: #550f75; } .admin-features span { display: inline-block; margin: 2px; padding: 0 6px; border: 1px solid #746c75; border-radius: 10px; } .admin-features .admin-on { border-color: #2c980c; } .admin-features .admin-off { text-decoration: line-through; } .admin-row { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; margin: 4px 0; } .admin-form, .admin-convert, .admin-convert fieldset { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; margin: 8px 0; } .admin-convert fieldset { border: 1px solid #c016c6; border-radius: 2px; padding: 8px; } .admin-checks { display: flex; flex-wrap: wrap; gap: 4px 12px; } .admin-kind { display: flex; flex-wrap: wrap; gap: 6px 12px; border-left: 2px solid #746c75; padding-left: 8px; } /* 選んだ種類の欄だけ(:hasが無いブラウザーでは全部) */ @supports selector(:has(a)) { .admin-kind { display: none; } fieldset:has(input[value="json"]:checked) .admin-kind[data-kind="json"], fieldset:has(input[value="sqlite"]:checked) .admin-kind[data-kind="sqlite"], fieldset:has(input[value="mysql"]:checked) .admin-kind[data-kind="server"], fieldset:has(input[value="pgsql"]:checked) .admin-kind[data-kind="server"], fieldset:has(input[value="dump"]:checked) .admin-kind[data-kind="dump"] { display: flex; } } .admin-result { border: 1px solid #2c980c; border-radius: 2px; padding: 8px; margin: 8px 0; } .admin-pre { overflow-x: auto; padding: 8px; border: 1px solid #746c75; white-space: pre; } .admin-log { max-height: 70vh; overflow-y: auto; } button.danger { border-color: #ee4030; color: #ee4030; }