/* Premium interaction layer, aligned with the AMHH studio palette. */
button,.file-item,.result-card,.drop-zone{transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease,color .2s ease}
.page-shell.image-studio-shell{padding-top:39px}
.studio-panel{border-color:#ffffff17;border-radius:17px;background:linear-gradient(145deg,#191a25f2,#14151df5);box-shadow:0 20px 58px #0005,0 1px 0 #ffffff08 inset}
.preset-grid{gap:8px}
.preset-button{position:relative;min-height:52px;padding:9px 11px;border:1px solid #ffffff15;border-radius:12px;background:linear-gradient(145deg,#191a24,#11121a);color:#d0cad9;text-align:left;box-shadow:inset 0 1px #ffffff07}
.preset-button small{display:block;margin-top:4px;color:#837d91;font-size:8px;transition:color .2s}
.preset-button:hover{transform:translateY(-2px);border-color:#a17cff70;background:linear-gradient(145deg,#242036,#15151f);box-shadow:0 8px 20px #0004}.preset-button:hover small{color:#b9a2e9}
.preset-button.is-active{border-color:#d3ff4e83;background:linear-gradient(135deg,#d3ff4e12,#a17cff1d 72%,#171821);color:#eff8d0;box-shadow:0 0 0 1px #d3ff4e16,0 8px 22px #0004,inset 0 1px #ffffff10}
.preset-button.is-active::after{position:absolute;top:9px;right:9px;width:6px;height:6px;border-radius:50%;background:var(--image-lime);box-shadow:0 0 11px #d3ff4e9c;content:""}
.dimension-fields input{min-height:40px;border-radius:11px;background:linear-gradient(150deg,#171821,#101117);box-shadow:inset 0 1px #ffffff08}.dimension-fields input:hover:not(:disabled){border-color:#a17cff68}.dimension-fields input:focus{border-color:#c6a7ff;box-shadow:0 0 0 3px #a17cff18,inset 0 1px #ffffff08}
.ratio-toggle{margin-top:21px;padding:15px 14px;border:1px solid #ffffff12;border-radius:13px;background:linear-gradient(110deg,#a17cff0b,#ffffff03)}.toggle-copy{gap:8px}.toggle-copy b{font-size:10px}.toggle-copy small{max-width:34ch;color:#a29caf;font-size:9px;line-height:1.65}.percentage-grid{margin-top:17px;padding-top:15px;border-top:1px solid #ffffff10}.setting-note{margin-top:12px;line-height:1.8}
.switch{width:38px;height:22px;border-color:#ffffff2a;background:#22232f;box-shadow:inset 0 1px 3px #0005}.switch::after{top:4px;right:4px;width:12px;height:12px}.toggle-row input:checked+.switch{border-color:#d3ff4e8a;background:linear-gradient(100deg,#8cac39,#4e8372);box-shadow:0 0 14px #d3ff4e1c}.toggle-row input:checked+.switch::after{transform:translateX(-16px);background:#f5ffd9;box-shadow:0 1px 5px #0005}
.process-button{position:relative;min-height:49px;border:1px solid #ffffff24;border-radius:13px;background:linear-gradient(105deg,#9d54f0 0%,#7855ef 46%,#25b9ae 100%);box-shadow:0 9px 26px #8057ff30,inset 0 1px #ffffff32;letter-spacing:.15px;overflow:hidden}
.process-button::before{position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,#ffffff27 50%,transparent 70%);transform:translateX(-120%);content:"";transition:transform .55s ease}.process-button:hover:not(:disabled)::before{transform:translateX(120%)}.process-button:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.08);box-shadow:0 13px 30px #8057ff45,inset 0 1px #ffffff3d}.process-button:active:not(:disabled){transform:translateY(0) scale(.99)}.process-button>*{position:relative;z-index:1}
.text-button{padding:7px 11px;border:1px solid #ffffff14;border-radius:999px;background:#ffffff06;color:#bcb5c9;font-weight:650}.text-button:hover:not(:disabled){border-color:#ff829f55;background:#ff648516;color:#ff9bb0}
.file-item{padding:8px;border-color:#ffffff10;border-radius:13px;background:linear-gradient(110deg,#171821,#11121a);box-shadow:inset 0 1px #ffffff05}.file-item:hover{transform:translateY(-1px);border-color:#a17cff4d;background:#1a1925}.file-thumb{width:42px;height:42px;border:1px solid #ffffff14;border-radius:9px;background-color:#22212d}.remove-file{width:27px;height:27px;border:1px solid #ffffff0a;border-radius:9px;background:#ffffff05;color:#a9a2b4}.remove-file:hover{transform:rotate(4deg);border-color:#ff648577;background:#ff64851d;color:#ff9bb0}
.result-card{border-color:#ffffff16;border-radius:15px;background:linear-gradient(155deg,#171821,#101117);box-shadow:0 8px 22px #0002}.result-card:hover{transform:translateY(-2px);border-color:#a17cff55;box-shadow:0 13px 29px #0004}.download-button{min-height:32px;padding:0 12px;border-color:#d3ff4e35;border-radius:9px;background:linear-gradient(120deg,#d3ff4e13,#52e1d20b);box-shadow:inset 0 1px #ffffff0b}.download-button:hover:not([aria-disabled="true"]){transform:translateY(-1px);border-color:#d3ff4e9c;background:#d3ff4e1c;box-shadow:0 5px 16px #d3ff4e12}
.drop-zone{border-radius:16px;background:radial-gradient(ellipse at 50% -5%,#a17cff1c,transparent 70%),linear-gradient(145deg,#15151f,#101119)}.drop-zone:hover,.drop-zone.is-dragging{box-shadow:0 0 0 3px #d3ff4e0c,inset 0 0 30px #d3ff4e08}
.setting-note{max-width:58ch;line-height:1.75}
input[type="range"]{width:100%;height:5px;margin:13px 0 8px;appearance:none;border:0;border-radius:99px;background:linear-gradient(90deg,#a17cff,#52e1d2 58%,#d3ff4e);accent-color:var(--image-lime);cursor:pointer}
input[type="range"]::-webkit-slider-thumb{width:16px;height:16px;appearance:none;border:3px solid #eaffb2;border-radius:50%;background:#a17cff;box-shadow:0 0 0 4px #d3ff4e18,0 2px 8px #0008}
input[type="range"]::-moz-range-thumb{width:11px;height:11px;border:3px solid #eaffb2;border-radius:50%;background:#a17cff;box-shadow:0 0 0 4px #d3ff4e18,0 2px 8px #0008}
@media(max-width:520px){.preset-button{min-height:48px;padding:8px}.plain-select{min-height:45px}.process-button{min-height:48px}}
@media(prefers-reduced-motion:reduce){button,select,.file-item,.result-card,.drop-zone,.process-button::before{transition:none!important}}
