/* === pakapaka JWTデコーダー ツールUI (jwt-decoder) === */
.jwt-tool{max-width:680px;margin:1.4em 0;padding:18px;border-radius:10px;background:#f6f9fd;border:1px solid #cfd8e6;}
.jwt-tool .jwt-label{font-weight:bold;margin:0 0 6px;}
.jwt-tool .jwt-input{width:100%;box-sizing:border-box;font-family:monospace;font-size:.95em;padding:10px;border:1px solid #aab;border-radius:6px;min-height:92px;resize:vertical;word-break:break-all;background:#fff;}
.jwt-tool .jwt-input:focus{outline:none;border-color:#2f6fd0;box-shadow:0 0 0 3px rgba(47,111,208,.15);}
.jwt-tool .jwt-actions{margin:8px 0;display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.jwt-tool .jwt-btn{background:#234e8b;color:#fff;border:0;border-radius:5px;padding:8px 14px;cursor:pointer;font-size:.9em;}
.jwt-tool .jwt-btn:hover{filter:brightness(1.08);}
.jwt-tool .jwt-btn--sub{background:#eef;color:#234e8b;border:1px solid #99c;}
.jwt-tool .jwt-detect{font-size:.85em;font-weight:bold;}
.jwt-tool .jwt-detect.ok{color:#0a7a3a;}
.jwt-tool .jwt-detect.ng{color:#c00;}

.jwt-out{margin-top:4px;}
.jwt-sec{margin:12px 0;border:1px solid #e3e9f2;border-radius:8px;overflow:hidden;}
.jwt-sec-head{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;background:#eef3fa;font-weight:700;color:#1c4f9c;}
.jwt-sec-head .jwt-copy{background:#fff;border:1px solid #99c;border-radius:4px;padding:3px 10px;cursor:pointer;font-size:.8em;font-weight:normal;color:#234e8b;flex:none;}
.jwt-pre{margin:0;padding:12px;font-family:monospace;font-size:.9em;line-height:1.6;white-space:pre-wrap;word-break:break-all;background:#fff;color:#223;}
.jwt-sig{padding:12px;font-family:monospace;font-size:.85em;word-break:break-all;background:#fff;color:#556;}

.jwt-claims{width:100%;border-collapse:collapse;font-size:.9em;}
.jwt-claims th,.jwt-claims td{padding:7px 10px;border-bottom:1px solid #e3e9f2;text-align:left;vertical-align:top;}
.jwt-claims th{background:#f3f7fc;white-space:nowrap;color:#33445a;}
.jwt-claims td{font-family:monospace;color:#223;}

.jwt-badge{display:inline-block;padding:.12em .65em;border-radius:999px;font-size:.82em;font-weight:700;white-space:nowrap;}
.jwt-badge--ok{background:#e3f5e8;color:#2e8b57;}
.jwt-badge--ng{background:#fde4e4;color:#c0392b;}

.jwt-err{color:#c00;margin:6px 0 0;font-size:.9em;}
.jwt-note{margin:8px 0 0;font-size:.82em;color:#777;}
