body{margin:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:#f0f0f1;color:#1d2327}aside{position:fixed;inset:0 auto 0 0;width:220px;background:#1d2327;color:#fff;padding:18px}aside h1{font-size:18px}nav a{display:block;color:#c3c4c7;text-decoration:none;padding:9px;border-radius:4px}nav a:hover{background:#2c3338;color:#fff}nav a.is-active{background:#2271b1;color:#fff;font-weight:700}main{margin-left:260px;padding:24px}.card,form,table{background:#fff;border:1px solid #dcdcde;border-radius:6px;padding:16px;margin:12px 0}input,textarea,select{box-sizing:border-box;max-width:680px;width:100%;padding:8px;margin:4px 0 12px;border:1px solid #8c8f94;border-radius:4px}button,.button{background:#2271b1;color:#fff;border:0;border-radius:4px;padding:8px 12px;text-decoration:none;cursor:pointer}.danger{background:#b32d2e}table{width:100%;border-collapse:collapse}td,th{border-bottom:1px solid #eee;padding:8px;text-align:left}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.article{display:block;background:#fff;border:1px solid #ddd;border-radius:8px;padding:8px;color:#111;text-decoration:none}.article img{width:100%;height:110px;object-fit:cover;background:#eee}.notice{padding:10px;background:#e7f5ff;border-left:4px solid #2271b1}.error{background:#ffecec;border-left-color:#b32d2e}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.stat{background:#fff;padding:16px;border-radius:6px;border:1px solid #ddd}.muted{color:#646970;font-size:12px}

.admin-nav-external{margin-top:12px;padding-top:12px;border-top:1px solid #3c434a}

/* RSS管理・基本設定・livedoor設定・Cron設定だけに適用する専用スタイル */
.admin-ui-page{max-width:1080px}
.admin-ui-page .admin-ui-card{background:#fff;border:1px solid #dcdcde;border-radius:6px;padding:20px;margin:14px 0;box-shadow:none}
.admin-ui-page .admin-ui-section{margin:0;padding:0}
.admin-ui-page .admin-ui-section+.admin-ui-section{margin-top:26px;padding-top:22px;border-top:1px solid #e3e3e3}
.admin-ui-page .admin-ui-section h3,.admin-ui-page .admin-ui-card>h3{margin:0 0 18px;font-size:18px}
.admin-ui-page .admin-ui-field{display:block;margin:0 0 18px}
.admin-ui-page .admin-ui-field label{display:block;margin:0 0 6px;font-weight:600}
.admin-ui-page .admin-ui-field input,.admin-ui-page .admin-ui-field textarea,.admin-ui-page .admin-ui-field select{display:block;width:100%;max-width:none;min-height:42px;margin:0;padding:8px 10px;box-sizing:border-box;border:1px solid #8c8f94;border-radius:4px;background:#fff}
.admin-ui-page .admin-ui-field textarea{min-height:88px;resize:vertical}
.admin-ui-page .admin-ui-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:4px}
.admin-ui-page .admin-ui-note{margin:8px 0;color:#50575e;line-height:1.7}
.admin-ui-page .admin-ui-search-row{display:flex;gap:8px;align-items:stretch}
.admin-ui-page .admin-ui-search-row input{margin:0;flex:1}
.admin-ui-page .admin-ui-table-wrap{overflow-x:auto;background:#fff;border:1px solid #dcdcde;border-radius:6px;margin:14px 0}
.admin-ui-page .admin-ui-table-wrap table{min-width:900px;margin:0;padding:0;border:0;border-radius:0;background:#fff}
.admin-ui-page .admin-ui-table-wrap th,.admin-ui-page .admin-ui-table-wrap td{padding:10px 9px;vertical-align:middle}
.admin-ui-page .admin-ui-url-cell{min-width:300px;word-break:break-all}
.admin-ui-page .admin-ui-url-pair{display:grid;grid-template-columns:44px minmax(0,1fr);gap:8px;align-items:start}
.admin-ui-page .admin-ui-url-pair+.admin-ui-url-pair{margin-top:8px;padding-top:8px;border-top:1px solid #eee}
.admin-ui-page .admin-ui-url-pair strong{white-space:nowrap}
.admin-ui-page .admin-ui-url-pair span:empty::before{content:'未登録';color:#8c8f94}
.admin-ui-page .admin-ui-row-actions{display:flex;gap:8px;align-items:center;white-space:nowrap}
.admin-ui-page .admin-ui-inline-form,.admin-ui-page .admin-ui-hidden-form{display:inline;margin:0;padding:0;border:0;background:transparent;border-radius:0}
.admin-ui-page .admin-ui-hidden-form{display:none}
.admin-ui-page .admin-ui-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.admin-ui-page .admin-ui-code-row{display:grid;grid-template-columns:180px minmax(0,1fr);gap:18px;align-items:center;margin:12px 0}
.admin-ui-page .admin-ui-code-row code{display:block;overflow-x:auto;padding:9px 10px;background:#f6f7f7;border:1px solid #dcdcde;border-radius:4px;white-space:nowrap}
.admin-ui-page .admin-ui-status-list{margin:0}
.admin-ui-page .admin-ui-status-list div{display:grid;grid-template-columns:180px minmax(0,1fr);gap:18px;padding:9px 0;border-bottom:1px solid #eee}
.admin-ui-page .admin-ui-status-list div:last-child{border-bottom:0}
.admin-ui-page .admin-ui-status-list dt{font-weight:600}
.admin-ui-page .admin-ui-status-list dd{margin:0}

/* 基本設定・管理者情報・livedoor設定・Cron設定の文字と入力枠を同じ位置へ揃える */
.settings-page .admin-ui-card,.account-page .admin-ui-card,.livedoor-page .admin-ui-card,.cron-page .admin-ui-card{max-width:920px}
.settings-page .admin-ui-field,.account-page .admin-ui-field,.livedoor-page .admin-ui-field,.cron-page .admin-ui-field{display:grid;grid-template-columns:180px minmax(0,600px);column-gap:18px;align-items:center;margin-bottom:18px}
.settings-page .admin-ui-field label,.account-page .admin-ui-field label,.livedoor-page .admin-ui-field label,.cron-page .admin-ui-field label{margin:0;font-weight:600;line-height:1.5}
.settings-page .admin-ui-field input,.settings-page .admin-ui-field textarea,.settings-page .admin-ui-field select,.account-page .admin-ui-field input,.account-page .admin-ui-field textarea,.account-page .admin-ui-field select,.livedoor-page .admin-ui-field input,.livedoor-page .admin-ui-field textarea,.livedoor-page .admin-ui-field select,.cron-page .admin-ui-field input,.cron-page .admin-ui-field textarea,.cron-page .admin-ui-field select{width:100%;max-width:600px;margin:0}
.settings-page .admin-ui-actions,.account-page .admin-ui-actions,.livedoor-page .admin-ui-actions{margin-left:198px}
.settings-page .admin-ui-note,.account-page .admin-ui-note{margin-left:198px;max-width:600px}
.cron-page .admin-ui-section>.admin-ui-actions{margin-left:198px}

/* 投稿管理ページ専用 */
.post-management-page .admin-ui-card{max-width:none}
.post-management-page.admin-ui-page{max-width:1500px}
.post-management-page .admin-ui-plain-form{margin:0;padding:0;border:0;background:transparent;border-radius:0}
.post-management-page .post-management-table{min-width:900px}
.post-management-page .post-management-table a{color:#2271b1;word-break:break-all}
.post-management-page .post-management-check{width:34px}
.post-management-page input[type=checkbox]{width:auto;max-width:none;margin:0}
.post-management-page .post-management-heading{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:20px}
.post-management-page .post-management-heading h3{margin:8px 0 0;font-size:22px;line-height:1.5}
.post-management-page .post-management-heading-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}
.post-management-page .post-management-back{display:inline-block;color:#2271b1;text-decoration:none}
.post-management-page .post-management-open{display:inline-flex;min-height:30px;padding:4px 9px;align-items:center;justify-content:center;gap:3px;white-space:nowrap;background:#fff!important;color:#2271b1!important;border:1px solid #2271b1;border-radius:999px;font-size:12px;font-weight:600;line-height:1.2;word-break:normal!important}
.post-management-page .post-management-open:hover{background:#f0f6fc!important;color:#135e96!important;border-color:#135e96}
.post-management-page .post-management-date{white-space:nowrap}
.post-management-page .post-management-main-title{min-width:300px}
.post-management-page .post-management-main-title>a,.post-management-page .post-management-main-title>span{display:block;font-weight:700;line-height:1.55}
.post-management-page .post-management-main-title small{display:block;margin-top:4px;color:#646970;font-size:12px}
.post-management-page .post-management-main-title .post-management-error{color:#b32d2e}
.post-management-page .post-result{display:inline-block;min-width:58px;padding:3px 8px;border-radius:999px;background:#f0f0f1;color:#50575e;font-size:12px;font-weight:700;text-align:center}
.post-management-page .post-result-ok{background:#edfaef;color:#116329}
.post-management-page .post-result-error{background:#ffecec;color:#8a2424}
.post-management-page .post-detail-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 24px}
.post-management-page .post-detail-summary div{padding:12px 14px;background:#f6f7f7;border:1px solid #dcdcde;border-radius:6px}
.post-management-page .post-detail-summary dt{color:#646970;font-size:12px;font-weight:600}
.post-management-page .post-detail-summary dd{margin:4px 0 0;font-weight:700}
.post-management-page .post-detail-card h4{margin:0 0 14px;font-size:17px}
.post-management-page .post-item-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;gap:14px}
.post-management-page .post-item-card{display:flex;min-width:0;overflow:hidden;flex-direction:column;background:#fff;color:#1d2327!important;text-decoration:none;border:1px solid #dcdcde;border-radius:8px;box-shadow:0 2px 7px rgba(0,0,0,.06);word-break:normal!important}
.post-management-page .post-item-card:hover{border-color:#2271b1;box-shadow:0 4px 12px rgba(34,113,177,.14)}
.post-management-page .post-item-link{display:flex;min-width:0;flex:1;flex-direction:column;color:#1d2327!important;text-decoration:none;word-break:normal!important}
.post-management-page .post-item-image{display:flex;flex:0 0 180px;width:100%;height:180px;align-items:center;justify-content:center;overflow:hidden;background:#111;color:#c3c4c7;font-size:12px;font-weight:700}
.post-management-page .post-item-image img{display:block;width:100%;height:100%;object-fit:contain;background:#111}
.post-management-page .post-item-body{display:flex;flex:1;min-height:112px;flex-direction:column;padding:12px 13px 14px}
.post-management-page .post-item-site{display:block;margin-bottom:5px;color:#2271b1;font-size:12px}
.post-management-page .post-item-body strong{display:-webkit-box;overflow:hidden;overflow-wrap:anywhere;font-size:15px;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:4}
.post-management-page .post-item-delete-form{display:block;margin:0;padding:9px 12px;background:#fff;border:0;border-top:1px solid #eee;border-radius:0;text-align:right}
.post-management-page .post-item-delete-form input{display:none}
.post-management-page .post-item-delete-form button,.post-management-page .post-delete-page{min-height:30px;padding:4px 10px;background:#fff;color:#b32d2e;border:1px solid #d63638;border-radius:4px;font-size:12px;font-weight:600;line-height:1.2}
.post-management-page .post-item-delete-form button:hover,.post-management-page .post-delete-page:hover{background:#b32d2e;color:#fff}
.post-management-page .post-item-delete-form button:disabled{background:#f6f7f7;color:#a7aaad;border-color:#dcdcde;cursor:not-allowed}

@media(max-width:1200px){.post-management-page .post-item-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}

@media(max-width:760px){.admin-ui-page .admin-ui-search-row{display:block}.admin-ui-page .admin-ui-search-row button{margin-top:8px}.admin-ui-page .admin-ui-actions{align-items:stretch}.admin-ui-page .admin-ui-code-row,.admin-ui-page .admin-ui-status-list div{grid-template-columns:1fr}.admin-ui-page .admin-ui-code-row code{white-space:normal;word-break:break-all}.settings-page .admin-ui-field,.account-page .admin-ui-field,.livedoor-page .admin-ui-field,.cron-page .admin-ui-field{grid-template-columns:1fr;gap:6px}.settings-page .admin-ui-actions,.account-page .admin-ui-actions,.livedoor-page .admin-ui-actions,.cron-page .admin-ui-section>.admin-ui-actions,.settings-page .admin-ui-note,.account-page .admin-ui-note{margin-left:0}.settings-page .admin-ui-field input,.settings-page .admin-ui-field textarea,.settings-page .admin-ui-field select,.account-page .admin-ui-field input,.account-page .admin-ui-field textarea,.account-page .admin-ui-field select,.livedoor-page .admin-ui-field input,.livedoor-page .admin-ui-field textarea,.livedoor-page .admin-ui-field select,.cron-page .admin-ui-field input,.cron-page .admin-ui-field textarea,.cron-page .admin-ui-field select{max-width:none}.post-management-page .post-management-heading{display:block}.post-management-page .post-management-heading-actions{margin-top:12px;justify-content:flex-start}.post-management-page .post-detail-summary{grid-template-columns:1fr}.post-management-page .post-item-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

@media(max-width:480px){.post-management-page .post-item-grid{grid-template-columns:1fr}.post-management-page .post-item-image{height:170px}}

/* livedoorデザインページ専用 */
.livedoor-design-page.admin-ui-page{max-width:1500px}
.livedoor-design-page .livedoor-design-guide{max-width:1100px}
.livedoor-design-page .livedoor-design-card{padding:20px}
.livedoor-design-page .livedoor-design-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:12px}
.livedoor-design-page .livedoor-design-heading h3{margin:0 0 6px;font-size:19px}
.livedoor-design-page .livedoor-design-heading .admin-ui-note{margin:0}
.livedoor-design-page .livedoor-design-copy{flex:0 0 auto;min-width:120px}
.livedoor-design-page .livedoor-design-copy.is-copied{background:#116329}
.livedoor-design-page .livedoor-design-code{display:block;width:100%;max-width:none;min-height:520px;margin:0;padding:14px;resize:vertical;background:#f6f7f7;color:#1d2327;border:1px solid #8c8f94;border-radius:5px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;font-size:13px;line-height:1.55;tab-size:2;white-space:pre;overflow:auto}
@media(max-width:760px){.livedoor-design-page .livedoor-design-heading{display:block}.livedoor-design-page .livedoor-design-copy{width:100%;margin-top:12px}.livedoor-design-page .livedoor-design-code{min-height:420px;font-size:12px}}
