:root{--color-bg:#f7f7f8;--color-surface:#fff;--color-border:#d9dbe0;--color-text:#1f2328;--color-muted:#666b74;--color-primary:#1a56db;--color-primary-hover:#123f9e;--color-error:#c0362c;--color-error-bg:#fdecea;--color-notice:#1f7a3f;--color-notice-bg:#eaf7ee}*{box-sizing:border-box}body{background:var(--color-bg);color:var(--color-text);margin:0;font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Yu Gothic,Segoe UI,sans-serif;line-height:1.6}main{max-width:960px;margin:0 auto;padding:32px 20px 64px}a{color:var(--color-primary)}h1{margin:0 0 8px;font-size:22px}.page-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.back-link{margin-bottom:12px;font-size:14px;display:inline-block}button,.button{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;border-radius:6px;padding:8px 16px;font-size:14px;text-decoration:none;display:inline-block}button:hover,.button:hover{background:#f0f1f3}button.primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff}button.primary:hover{background:var(--color-primary-hover)}button:disabled{opacity:.6;cursor:not-allowed}.error{background:var(--color-error-bg);color:var(--color-error);border:1px solid var(--color-error);border-radius:6px;padding:10px 14px;font-size:14px}.notice{background:var(--color-notice-bg);color:var(--color-notice);border:1px solid var(--color-notice);border-radius:6px;padding:10px 14px;font-size:14px}.login-page{text-align:center;max-width:420px;margin:96px auto}.google-signin-button{margin-top:24px;padding:10px 24px;font-size:15px}.tenant-list{margin:0;padding:0;list-style:none}.tenant-list li{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding:14px 16px;display:flex}.tenant-list a{font-weight:600;text-decoration:none}.tenant-list-secondary-link{font-size:13px;color:var(--color-muted)!important;font-weight:400!important}.content-table{border-collapse:collapse;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;width:100%;overflow:hidden}.content-table th,.content-table td{text-align:left;border-bottom:1px solid var(--color-border);padding:10px 14px;font-size:14px}.content-table th{background:#f0f1f3;font-weight:600}.content-table tr:last-child td{border-bottom:none}.status-badge{color:var(--color-muted);margin-bottom:16px;font-size:13px;display:inline-block}.content-form{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;flex-direction:column;gap:20px;padding:24px;display:flex}.form-field{flex-direction:column;gap:6px;display:flex}.form-field label{color:var(--color-muted);font-size:13px;font-weight:600}.form-field .required{color:var(--color-error)}.form-field input[type=text],.form-field input[type=number],.form-field input[type=datetime-local],.form-field select{border:1px solid var(--color-border);background:#fff;border-radius:6px;padding:8px 10px;font-size:14px}.form-field input[type=checkbox]{width:18px;height:18px}.model-switcher{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.model-switcher a{border:1px solid var(--color-border);background:var(--color-surface);border-radius:999px;padding:6px 12px;font-size:13px;text-decoration:none}.model-switcher a.model-switcher-active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.relation-checkbox-list{border:1px solid var(--color-border);background:#fff;border-radius:6px;flex-direction:column;gap:6px;max-height:220px;padding:10px;display:flex;overflow-y:auto}.relation-checkbox-item{align-items:center;gap:8px;font-size:14px;display:flex}.repeater-field{flex-direction:column;gap:12px;display:flex}.repeater-row{border:1px solid var(--color-border);background:var(--color-bg);border-radius:6px;gap:12px;padding:14px;display:flex}.repeater-row-controls{flex-direction:column;gap:4px;display:flex}.repeater-row-controls button{padding:4px 8px;font-size:12px}.repeater-row-fields{flex-direction:column;flex:1;gap:10px;display:flex}.form-actions{border-top:1px solid var(--color-border);gap:12px;padding-top:8px;display:flex}.publish-settings{border-top:1px solid var(--color-border);flex-direction:column;gap:12px;padding-top:16px;display:flex}.publish-settings h2{margin:0;font-size:15px}.danger-zone{border-top:1px solid var(--color-border);flex-direction:column;gap:12px;padding-top:16px;display:flex}.danger-zone h2{color:var(--color-error);margin:0;font-size:15px}.danger-zone-confirm{flex-direction:column;gap:10px;display:flex}.danger-zone-actions{gap:12px;display:flex}.preview-key-panel{border-top:1px solid var(--color-border);flex-direction:column;gap:10px;padding-top:16px;display:flex}.preview-key-panel h2{margin:0;font-size:15px}.preview-key-hint{color:var(--color-muted);margin:0;font-size:13px}.preview-key-result{flex-direction:column;gap:6px;display:flex}.preview-key-value{border:1px solid var(--color-border);word-break:break-all;background:#f0f1f3;border-radius:6px;padding:8px 10px;font-size:13px;display:block}.rte{border:1px solid var(--color-border);border-radius:6px;overflow:hidden}.rte-toolbar{border-bottom:1px solid var(--color-border);background:#f0f1f3;flex-wrap:wrap;gap:4px;padding:8px;display:flex}.rte-toolbar button{padding:4px 10px;font-size:12px}.rte-toolbar button.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.rte-content{min-height:240px;padding:12px 14px;font-size:14px}.rte-content :focus-visible{outline:none}.rte-content img,.rte-content iframe{max-width:100%}.media-field{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.media-preview{border:1px solid var(--color-border);background:var(--color-bg);border-radius:6px;flex-direction:column;align-items:flex-start;gap:6px;padding:10px;display:flex}.media-preview img{object-fit:contain;border-radius:4px;max-width:240px;max-height:180px}.media-meta{color:var(--color-muted);margin:0;font-size:12px}.media-uploading{color:var(--color-muted);margin:0;font-size:13px}.warning{color:#8a5a00;background:#fff7e6;border:1px solid #e0a832;border-radius:6px;padding:10px 14px;font-size:14px}.field-hint{color:var(--color-muted);margin:0;font-size:12px}.error ul,.model-field-error{margin:6px 0 0;padding-left:18px;font-size:13px}.model-field-error{color:var(--color-error)}.model-meta{color:var(--color-muted);gap:20px;font-size:13px;display:flex}.model-fields-editor .form-field textarea{border:1px solid var(--color-border);resize:vertical;border-radius:6px;padding:8px 10px;font-family:inherit;font-size:14px}.model-fields-editor input[type=number]{border:1px solid var(--color-border);border-radius:6px;width:120px;padding:8px 10px;font-size:14px}.model-field-list{flex-direction:column;gap:12px;display:flex}.model-field-list-nested{border-left:3px solid var(--color-border);margin-top:8px;padding-left:16px}.model-field-row{border:1px solid var(--color-border);background:var(--color-bg);border-radius:6px;gap:12px;padding:14px;display:flex}.model-field-row-controls{flex-direction:column;gap:4px;display:flex}.model-field-row-controls button{padding:4px 8px;font-size:12px}.model-field-row-main{flex-direction:column;flex:1;gap:10px;display:flex}.model-field-required{color:var(--color-muted);align-items:center;gap:6px;font-size:13px;display:flex}.model-field-repeater{border-top:1px dashed var(--color-border);margin-top:4px;padding-top:10px}.model-relation-options{gap:6px}.model-relation-option-row{gap:8px;display:flex}.model-relation-option-row input{border:1px solid var(--color-border);border-radius:6px;flex:1;padding:6px 8px;font-size:13px}.revision-row-selected{background:#eef4ff}.revision-detail{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;flex-direction:column;gap:16px;margin-top:20px;padding:24px;display:flex}.revision-detail h2{margin:0;font-size:16px}.revision-field-list{flex-direction:column;gap:14px;display:flex}.revision-field-value{white-space:pre-wrap;word-break:break-word;margin:0;font-size:14px}.revision-changed-badge{color:#8a5a00;background:#fff3d6;border:1px solid #e0a832;border-radius:999px;margin-left:8px;padding:1px 8px;font-size:11px;font-weight:600;display:inline-block}.revision-restore{border-top:1px solid var(--color-border);flex-direction:column;gap:12px;padding-top:16px;display:flex}
