:root{--edge-inset: 1rem}html{background-color:#1b2636;text-align:center;color:#fff;overflow:hidden}body{margin:0;color:#fff;font-family:Good Old DOS,monospace;transition:background-color .15s ease;user-select:none;overflow:hidden}body input{user-select:text}@font-face{font-family:Good Old DOS;font-style:normal;font-weight:400;src:local(""),url("/assets/Good Old DOS.5c0ea768.ttf") format("truetype")}#app{height:100vh;display:flex;align-items:center;justify-content:center}.color-inputs{display:flex;gap:1rem;flex-direction:column;align-items:center}.color-input-group{display:flex;gap:.5rem;align-items:center}.input-spacer{width:3rem}.color-input{padding:1rem 1.5rem;font-size:1.5rem;border:2px solid rgba(255,255,255,.3);border-radius:8px;background:transparent;color:#fff;text-align:center;min-width:300px;font-family:Good Old DOS,monospace}.color-input::placeholder{color:var(--placeholder-color, rgba(255, 255, 255, .5));opacity:.5}.color-input:focus{outline:none}.add-color-btn,.remove-color-btn{width:3rem;height:3rem;font-size:1.5rem;font-weight:700;border-radius:8px;background:transparent;cursor:pointer;transition:color .6s cubic-bezier(.4,0,.2,1);border:none;touch-action:manipulation}.bottom-left-display{position:fixed;bottom:var(--edge-inset);left:var(--edge-inset);display:inline-flex;flex-direction:column;gap:.5rem;font-family:Good Old DOS,monospace}.palette-section{display:flex;flex-direction:column;align-items:flex-start;max-width:17rem}.palette-title{font-size:.9rem;font-weight:700;display:none;cursor:pointer;margin-bottom:.25rem;transition:opacity .2s;text-align:left}.palette-title:hover{opacity:.7}.selected-swatch{display:flex;flex-direction:column;align-items:stretch;overflow:hidden;border-radius:12px;max-height:calc(50vh - 4rem);margin-top:.5rem;margin-bottom:.5rem}.palette-swatch-item{text-align:left;display:flex;flex-direction:column}.palette-info{display:flex;flex-direction:column;align-items:flex-start;width:fit-content}.selected-swatch.slide-in{animation:slideInFromLeft .4s cubic-bezier(.4,0,.2,1)}.selected-swatch.slide-out{animation:slideOutToLeft .4s cubic-bezier(.4,0,.2,1)}@keyframes slideInFromLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOutToLeft{0%{transform:translate(0);opacity:1}to{transform:translate(-100%);opacity:0}}.swatch-name{font-size:.9rem;font-weight:700;text-align:left;padding-bottom:.5rem}.swatch-values{font-size:.8rem;text-align:left;display:flex;flex-direction:row;gap:.5rem}.palette-swatch-item:not(:has(.swatch-name)) .swatch-values{padding-top:.5rem;padding-bottom:.5rem}.palette-swatch-item{padding:.5rem 2rem .5rem .5rem;border-bottom:1px solid rgba(0,0,0,.1);touch-action:manipulation;position:relative}.palette-swatch-item:last-child{border-bottom:none}.swatch-value{cursor:pointer;touch-action:manipulation}.swatch-value:hover{text-decoration:underline}.palette-swatch-remove{position:absolute;top:50%;right:.5rem;transform:translateY(-50%);width:2rem;height:2rem;background:transparent;border:none;font-size:1.5rem;font-family:Good Old DOS,monospace;cursor:pointer;touch-action:manipulation;display:flex;align-items:center;justify-content:center}.bg-display,.comp-display{font-size:1rem;cursor:pointer;text-align:left;padding:.5rem .5rem .5rem 0;border-radius:8px;touch-action:manipulation;width:100%}.display-value{cursor:pointer;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px}.toast{position:fixed;bottom:3rem;left:1rem;padding:.75rem 1.5rem;border-radius:8px;font-family:Good Old DOS,monospace;font-size:.9rem;opacity:0;transform:translateY(1rem);transition:opacity .3s ease,transform .3s ease;pointer-events:none}.toast.show{opacity:1;transform:translateY(0)}.palette-tabs{position:fixed;top:1rem;right:1rem;display:flex;flex-direction:row-reverse;gap:.5rem}.palette-tab-selected{animation:paletteTabSelected .25s ease-out forwards}.palette-tab-fade-out{animation:paletteTabFadeOut .25s ease-out forwards}.palette-tab-enter{animation:paletteTabEnter .25s ease-out}@keyframes paletteTabSelected{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20vh)}}@keyframes paletteTabFadeOut{0%{opacity:1}to{opacity:0}}@keyframes paletteTabEnter{0%{opacity:0}to{opacity:1}}.palette-tab{flex:0 0 1rem;height:2rem;display:flex;flex-direction:column;border-radius:4px;overflow:hidden;transition:flex-basis .4s cubic-bezier(.34,1.56,.64,1),height .4s cubic-bezier(.34,1.56,.64,1),border-color .2s ease;cursor:pointer;border:2px solid transparent;touch-action:manipulation}.palette-tab:hover{flex:0 0 3rem;height:6rem}.palette-color{flex:1;cursor:pointer;touch-action:manipulation}.mobile-palette-container{position:fixed;top:1rem;right:1rem;display:flex;flex-direction:column;gap:.5rem}.mobile-palette-display{display:none;flex-direction:row;border-radius:12px;overflow:hidden;max-width:calc(100vw - 2rem);transform-origin:top center}.mobile-palette-display.slide-in{animation:mobilePaletteSlideIn .3s cubic-bezier(.34,1.56,.64,1)}.mobile-palette-display.slide-out{animation:mobilePaletteSlideOut .3s cubic-bezier(.4,0,.2,1)}@keyframes mobilePaletteSlideIn{0%{opacity:0;transform:scale(.8) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes mobilePaletteSlideOut{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.8) translateY(-10px)}}.mobile-swatch-item{flex:1;display:flex;flex-direction:column;justify-content:center;gap:.25rem;cursor:pointer;touch-action:manipulation;font-size:clamp(.6rem,2vw,1rem);text-align:center;word-break:break-all;overflow:hidden}.mobile-bottom-left{display:none;position:fixed;bottom:var(--edge-inset);left:var(--edge-inset);flex-direction:column;align-items:flex-start;width:35vw}.mobile-palette-title{font-size:.9rem;user-select:text;text-align:left;display:none}.mobile-color-info{display:flex;flex-direction:column;align-items:flex-start;width:fit-content}.artwork-thumbnail-mobile{width:100%;max-height:200px;object-fit:contain;object-position:left;cursor:pointer;border-radius:8px;margin-bottom:.5rem;transition:transform .3s ease,opacity .2s;transform-origin:left center}.artwork-thumbnail-mobile:hover{transform:scale(1.02)}.history-ribbon{position:fixed;bottom:var(--edge-inset);right:var(--edge-inset);display:flex;flex-direction:row;align-items:center;gap:.5rem;padding:0;margin:0}.history-pill{width:3rem;height:1rem;display:flex;flex-direction:row;align-items:stretch;cursor:pointer;border-radius:.5rem;overflow:hidden;outline:2px solid transparent;transition:outline-color .2s ease;gap:0;margin:0;padding:0;touch-action:manipulation}.history-pill:hover{outline-color:var(--hover-color)}.history-color{flex:2;margin:0;padding:0}.history-label{font-size:1rem;font-family:Good Old DOS,monospace;display:flex;align-items:center;margin:0;padding:0;text-align:right}.history-row{display:flex;flex-direction:row;align-items:center;gap:.5rem}#logo-row{position:fixed;top:var(--edge-inset);left:var(--edge-inset);display:flex;flex-direction:column;align-items:flex-start;width:fit-content}.header-buttons{display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;width:100%;margin:0;padding:0}#logo-container{display:flex;align-items:center;justify-content:flex-start;gap:.2rem;margin:0}.logo-part{margin:.4rem}.logo-part:first-child{margin-left:0}.logo-part svg{height:1.5rem;width:auto;transition:fill .6s cubic-bezier(.4,0,.2,1)}.user-palette{position:fixed;top:0;left:18.5rem;display:flex;flex-direction:row;align-items:flex-start;gap:0}.user-palette-add-wrapper{background:transparent}.user-palette-add{width:100%;height:100%;background:transparent;border:none;font-size:1.5rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;font-family:Good Old DOS,monospace;transition:opacity .2s ease;touch-action:manipulation}.user-palette-add:hover{opacity:.6}.user-palette-add-wrapper:first-child .user-palette-add{border-bottom-left-radius:6px}.user-palette-add-wrapper:last-child .user-palette-add{border-bottom-right-radius:6px}.user-palette-colors{display:flex;flex-direction:row;gap:0;border:2px solid;border-top:none;border-bottom-left-radius:8px;border-bottom-right-radius:8px}.user-palette-color{width:2rem;height:3rem;cursor:pointer;position:relative;overflow:visible;touch-action:manipulation}.user-palette-color:first-child .user-palette-color-inner{border-bottom-left-radius:6px}.user-palette-color:last-child .user-palette-color-inner{border-bottom-right-radius:6px}.user-palette-color-inner{width:100%;height:100%;position:relative;z-index:1}.user-palette-color-remove{position:absolute;top:3rem;left:0;width:100%;height:2rem;background-color:transparent;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-family:Good Old DOS,monospace;cursor:pointer;opacity:0;transform:translateY(-100%);transition:opacity .2s ease,transform .2s ease;pointer-events:none;touch-action:manipulation}.user-palette-color:hover .user-palette-color-remove{opacity:1;transform:translateY(0);pointer-events:auto}.help-btn{background:transparent;border:none;font-size:1rem;font-family:Good Old DOS,monospace;cursor:pointer;transition:background-color .2s ease;padding:0;margin:0;border-radius:4px;touch-action:manipulation}.help-btn:hover{background-color:#ffffff1a}.settings-btn{background:transparent;border:none;font-size:1rem;font-family:Good Old DOS,monospace;cursor:pointer;transition:background-color .2s ease;padding:0;margin:0;border-radius:4px;touch-action:manipulation}.settings-btn:hover{background-color:#ffffff1a}.modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:#00000080;align-items:center;justify-content:center}.modal.show{display:flex}.modal-content{padding:2rem;border-radius:12px;position:relative;font-family:Good Old DOS,monospace;display:flex;flex-direction:column;max-height:85vh;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-content h2{margin:0;font-size:1.5rem;padding-top:1rem;padding-left:2rem;padding-right:2rem}.modal-content pre{margin-bottom:1rem}.modal-content h3{padding-top:1rem}.modal-content ul{list-style:none;padding:0;margin:0 0 1rem}.modal-content li,.modal-content p{margin:.5rem 0}.modal-close{position:absolute;top:1rem;right:1rem;background:transparent;border:none;font-size:1.5rem;cursor:pointer;line-height:1;padding:0;width:2rem;height:2rem;transition:background-color .2s ease;border-radius:4px;touch-action:manipulation}.modal-close:hover{background-color:#ffffff1a}.copy-btn{display:block;width:100%;padding:1rem;margin:.25rem 0;font-family:Good Old DOS,monospace;font-size:1rem;background:rgba(255,255,255,.1);border:none;border-radius:8px;cursor:pointer;transition:background-color .2s ease;touch-action:manipulation;color:inherit}.copy-btn:hover{background-color:#fff3}#color-space-options,#dataset-checkboxes{display:flex;flex-direction:row;flex-wrap:wrap;gap:.75rem;padding:.5rem 0;justify-content:center}#color-space-options label,#dataset-checkboxes label{display:flex;align-items:center;gap:.75rem;cursor:pointer;padding:.5rem;border-radius:6px;transition:background-color .2s ease;font-size:1rem}#color-space-options label:hover,#dataset-checkboxes label:hover{background-color:#ffffff0d}input[type=radio],input[type=checkbox]{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:1.25rem;height:1.25rem;border:2px solid rgba(255,255,255,.4);border-radius:50%;background-color:transparent;cursor:pointer;position:relative;transition:all .2s ease;flex-shrink:0;margin:0;outline:none}input[type=checkbox]{border-radius:4px}input[type=radio]:hover,input[type=checkbox]:hover{opacity:.7}input[type=radio]:checked,input[type=checkbox]:checked{background-color:#ffffff26}input[type=radio]:checked:after{content:"";position:absolute;width:.5rem;height:.5rem;background-color:var(--input-color, rgba(255, 255, 255, .9));border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%)}input[type=checkbox]:checked:after{content:"";position:absolute;width:.4rem;height:.7rem;border:solid var(--input-color, rgba(255, 255, 255, .9));border-width:0 2px 2px 0;top:45%;left:50%;transform:translate(-50%,-50%) rotate(45deg)}.drag-target-dots{display:none}.drag-target-dot{position:fixed;width:1.2rem;height:1.2rem;border-radius:50%;border:2px solid white;pointer-events:none;z-index:1000;transform:translate(-50%,-50%) scale(0)}.mobile-color-indicator-dot{position:fixed;width:2rem;height:2rem;border-radius:50%;border:3px solid white;pointer-events:none;z-index:1000;transform:translate(-50%,-50%) scale(0);transition:transform .3s ease}@media (max-aspect-ratio: 5/4){:root{--edge-inset: .5rem}.drag-target-dots{display:none}.modal-content{padding:.5rem;max-height:90vh}#help-modal .modal-content{width:90vw;max-width:none}#settings-modal .modal-content{width:80vw;max-width:none}.color-input{min-width:0;width:100%;max-width:250px;padding:.75rem 1rem;font-size:1.25rem}.input-spacer{width:2rem}.add-color-btn,.remove-color-btn{width:2.5rem;height:2.5rem;font-size:1.25rem}.toast{bottom:auto;top:50%;left:50%;transform:translate(-50%) translateY(calc(-50% - 5rem))}.toast.show{transform:translate(-50%) translateY(calc(-50% - 6rem))}.logo-part{margin:.6rem}#logo-row{width:auto;z-index:10}#logo-container{gap:.5rem;padding-left:0}.user-palette{position:fixed;top:0;left:0;right:0;padding-left:16rem;padding-right:.5rem;justify-content:flex-start}.bottom-left-display{display:inline-flex}.palette-title,.palette-section{display:none}.mobile-bottom-left{display:flex}.mobile-palette-display{margin-top:.75rem}.mobile-palette-container{position:fixed;top:5.5rem;right:.5rem;left:.5rem;flex-direction:column;align-items:stretch;gap:.5rem}.palette-tabs{position:static;flex-direction:row;justify-content:center;gap:.25rem}.mobile-palette-display{display:flex}.palette-tab,.palette-tab:hover{flex:0 0 1rem;height:2rem}.palette-tab:active{animation:paletteBounce .4s cubic-bezier(.34,1.56,.64,1)}@keyframes paletteBounce{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.history-ribbon{flex-direction:column-reverse;align-items:flex-end}.history-row{flex-direction:column;align-items:flex-end}}.artwork-thumbnail{width:100%;max-height:300px;object-fit:contain;object-position:left;cursor:pointer;border-radius:8px;margin-bottom:.5rem;transition:transform .3s ease,opacity .2s;transform-origin:left center}.artwork-thumbnail.transitioning{transform:translate(-150px);opacity:0}.artwork-thumbnail:hover{opacity:.8}.artwork-modal{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000f2;z-index:2000;display:flex;align-items:center;justify-content:center;cursor:pointer}.artwork-modal-image{width:90vw;height:90vh;object-fit:contain}.result{height:20px;line-height:20px;margin:1.5rem auto}.input-box .btn{width:60px;height:30px;line-height:30px;border-radius:3px;border:none;margin:0 0 0 20px;padding:0 8px;cursor:pointer}.input-box .btn:hover{background-image:linear-gradient(to top,#cfd9df 0%,#e2ebf0 100%);color:#333}.input-box .input{border:none;border-radius:3px;outline:none;height:30px;line-height:30px;padding:0 10px;background-color:#f0f0f0;-webkit-font-smoothing:antialiased}.input-box .input:hover{border:none;background-color:#fff}.input-box .input:focus{border:none;background-color:#fff}
