.json-formatter-container,.tool-container{max-width:1400px;margin:0 auto;padding:var(--spacing-loose)}.tool-card{background:var(--bg-primary);border-radius:12px;box-shadow:0 2px 8px #00000014;padding:var(--spacing-loose);transition:box-shadow .2s ease-in-out}.tool-card:hover{box-shadow:0 4px 16px #0000001f}.tool-title{font-size:24px;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-loose);line-height:1.3}.options-section{display:flex;align-items:center;gap:var(--spacing-standard);margin-bottom:var(--spacing-loose);padding:var(--spacing-standard);background:var(--bg-secondary);border-radius:8px}.option-label{font-size:14px;font-weight:500;color:var(--text-primary);line-height:1.6}.indent-options{display:flex;gap:var(--spacing-standard)}.radio-label{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:14px;color:var(--text-secondary);transition:color .2s ease-in-out}.radio-label:hover{color:var(--primary)}.radio-label input[type=radio]{cursor:pointer;accent-color:var(--primary)}.editor-container{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-loose);margin-bottom:var(--spacing-loose)}.editor-section{display:flex;flex-direction:column;min-height:500px}.editor-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-tight)}.input-label{font-size:14px;font-weight:500;color:var(--text-primary);line-height:1.6}.btn-upload{display:flex;align-items:center;gap:6px;background:transparent;color:var(--text-tertiary);border:1px solid var(--border-primary);border-radius:6px;padding:6px 12px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease-in-out}.btn-upload:hover{color:var(--primary);border-color:var(--primary)}.json-textarea{flex:1;width:100%;min-height:450px;padding:12px 16px;border:1px solid var(--border-primary);border-radius:8px;font-family:Consolas,Monaco,Courier New,monospace;font-size:14px;line-height:1.6;color:var(--text-primary);background:var(--bg-primary);resize:vertical;outline:none;transition:all .2s ease-in-out}.json-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #3b82f633}.json-textarea.error{border-color:var(--error);box-shadow:0 0 0 3px #ef444433}.json-textarea::placeholder{color:var(--text-tertiary)}.json-output{flex:1;min-height:450px;padding:12px 16px;border:1px solid var(--border-primary);border-radius:8px;font-family:Consolas,Monaco,Courier New,monospace;font-size:14px;line-height:1.6;color:var(--text-primary);background:var(--bg-secondary);overflow:auto;white-space:pre-wrap;word-wrap:break-word}.json-output .output-placeholder{color:var(--text-tertiary)}.json-output.has-content .output-placeholder{display:none}.btn-copy-output{display:flex;align-items:center;gap:6px;background:transparent;color:var(--text-tertiary);border:1px solid var(--border-primary);border-radius:6px;padding:6px 12px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease-in-out}.btn-copy-output:hover{color:var(--primary);border-color:var(--primary)}.btn-copy-output.copied{color:var(--success);border-color:var(--success)}.error-message{display:none;color:var(--error);font-size:12px;margin-top:var(--spacing-tight);line-height:1.5;padding:8px 12px;background:#ef44441a;border-radius:6px;animation:slideIn .3s ease-out}.error-message.show{display:block}@keyframes slideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.button-section{display:flex;gap:var(--spacing-tight);flex-wrap:wrap}.btn-primary{display:flex;align-items:center;gap:6px;background:var(--primary);color:#fff;border-radius:8px;padding:10px 24px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease-in-out;border:none;outline:none}.btn-primary:hover{background:var(--primary-hover);transform:translateY(-2px)}.btn-primary:active{background:var(--primary-active);transform:translateY(1px)}.btn-secondary{display:flex;align-items:center;gap:6px;background:var(--text-tertiary);color:#fff;border-radius:8px;padding:10px 24px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease-in-out;border:none;outline:none}.btn-secondary:hover{background:#7b8a9a;transform:translateY(-2px)}.btn-secondary:active{background:#6b7a8a;transform:translateY(1px)}.json-key{color:#0ea5e9}.json-string{color:#22c55e}.json-number{color:#f97316}.json-boolean{color:#a855f7}.json-null{color:#6b7280}.json-bracket,.json-colon,.json-comma{color:var(--text-primary)}.navbar{background:var(--bg-primary);box-shadow:0 2px 8px #00000014;position:sticky;top:0;z-index:100}.navbar-container{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-standard) 0}.logo{display:flex;align-items:center;gap:var(--spacing-standard);cursor:pointer;transition:all .2s ease-in-out}.logo:hover{transform:translateY(-2px)}.logo span{font-size:20px;font-weight:600;color:var(--text-primary)}.nav-links{display:flex;gap:var(--spacing-loose)}.nav-links a{color:var(--text-secondary);font-weight:500}.main-content{min-height:calc(100vh - 300px);padding:var(--spacing-extra) 0}.footer{background:var(--bg-tertiary);padding:var(--spacing-extra) 0;margin-top:var(--spacing-extra)}.footer-container{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-loose)}.footer-column h3{font-size:16px;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-standard)}.footer-column p{color:var(--text-secondary);font-size:14px;line-height:1.6;margin-bottom:var(--spacing-tight)}.footer-column ul{list-style:none}.footer-column ul li{margin-bottom:var(--spacing-tight)}.footer-column ul li a{color:var(--text-secondary);font-size:14px}.footer-column ul li a:hover{color:var(--primary)}.copyright{margin-top:var(--spacing-standard);font-size:12px;color:var(--text-tertiary)}@media(max-width:1024px){.editor-container{grid-template-columns:1fr}.editor-section{min-height:350px}.json-textarea,.json-output{min-height:300px}}@media(max-width:767px){.tool-container,.tool-card{padding:var(--spacing-standard)}.tool-title{font-size:20px}.options-section{flex-direction:column;align-items:flex-start}.indent-options{flex-wrap:wrap}.button-section{flex-direction:column}.btn-primary,.btn-secondary{width:100%;justify-content:center}.navbar-container{flex-wrap:wrap}.logo{width:100%;justify-content:center;margin-bottom:var(--spacing-standard)}.nav-links{width:100%;justify-content:center}.footer-container{grid-template-columns:1fr}}
