:root{--mint: #56f0c8;--paper: #ffffff;--frame: #f7f7f7;--ink: #111;--shadow: 0 18px 40px rgba(0, 0, 0, .25), 0 2px 6px rgba(0, 0, 0, .2);--radius: 14px;--gutter: clamp(16px, 2vw, 24px)}#application{display:block;width:100vw;height:100vh;margin:0;padding:0}body{margin:0;padding:0;overflow:hidden}html{margin:0;padding:0}.loading-screen{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:9999;transition:opacity 1s ease-out,visibility 1s ease-out;margin:0;padding:0;overflow:hidden}.loading-content{position:relative;display:flex;align-items:center;justify-content:center;width:100vw;height:100vh;aspect-ratio:16 / 9;max-width:calc(100vh * 16 / 9);max-height:56.25vw}.loading-background{width:100%;height:100%;object-fit:contain;object-position:center}.loading-screen.fade-out{opacity:0;visibility:hidden}.progress-bar-container{position:absolute;top:80%;left:50%;transform:translate(-50%);width:40%;z-index:1}.progress-bar-bg{width:100%;height:auto;display:block}.progress-bar-fill-container{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}.progress-bar-fill{width:100%;height:100%;object-fit:cover;clip-path:inset(0 100% 0 0);transition:clip-path .3s ease}@media (max-width: 768px){.loading-text{font-size:clamp(16px,4vw,20px);margin-bottom:1.5rem;padding:.5rem 1rem}.progress-bar-container{max-width:80vw}}@media (max-width: 480px){.loading-text{font-size:clamp(14px,4vw,18px);margin-bottom:1rem;padding:.5rem .75rem}.progress-bar-container{max-width:85vw}}.loading-screen:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1}#application{opacity:0;transition:opacity .5s ease-in}#application.loaded{opacity:1}.popup{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;pointer-events:none;padding:10vh 10vw}.popup-card{position:relative;max-width:min(1120px,94vw);height:calc(var(--canvas-height, 100vh) * .75);max-height:calc(var(--canvas-height, 100vh) * .85);min-height:calc(var(--canvas-height, 100vh) * .35);pointer-events:auto;overflow:visible;filter:drop-shadow(0 18px 40px rgba(0,0,0,.25)) drop-shadow(0 2px 2px rgba(0,0,0,.2))}.popup-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--paper);clip-path:polygon(0 0,calc(100% - 30px) 0,100% 30px,100% calc(100% - 30px),100% 100%,30px 100%,0 calc(100% - 30px),0 30px)}.popup-ribbon-narrow{position:absolute;top:0;left:0;right:0;height:100%;background:var(--mint);clip-path:polygon(0 0,calc(100% - 30px) 0,100% 30px,100% 15%,0px 17%,0 17%)}.popup-ribbon{position:absolute;top:0;left:0;right:0;height:100%;background:var(--mint);clip-path:polygon(0 0,calc(100% - 30px) 0,100% 30px,100% 30%,30px 70%,0 70%)}.popup-close{position:absolute;top:-24px;left:-24px;width:48px;height:48px;background:transparent;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;padding:0;transition:transform .2s ease}.popup-close .close-icon{width:150%;height:150%;object-fit:contain}.popup-close:hover{transform:scale(1.1)}.popup-inner{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(20px,2.5vw,32px);padding:60px var(--gutter) var(--gutter);height:calc(100% - 40px);overflow-y:auto}.art-figure{margin:0;text-align:center}.art-frame{background:var(--frame);border-radius:8px;padding:clamp(3px,.4vw,4px);border:1px solid #e0e0e0;box-shadow:inset 0 0 0 1px #fffc;display:inline-block}.art-frame img{display:block;max-width:100%;max-height:35vh;width:auto;height:auto;border-radius:6px;margin:0 auto}figcaption{margin:12px 6px 0;text-align:center;font:600 clamp(12px,1.3vw,16px) / 1.35 system-ui,-apple-system,Segoe UI,Roboto,"Helvetica Neue",Arial,"Noto Sans","Apple Color Emoji","Segoe UI Emoji";color:#222}.note-card{display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 2px 4px rgba(0,0,0,.25)) drop-shadow(0 2px 4px rgba(0,0,0,.15))}.note-paper{background:#fff;padding:clamp(20px,2.5vw,28px);border-radius:0;border:1px solid #f0f0f0;clip-path:polygon(0% 0%,95% 5%,95% 90%,3% 100%)}.note-paper h2{margin:0 0 .6em;font:800 clamp(18px,2vw,26px) / 1.25 ui-rounded,system-ui,-apple-system,Segoe UI,Roboto,"Helvetica Neue",Arial;color:#111;text-align:center}.note-paper p{margin:.75em 0;font:500 clamp(12px,1.5vw,16px) / 1.35 "Avenir Next",system-ui,-apple-system,Segoe UI,Roboto,"Helvetica Neue",Arial;color:#111;text-align:center}.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}@media (max-width: 768px){.popup-inner{grid-template-columns:1fr;padding-top:90px}}@media (max-width: 520px){.popup-ribbon{height:66px}.popup-inner{padding-top:76px}figcaption{font-weight:600}}:root{--mint: #56f0c8;--paper: #ffffff;--frame: #f7f7f7;--ink: #111;--shadow: 0 calc(var(--canvas-height, 100vh) * .024) calc(var(--canvas-height, 100vh) * .054) rgba(0, 0, 0, .25), 0 calc(var(--canvas-height, 100vh) * .003) calc(var(--canvas-height, 100vh) * .008) rgba(0, 0, 0, .2);--radius: calc(var(--canvas-height, 100vh) * .019);--gutter: calc(var(--canvas-height, 100vh) * .032)}#artist-info-popup .popup-card{width:calc(var(--canvas-height, 100vh) * .6 * 1.5);height:calc(var(--canvas-height, 100vh) * .6);max-width:none;max-height:none;min-width:none;min-height:none}#artist-info-popup .popup-inner{gap:calc(var(--canvas-height, 100vh) * .032);padding:calc(var(--canvas-height, 100vh) * .06) calc(var(--canvas-height, 100vh) * .032) calc(var(--canvas-height, 100vh) * .032)}#artist-info-popup .art-frame{border-radius:calc(var(--canvas-height, 100vh) * .008);padding:calc(var(--canvas-height, 100vh) * .004)}#artist-info-popup .art-frame img{max-height:calc(var(--canvas-height, 100vh) * .35);border-radius:calc(var(--canvas-height, 100vh) * .006)}#artist-info-popup figcaption{margin:calc(var(--canvas-height, 100vh) * .012) calc(var(--canvas-height, 100vh) * .006) 0;font-size:calc(var(--canvas-height, 100vh) * .016);line-height:1.35}#artist-info-popup .note-paper{padding:calc(var(--canvas-height, 100vh) * .028)}#artist-info-popup .note-paper h2{margin:0 0 .6em;font-size:calc(var(--canvas-height, 100vh) * .026);line-height:1.25}#artist-info-popup .note-paper p{margin:.75em 0;font-size:calc(var(--canvas-height, 100vh) * .016);line-height:1.35}.popup-overlay{position:fixed;top:0;left:0;width:100vw;height:var(--canvas-height);background:#0006;z-index:1000;display:flex;align-items:center;justify-content:center;pointer-events:auto}.popup{z-index:1001;pointer-events:auto}#help-popup-overlay{background:#00000080}.help-popup-card{width:calc(var(--canvas-height, 100vh) * 1.2);height:calc(var(--canvas-height, 100vh) * .7);max-width:none;max-height:none;min-width:none;min-height:none}.help-popup-inner{display:flex;justify-content:center;padding:calc(var(--canvas-height, 100vh) * .02);height:100%;overflow:hidden}.help-content{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.help-content .note-paper{width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;max-width:100%;min-height:auto;padding:calc(var(--canvas-height, 100vh) * .02);font-size:calc(var(--canvas-height, 100vh) * .024);line-height:1.5}.help-content .note-paper h1,.help-content .note-paper h2,.help-content .note-paper h3{font-size:calc(var(--canvas-height, 100vh) * .032);line-height:1.3;margin:calc(var(--canvas-height, 100vh) * .024) 0}.help-content .note-paper p,.help-content .note-paper li{font-size:calc(var(--canvas-height, 100vh) * .024);line-height:1.5;margin:calc(var(--canvas-height, 100vh) * .016) 0}.help-content .note-paper ul,.help-content .note-paper ol{margin:calc(var(--canvas-height, 100vh) * .024) 0;padding-left:calc(var(--canvas-height, 100vh) * .032)}.popup-overlay{position:relative}.carousel-popup-card{width:calc(var(--canvas-height, 100vh) * .7 * .6);height:calc(var(--canvas-height, 100vh) * .7);transform:scale(var(--popup-scale, 1));transform-origin:center center}.carousel-popup-inner{display:flex;justify-content:center;align-items:center;padding:calc(var(--canvas-height, 100vh) * .024);height:100%}.carousel-container{position:relative;width:100%;height:100%;display:flex;flex-direction:column;align-items:center}.carousel-wrapper{position:relative;width:100%;height:calc(var(--canvas-height, 100vh) * .5);overflow:hidden}.carousel-track{display:flex;height:100%;transition:transform .3s ease-in-out}.carousel-slide{min-width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:calc(var(--canvas-height, 100vh) * .012)}.carousel-slide img{max-width:100%;max-height:100%;object-fit:contain}.carousel-arrow{position:absolute;top:50%;transform:translate(15%,-50%);background:none;border:none;width:auto;height:auto;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:1010;transition:all .2s ease}.carousel-arrow img{height:calc(var(--canvas-height, 100vh) * .096);width:auto;pointer-events:none;transition:all .2s ease;object-fit:contain;max-width:none;max-height:none}.carousel-arrow:hover{transform:translate(15%,-50%) scale(1.1)}.carousel-arrow:hover img{opacity:1}.carousel-arrow:active{transform:translate(15%,-50%) scale(.95)}.carousel-arrow-left{left:calc(50% - (var(--canvas-height, 100vh) * .7 * .6 / 2) - (var(--canvas-height, 100vh) * .048))}.carousel-arrow-right{left:calc(50% + (var(--canvas-height, 100vh) * .7 * .6 / 2) - (var(--canvas-height, 100vh) * .048))}.carousel-arrow:disabled{opacity:0;cursor:not-allowed;transform:translateY(-50%) scale(1)}.carousel-arrow:disabled:hover{transform:translateY(-50%) scale(1)}.carousel-arrow:disabled:hover img{opacity:0}.carousel-dots{display:flex;gap:calc(var(--canvas-height, 100vh) * .008);margin-top:calc(var(--canvas-height, 100vh) * .02);justify-content:center}.carousel-dot{width:calc(var(--canvas-height, 100vh) * .012);height:calc(var(--canvas-height, 100vh) * .012);border-radius:50%;background:#ccc;cursor:pointer;transition:all .2s ease;border:none}.carousel-dot.active{background:var(--mint);transform:scale(1.2)}.carousel-dot:hover{background:#999}.send-to-tate-popup-card{width:calc(var(--canvas-height, 100vh) * .8 * .8);height:calc(var(--canvas-height, 100vh) * .8);transform:scale(var(--popup-scale, 1));transform-origin:center center;position:relative;overflow:visible;display:flex;flex-direction:column}.send-to-tate-popup-card .popup-ribbon{background:linear-gradient(135deg,#a855f7,#8b5cf6);color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;padding:calc(var(--canvas-height, 100vh) * .012);height:calc(var(--canvas-height, 100vh) * .08);clip-path:polygon(0 0,calc(100% - 30px) 0,100% 30px,100% 100%,30px 100%,0 100%);position:relative;z-index:1;flex-shrink:0}.send-to-tate-popup-card .popup-ribbon h2{margin:0;font-size:calc(var(--canvas-height, 100vh) * .024);font-weight:700;font-family:Arial,sans-serif}.send-to-tate-popup-inner{display:flex;justify-content:center;align-items:flex-start;padding:calc(var(--canvas-height, 100vh) * .024);height:calc(100% - calc(var(--canvas-height, 100vh) * .08));overflow-y:auto;overflow-x:hidden;flex:1}.send-to-tate-form{width:100%;max-width:100%;display:flex;flex-direction:column;gap:calc(var(--canvas-height, 100vh) * .02)}.thumbnail-section{display:flex;flex-direction:column;align-items:center;gap:calc(var(--canvas-height, 100vh) * .012);margin-bottom:calc(var(--canvas-height, 100vh) * .02);padding:calc(var(--canvas-height, 100vh) * .016)}.thumbnail-title{margin:0;font-size:calc(var(--canvas-height, 100vh) * .024);font-weight:700;color:#333;font-family:Arial,sans-serif;text-align:center}.thumbnail-container{display:flex;align-items:center;justify-content:center;width:calc(var(--canvas-height, 100vh) * .2);height:calc(var(--canvas-height, 100vh) * .15);border-radius:calc(var(--canvas-height, 100vh) * .008);overflow:hidden;box-shadow:0 calc(var(--canvas-height, 100vh) * .004) calc(var(--canvas-height, 100vh) * .012) #00000026;background:#fff}.sculpture-thumbnail{width:100%;height:100%;object-fit:contain;border-radius:calc(var(--canvas-height, 100vh) * .008)}.form-field{display:flex;flex-direction:column;gap:calc(var(--canvas-height, 100vh) * .008)}.form-field label{font-size:calc(var(--canvas-height, 100vh) * .024);font-weight:700;color:#333;font-family:Arial,sans-serif;margin:0}.form-field input{padding:calc(var(--canvas-height, 100vh) * .012);border:calc(var(--canvas-height, 100vh) * .002) solid #ccc;border-radius:calc(var(--canvas-height, 100vh) * .008);font-size:calc(var(--canvas-height, 100vh) * .02);font-family:Arial,sans-serif;background:#e5e5e5;color:#666;transition:all .2s ease}.form-field input:focus{outline:none;border-color:#a855f7;background:#fff;color:#333;box-shadow:0 0 0 calc(var(--canvas-height, 100vh) * .002) #a855f733}.form-field input::placeholder{color:#999;font-style:italic}.terms-section{margin-top:calc(var(--canvas-height, 100vh) * .016);padding:calc(var(--canvas-height, 100vh) * .016)}.terms-text,.privacy-text{font-size:calc(var(--canvas-height, 100vh) * .012);line-height:1.4;color:#333;margin:0 0 calc(var(--canvas-height, 100vh) * .012) 0;font-family:Arial,sans-serif}.privacy-text{margin-bottom:0}.submit-button{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#10d9c4,#0bb5a6);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;box-shadow:0 calc(var(--canvas-height, 100vh) * .004) calc(var(--canvas-height, 100vh) * .024) #0000004d}.submit-button:hover{transform:scale(1.1);box-shadow:0 calc(var(--canvas-height, 100vh) * .006) calc(var(--canvas-height, 100vh) * .016) #0006}.submit-button:active{transform:scale(.95)}.submit-button:disabled{opacity:.5;cursor:not-allowed;transform:scale(1)}.submit-icon{width:200%;height:200%;object-fit:contain}.send-to-tate-popup-card .submit-button{position:absolute!important;bottom:-24px!important;right:-24px!important;z-index:20!important}.form-field input.error{border-color:#ef4444;background:#fef2f2}.form-field input.error:focus{border-color:#ef4444;box-shadow:0 0 0 calc(var(--canvas-height, 100vh) * .002) #ef444433}.error-message{color:#ef4444;font-size:calc(var(--canvas-height, 100vh) * .016);margin-top:calc(var(--canvas-height, 100vh) * .004);font-family:Arial,sans-serif}@media (max-width: 768px){.send-to-tate-popup-card{width:calc(var(--canvas-height, 100vh) * .9);height:calc(var(--canvas-height, 100vh) * .85)}}@media (max-width: 480px){.send-to-tate-popup-card{width:calc(var(--canvas-height, 100vh) * .95);height:calc(var(--canvas-height, 100vh) * .9)}}
