.pyne-studio{padding:38px max(24px,calc((100vw - 1540px)/2)) 54px;background:#081f19;color:#fff}
.pyne-studio [hidden]{display:none!important}
.pyne-studio>header{display:grid;grid-template-columns:minmax(0,760px) auto;align-items:end;gap:40px;max-width:1540px;margin:0 auto 24px}
.pyne-studio>header span{color:#ffad72;font-size:.64rem;letter-spacing:.16em}
.pyne-studio>header h1{margin:7px 0 9px;color:#fff;font:600 clamp(2.5rem,4vw,4.4rem)/.9 Georgia,serif;letter-spacing:-.055em}
.pyne-studio>header p{max-width:690px;margin:0;color:#b8cbc4;font-size:.86rem;line-height:1.5}
.pyne-editor{display:grid;grid-template-columns:400px minmax(0,1fr);max-width:1540px;min-height:720px;margin:auto;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:#102b23;box-shadow:0 28px 80px rgba(0,0,0,.28)}
.pyne-editor aside{max-height:790px;padding:24px;gap:14px;overflow:auto;background:#0e2a22}
.pyne-editor label{gap:6px;color:#d9e5e0;font-size:.65rem;letter-spacing:.12em}
.pyne-editor input,.pyne-editor select,.pyne-editor textarea{min-height:48px;border:1px solid #698179;border-radius:9px;background:#fffdfa;color:#10251e;font-size:.84rem;font-weight:700;box-shadow:none}
.pyne-editor textarea{min-height:92px}
.pyne-editor .pyne-check{min-height:38px;color:#d9e5e0;font-size:.72rem;font-weight:650;letter-spacing:0;line-height:1.35;text-transform:none}
.pyne-counter{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin:5px 0 3px;color:#9db2aa;font-size:.7rem;line-height:1.3}
.pyne-counter b{max-width:68%;color:#d6e2dd;font-size:.58rem;font-weight:600;text-align:right}
.pyne-control-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pyne-control-grid label{min-width:0}
.pyne-control-grid output{float:right;color:#d9ff3f;font-size:.6rem;letter-spacing:0;text-transform:none}
.pyne-control-grid input[type="range"]{min-height:28px;padding:0;accent-color:#ff6a4c}
.pyne-control-grid{display:block;margin-top:14px}
.pyne-basic-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pyne-basic-controls label:last-child{grid-column:1/-1}
.pyne-advanced-controls{margin-top:12px;border:1px solid #4a6b5e;border-radius:10px;background:#16372d;color:#f5f6ee}
.pyne-artwork-controls>label,.pyne-artwork-controls>.pyne-counter,.pyne-artwork-controls .pyne-basic-controls,.pyne-artwork-controls .pyne-text-only{display:none!important}
.pyne-advanced-controls summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:62px;padding:10px 15px;cursor:pointer;list-style:none}
.pyne-advanced-controls summary::-webkit-details-marker{display:none}
.pyne-advanced-controls summary span{display:grid;gap:3px}
.pyne-advanced-controls summary strong{font-size:.84rem;line-height:1.2}
.pyne-advanced-controls summary small{color:#b4ccc1;font-size:.68rem;font-weight:400;line-height:1.3}
.pyne-advanced-controls summary b{display:grid;place-items:center;flex:none;width:28px;height:28px;border:1px solid #78988a;border-radius:50%;font:700 1.15rem/1 Arial,sans-serif}
.pyne-advanced-controls[open] summary b{transform:rotate(45deg)}
.pyne-advanced-controls summary:focus-visible,.pyne-range-step:focus-visible,.pyne-preview-expand:focus-visible{outline:3px solid #d9ff3f;outline-offset:2px}
.pyne-advanced-controls__body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px;padding:16px;border-top:1px solid #4a6b5e}
.pyne-advanced-controls__body label{display:block;color:#dcece4;font-size:.69rem;line-height:1.35}
.pyne-advanced-controls__body label:nth-of-type(n+4){grid-column:1/-1}
.pyne-advanced-controls__body output{float:right;color:#fff;font-size:.73rem;font-weight:800}
.pyne-range-row{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:10px;margin-top:6px}
.pyne-editor .pyne-range-row input[type="range"]{display:block;width:100%;height:44px;min-height:44px;margin:0;padding:0;border:0;background:transparent;box-shadow:none;accent-color:#ff7457;touch-action:none;cursor:pointer}
.pyne-range-step{width:44px;height:44px;padding:0;border:1px solid #739487;border-radius:8px;background:#23483b;color:#fff;font-family:Arial,sans-serif;font-size:1.35rem!important;font-weight:700;line-height:1!important;cursor:pointer}
.pyne-range-step:hover{background:#315c49}
.pyne-advanced-controls__body .pyne-reset-position{grid-column:1/-1;min-height:44px;margin-top:2px;background:#244639;text-align:center}
.pyne-preview-expand{display:none}
.pyne-reset-position{min-height:36px;border:1px solid #60776f;border-radius:7px;background:transparent;color:#fff;font-size:.65rem;font-weight:800}
.pyne-button{min-height:50px;border-radius:9px;background:#ff6a4c;color:#fff!important;box-shadow:0 9px 24px rgba(255,92,62,.18)}
.pyne-button:disabled{background:#355048;box-shadow:none}
.pyne-status{margin:0;padding:10px 11px;border-radius:8px;background:rgba(255,255,255,.06);color:#c2d2cd;font-size:.72rem;line-height:1.4}
.pyne-preview{position:relative;display:flex;min-width:0;flex-direction:column;align-items:stretch;padding:22px;background:linear-gradient(145deg,#d7d2ca,#f1eee8);color:#10251e}
.pyne-preview__toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px;color:#233d35;font-size:.72rem;font-weight:800}
.pyne-preview__toolbar b{padding:5px 8px;border-radius:99px;background:#0d2c23;color:#fff;font-size:.54rem;letter-spacing:.09em}
.pyne-preview .pyne-drag-hint{display:block;margin:-4px 0 10px;color:#375548;font-size:.67rem;font-weight:700;line-height:1.35}
.pyne-preview__frame{width:min(100%,850px);max-height:72vh;aspect-ratio:1;align-self:center;border-radius:12px;background:#cfc7ba;box-shadow:0 18px 50px rgba(25,28,24,.18)}
.pyne-preview__frame>img{display:block;object-fit:cover}
.pyne-preview__safe{z-index:2;display:grid;place-items:center;padding:2%;border:1px solid rgba(255,255,255,.48);background:rgba(255,255,255,.025);color:rgba(35,31,28,.7);font-size:clamp(1rem,calc(3.5rem - var(--pyne-characters,8)*.055rem),3rem);font-weight:600;line-height:1.05;text-shadow:0 1px rgba(255,255,255,.65),0 -1px rgba(0,0,0,.28);mix-blend-mode:multiply}
.pyne-preview__safe span{width:100%;max-width:100%;max-height:100%;overflow:hidden;white-space:pre-wrap;overflow-wrap:normal;word-break:keep-all;transform-origin:center;transition:none}
.pyne-preview__safe span,.pyne-preview__safe>img{touch-action:none;cursor:grab;user-select:none}
.pyne-preview__safe span.is-dragging,.pyne-preview__safe>img.is-dragging{cursor:grabbing}
.pyne-preview__safe span:focus-visible,.pyne-preview__safe>img:focus-visible{outline:3px solid #ff6a4c;outline-offset:3px}
.pyne-preview__safe[data-text-layout="vertical"] span{width:auto;height:100%;white-space:nowrap}
.pyne-preview__safe>img{width:64%;height:64%;object-fit:contain;filter:grayscale(1) sepia(.12) contrast(1.2) brightness(1.08);opacity:.58;mix-blend-mode:multiply}
.pyne-studio[data-surface="wood"] .pyne-preview__safe{color:rgba(44,17,4,.72);text-shadow:0 1px rgba(255,220,175,.22)}
.pyne-studio[data-surface="wood"] .pyne-preview__safe>img{filter:grayscale(1) sepia(.35) contrast(1.45) brightness(.7);opacity:.68}
.pyne-studio[data-surface="dark"] .pyne-preview__safe{color:rgba(238,229,214,.78);text-shadow:0 1px 2px #000;mix-blend-mode:screen}
.pyne-studio[data-surface="dark"] .pyne-preview__safe>img{filter:grayscale(1) contrast(1.5) brightness(1.45);opacity:.66;mix-blend-mode:screen}
.pyne-studio[data-surface="glass"] .pyne-preview__safe{color:rgba(255,255,255,.82);text-shadow:0 1px 2px rgba(0,0,0,.6),0 0 6px rgba(255,255,255,.25);mix-blend-mode:screen}
.pyne-studio[data-surface="glass"] .pyne-preview__safe{font-size:clamp(.8rem,calc(2.4rem - var(--pyne-characters,8)*.08rem),1.8rem)}
.pyne-studio[data-surface="glass"] .pyne-preview__safe>img{filter:grayscale(1) contrast(1.45) brightness(1.65);opacity:.62;mix-blend-mode:screen}
.pyne-preview>small{margin:12px auto 0;color:#56665f;font-size:.65rem;text-align:center}
.pyne-art-library{padding:12px;border:1px solid rgba(255,255,255,.15);border-radius:10px;background:rgba(255,255,255,.04)}
.pyne-art-library__tools{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-bottom:10px}
.pyne-art-library__tools button{min-height:38px;border:1px solid #526b62;border-radius:7px;background:transparent;color:#dbe7e2;font-size:.68rem;font-weight:800}
.pyne-art-library__tools button.is-active{border-color:#ff8c68;background:#ff6a4c;color:#fff}
.pyne-art-library>label input{min-height:42px;margin-top:5px;padding:0 10px}
.pyne-art-library>p{margin:9px 0;color:#adc0b9;font-size:.65rem}
.pyne-art-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;max-height:270px;overflow:auto}
.pyne-art-grid button{min-width:0;padding:5px;border:1px solid rgba(255,255,255,.14);border-radius:7px;background:#18382e;color:#fff;text-align:left}
.pyne-art-grid button.is-selected{border-color:#ff7658;box-shadow:0 0 0 2px #ff7658}
.pyne-art-grid img{width:100%;aspect-ratio:1;object-fit:contain;border-radius:4px;background:#eef1ed}
.pyne-art-grid span{display:-webkit-box;margin-top:4px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:.54rem;line-height:1.2}

@media(max-width:800px){
.pyne-studio{padding:22px 10px 34px}
.pyne-studio>header{display:block;margin:0 4px 16px}
.pyne-studio>header h1{font-size:2.3rem}
.pyne-studio>header p{font-size:.75rem}
.pyne-editor{display:flex;min-height:0;flex-direction:column;border-radius:13px}
.pyne-preview{order:-1;padding:10px}
.pyne-preview__toolbar{margin:0 2px 8px;font-size:.66rem}
.pyne-preview__frame{width:100%;max-height:52vh;border-radius:8px}
.pyne-preview>small{margin-top:7px;font-size:.58rem}
.pyne-editor aside{max-height:none;padding:15px;gap:11px;overflow:visible}
.pyne-control-grid{gap:8px}
.pyne-editor{overflow:visible}
.pyne-preview{box-shadow:0 12px 20px rgba(0,0,0,.15)}
.pyne-preview__toolbar{gap:8px}
.pyne-preview__toolbar span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.pyne-preview .pyne-drag-hint{font-size:.6rem;margin:0 2px 7px}
.pyne-preview__toolbar b{display:none}
.pyne-preview-expand{display:inline-flex;align-items:center;justify-content:center;flex:none;min-height:36px;padding:0 10px;border:1px solid #80978c;border-radius:6px;background:#f8f5ed;color:#10251e;font-size:.68rem;font-weight:800}
.pyne-preview__frame{width:min(100%,230px);max-height:none}
.pyne-preview>small{display:none}
.pyne-preview.is-expanded .pyne-preview__frame{width:100%;max-height:52vh}
.pyne-basic-controls{gap:9px}
.pyne-basic-controls label:last-child{grid-column:1/-1}
.pyne-advanced-controls__body{grid-template-columns:1fr;gap:15px;padding:14px}
.pyne-advanced-controls__body label:nth-of-type(n+4){grid-column:auto}
.pyne-advanced-controls__body .pyne-reset-position{grid-column:auto}
.pyne-art-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-height:320px}
.pyne-preview__safe{font-size:clamp(.78rem,calc(1.8rem - var(--pyne-characters,8)*.025rem),1.55rem)}
.pyne-studio[data-surface="glass"] .pyne-preview__safe{font-size:clamp(.62rem,calc(1.25rem - var(--pyne-characters,8)*.035rem),1rem)}
}
