.p-visual-selector-wrapper{position:relative;background:#1f2937;border:1px solid #374151;border-radius:8px;padding:16px}.p-visual-selector{display:grid;gap:.375rem;width:100%;max-height:320px;overflow-y:auto;grid-template-columns:repeat(4,minmax(0,1fr))}.p-visual-selector::-webkit-scrollbar{width:6px}.p-visual-selector::-webkit-scrollbar-track{background:rgba(55,65,81,.3);border-radius:3px}.p-visual-selector::-webkit-scrollbar-thumb{background:rgba(156,163,175,.5);border-radius:3px}.p-visual-selector::-webkit-scrollbar-thumb:hover{background:rgba(156,163,175,.7)}.p-visual-selector--fontSize,.p-visual-selector--fontStyle,.p-visual-selector--fontWeight{grid-template-columns:repeat(4,minmax(0,1fr))}.p-visual-selector--headingLevel{grid-template-columns:repeat(6,minmax(0,1fr))}.p-visual-selector--aspectRatio,.p-visual-selector--borderRadius,.p-visual-selector--borderSide,.p-visual-selector--borderStyle,.p-visual-selector--boxShadow,.p-visual-selector--objectFit,.p-visual-selector--textAlign{grid-template-columns:repeat(4,minmax(0,1fr))}.p-visual-selector--iconPosition{grid-template-columns:repeat(2,minmax(0,1fr))}.p-visual-selector--gap,.p-visual-selector--iconSize{grid-template-columns:repeat(4,minmax(0,1fr))}.p-visual-selector__option{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;padding:.5rem .375rem;background:#fff;border:2px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .2s ease;height:72px;overflow:hidden}.p-visual-selector__option:hover{border-color:#3b82f6;box-shadow:0 2px 8px rgba(59,130,246,.1);transform:translateY(-1px)}.p-visual-selector__option:active{transform:translateY(0)}.p-visual-selector__option--selected{border-color:#3b82f6;background:#eff6ff;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.p-visual-selector__option--selected:hover{background:#dbeafe}.p-visual-selector__option:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.p-visual-selector__preview{display:flex;align-items:center;justify-content:center;width:100%;min-height:32px;color:#374151}.p-visual-selector__preview--font-size{display:flex;align-items:center;justify-content:center;height:40px;overflow:hidden}.p-visual-selector__preview--font-size span{font-weight:600;line-height:1;max-width:100%;transform-origin:center}.p-visual-selector__preview--font-size span.-f-sz--7xl{transform:scale(.75)}.p-visual-selector__preview--font-size span.-f-sz--8xl{transform:scale(.65)}.p-visual-selector__preview--font-size span.-f-sz--9xl{transform:scale(.55)}.p-visual-selector__preview--font-weight{display:flex;align-items:center;justify-content:center;height:40px}.p-visual-selector__preview--font-weight span{font-size:1.5rem;line-height:1}.p-visual-selector__preview--font-style span{font-size:1.25rem;line-height:1}.p-visual-selector__preview--heading span{font-weight:700;line-height:1}.p-visual-selector__preview--aspect-ratio{display:flex;align-items:center;justify-content:center;min-height:40px}.p-visual-selector__preview--object-fit{display:flex;align-items:center;justify-content:center;min-height:36px}.p-visual-selector__heading-1{font-size:1.5rem}.p-visual-selector__heading-2{font-size:1.25rem}.p-visual-selector__heading-3{font-size:1.125rem}.p-visual-selector__heading-4{font-size:1rem}.p-visual-selector__heading-5{font-size:.875rem}.p-visual-selector__heading-6{font-size:.75rem}.p-visual-selector__aspect-box{border:2px solid #3b82f6;border-radius:2px;background:linear-gradient(135deg,#dbeafe,#bfdbfe)}.p-visual-selector__object-fit-demo{display:flex;align-items:center;justify-content:center;width:100%}.p-visual-selector__object-fit-container{position:relative;width:36px;height:36px;border:2px solid #d1d5db;border-radius:4px;overflow:hidden;background:#f3f4f6}.p-visual-selector__object-fit-contain,.p-visual-selector__object-fit-cover,.p-visual-selector__object-fit-fill,.p-visual-selector__object-fit-none,.p-visual-selector__object-fit-scale-down{width:100%;height:100%;background:linear-gradient(135deg,#3b82f6,#60a5fa);border-radius:50%}.p-visual-selector__object-fit-cover{transform:scale(1.3)}.p-visual-selector__object-fit-contain{transform:scale(.7)}.p-visual-selector__object-fit-fill{border-radius:0}.p-visual-selector__object-fit-none{transform:scale(.5)}.p-visual-selector__object-fit-scale-down{transform:scale(.6)}.p-visual-selector__label{font-size:.6875rem;font-weight:500;color:#6b7280;text-align:center;line-height:1.2;transition:color .2s ease}.p-visual-selector__option--selected .p-visual-selector__label{color:#2563eb;font-weight:600}.p-visual-selector__option:hover .p-visual-selector__label{color:#3b82f6}.p-visual-selector__check{position:absolute;top:.25rem;right:.25rem;width:1.25rem;height:1.25rem;background:#3b82f6;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px rgba(0,0,0,.1)}.p-visual-selector__text-align-demo{display:flex;flex-direction:column;gap:.25rem;width:100%;padding:.25rem}.p-visual-selector__text-align-demo--left{align-items:flex-start}.p-visual-selector__text-align-demo--center{align-items:center}.p-visual-selector__text-align-demo--right{align-items:flex-end}.p-visual-selector__text-align-demo--justify{align-items:stretch}.p-visual-selector__text-align-line{height:2px;background:#3b82f6;border-radius:1px}.p-visual-selector__text-align-line:first-child{width:80%}.p-visual-selector__text-align-line:nth-child(2){width:90%}.p-visual-selector__text-align-line:nth-child(3){width:70%}.p-visual-selector__border-radius-box{width:36px;height:36px;background:linear-gradient(135deg,#3b82f6,#60a5fa);border:2px solid #2563eb}.p-visual-selector__box-shadow-demo{width:36px;height:36px;background:#fff;border:1px solid #e5e7eb;border-radius:4px}.p-visual-selector__border-style-line{width:100%;height:0;border-top-width:3px;border-top-color:#3b82f6}.p-visual-selector__border-side-box{width:36px;height:36px;background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-radius:4px}.p-visual-selector__border-side-box--full{border:3px solid #3b82f6}.p-visual-selector__border-side-box--t{border-top:3px solid #3b82f6}.p-visual-selector__border-side-box--r{border-right:3px solid #3b82f6}.p-visual-selector__border-side-box--b{border-bottom:3px solid #3b82f6}.p-visual-selector__border-side-box--l{border-left:3px solid #3b82f6}.p-visual-selector__border-side-box--x{border-left:3px solid #3b82f6;border-right:3px solid #3b82f6}.p-visual-selector__border-side-box--y{border-top:3px solid #3b82f6;border-bottom:3px solid #3b82f6}.p-visual-selector__border-width-box{width:36px;height:36px;background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-radius:4px;border-style:solid;border-color:#3b82f6}.p-visual-selector__icon-position-demo{display:flex;align-items:center;gap:.375rem}.p-visual-selector__icon-position-demo--left{flex-direction:row}.p-visual-selector__icon-position-demo--right{flex-direction:row-reverse}.p-visual-selector__icon-position-icon{display:flex;align-items:center;justify-content:center}.p-visual-selector__icon-position-text{font-size:.75rem;font-weight:500;color:#6b7280}.p-visual-selector__gap-demo{display:flex;align-items:center;justify-content:center;width:100%}.p-visual-selector__gap-box{width:14px;height:14px;background:#3b82f6;border-radius:2px}.p-visual-selector__preview--icon-size{display:flex;align-items:center;justify-content:center;height:40px;overflow:hidden}@media(width <= 768px){.p-visual-selector--fontSize,.p-visual-selector--fontStyle,.p-visual-selector--fontWeight{grid-template-columns:repeat(auto-fill,minmax(65px,1fr))}.p-visual-selector--headingLevel{grid-template-columns:repeat(3,1fr)}.p-visual-selector--aspectRatio{grid-template-columns:repeat(auto-fill,minmax(70px,1fr))}.p-visual-selector--objectFit{grid-template-columns:repeat(auto-fill,minmax(85px,1fr))}.p-visual-selector--textAlign{grid-template-columns:repeat(2,1fr)}.p-visual-selector--borderRadius,.p-visual-selector--boxShadow,.p-visual-selector--gap{grid-template-columns:repeat(auto-fill,minmax(65px,1fr))}.p-visual-selector--borderStyle{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}.p-visual-selector--iconPosition{grid-template-columns:1fr}.p-visual-selector__option{padding:.625rem .375rem;height:65px}.p-visual-selector__label{font-size:.6875rem}}