.tile-page{padding:clamp(88px,10vw,150px) 0 clamp(80px,11vw,160px)}
.tile-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.34fr);gap:32px;align-items:end;padding-bottom:22px;border-bottom:1px solid var(--ink)}
.tile-header h1{max-width:10ch;margin:0;font-size:clamp(48px,7vw,96px);font-weight:800;letter-spacing:-.065em;line-height:.88}
.tile-breadcrumb{position:relative;z-index:2;margin:0 0 28px!important}.tile-breadcrumb a{color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.05em;text-decoration:none;border-bottom:1px solid currentColor}
.tile-header>p{max-width:310px;margin:0;color:var(--muted);font-size:14px;line-height:1.55}
.tile-studio{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(290px,.5fr);gap:clamp(28px,5vw,76px);align-items:start;margin-top:clamp(34px,5vw,68px)}
.tile-stage{padding:clamp(10px,1.5vw,18px);background:#ded9d0}.tile-canvas{aspect-ratio:1;overflow:hidden;background:#f5efe4;box-shadow:0 18px 45px rgba(31,27,22,.08)}.tile-canvas svg{display:block;width:100%;height:100%}
.tile-actions{margin-bottom:30px}.tile-actions button,.tile-palette-actions button,.tile-downloads button{border:0;border-bottom:1px solid currentColor;border-radius:0;background:transparent;padding:5px 0;color:var(--muted);font:inherit;font-size:13px;cursor:pointer}.tile-actions .tile-primary{color:var(--ink);font-size:18px;font-weight:700}
.tile-controls{border-top:1px solid var(--ink)}.tile-controls fieldset{margin:0;padding:15px 0;border:0;border-bottom:1px solid var(--line)}.tile-controls legend,.tile-palette>span{margin-bottom:10px;color:var(--muted);font-size:11px;letter-spacing:.07em;text-transform:uppercase}
.tile-segmented{display:grid;grid-template-columns:repeat(2,1fr);gap:5px}.tile-segmented--four{grid-template-columns:repeat(4,1fr)}.tile-segmented button{min-height:38px;border:1px solid var(--line);background:transparent;color:var(--muted);font:inherit;font-size:11px;cursor:pointer}.tile-segmented button.is-active{border-color:var(--ink);background:var(--ink);color:#fff}
.tile-advanced{border-bottom:1px solid var(--ink)}.tile-advanced summary{padding:16px 0;font-size:12px;font-weight:700;cursor:pointer;list-style:none}.tile-advanced summary::after{content:'+';float:right;font-size:18px;font-weight:400}.tile-advanced[open] summary::after{content:'−'}
.tile-advanced>label{display:grid;grid-template-columns:1fr auto;gap:7px 12px;align-items:center;padding:11px 0;border-top:1px solid var(--line);color:var(--muted);font-size:11px;letter-spacing:.04em;text-transform:uppercase}.tile-advanced output{color:var(--ink);font-variant-numeric:tabular-nums}.tile-advanced input[type=range]{grid-column:1/-1;width:100%;accent-color:var(--ink)}
.tile-colour-count{padding:13px 0!important}.tile-palette{padding:14px 0;border-top:1px solid var(--line)}.tile-palette>span{display:block}.tile-swatches{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.tile-swatches input{width:100%;height:40px;border:1px solid var(--line);border-radius:0;background:var(--swatch);cursor:pointer}.tile-swatches input::-webkit-color-swatch-wrapper{padding:0}.tile-swatches input::-webkit-color-swatch{border:0}.tile-swatches input.is-unused{opacity:.25}.tile-palette-actions{display:flex;justify-content:space-between;margin-top:9px}
.tile-downloads{display:flex;align-items:center;gap:18px;margin-top:28px;padding-top:13px;border-top:1px solid var(--ink)}.tile-downloads p{margin:0 auto 0 0;color:var(--muted);font-size:11px;letter-spacing:.07em;text-transform:uppercase}.tile-status{min-height:1.4em;margin:10px 0 0;color:var(--muted);font-size:11px}.tile-canvas.is-changing svg{animation:tile-in .45s cubic-bezier(.16,1,.3,1)}@keyframes tile-in{from{opacity:0;transform:scale(.975)}to{opacity:1;transform:scale(1)}}
@media(max-width:850px){.tile-studio{grid-template-columns:1fr}.tile-panel{max-width:660px}}
@media(max-width:700px){.tile-page{padding-top:100px}.tile-header{grid-template-columns:1fr;gap:20px}.tile-header h1{font-size:clamp(48px,14vw,72px)}.tile-stage{width:calc(100% + 44px);margin-left:-22px}}
@media(prefers-reduced-motion:reduce){.tile-canvas.is-changing svg{animation:none}}
