@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;600;700&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--ink:#35463b;--muted:#727d71;--green:#426b50;--paper:#fbf9f2;--line:#e1e6d7}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans','Noto Sans KR',sans-serif}a{color:inherit}button{font:inherit;cursor:pointer;touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid #417b60;outline-offset:5px}header{max-width:1240px;margin:auto;padding:27px 32px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-weight:700;font-size:22px;text-decoration:none}.brand span{font-size:30px;color:#d78f5b}nav{display:flex;gap:26px;font-size:13px}nav a{text-decoration:none}main{max-width:1240px;margin:auto;padding:0 32px}.intro{text-align:center;padding:68px 0 30px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:#899373}h1{font-size:44px;letter-spacing:-1.8px;margin:20px 0}.title-flower{display:inline-block;color:#ce906b;margin-left:15px;font-size:35px;vertical-align:middle}.intro>p{line-height:1.9;color:var(--muted);font-size:15px}.sample-note{display:inline-block;margin:15px 0 0;padding:12px 18px;border:1px solid #e2ddcc;background:#f5f0e4;border-radius:9px;font-size:12px;line-height:1.7;color:#706b59}.sample-note>span{font-size:10px;letter-spacing:1px;font-weight:700;color:#8b6f43;margin-right:8px}.showcase{margin-top:18px;background:#eef1e7;border:1px solid #dfe5d6;border-radius:22px;overflow:hidden}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;border-bottom:1px solid #dce3d3}.toolbar p{margin:0;font-size:12px;color:#65765f}.live-dot{display:inline-block;width:7px;height:7px;background:#8fa77a;border-radius:50%;margin-right:8px}.controls{display:flex;gap:8px}.controls button{padding:10px 13px;min-height:40px;border:1px solid #ced8c3;background:#fafbf5;color:var(--green);border-radius:7px;font-size:12px}.controls button[aria-pressed=true]{background:#426b50;color:#fff}.garden-stage{height:820px;position:relative;isolation:isolate;background:radial-gradient(ellipse at 50% 45%,#f8f9f0 0%,transparent 65%),radial-gradient(#d7dfcb .8px,transparent .8px);background-size:auto,23px 23px}.art-card{position:absolute;width:24%;padding:12px 12px 15px;border:1px solid #e3e1d5;border-radius:4px;background:#fffefa;box-shadow:0 10px 24px #536d4218;text-align:left;color:var(--ink);animation:float 9s ease-in-out infinite;transform:rotate(var(--tilt,-3deg));transition:box-shadow .2s;z-index:2}.art-card:hover,.art-card:focus-within{animation-play-state:paused;box-shadow:0 14px 30px #536d4233;z-index:3}.art-image{display:block;aspect-ratio:1/1.05;overflow:hidden;background:#f7f6ef}.art-image img{width:100%;height:100%;object-fit:contain;display:block;mix-blend-mode:multiply}.art-caption{display:block;margin-top:12px;padding:0 3px}.art-caption strong{display:block;font-size:13px;font-weight:600}.art-caption>span{display:block;font-size:10px;color:#8e9585;margin-top:6px}.tape{position:absolute;top:-10px;left:35%;width:30%;height:23px;background:#dcd1b399;transform:rotate(-5deg)}.art-0{left:7%;top:52px;--tilt:-6deg;animation-delay:-1s}.art-1{left:37%;top:28px;--tilt:4deg;animation-delay:-4s}.art-2{left:68%;top:78px;--tilt:-3deg;animation-delay:-7s}.art-3{left:10%;top:421px;--tilt:4deg;animation-delay:-3s}.art-4{left:40%;top:403px;--tilt:-4deg;animation-delay:-6s}.art-5{left:70%;top:438px;--tilt:5deg;animation-delay:-8s}.garden-word{position:absolute;top:48%;left:0;width:100%;text-align:center;color:#a4b28f;font-size:22px;font-style:italic;letter-spacing:2px}.decoration{position:absolute;color:#b9c7a5;font-size:50px}.flower-one{left:1.5%;top:48%}.flower-two{right:2%;top:44%;color:#dbb29a}.stage-hint{display:none}.paused .art-card{animation-play-state:paused}.gallery .garden-stage{height:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding:35px}.gallery .art-card{position:relative;left:auto;top:auto;width:100%;transform:none;animation:none}.gallery .garden-word,.gallery .decoration{display:none}.future{text-align:center;max-width:640px;margin:66px auto 70px}.future h2{font-size:25px;letter-spacing:-.6px}.future p{font-size:14px;color:var(--muted);line-height:1.9}.primary{display:inline-block;margin-top:16px;padding:14px 22px;background:var(--green);color:#fff;text-decoration:none;border-radius:7px;font-size:13px}footer{border-top:1px solid var(--line);max-width:1176px;margin:auto;padding:25px 0 32px;display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--muted)}footer>span{font-weight:700;font-size:16px}dialog{padding:30px;border:1px solid #ddd;border-radius:15px;background:var(--paper);width:min(900px,92vw);max-height:90dvh;color:var(--ink)}dialog::backdrop{background:#263528a6}.close{position:absolute;top:9px;right:12px;border:0;background:transparent;font-size:29px;color:var(--ink);width:40px;height:40px}.dialog-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:30px;align-items:center}.dialog-layout>img{width:100%;max-height:72dvh;object-fit:contain}.dialog-copy p{font-size:14px;line-height:1.8;color:var(--muted)}.dialog-copy h2{font-size:25px}.credit{font-size:11px!important;margin-top:28px}
@keyframes float{0%,100%{transform:translateY(0) rotate(var(--tilt))}50%{transform:translateY(-13px) rotate(calc(var(--tilt) + 1deg))}}
@media(min-width:701px) and (max-width:1000px){.garden-stage{height:670px}.art-3{top:350px}.art-4{top:337px}.art-5{top:370px}}
@media(max-width:700px){header{padding:20px;gap:18px;flex-wrap:wrap}.brand{font-size:20px}nav{font-size:12px;gap:20px}main{padding:0 16px}.intro{padding:42px 0 20px}h1{font-size:30px;letter-spacing:-1px}.title-flower{font-size:27px;margin-left:8px}.intro>p{font-size:13px}.sample-note{font-size:11px;text-align:left}.toolbar{padding:16px;flex-direction:column;align-items:flex-start;gap:13px}.controls{width:100%}.controls button{flex:1;min-height:44px}.garden-stage{height:850px}.art-card{width:min(55%,220px);padding:9px 9px 13px}.art-0{left:6%;top:35px}.art-1{left:38%;top:285px}.art-2{left:8%;top:533px}.art-3,.art-4,.art-5{display:none}.art-caption strong{font-size:12px}.art-caption>span{font-size:9px}.garden-word{top:28%;font-size:15px;left:auto;right:8%;width:35%;line-height:1.7}.flower-one{left:9%;top:49%}.flower-two{right:7%;top:81%}.stage-hint{display:block;padding:0 18px 17px;font-size:11px;line-height:1.7;color:var(--muted)}.gallery .garden-stage{grid-template-columns:repeat(2,minmax(0,1fr));padding:24px 15px;gap:22px 12px}.gallery .art-card{display:block}.gallery .stage-hint{display:none}.future{margin:45px 10px}.future h2{font-size:22px}.future p{font-size:13px}footer{margin:0 20px;display:block}footer p{font-size:10px}dialog{padding:43px 18px 22px}.dialog-layout{display:block}.dialog-layout>img{max-height:49dvh}.dialog-copy h2{font-size:21px}.dialog-copy p{font-size:12px}.credit{margin-top:17px!important}}
@media(prefers-reduced-motion:reduce){.art-card{animation:none!important}.art-card:hover{transition:none}}
button:disabled{opacity:.55;cursor:not-allowed}.text-button{display:block;margin:18px auto 0;border:0;background:transparent;color:var(--green);text-decoration:underline;font-size:12px}.upload-connection{font-size:12px!important}.submission-dialog{width:min(620px,94vw);padding:42px 28px 28px}.submission-dialog>p{font-size:13px;line-height:1.8}.submission-form label,.submission-dialog form>label,#admin-login label{display:block;font-size:13px;font-weight:600;margin:17px 0 7px}.submission-dialog input:not([type=checkbox]),.submission-dialog textarea,#admin-password{display:block;width:100%;font:inherit;font-size:16px;border:1px solid #cbd6c4;border-radius:7px;padding:12px;background:#fff;color:var(--ink)}.submission-dialog textarea{resize:vertical}.submission-dialog .upload-preview{width:100%;max-height:240px;object-fit:contain;margin-top:16px;background:#eee}.submission-form .consent-line{display:flex;align-items:flex-start;gap:10px;font-weight:400;font-size:12px;line-height:1.8}.consent-line input{flex:0 0 20px;width:20px;height:20px;margin-top:3px;accent-color:var(--green)}.small-copy{font-size:11px!important;line-height:1.8;overflow-wrap:anywhere}.submission-form>a{font-size:12px}.submission-form .primary{display:block;width:100%;border:0}.upload-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #82a884;outline-offset:2px}[hidden]{display:none!important}.admin-main{padding:35px 24px 70px}.admin-main>p{font-size:14px;line-height:1.8;max-width:800px}.admin-main h1{font-size:32px}.admin-main button{min-height:44px;padding:10px 16px;border:1px solid #cbd6c4;border-radius:7px}.admin-main .primary{margin-top:0}#admin-login{max-width:420px}#admin-login .primary{margin-top:15px}#admin-status{min-height:30px}.admin-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:25px}.admin-toolbar select{padding:12px;font:inherit;border:1px solid #cbd6c4;border-radius:7px}.admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.admin-card{padding:18px;border:1px solid #dce3d3;border-radius:12px;background:#fff}.admin-card>img{width:100%;height:240px;object-fit:contain;background:#f6f5f0}.admin-card h2{font-size:18px;overflow-wrap:anywhere}.admin-card p{font-size:12px}.admin-card>a{font-size:12px}.admin-actions{display:flex;gap:8px;flex-wrap:wrap}.admin-actions button{font-size:12px}.admin-pagination{display:flex;gap:12px;justify-content:center;margin-top:25px}.gallery-more{text-align:center;margin:0;padding:20px}.gallery-more button{min-height:44px;padding:10px 20px;border:1px solid #ced8c3;border-radius:7px;color:var(--green);background:#fff}.art-card:nth-of-type(n+7){display:none}.gallery .art-card:nth-of-type(n+7){display:block}
@media(max-width:850px){.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:550px){.admin-grid{grid-template-columns:1fr}.submission-dialog{padding:42px 18px 22px}.admin-main{padding:25px 18px 45px}}

.upload-intro .primary{border:0;min-height:46px}.submission-dialog section>button{margin:12px 10px 0 0;padding:10px 14px;min-height:44px;border:1px solid #cbd6c4;border-radius:7px;background:#f4f7ee;color:var(--green)}
