/* =====================================================================================
   Tool pages: /tools/محاسبه-پاور and /tools/محاسبه-گر-باتلنک
   Views: resources/views/morgan/tools/*.blade.php   JS: public/morgan/assets/js/calculators/
   Everything is scoped under .lm-tool so it cannot touch the rest of the site (and so it wins
   over the bootstrap / global rules in styles.min.css).
   ===================================================================================== */
.lm-tool{ --bg:            #FCFCFC;
    --bg-panel:      #FFFFFF;
    --bg-panel-2:    #FFFFFF;
    --bg-panel-3:    #FFFFFF;
    --border:        #D7D7D7;
    --text:          #0D0D0D;
    --text-dim:      #666666;
    --text-faint:    #838383;
    --power:         #AA0E13;
    --power-dim:     #FDE7E8;
    --cool:          #0D341A;
    --cool-dot:      #114422;
    --cool-dim:      #EBFAF0;
    --warn:          #B45309;
    --warn-dim:      #FFF4E5;
    --ok:            #1F7A3D;
    
    --green:         #15542B;   
    --green-dim:     #EBFAF0;
    --field-border:  #071D0E;   
    --field-label:   #071D0E;
    --placeholder:   #BEBEBE;   
    --step-bg:       #F5F5F5;   
    --icon-off:      #BEBEBE;
    --faq-answer:    #333333;   
    --radius:        10px;
    --shadow:        0 8px 24px rgba(13,13,13,0.08); }
.lm-tool *{ box-sizing: border-box; }
.lm-tool{ margin:0;
    background: var(--bg);
    color: var(--text);
    font-family: 'IranSansFaNum', 'IRANSansX', Tahoma, sans-serif;
    line-height: 1.75;
    font-size: 15px; }
.lm-tool .mono{ font-family: inherit;
    direction: ltr;
    unicode-bidi: isolate; }
.lm-tool a{ color: inherit; }
.lm-tool button, .lm-tool input, .lm-tool select{ font-family: inherit; }
.lm-tool .page-head{ padding: 28px 24px 20px;
    max-width: 1180px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    flex-wrap: wrap; }
.lm-tool .page-head .eyebrow{ color: var(--power);
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 6px; }
.lm-tool .page-head h1{ font-size: 26px;
    font-weight: 700;
    margin: 0 0 8px; }
.lm-tool .page-head p{ color: var(--text-dim);
    margin: 0;
    font-size: 14px; }
.lm-tool .reset-btn{ background: transparent;
    border: 1px solid var(--green);
    color: var(--green);
    border-radius: 5px;
    padding: 9px 18px;
    font-size: 16px;
    font-weight: 500;
    line-height: 30px;
    cursor: pointer;
    white-space: nowrap;
    flex: none;
    transition: background-color .15s ease; }
@media (hover: hover){
.lm-tool .reset-btn:hover{ background: var(--green-dim); }
}
.lm-tool .reset-btn:active{ background: var(--green-dim); }
.lm-tool .reset-btn:focus-visible{ outline: 2px solid var(--green); outline-offset: 2px; }
@media (max-width: 767px){
.lm-tool .reset-btn{ padding: 7px 14px; }
}
.lm-tool .layout{ max-width: 1180px;
    margin: 0 auto;
    padding: 4px 24px 40px;
    display: grid;
    grid-template-columns: 0.85fr 1.15fr; 
    gap: 22px;
    align-items: start;
    direction: ltr; }
.lm-tool .layout > .result-column, .lm-tool .layout > .input-panel{ direction: rtl; }
@media (max-width: 880px){
.lm-tool .layout{ grid-template-columns: 1fr; direction: rtl; }
.lm-tool .input-panel{ order: 1; }
.lm-tool .result-column{ position: static !important; order: 2; }
}
.lm-tool .panel{ background: var(--bg-panel);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 22px; }
.lm-tool .panel + .panel{ margin-top: 18px; }
.lm-tool .input-panel{ background: var(--bg-panel);
    border-radius: var(--radius);
    padding: 16px 22px; }
.lm-tool .input-body{ display: flex; flex-direction: column; gap: 24px; }
.lm-tool .input-block{  }
.lm-tool .section-divider{ border: none;
    border-top: 1px solid var(--border);
    margin: 0;
    width: 100%; }
.lm-tool .panel h2, .lm-tool .input-block h2{ font-size: 16px;
    font-weight: 700;
    margin: 0 0 4px;
    display: flex;
    align-items: center;
    gap: 8px; }
.lm-tool .panel .panel-sub, .lm-tool .input-block .panel-sub{ color: var(--text-faint);
    font-size: 12.5px;
    margin: 0 0 18px; }
.lm-tool .dot{ width: 8px; height: 8px; border-radius: 50%; flex: none; }
.lm-tool .dot.power{ background: var(--power); }
.lm-tool .dot.cool{ background: var(--cool-dot); }
.lm-tool .result-column{ position: sticky; top: 18px; display: flex; flex-direction: column; gap: 18px; }
.lm-tool .result-column .panel{ margin-top: 0; }
.lm-tool .field{ margin-bottom: 16px; }
.lm-tool .field:last-child{ margin-bottom: 0; }
.lm-tool .field label{ display: block; font-size: 14.22px; font-weight: 500; line-height: 28px; color: var(--field-label); margin-bottom: 8px; }
.lm-tool .field-row{ display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.lm-tool .field-row-3{ display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 12px; }
@media (max-width: 520px){
.lm-tool .field-row, .lm-tool .field-row-3{ grid-template-columns: 1fr; }
}
.lm-tool .cascade{ display: grid; grid-template-columns: 0.7fr 0.7fr 1.6fr; gap: 10px; }
@media (max-width: 640px){
.lm-tool .cascade{ grid-template-columns: 1fr; }
}
.lm-tool .cascade.gpu-cascade{ grid-template-columns: 0.7fr 1.6fr; }
@media (max-width: 640px){
.lm-tool .cascade.gpu-cascade{ grid-template-columns: 1fr; }
}
.lm-tool .design-power-note{ font-size: 12px;
    color: var(--text-faint);
    margin-top: 6px; }
.lm-tool .design-power-note .mono{ color: var(--power); }
.lm-tool select, .lm-tool input[type="number"], .lm-tool input[type="text"]{ width: 100%;
    height: 54px;
    background: #FFFFFF;
    border: 1px solid var(--field-border);
    color: var(--text);
    border-radius: 5px;
    padding: 0 13px;
    font-family: inherit;
    font-size: 16px;
    font-weight: 500;
    line-height: 30px;
    appearance: none;
    -webkit-appearance: none; }
.lm-tool select{ padding-left: 40px;
    cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23666666'%3E%3Cpath d='M1.553 6.776a.5.5 0 0 1 .67-.223L8 9.44l5.776-2.888a.5.5 0 1 1 .448.894l-6 3a.5.5 0 0 1-.448 0l-6-3a.5.5 0 0 1-.223-.67'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: left 13px center;
    background-size: 16px 16px; }
.lm-tool ::placeholder{ color: var(--placeholder); opacity: 1; }
.lm-tool select:focus, .lm-tool input:focus{ outline: none; border-color: var(--green); box-shadow: 0 0 0 1px var(--green); }
.lm-tool .stepper{ display: flex; align-items: center; justify-content: space-between;
    height: 44px; background: var(--step-bg); border-radius: 2px; overflow: hidden; }
.lm-tool .stepper button{ flex: none; width: 44px; height: 44px; padding: 10px; border: none; cursor: pointer;
    background-color: transparent; background-repeat: no-repeat; background-position: center; background-size: 24px 24px; }
.lm-tool .stepper button[data-step="1"]{ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230D0D0D'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0'/%3E%3C/svg%3E"); }
.lm-tool .stepper button[data-step="-1"]{ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230D0D0D'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm2.5 7.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1 0-1'/%3E%3C/svg%3E"); }
.lm-tool .stepper button[data-step="1"]:disabled{ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23BEBEBE'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0'/%3E%3C/svg%3E"); cursor: default; }
.lm-tool .stepper button[data-step="-1"]:disabled{ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23BEBEBE'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm2.5 7.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1 0-1'/%3E%3C/svg%3E"); cursor: default; }
.lm-tool .stepper button:focus-visible{ outline: 2px solid var(--green); outline-offset: -4px; }
.lm-tool .stepper input{ flex: 1; min-width: 0; height: 44px; padding: 0; text-align: center; border: none; background: transparent;
    color: var(--text); font-size: 14.22px; font-weight: 700; line-height: 28px; -moz-appearance: textfield; }
.lm-tool .stepper input::-webkit-outer-spin-button, .lm-tool .stepper input::-webkit-inner-spin-button{ -webkit-appearance: none; margin: 0; }
.lm-tool .stepper input:focus{ box-shadow: none; }
.lm-tool .toggle-group{ display: flex; gap: 8px; }
.lm-tool .toggle-group button{ flex: 1; min-height: 44px; background: transparent; border: 1px solid var(--green); border-radius: 5px; color: var(--green);
    padding: 6px 10px; font-size: 14.22px; font-weight: 500; line-height: 28px; cursor: pointer; }
@media (hover: hover){
.lm-tool .toggle-group button:not(.active):hover{ background: var(--green-dim); }
}
.lm-tool .toggle-group button.active{ background: var(--green); color: #FAFAFA; }
.lm-tool .toggle-group button:focus-visible{ outline: 2px solid var(--green); outline-offset: 2px; }
.lm-tool .checkbox-row{ display: inline-flex; align-items: center; gap: 8px; min-height: 44px;
    background: #FFFFFF; border: 1px solid var(--field-border);
    border-radius: 5px; padding: 0 13px; cursor: pointer; }
.lm-tool .field label.checkbox-row{ display: inline-flex; margin-bottom: 0; }
.lm-tool .checkbox-row input{ accent-color: var(--green); width: 18px; height: 18px; margin: 0; }
.lm-tool .checkbox-row span{ font-size: 14.22px; font-weight: 500; color: var(--text); }
.lm-tool .hint{ font-size: 12.64px; color: var(--text-faint); margin-top: 6px; }
.lm-tool .subhead{ font-size: 13px; font-weight: 600; color: var(--text-dim); margin: 18px 0 10px; }
.lm-tool .subhead:first-child{ margin-top: 0; }
.lm-tool .ssel{ position: relative; }
.lm-tool .ssel-trigger{ width: 100%; height: 54px; text-align: right; background: #FFFFFF;
    border: 1px solid var(--field-border); color: var(--text);
    border-radius: 5px; padding: 0 13px; font-family: inherit; font-size: 16px; font-weight: 500; line-height: 30px;
    cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.lm-tool .ssel-trigger:focus-visible, .lm-tool .ssel.open .ssel-trigger{ outline: none; border-color: var(--green); box-shadow: 0 0 0 1px var(--green); }
.lm-tool .ssel-trigger:disabled{ border-color: var(--placeholder); color: var(--placeholder); cursor: not-allowed; }
.lm-tool .ssel-trigger .val{ overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lm-tool .ssel-trigger .arrow{ flex: none; width: 16px; height: 16px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23666666'%3E%3Cpath d='M1.553 6.776a.5.5 0 0 1 .67-.223L8 9.44l5.776-2.888a.5.5 0 1 1 .448.894l-6 3a.5.5 0 0 1-.448 0l-6-3a.5.5 0 0 1-.223-.67'/%3E%3C/svg%3E") no-repeat center / 16px 16px;
    transition: transform .15s ease; }
.lm-tool .ssel.open .ssel-trigger .arrow{ transform: rotate(180deg); }
.lm-tool .ssel-panel{ position: absolute; z-index: 30; top: calc(100% + 4px); right: 0; left: 0;
    background: #FFFFFF; border: 1px solid var(--border); border-radius: 5px;
    box-shadow: var(--shadow);
    padding: 8px;
    max-height: 300px; display: flex; flex-direction: column; }
.lm-tool .ssel-panel[hidden]{ display: none; }
.lm-tool .ssel-panel input.ssel-search{ height: 44px; flex: none; font-size: 14.22px; line-height: 28px; margin-bottom: 6px; border-color: var(--border); }
.lm-tool .ssel-panel input.ssel-search:focus{ border-color: var(--green); }
.lm-tool .ssel-options{ overflow-y: auto; }
.lm-tool .ssel-option{ padding: 8px 10px; border-radius: 4px; font-size: 14.22px; font-weight: 500; line-height: 28px; cursor: pointer; color: var(--text); }
.lm-tool .ssel-option:hover, .lm-tool .ssel-option.hl{ background: var(--green-dim); color: var(--green); }
.lm-tool .ssel-option.selected{ color: var(--green); font-weight: 700; }
.lm-tool .ssel-empty{ padding: 10px; font-size: 14.22px; color: var(--text-faint); text-align: center; }
.lm-tool .watt-display{ text-align: center; padding: 6px 0 18px; }
.lm-tool .watt-display .num{ font-size: 52px; font-weight: 700; color: var(--power); line-height: 1; }
.lm-tool .watt-display .unit{ font-size: 15px; color: var(--text-dim); margin-inline-start: 6px; }
.lm-tool .recommend-box{ background: var(--power-dim); border: 1px solid var(--power); border-radius: 8px;
    padding: 14px 16px; text-align: center; margin-bottom: 16px; }
.lm-tool .recommend-box .rec-num{ font-size: 28px; font-weight: 700; color: var(--power); }
.lm-tool .recommend-box .rec-label{ font-size: 12.5px; color: var(--text-dim); margin-top: 4px; }
.lm-tool .breakdown{ font-size: 13px; }
.lm-tool .breakdown-row{ display: flex; justify-content: space-between; padding: 6px 0; border-bottom: 1px dashed var(--border); color: var(--text-dim); }
.lm-tool .breakdown-row:last-child{ border-bottom: none; }
.lm-tool .breakdown-row .val{ color: var(--text); }
.lm-tool .advice-block{ background: var(--bg-panel-2); border: 1px solid var(--border); border-radius: 8px;
    padding: 14px 16px; margin-top: 14px; font-size: 13px; color: var(--text-dim); }
.lm-tool .advice-block strong{ display: block; color: var(--text); margin-bottom: 4px; }
.lm-tool .product-link{ display: inline-flex; align-items: center; gap: 6px;
    margin-top: 10px; font-size: 13px; font-weight: 600;
    color: var(--power); text-decoration: none; border-top: 1px dashed var(--border); padding-top: 10px; width: 100%; }
.lm-tool .product-link:hover{ text-decoration: underline; }
.lm-tool .slider-row{ display: flex; align-items: center; gap: 10px; }
.lm-tool .slider-row input[type="range"]{ flex: 1; accent-color: var(--green); }
.lm-tool .slider-row .slider-val{ font-size: 14.22px; font-weight: 700; color: var(--green); min-width: 42px; text-align: center; }
.lm-tool .cooling-panel{ border-color: var(--border) !important; }
.lm-tool .cool-result{ display: grid; grid-template-columns: 1fr; gap: 14px; margin-top: 18px; }
.lm-tool .cool-card{ background: var(--cool-dim); border: 1px solid var(--cool); border-radius: 8px; padding: 14px 16px; }
.lm-tool .cool-card h3{ margin: 0 0 6px; color: var(--cool); font-size: 14.5px; }
.lm-tool .cool-card p{ margin: 0; color: var(--text-dim); font-size: 13px; }
.lm-tool .warn-card{ background: var(--warn-dim); border: 1px solid var(--warn); border-radius: 8px;
    padding: 12px 14px; margin-top: 12px; font-size: 13px; color: #7a3d0a; }
.lm-tool .warn-card strong{ color: var(--warn); }
.lm-tool .about-section{ max-width: 1180px; margin: 10px auto 0; padding: 30px 24px 10px; }
.lm-tool .about-section h2{ font-size: 20.25px; font-weight: 900; line-height: 39px; color: var(--text-dim); margin: 0 0 8px; }
.lm-tool .about-section h3{ font-size: 16px; font-weight: 700; line-height: 30px; color: #484848; margin: 16px 0 4px; }
.lm-tool .about-wrap{ position: relative; max-height: 168px; overflow: hidden; transition: max-height .25s ease; }
.lm-tool .about-wrap p, .lm-tool .about-wrap li{ color: var(--text-dim); font-size: 14.22px; font-weight: 500; line-height: 28px; text-align: justify; margin: 0 0 8px; }
.lm-tool .about-wrap ul{ margin: 0 0 8px; padding-inline-start: 20px; }
.lm-tool .about-wrap li{ margin-bottom: 4px; }
.lm-tool .about-wrap strong{ color: #484848; font-weight: 700; }
.lm-tool .about-wrap a{ font-weight: 500; text-decoration: none; }
@media (max-width: 767px){
.lm-tool .about-section h2{ font-size: 18.22px; line-height: 35px; }
.lm-tool .about-wrap p, .lm-tool .about-wrap li{ font-size: 15px; line-height: 29px; }
}
.lm-tool .about-wrap a:hover{ text-decoration: underline; }
.lm-tool .about-fade{ position: absolute; inset: auto 0 0 0; height: 64px; pointer-events: none;
    background: linear-gradient(to bottom, rgba(252,252,252,0), var(--bg) 85%); }
.lm-tool .about-toggle{ display: inline-block; margin-top: 14px; color: var(--power); font-weight: 500; font-size: 16px; line-height: 30px;
    min-height: 44px; cursor: pointer; background: none; border: none; padding: 0; font-family: inherit; }
.lm-tool .about-toggle:hover{ text-decoration: underline; }
.lm-tool .faq-section{ max-width: 1180px; margin: 10px auto 0; padding: 0 24px 20px; }
.lm-tool .faq-section h2{ font-size: 20.25px; font-weight: 700; line-height: 39px; margin: 0 0 4px; }
.lm-tool .faq-section > p{ color: var(--text-dim); font-size: 14.22px; font-weight: 500; line-height: 28px; margin: 0 0 24px; }
.lm-tool .faq-item{ background: #FFFFFF; border: 1px solid var(--border); border-radius: 4px;
    padding: 0 24px; margin-bottom: 32px; }
.lm-tool .faq-item:last-of-type{ margin-bottom: 0; }
.lm-tool .faq-item summary{ padding: 15px 0; cursor: pointer; list-style: none;
    display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.lm-tool .faq-item summary::-webkit-details-marker{ display: none; }
.lm-tool .faq-item summary:focus-visible{ outline: 2px solid var(--green); outline-offset: 2px; border-radius: 2px; }
.lm-tool .faq-q{ font-size: 16px; font-weight: 500; line-height: 30px; color: var(--text); }
.lm-tool .faq-icon{ flex: none; width: 24px; height: 24px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23666666'%3E%3Cpath d='M1.553 6.776a.5.5 0 0 1 .67-.223L8 9.44l5.776-2.888a.5.5 0 1 1 .448.894l-6 3a.5.5 0 0 1-.448 0l-6-3a.5.5 0 0 1-.223-.67'/%3E%3C/svg%3E") no-repeat center / 24px 24px;
    transition: transform .2s ease; }
.lm-tool .faq-item[open] .faq-icon{ transform: rotate(180deg); }
.lm-tool .faq-item[open] summary{ border-bottom: 1px solid var(--border); }
.lm-tool .faq-answer{ padding: 15px 0 16px; }
.lm-tool .faq-answer p{ margin: 0; text-align: justify;
    color: var(--faq-answer); font-size: 14.22px; font-weight: 500; line-height: 28px; }
@media (max-width: 767px){
.lm-tool .faq-item{ padding: 0 16px; margin-bottom: 16px; }
.lm-tool .faq-answer{ padding-right: 0; }
}
.lm-tool .comments-slot{ max-width: 1180px; margin: 0 auto; padding: 0 24px 60px; color: var(--text-faint); font-size: 13px;
    border-top: 1px dashed var(--border); padding-top: 24px; }
.lm-tool .footnote{ max-width: 1180px; margin: 0 auto; padding: 0 24px 40px; color: var(--text-faint); font-size: 12px; }
.lm-tool .res-row{ border: 1px solid var(--border);
    border-radius: 8px;
    padding: 16px;
    margin-bottom: 12px; }
.lm-tool .res-row:last-child{ margin-bottom: 0; }
.lm-tool .res-row.highlight{ border-color: var(--power); box-shadow: 0 0 0 1px var(--power) inset; }
.lm-tool .res-row-top{ display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 8px; }
.lm-tool .res-row-title{ font-weight: 700; font-size: 14.5px; }
.lm-tool .res-badge{ font-size: 12px; font-weight: 700; padding: 4px 10px; border-radius: 999px; white-space: nowrap; }
.lm-tool .res-badge.ok{ background: var(--cool-dim); color: var(--cool); }
.lm-tool .res-badge.mild{ background: var(--warn-dim); color: var(--warn); }
.lm-tool .res-badge.strong{ background: var(--power-dim); color: var(--power); }
.lm-tool .res-row-reason{ color: var(--text-dim); font-size: 13px; margin: 0 0 10px; }
.lm-tool .res-score-bar{ display: flex; align-items: center; gap: 10px; font-size: 12px; color: var(--text-faint); }
.lm-tool .res-score-track{ flex: 1; height: 8px; background: var(--bg-panel-2); border: 1px solid var(--border); border-radius: 999px;
    position: relative; overflow: hidden; }
.lm-tool .res-score-fill{ position: absolute; top: 0; bottom: 0; right: 0; border-radius: 999px; }
.lm-tool .res-score-fill.cpu{ background: var(--power); opacity: 0.85; }
.lm-tool .res-score-fill.gpu{ background: var(--cool); opacity: 0.85; }
.lm-tool .res-score-legend{ display: flex; gap: 14px; margin-top: 10px; font-size: 12px; color: var(--text-faint); }
.lm-tool .res-score-legend span{ display: inline-flex; align-items: center; gap: 5px; }
.lm-tool .legend-dot{ width: 8px; height: 8px; border-radius: 2px; display: inline-block; }
.lm-tool .legend-dot.cpu{ background: var(--power); }
.lm-tool .legend-dot.gpu{ background: var(--cool); }
.lm-tool .summary-line{ background: var(--bg-panel-2); border: 1px solid var(--border); border-radius: 8px;
    padding: 12px 16px; margin-bottom: 16px; font-size: 13.5px; color: var(--text-dim); }
.lm-tool .summary-line strong{ color: var(--text); }
.lm-tool .est-tag{ display: inline-block; font-size: 11px; color: var(--warn); background: var(--warn-dim);
    border-radius: 5px; padding: 1px 6px; margin-right: 6px; }
.lm-tool .metric-card{ background: var(--bg-panel-2); border: 1px solid var(--border); border-radius: 8px;
    padding: 18px; text-align: center; margin-bottom: 14px; }
.lm-tool .metric-card .metric-num{ font-size: 38px; font-weight: 700; color: var(--power); line-height: 1; }
.lm-tool .metric-card .metric-tier{ font-size: 13px; font-weight: 700; color: var(--text); margin-top: 8px; }
.lm-tool .metric-card .metric-label{ font-size: 12px; color: var(--text-faint); margin-top: 4px; }
.lm-tool .gpu-caveat{ background: var(--warn-dim); border: 1px solid var(--warn); border-radius: 8px;
    padding: 12px 14px; font-size: 13px; color: #7a3d0a; }
.lm-tool .gpu-caveat strong{ color: var(--warn); }
.lm-tool .general-note{ background: var(--cool-dim); border: 1px solid var(--cool); border-radius: 8px;
    padding: 14px 16px; font-size: 13.5px; color: var(--text-dim); }
.lm-tool .info-note{ background: var(--bg-panel-2); border: 1px solid var(--border); border-radius: 8px;
    padding: 12px 14px; font-size: 13px; color: var(--text-dim); margin-bottom: 16px; }
.lm-tool .ram-result{ text-align: center; padding: 8px 0 4px; }
.lm-tool .ram-result .ram-num{ font-size: 34px; font-weight: 700; color: var(--power); }
.lm-tool .ram-result .ram-caption{ font-size: 12.5px; color: var(--text-faint); margin-top: 6px; }
.lm-tool .specs-help{ opacity: 0.8; }
.lm-tool .specs-help h2{ font-size: 13.5px !important; color: var(--text-dim) !important; font-weight: 600 !important; }
.lm-tool .specs-help .dot{ display: none; }
.lm-tool .specs-help p{ font-size: 12.5px; color: var(--text-faint); margin: 0 0 6px; }
.lm-tool .specs-help ul{ margin: 0; padding-inline-start: 18px; font-size: 12.5px; color: var(--text-faint); }
.lm-tool .specs-help li{ margin-bottom: 4px; }
.lm-tool .input-block.dimmed{ opacity: 0.45; pointer-events: none; }
.lm-tool .tools-page{ background: var(--bg); padding-top: 8px; }
.lm-tool .page-head, .lm-tool .layout, .lm-tool .faq-section, .lm-tool .footnote, .lm-tool .about-inner{ max-width: 1344px; }
@media (min-width: 769px) and (max-width: 991px){
.lm-tool .page-head, .lm-tool .layout, .lm-tool .faq-section, .lm-tool .footnote, .lm-tool .about-inner{ padding-left: 69px; padding-right: 69px; }
}
.lm-tool .footnote{ padding-top: 0; padding-bottom: 24px; }
.lm-tool .about-section{ max-width: none; margin: 40px 0 0; padding: 32px 0 24px; background: #FFFFFF; margin-bottom: 72px; }
.lm-tool .about-inner{ margin: 0 auto; padding-left: 24px; padding-right: 24px; }
@media (max-width: 767px){
.lm-tool .about-section{ margin-bottom: 56px; }
}
.lm-tool .about-wrap ul, .lm-tool .specs-help ul{ padding-inline-start: 20px !important; padding-left: 0 !important; margin: 0 0 8px !important; }
.lm-tool .about-wrap li, .lm-tool .specs-help li{ list-style: disc !important; }
.lm-tool .about-wrap a{ text-decoration: none !important; }
.lm-tool .about-wrap a:hover{ text-decoration: underline !important; }
.lm-tool .about-toggle{ font-family: inherit; }
.lm-tool .cool-links{ display: flex; flex-direction: column; margin-top: 4px; }
