.hash-hero h1{max-width:1050px}.hash-app-section{padding:0 0 clamp(4rem,8vw,7rem);background:linear-gradient(#f1efe9 0,#f7f5f0 220px)}.hash-shell{position:relative;transform:translateY(-2.5rem)}
.hash-privacy{display:flex;align-items:center;gap:.85rem;margin-bottom:1rem;padding:1rem 1.2rem;border:1px solid rgba(53,114,80,.2);border-radius:var(--radius-md);background:#f2faf5;color:#486457;box-shadow:0 15px 40px -36px rgba(5,15,34,.5)}.hash-privacy>span{display:grid;flex:none;place-items:center;width:34px;height:34px;border-radius:50%;background:#357250;color:#fff;font-size:.65rem}.hash-privacy p{font-size:.76rem;line-height:1.6}.hash-privacy strong{color:#285b3e}
.hash-tabs{display:flex;gap:.35rem;width:max-content;max-width:100%;padding:.35rem;margin-bottom:1rem;border:1px solid rgba(10,29,58,.12);border-radius:var(--radius-md);background:#fff}.hash-tab{padding:.8rem 1.1rem;border:0;border-radius:calc(var(--radius-md) - 5px);background:transparent;color:var(--smoke);font:600 .78rem var(--f-sans);cursor:pointer}.hash-tab.is-active{background:var(--navy-deep);color:#fff}.hash-tab:focus-visible,.hash-button:focus-visible,.file-drop:focus-visible,.copy-hash:focus-visible,.hash-value:focus-visible{outline:2px solid var(--gold-deep);outline-offset:2px}
.hash-panel{padding:clamp(1.25rem,3.5vw,2.35rem);border:1px solid rgba(10,29,58,.12);border-radius:var(--radius-lg);background:#fff;box-shadow:0 25px 70px -45px rgba(5,15,34,.45)}.hash-panel:not(.is-active){display:none}.hash-panel-head{display:flex;justify-content:space-between;align-items:start;gap:1rem;padding-bottom:1.4rem;margin-bottom:1.4rem;border-bottom:1px solid var(--line-dark)}.hash-panel-head h2{margin-top:.25rem;font-size:clamp(1.45rem,3vw,2rem)}
.hash-field{display:grid;gap:.5rem;color:var(--navy-deep);font-size:.76rem;font-weight:600}.hash-field textarea,.hash-field input,.hash-field select{width:100%;border:1px solid rgba(10,29,58,.2);border-radius:var(--radius);background:#f7f8fa;color:var(--navy-deep);font:400 .84rem var(--f-sans);outline:none}.hash-field textarea{min-height:180px;padding:1rem;resize:vertical;line-height:1.65}.hash-field input,.hash-field select{min-height:47px;padding:.7rem .85rem}.hash-field input{font-family:var(--f-mono)}.hash-field textarea:focus,.hash-field input:focus,.hash-field select:focus{border-color:var(--gold-deep);box-shadow:0 0 0 3px rgba(201,169,97,.13)}
.hash-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1rem}.hash-button{min-height:44px;padding:.72rem 1rem;border:1px solid transparent;border-radius:var(--radius);font:600 .74rem var(--f-sans);cursor:pointer}.hash-button.primary{background:var(--navy-deep);color:#fff}.hash-button.primary:hover{background:#14335d}.hash-button.secondary{border-color:rgba(10,29,58,.18);background:#fff;color:var(--navy-deep)}.hash-button.secondary:hover{background:#f5f5f3}
.hash-results{display:grid;gap:.8rem;margin-top:1.4rem}.hash-result{min-width:0;padding:1rem;border:1px solid var(--line-dark);border-radius:var(--radius-md);background:#fafafa}.hash-result-title,.hash-result-meta{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.hash-result-title h3{font-size:1rem}.algorithm-badge{padding:.3rem .55rem;border-radius:99px;font:600 .58rem var(--f-sans)}.algorithm-badge.legacy{background:#fff1e6;color:#9b5429}.algorithm-badge.recommended{background:#eaf7ef;color:#2d7048}.algorithm-badge.strong{background:#edf3fb;color:#355d8b}.hash-value{display:block;width:100%;margin:.8rem 0;padding:.85rem;border:1px solid rgba(10,29,58,.1);border-radius:var(--radius);background:#fff;text-align:left;cursor:text}.hash-value code{display:block;color:var(--navy-deep);font:500 .74rem/1.65 var(--f-mono);overflow-wrap:anywhere;word-break:break-all}.hash-result-meta{color:var(--smoke);font-size:.64rem}.copy-hash{padding:.42rem .65rem;border:1px solid rgba(10,29,58,.16);border-radius:var(--radius);background:#fff;color:var(--navy-deep);font:600 .66rem var(--f-sans);cursor:pointer}.copy-hash:hover{border-color:var(--gold-deep);background:var(--gold-soft)}
.hash-error{margin-top:1rem;padding:.75rem .9rem;border:1px solid rgba(189,59,59,.22);border-radius:var(--radius);background:#fff2f2;color:#9d3030;font-size:.74rem;line-height:1.55}
.file-drop{display:grid;place-items:center;width:100%;min-height:235px;padding:2rem;border:1.5px dashed rgba(10,29,58,.25);border-radius:var(--radius-lg);background:#f8f9fa;color:var(--smoke);font-family:var(--f-sans);cursor:pointer;transition:border-color .2s,background .2s}.file-drop:hover,.file-drop.is-dragging{border-color:var(--gold-deep);background:#fbf8ef}.file-drop strong{margin:.8rem 0 .25rem;color:var(--navy-deep);font-size:1rem}.file-drop span:not(.drop-icon){font-size:.76rem}.file-drop small{margin-top:.7rem;font-size:.64rem}.drop-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--navy-deep);color:var(--gold);font:500 1.3rem var(--f-mono)}
.file-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1rem;margin-top:1rem;padding:1rem;border:1px solid var(--line-dark);border-radius:var(--radius-md);background:#f8f9fa}.file-symbol{display:grid;place-items:center;width:44px;height:44px;border-radius:var(--radius);background:var(--navy-deep);color:var(--gold);font:600 1rem var(--f-mono)}.file-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem 1rem;min-width:0}.file-card dt{color:var(--smoke);font-size:.58rem;text-transform:uppercase;letter-spacing:.08em}.file-card dd{margin-top:.16rem;color:var(--navy-deep);font-size:.72rem;overflow-wrap:anywhere}.file-actions{grid-column:1/-1;display:flex;gap:.5rem;padding-top:.8rem;border-top:1px solid var(--line-dark)}.file-actions button,.cancel-button{padding:.5rem .7rem;border:1px solid rgba(10,29,58,.16);border-radius:var(--radius);background:#fff;color:var(--navy-deep);font:600 .65rem var(--f-sans);cursor:pointer}
.hash-progress{margin-top:1rem;padding:1rem;border:1px solid var(--line-dark);border-radius:var(--radius-md);background:#fff}.progress-label,.progress-foot{display:flex;justify-content:space-between;gap:1rem;font-size:.7rem}.progress-label{color:var(--navy-deep)}.progress-foot{margin-top:.55rem;color:var(--smoke);font-size:.62rem}.progress-track{height:7px;margin-top:.7rem;border-radius:99px;background:#e5e8ec;overflow:hidden}.progress-track span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--gold-deep),var(--gold));transition:width .15s}.cancel-button{margin-top:.8rem;color:#983b3b}
.compare-card{margin-top:1.4rem;padding:clamp(1rem,3vw,1.5rem);border:1px solid rgba(201,169,97,.32);border-radius:var(--radius-lg);background:linear-gradient(135deg,#fff,#fbf8ef)}.compare-card h2{margin:.25rem 0 1rem;font-size:1.45rem}.compare-grid{display:grid;gap:.8rem;margin-bottom:1rem}.compare-result{margin-top:1rem;padding:1rem;border:1px solid;border-radius:var(--radius-md)}.compare-result.match{border-color:rgba(53,114,80,.25);background:#eff9f3;color:#285b3e}.compare-result.mismatch{border-color:rgba(180,62,62,.25);background:#fff1f1;color:#8c3030}.compare-result h3{font-size:.9rem}.compare-result>p{margin:.35rem 0 .8rem;font-size:.72rem}.compare-result dl{display:grid;gap:.55rem}.compare-result dt{font-size:.6rem;font-weight:700;text-transform:uppercase}.compare-result dd{margin-top:.15rem;font:500 .68rem/1.55 var(--f-mono);word-break:break-all}
.hash-info-section{padding:clamp(3rem,6vw,5rem) 0;background:#07162f}.hash-info-card{display:grid;grid-template-columns:auto 1fr;gap:1.2rem;align-items:start;color:#fff}.info-mark{display:grid;place-items:center;width:46px;height:46px;border:1px solid rgba(201,169,97,.5);border-radius:50%;color:var(--gold);font:600 1rem var(--f-mono)}.hash-info-card h2{color:#fff;font-size:clamp(1.5rem,3vw,2.1rem)}.hash-info-card p{max-width:950px;margin-top:.8rem;color:rgba(255,255,255,.66);font-size:.82rem;line-height:1.75}.hash-info-card strong{color:#fff}
.hash-content-section{padding:clamp(4rem,8vw,7rem) 0;background:#fff}.hash-articles{display:grid;gap:1px;padding:1px;background:var(--line-dark)}.hash-articles article{padding:clamp(1.2rem,3vw,2rem);background:#fff}.hash-articles h2{font-size:clamp(1.25rem,2.5vw,1.65rem)}.hash-articles p,.hash-articles ol{margin-top:.75rem;color:var(--graphite);font-size:.78rem;line-height:1.75}.hash-articles ol{padding-left:1.25rem}.hash-articles li+li{margin-top:.35rem}.hash-faq-section{padding:clamp(4rem,8vw,7rem) 0;background:var(--cream);border-top:1px solid var(--line-dark)}.hash-faq-grid{display:grid;gap:2.5rem}.hash-faq-grid>div:first-child h2{margin:.4rem 0 .8rem;font-size:clamp(1.8rem,3vw,2.7rem)}.hash-faq-grid>div:first-child p{color:var(--smoke);font-size:.8rem;line-height:1.7}
@media(min-width:720px){.hash-results{grid-template-columns:1fr 1fr}.hash-result:last-child{grid-column:1/-1}.compare-grid{grid-template-columns:220px minmax(0,1fr)}.hash-articles{grid-template-columns:1fr 1fr}.hash-articles .wide{grid-column:1/-1}.hash-faq-grid{grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr)}}
@media(max-width:640px){.hash-shell{transform:translateY(-1.5rem)}.hash-privacy{align-items:start}.hash-tabs{width:100%}.hash-tab{flex:1;padding:.7rem .4rem;font-size:.69rem}.hash-panel-head{display:block}.hash-panel-head .local-badge{display:inline-flex;margin-top:.7rem}.hash-field textarea{min-height:155px}.hash-result-title{align-items:start}.algorithm-badge{max-width:150px;text-align:center}.file-card dl{grid-template-columns:1fr}.file-actions{flex-wrap:wrap}.hash-info-card{grid-template-columns:1fr}.hash-progress .progress-foot{display:grid;gap:.25rem}.compare-card .hash-button{width:100%}}
@media(max-width:360px){.hash-tab{font-size:.63rem}.hash-panel{padding:1rem}.hash-actions .hash-button{width:100%}.file-drop{min-height:210px;padding:1rem}}
