.gem-stone-icon{object-fit:contain;image-rendering:pixelated;flex-shrink:0;}
.gem-stone-icon.gem-quality-white{filter:grayscale(1) brightness(1.65);}
.gem-stone-icon.gem-quality-green{filter:hue-rotate(275deg) saturate(1.1);}
.gem-stone-icon.gem-quality-blue{filter:none;}
.gem-stone-icon.gem-quality-purple{filter:hue-rotate(55deg) saturate(1.2);}
.gem-stone-icon.gem-quality-red{filter:hue-rotate(140deg) saturate(1.3);}
.stick,.stick *{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;}
.stick-knob{pointer-events:none;}

/* 097: keep wash controls compact; only the middle section scrolls. */
#modal.original-panel.restoration-panel.gem-panel.gem-wash-panel{width:min(92vw,420px)!important;height:auto!important;max-height:min(88dvh,calc(var(--jh-safe-h,100dvh) - 32px))!important;padding:10px!important;box-sizing:border-box!important;font-family:system-ui,"Microsoft YaHei",sans-serif!important;color:#e2e9dc;}
#modal.gem-wash-panel .original-title{flex:0 0 auto!important;min-height:40px!important;height:auto!important;padding:7px!important;font-size:19px!important;line-height:1.3!important;}
#modal.gem-wash-panel .original-content{flex:0 1 auto!important;min-height:0!important;overflow:auto!important;padding:12px 8px!important;font-size:14px!important;line-height:1.45!important;border:0!important;background:none!important;}
#modal.gem-wash-panel .original-content p{font-size:12px!important;margin:6px 0!important;line-height:1.5!important;}
#modal.gem-wash-panel .original-footer{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,2fr);flex:none!important;gap:8px!important;padding:8px 0 0!important;min-height:0!important;}
#modal.gem-wash-panel .original-footer button{font-family:inherit!important;font-size:15px!important;min-width:0!important;min-height:44px!important;padding:9px 6px!important;line-height:1.35!important;margin:0!important;}
#modal.gem-wash-panel .original-footer button.gem-wash-submit{background:#d9c47b!important;border:1px solid #e7d68e!important;color:#172e26!important;border-radius:6px!important;text-shadow:none!important;}
#modal.gem-wash-panel button:disabled{opacity:.45!important;cursor:default;}
#modal.gem-wash-panel :is(button,summary,input):focus-visible{outline:2px solid #ead992;outline-offset:2px;}
.gw-hero{display:flex;gap:10px;align-items:center;padding:0 0 10px;border-bottom:1px solid #516a56;}
.gw-hero>div:last-child{min-width:0;flex:1;}.gw-hero h3{margin:0 0 5px!important;font-family:inherit!important;font-size:17px!important;line-height:1.4!important;overflow-wrap:anywhere;}
.gw-art{display:grid;place-items:center;width:42px;height:48px;flex:0 0 42px;}.gw-art img{width:40px!important;height:44px!important;object-fit:contain;}
.gw-current{display:flex;gap:6px;align-items:baseline;flex-wrap:wrap;font-size:13px;}.gw-current b{font-size:23px;font-variant-numeric:tabular-nums;}.gw-current small{font-size:11px;color:#a8b9ab;font-weight:400;margin-left:auto;}
.gw-outcome{display:grid;grid-template-columns:1fr 1.35fr;gap:8px;margin:10px 0;}.gw-outcome>div{display:flex;flex-direction:column;gap:3px;background:#203c32;border-radius:6px;padding:8px 10px;}.gw-outcome span{font-size:12px;color:#b4c3b7;}.gw-outcome b{font-size:20px;color:#e5d699;font-variant-numeric:tabular-nums;white-space:nowrap;}
.gw-materials table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px;}.gw-materials caption{text-align:left;font-weight:700;padding:2px 0 7px;color:#e7dfbe;}.gw-materials th,.gw-materials td{padding:6px 4px;border-bottom:1px solid #365145;text-align:right;vertical-align:middle;}.gw-materials th:first-child{width:56%;text-align:left;}.gw-materials thead th{color:#acbcae;font-weight:400;font-size:11px;padding-top:0;}.gw-materials tbody th{font-weight:500;}.gw-materials small{display:block;font-size:11px;color:#a7baac;font-weight:400;}.gw-materials td{font-variant-numeric:tabular-nums;white-space:nowrap;}.gw-materials .gw-missing{color:#ff9b8e;}.gw-materials .gw-missing small{color:#d8a196;}
.gw-note{color:#a9bcae;font-weight:400;}.gw-safety{text-align:center;color:#a9bcae;}
.gw-options{margin:10px 0 0;border:1px solid #4b6655;border-radius:6px;}.gw-options summary{min-height:44px;box-sizing:border-box;padding:11px 10px;font-size:13px;cursor:pointer;color:#e5d699;}.gw-options summary small{float:right;font-size:11px;font-weight:400;color:#a9bcae;}.gw-options-body{padding:0 10px 10px;}.gw-check{display:flex;gap:9px;align-items:center;min-height:48px;font-size:13px;cursor:pointer;}.gw-check input{width:20px;height:20px;flex:0 0 20px;accent-color:#ddcc84;margin:0;}.gw-check small{display:block;color:#a9bcae;font-size:11px;margin-top:2px;}.gw-boost-heading{display:flex;justify-content:space-between;align-items:center;gap:6px;border-top:1px solid #365145;padding-top:10px;margin-top:6px;font-size:13px;}.gw-boost-heading span{font-size:11px;color:#b4c3b7;}
.gw-stepper{display:grid;grid-template-columns:minmax(0,1fr) 40px 24px 40px;align-items:center;gap:4px;border-top:1px solid #365145;padding:5px 0;font-size:13px;}.gw-stepper small{display:block;font-size:11px;color:#a9bcae;}.gw-stepper b{text-align:center;font-size:15px;}#modal.gem-wash-panel .gw-stepper button{min-width:0!important;width:40px!important;min-height:44px!important;margin:0!important;padding:4px!important;font-size:20px!important;font-family:inherit!important;}
.gw-warning,.gw-result,.gw-complete{padding:9px 10px;margin:10px 0;border-radius:6px;font-size:13px;overflow-wrap:anywhere;}.gw-warning{color:#ffc1aa;background:#472f26;border:1px solid #8c5948;}.gw-result,.gw-complete{color:#d5e9ba;background:#293f2d;border:1px solid #60764d;}
@media(max-width:350px){#modal.original-panel.restoration-panel.gem-panel.gem-wash-panel{width:calc(100vw - 20px)!important;padding:8px!important;}.gw-hero h3{font-size:15px!important;}.gw-outcome b{font-size:18px;}.gw-options summary small{font-size:10px;}}

.gw-grade-label{display:flex;align-items:center;gap:8px;font-size:12px;margin:8px 0;}#modal.gem-wash-panel .gw-grade-label select{min-width:0;flex:1;min-height:44px;font:14px system-ui,"Microsoft YaHei",sans-serif;padding:6px;background:#203c32;color:#e2e9dc;border:1px solid #65806a;border-radius:5px;}

/* 098: keep the idle start/stop control visible below a scrollable body. */
.idle-summary{display:flex;flex-direction:column;overflow:hidden;}
.idle-summary>h2,.idle-summary>.idle-status,.idle-summary>.idle-toggle{flex:0 0 auto;}
.idle-summary>.idle-status{margin:0 0 1cqw;font-size:3.2cqw;line-height:1.3;overflow-wrap:anywhere;color:#d9deb0;}
.idle-summary>.idle-summary-body{min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;}
.idle-summary>.idle-toggle{min-height:40px;margin-top:1cqw;border-top:1px solid #8da779;border-radius:3px;background:rgba(12,40,28,.28);}

/* Currency overflow remains accessible on narrow phones. */
.currency-pending122{margin:8px 0;padding:8px;border:1px solid #7e9c80;border-radius:7px;font-size:clamp(11px,3vw,14px);line-height:1.45;overflow-wrap:anywhere}.currency-pending122 p{margin:3px 0}.currency-pending122 button{padding:5px 10px;font-size:inherit}

.original-content .money-values{display:flex;flex-wrap:wrap;white-space:normal;gap:4px 10px;max-width:100%}.original-content .money-values>span{white-space:nowrap;min-width:0;flex-shrink:0}
