.sha-tool .sha-layout{align-items: flex-start;row-gap: 16px}.sha-input-panel,.sha-result-panel{min-width: 0;height: 100%}.sha-panel-header{gap: 12px}.sha-panel-header>span:first-child{flex: 1;min-width: 0}.sha-panel-header i{margin-right: 6px}.sha-result-status{flex: 0 1 auto;min-width: 0;color: var(--text-3);font-size: 12.5px;font-weight: 500;text-align: right}.sha-input-body,.sha-result-body{gap: 14px}.sha-input-panel,.sha-result-panel,.sha-input-body,.sha-result-body{background: #fff}.sha-field{display: flex;flex-direction: column;gap: 6px;min-width: 0;margin: 0;color: var(--text-2);font-size: 13.5px;font-weight: 600}.sha-field .form-control{width: 100%;min-width: 0}.sha-textarea{min-height: 150px;resize: vertical;font-family: ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;font-size: 13px;line-height: 1.5;word-break: break-all}.sha-file-drop{position: relative;display: flex;align-items: center;gap: 10px;min-width: 0;margin: 0;padding: 12px 14px;border: 1px dashed var(--border);border-radius: var(--radius);background: var(--bg-soft);color: var(--text-2);cursor: pointer;transition: border-color .15s ease,background .15s ease}.sha-file-drop:hover,.sha-file-drop.dragover{border-color: var(--primary);background: var(--primary-soft)}.sha-file-drop.has-file{border-style: solid}.sha-file-icon{flex: 0 0 auto;font-size: 18px;line-height: 1;color: var(--text-3)}.sha-file-drop.has-file .sha-file-icon{color: var(--primary)}.sha-file-text,.sha-file-meta{display: block;min-width: 0;overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.sha-file-text{flex: 1;font-size: 13px;font-weight: 500}.sha-file-meta{flex: 0 1 auto;color: var(--text-3);font-size: 12px}.sha-file-remove{flex: 0 0 auto;padding: 2px 8px}.sha-input-meta{color: var(--text-3);font-size: 12.5px;line-height: 1.4}.sha-quick-row,.sha-action-row{display: flex;flex-wrap: wrap;gap: 8px}.sha-quick-row .btn,.sha-action-row .btn{justify-content: center}.sha-action-row{padding-top: 2px}.sha-action-row .btn-primary{min-width: 150px}.sha-quick-row .btn i,.sha-action-row .btn i{margin-right: 6px}.sha-message{display: flex;align-items: flex-start;gap: 8px;padding: 10px 12px;border: 1px solid #fecaca;border-radius: var(--radius);background: var(--danger-soft);color: var(--danger);font-size: 13.5px;line-height: 1.45}.sha-message.info{border-color: rgba(37,99,235,.28);background: var(--primary-soft);color: var(--primary)}.sha-result-toolbar{display: flex;flex-wrap: wrap;align-items: flex-end;justify-content: space-between;gap: 10px}.sha-case-field{display: flex;flex-direction: column;gap: 5px;min-width: 0;margin: 0;color: var(--text-2);font-size: 12.5px;font-weight: 600}.sha-case-field .form-control{width: auto;min-width: 130px;padding-top: 5px;padding-bottom: 5px;font-size: 13px}.sha-toolbar-actions{display: flex;flex-wrap: wrap;gap: 8px}.sha-toolbar-actions .btn i{margin-right: 6px}.sha-result-list{display: flex;flex-direction: column;gap: 10px}.sha-result-row{display: grid;grid-template-columns: minmax(0,1fr) auto;align-items: center;gap: 6px 12px;min-width: 0;padding: 12px 14px;border: 1px solid var(--border);border-radius: var(--radius);background: var(--bg)}.sha-result-head{display: flex;align-items: center;flex-wrap: wrap;gap: 8px;grid-column: 1 / -1;min-width: 0}.sha-alg-name{color: var(--text);font-size: 14px;font-weight: 700;line-height: 1.3}.sha-alg-bits{color: var(--text-3);font-size: 12px;line-height: 1.3}.sha-alg-tag{padding: 1px 8px;border-radius: 999px;font-size: 11px;font-weight: 600;line-height: 1.5}.sha-tag-recommended{background: rgba(22,163,74,.12);color: #15803d}.sha-tag-legacy{background: rgba(217,119,6,.12);color: #b45309}.sha-result-value{display: block;min-width: 0;min-height: 3em;overflow-wrap: anywhere;white-space: normal;color: var(--text);font-family: ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;font-size: 13px;line-height: 1.5;word-break: break-all;background: transparent;border: 0;padding: 0;margin: 0}.sha-result-value.uppercase{text-transform: uppercase}.sha-copy-btn{grid-column: 2;justify-self: end}.sha-result-featured{border-color: rgba(37,99,235,.28);background: var(--primary-soft)}.sha-result-featured .sha-alg-name{color: var(--primary)}.sha-privacy-note{display: flex;align-items: flex-start;gap: 8px;padding: 10px 12px;border: 1px solid var(--border);border-radius: var(--radius);background: var(--bg-soft);color: var(--text-3);font-size: 12.5px;line-height: 1.45}.sha-privacy-note i{margin-top: 1px;color: var(--primary)}:root[data-theme="dark"] .sha-input-panel,:root[data-theme="dark"] .sha-result-panel,:root[data-theme="dark"] .sha-input-body,:root[data-theme="dark"] .sha-result-body,:root[data-theme="dark"] .sha-result-row{background: #161b22}:root[data-theme="dark"] .sha-message{border-color: #7f1d1d;background: rgba(127,29,29,.18)}:root[data-theme="dark"] .sha-tag-recommended{background: rgba(34,197,94,.14);color: #4ade80}:root[data-theme="dark"] .sha-tag-legacy{background: rgba(251,146,60,.14);color: #fb923c}@media (max-width: 991px){.sha-result-toolbar{align-items: stretch}}@media (max-width: 640px){.sha-panel-header{display: grid;grid-template-columns: minmax(0,1fr);row-gap: 6px}.sha-result-status{min-height: 2.8em;text-align: left}.sha-result-value{min-height: 4.5em}.sha-result-toolbar{flex-direction: column;align-items: stretch}.sha-case-field .form-control{width: 100%}.sha-toolbar-actions .btn{flex: 1}.sha-quick-row,.sha-action-row{display: grid}.sha-quick-row .btn,.sha-action-row .btn{width: 100%;min-width: 0}.sha-input-body,.sha-result-body{padding: 14px}}