:root{--bg-deep: #1a1310;--bg-mid: #241a14;--bg-soft: #3a2a1e;--ink: #f9f4e8;--ink-muted: #c9b9a4;--accent: #d98332;--accent-soft: #f4a242;--accent-deep: #b86d29;--gold: linear-gradient(135deg, #f4a242 0%, #d98332 45%, #b86d29 100%);--line: rgba(249, 244, 232, .14);--danger: #d4655a;--ok: #7aab7a;--font-display: "Fraunces", Georgia, serif;--font-body: "Source Sans 3", system-ui, sans-serif;--radius: 6px;color:var(--ink);background:var(--bg-deep);font-family:var(--font-body);line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%}.app-shell{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.app-main{flex:1 0 auto;width:100%}.site-footer{flex-shrink:0;margin-top:auto;padding:1.75rem 1.25rem 1.5rem;border-top:1px solid var(--line);background:linear-gradient(180deg,transparent 0%,rgba(18,14,10,.55) 40%,rgba(12,9,6,.85) 100%);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.site-footer-inner{max-width:1100px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.65rem 1rem;text-align:center}.site-footer-brand{font-family:var(--font-display);font-size:.95rem;letter-spacing:.02em;color:var(--ink)}.site-footer-brand-wrap{display:inline-flex;align-items:center;gap:.45rem}.site-footer-logo{width:1.75rem;height:1.75rem;object-fit:cover;border-radius:6px;flex-shrink:0;box-shadow:0 0 0 1px #f4a2424d}.site-footer-sep{width:1px;height:.9rem;background:var(--line)}.site-footer-credit{margin:0;font-size:.9rem;color:var(--ink-muted);letter-spacing:.01em}.site-footer-credit strong{color:var(--ink);font-weight:600}.site-footer-version{font-size:.78rem;font-weight:600;letter-spacing:.04em;color:var(--ink-muted);font-variant-numeric:tabular-nums}.site-footer-year{font-size:.8rem;color:#c4b8a58c;font-variant-numeric:tabular-nums}.topbar-user{display:inline-flex;align-items:center;gap:.5rem;color:inherit;text-decoration:none}.topbar-user:hover{text-decoration:none}.topbar-avatar,.gallery-list-avatar,.gallery-hero-avatar,.profile-avatar{display:grid;place-items:center;overflow:hidden;border-radius:50%;background:var(--bg-soft);color:var(--accent-soft);font-family:var(--font-display);font-weight:700;border:1px solid var(--line);flex-shrink:0}.topbar-avatar{width:1.85rem;height:1.85rem;font-size:.85rem}.topbar-avatar img,.gallery-list-avatar img,.gallery-hero-avatar img,.profile-avatar img{width:100%;height:100%;object-fit:cover;display:block}.gallery-list-row{align-items:center;gap:.85rem}.gallery-list-avatar{width:2.75rem;height:2.75rem;font-size:1.1rem}.gallery-hero-identity{display:flex;gap:1.1rem;align-items:flex-start}.gallery-hero-avatar{width:5rem;height:5rem;font-size:1.8rem}.gallery-guest-banner{margin:0 0 .4rem;font-size:.9rem;color:var(--accent-soft)}.browse-owner-line{display:flex;align-items:center;gap:.65rem;margin:.5rem 0 .25rem}.browse-owner-line .gallery-list-avatar{width:2rem;height:2rem;font-size:.9rem}.profile-card{max-width:28rem}.profile-avatar-block{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;margin-bottom:1.25rem}.profile-avatar{width:6rem;height:6rem;font-size:2rem}.profile-avatar-actions{display:flex;flex-wrap:wrap;gap:.5rem}@media(max-width:520px){.gallery-hero-identity{flex-direction:column;align-items:center;text-align:center}}@media(max-width:520px){.site-footer-sep{display:none}.site-footer-inner{flex-direction:column;gap:.35rem}}body{margin:0;background:radial-gradient(ellipse 80% 50% at 20% 0%,rgba(217,131,50,.22),transparent 55%),radial-gradient(ellipse 60% 40% at 90% 20%,rgba(90,70,50,.4),transparent 50%),linear-gradient(180deg,#241a14 0%,var(--bg-deep) 45%,#120e0a 100%);background-attachment:fixed}a{color:var(--accent-soft);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{font-family:var(--font-display);font-weight:700;line-height:1.15;margin:0 0 .5rem}p{margin:0 0 1rem}button,input{font:inherit}.brand{font-family:var(--font-display);font-size:clamp(2.8rem,10vw,5rem);letter-spacing:-.02em;margin:0}.brand-eyebrow{margin:.75rem 0 .35rem;font-size:.78rem;letter-spacing:.28em;text-transform:uppercase;font-weight:600;background:var(--gold);-webkit-background-clip:text;background-clip:text;color:transparent}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.brand-sub{color:var(--ink-muted);font-size:1.15rem;max-width:30rem;margin:.5rem 0 0}.page{min-height:auto;padding:1.5rem clamp(1rem,4vw,2.5rem) 2.5rem}.page-center{min-height:calc(100dvh - 5.5rem);display:grid;place-items:center;padding:2rem}.hero{min-height:calc(100dvh - 5.5rem);display:flex;flex-direction:column;justify-content:center;padding:clamp(1.5rem,5vw,4rem);position:relative;overflow:hidden}.hero-branded{align-items:center;text-align:center}.hero-glow{position:absolute;inset:-20% -10% auto;height:70%;background:radial-gradient(ellipse 55% 50% at 50% 35%,rgba(217,131,50,.28),transparent 70%),radial-gradient(ellipse 40% 35% at 20% 60%,rgba(184,109,41,.12),transparent 65%);pointer-events:none;animation:glowPulse 8s ease-in-out infinite alternate}@keyframes glowPulse{0%{opacity:.75;transform:scale(1)}to{opacity:1;transform:scale(1.04)}}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 10%,rgba(18,14,10,.55) 70%,rgba(14,10,8,.92) 100%),url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.06'/%3E%3C/svg%3E");pointer-events:none}.hero-content{position:relative;z-index:1;max-width:40rem;margin:0 auto;display:grid;justify-items:center;animation:rise .9s ease-out both}.hero-logo{width:min(78vw,300px);height:auto;border-radius:22px;box-shadow:0 0 0 1px #f4a24247,0 20px 56px #00000080,0 0 72px #d9833238;animation:logoIn 1s ease both}.hero-branded .brand-sub{margin-top:1.25rem}@keyframes logoIn{0%{opacity:0;transform:scale(.92) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem;justify-content:center}.hero-features{list-style:none;margin:2.5rem 0 0;padding:0;display:grid;gap:.85rem;width:min(100%,26rem);text-align:left}.hero-features li{display:flex;gap:.85rem;align-items:flex-start;padding:.85rem 1rem;border:1px solid var(--line);border-radius:12px;background:linear-gradient(135deg,#d9833214,#0003);animation:rise .7s ease both}.hero-features li:nth-child(2){animation-delay:.08s}.hero-features li:nth-child(3){animation-delay:.16s}.hero-features strong{display:block;font-size:.98rem}.hero-features .muted{font-size:.88rem}.hero-feature-icon{width:2.6rem;height:2.6rem;flex-shrink:0;display:grid;place-items:center;border-radius:10px;background:#00000040;border:1px solid rgba(244,162,66,.35)}.hero-feature-icon svg{width:1.65rem;height:1.65rem}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:1px solid transparent;background:var(--gold);color:#1a120a;padding:.75rem 1.25rem;border-radius:var(--radius);font-weight:600;cursor:pointer;transition:transform .15s ease,filter .15s ease,border-color .15s ease}.btn:hover{filter:brightness(1.08);text-decoration:none;transform:translateY(-1px)}.btn-glow{box-shadow:0 0 0 1px #f4a24259,0 8px 28px #d9833259}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn-ghost{background:transparent;border-color:var(--line);color:var(--ink)}.btn-ghost:hover{background:#f4efe60f;border-color:var(--ink-muted)}.btn-danger{background:transparent;border-color:var(--danger);color:var(--danger)}.form{width:min(100%,24rem);display:grid;gap:.9rem;animation:fadeIn .4s ease both}.captcha-block{display:grid;gap:.55rem;padding:.75rem 0 .25rem;border-top:1px solid var(--line)}.captcha-row{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.captcha-image{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#f4efe6;line-height:0;min-width:180px;min-height:56px}.captcha-image svg{display:block}.form label{display:grid;gap:.35rem;font-size:.9rem;color:var(--ink-muted)}.form input{background:#00000040;border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);padding:.7rem .85rem}.password-field{position:relative;display:block}.password-field input{width:100%;padding-right:2.75rem;box-sizing:border-box}.password-toggle{position:absolute;right:.35rem;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:2.25rem;height:2.25rem;border:none;background:transparent;color:var(--ink-muted);cursor:pointer;border-radius:6px;padding:0}.password-toggle:hover{color:var(--ink);background:#ffffff0f}.form input:focus{outline:1px solid var(--accent);border-color:var(--accent)}.error{color:var(--danger);font-size:.9rem}.muted{color:var(--ink-muted)}.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--line)}.topbar .logo{font-family:var(--font-display);font-size:1.4rem;color:var(--ink);text-decoration:none}.logo-brand{display:inline-flex;align-items:center;gap:.55rem}.logo-mark,.logo-mark-img{width:2.85rem;height:2.85rem;flex-shrink:0}.logo-mark-btn{display:grid;place-items:center;padding:0;margin:0;border:none;background:transparent;cursor:pointer;border-radius:9px;line-height:0}.logo-mark-btn:hover .logo-mark-img{filter:brightness(1.08);box-shadow:0 0 0 1px #f4a2428c,0 0 16px #d9833240}.logo-mark-img{object-fit:cover;border-radius:9px;box-shadow:0 0 0 1px #f4a24259;transition:filter .15s ease,box-shadow .15s ease}.logo-text{display:flex;flex-direction:column;line-height:1.05;text-decoration:none;color:inherit}.logo-text:hover{text-decoration:none}.logo-title{font-family:var(--font-display);font-size:1.2rem;font-weight:700}.logo-center{font-family:var(--font-body);font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;font-weight:600;background:var(--gold);-webkit-background-clip:text;background-clip:text;color:transparent}.brand-logo-viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:grid;place-items:center;padding:1.5rem;background:#0a0705e0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeIn .2s ease both;cursor:zoom-out}.brand-logo-viewer-close{position:absolute;top:max(.75rem,env(safe-area-inset-top));right:max(.75rem,env(safe-area-inset-right));width:2.75rem;height:2.75rem;border:1px solid rgba(244,162,66,.4);border-radius:999px;background:#1a1310e6;color:var(--ink);font-size:1.75rem;line-height:1;cursor:pointer;display:grid;place-items:center;z-index:1;transition:filter .15s ease,border-color .15s ease}.brand-logo-viewer-close:hover{filter:brightness(1.15);border-color:var(--accent-soft)}.brand-logo-viewer-img{width:min(92vw,560px);height:auto;max-height:min(88dvh,560px);object-fit:contain;border-radius:20px;box-shadow:0 0 0 1px #f4a24259,0 24px 64px #0000008c,0 0 80px #d9833233;cursor:default;animation:logoIn .35s ease both}.auth-brand{display:flex;flex-direction:column;align-items:center;margin-bottom:.5rem}.auth-brand-logo{width:8.75rem;height:auto;border-radius:16px;box-shadow:0 0 0 1px #f4a2424d,0 12px 36px #0006,0 0 40px #d9833226}.auth-brand-sm .auth-brand-logo{width:5.5rem;border-radius:12px}.nav-links{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:center}.gallery-cover{margin-bottom:2.5rem;animation:rise .6s ease both}.gallery-cover h1{font-size:clamp(2rem,6vw,3.2rem)}.sync-options{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--line);display:grid;gap:1rem;max-width:36rem;text-align:left}.sync-options-title{font-size:1.2rem;margin:0}.sync-scope{border:none;margin:0;padding:0;display:grid;gap:.5rem}.sync-radio{display:flex;align-items:center;gap:.5rem;color:var(--ink);cursor:pointer}.drive-folder-picker{display:grid;gap:.5rem;padding:.75rem;border:1px solid var(--line);border-radius:var(--radius);background:#00000026}.drive-folder-crumbs{display:flex;flex-wrap:wrap;gap:.15rem;align-items:center}.drive-folder-list{list-style:none;margin:0;padding:0;display:grid;gap:.35rem;max-height:14rem;overflow:auto}.drive-folder-list li{display:flex;gap:.5rem;align-items:center}.drive-folder-item{flex:1;text-align:left;background:transparent;border:1px solid transparent;border-radius:6px;color:var(--ink);padding:.4rem .55rem;cursor:pointer;font:inherit}.drive-folder-item:hover{border-color:var(--line);background:#ffffff0a}.drive-folder-item.selected{border-color:var(--accent);background:#c4783a1f}.sync-options-actions{display:flex;flex-wrap:wrap;gap:.65rem}.sync-options label{display:grid;gap:.35rem;font-size:.9rem;color:var(--ink-muted)}.sync-options input[type=text],.sync-options label>input{background:#00000040;border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);padding:.7rem .85rem;font:inherit}.stats{color:var(--ink-muted);font-size:1rem}.section{margin-bottom:2.5rem;animation:fadeIn .5s ease both}.section h2{font-size:1.5rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--line)}.chip-row{display:flex;flex-wrap:wrap;gap:.6rem}.chip{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.15rem;padding:.75rem 1rem;background:#ffffff0a;border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);cursor:pointer;text-align:left;transition:border-color .15s ease,background .15s ease}.chip:hover,.chip.active{border-color:var(--accent);background:#c4783a1f;text-decoration:none}.chip small{color:var(--ink-muted);font-size:.8rem}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem}.media-toolbar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin:.75rem 0 1rem}.browse-filters{display:flex;flex-wrap:wrap;gap:.65rem .75rem;align-items:flex-end;margin:.85rem 0 .25rem;padding:.85rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.browse-filter{display:flex;flex-direction:column;gap:.3rem;min-width:7.5rem;flex:1 1 7.5rem;max-width:14rem}.browse-filter span{font-size:.75rem;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted)}.browse-filter select{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;padding:.55rem 2rem .55rem .75rem;border-radius:var(--radius);border:1px solid var(--line);background:linear-gradient(45deg,transparent 50%,var(--ink-muted) 50%) calc(100% - 14px) / 5px 5px no-repeat,linear-gradient(135deg,var(--ink-muted) 50%,transparent 50%) calc(100% - 9px) / 5px 5px no-repeat,#00000047;color:var(--ink);font:inherit;cursor:pointer}.browse-filter select:disabled{opacity:.45;cursor:not-allowed}.browse-filter select:focus{outline:1px solid var(--accent);outline-offset:1px}.browse-filters>.btn{margin-bottom:.05rem}.media-toolbar .btn.is-active{border-color:var(--accent);color:var(--accent-soft)}.media-thumb{position:relative;aspect-ratio:1;overflow:hidden;border:none;padding:0;cursor:pointer;background:var(--bg-soft);border-radius:var(--radius)}.media-thumb.is-selected{outline:2px solid var(--accent);outline-offset:1px}.media-thumb .select-mark{position:absolute;top:.4rem;left:.4rem;z-index:2;width:1.35rem;height:1.35rem;display:grid;place-items:center;border-radius:3px;border:1.5px solid rgba(244,239,230,.7);background:#00000059;color:var(--ink);font-size:.75rem;font-weight:700;line-height:1}.media-thumb .select-mark.on{background:var(--accent);border-color:var(--accent);color:#1a1510}.exception-picker{text-align:left}.exception-list{list-style:none;margin:0;padding:0;display:grid;gap:.35rem}.exception-list label{display:flex;align-items:flex-start;gap:.5rem;cursor:pointer;font-size:.95rem}.exception-list input{margin-top:.2rem}.lightbox-panel,.bulk-hide-panel{margin:.75rem 1rem 0;padding:1rem;background:#00000059;border:1px solid var(--line);border-radius:var(--radius)}.meta-edit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.65rem .75rem}.meta-edit-grid label{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem;color:var(--muted)}.meta-edit-grid input{padding:.5rem .65rem;border-radius:var(--radius);border:1px solid var(--line);background:#00000040;color:var(--ink);font:inherit}.bulk-hide-panel{max-width:32rem}.tag-create{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:.5rem}.tag-create input,.tag-edit input{flex:1;min-width:12rem;padding:.55rem .75rem;border-radius:var(--radius);border:1px solid var(--line);background:#00000040;color:var(--ink);font:inherit}.tag-card{display:flex;flex-direction:column;gap:.35rem;align-items:flex-start}.tag-actions{display:flex;gap:.35rem;flex-wrap:wrap}.tag-edit{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.media-thumb img,.media-thumb video{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}.media-thumb:hover img,.media-thumb:hover video{transform:scale(1.04)}.media-thumb .badge{position:absolute;left:.4rem;bottom:.4rem;font-size:.7rem;background:#0000008c;padding:.15rem .4rem;border-radius:2px}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#080604eb;display:grid;grid-template-rows:auto minmax(0,1fr) auto;padding:.85rem 1rem 1rem;gap:.65rem;animation:fadeIn .2s ease}.lightbox-top,.lightbox-bottom{display:flex;justify-content:space-between;align-items:center;gap:1rem}.lightbox-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(16rem,20rem);gap:.85rem;min-height:0;align-items:stretch}.lightbox-main{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:.5rem;min-width:0;min-height:0}.lightbox-stage{display:grid;place-items:center;min-height:0;align-content:center}.lightbox-stage img,.lightbox-stage video{max-width:100%;max-height:min(72dvh,calc(100dvh - 9.5rem));width:auto;height:auto;object-fit:contain}.lightbox-main .lightbox-panel{margin:0;max-height:min(28vh,14rem);overflow:auto}.lightbox-comments{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:.55rem;margin:0;padding:.75rem .85rem;min-height:0;border:1px solid var(--line);border-radius:var(--radius);background:#00000047;text-align:left}.lightbox-comments-title{margin:0;font-size:1rem}.lightbox-comments-scroll{min-height:0;overflow:auto;padding-right:.15rem}@media(max-width:820px){.lightbox-body{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) minmax(12rem,38%)}.lightbox-stage img,.lightbox-stage video{max-height:min(48dvh,calc(100dvh - 16rem))}.lightbox-comments{border-left:none;border-top:1px solid var(--line)}}.comment-list,.comment-replies{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}.comment-replies{margin:.55rem 0 0 .85rem;padding-left:.75rem;border-left:2px solid var(--line)}.comment-item{display:grid;gap:.25rem}.comment-meta{display:flex;flex-wrap:wrap;gap:.5rem;align-items:baseline;font-size:.85rem}.comment-body{margin:0;white-space:pre-wrap;word-break:break-word}.comment-actions{display:flex;gap:.35rem;flex-wrap:wrap}.comment-actions .btn{padding:.2rem .45rem;font-size:.8rem}.comment-form{display:grid;gap:.5rem;margin-top:0}.comment-form textarea{width:100%;box-sizing:border-box;resize:vertical;min-height:2.8rem;background:#00000040;border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);padding:.65rem .75rem;font:inherit}.list{display:grid;gap:.75rem}.list-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 0;border-bottom:1px solid var(--line)}.process-progress{width:min(100%,28rem);margin:1.25rem auto 1rem;text-align:left}.process-progress-head{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.45rem}.process-progress-head strong{font-size:.98rem}.process-progress-pct{font-size:.85rem;font-weight:600;color:var(--accent-soft);font-variant-numeric:tabular-nums}.process-progress-track{height:.65rem;border-radius:999px;background:#00000059;border:1px solid rgba(244,162,66,.25);overflow:hidden}.process-progress-fill{height:100%;width:0;border-radius:inherit;background:var(--gold);transition:width .35s ease}.process-progress-track.indeterminate .process-progress-fill{width:35%;animation:progressSlide 1.2s ease-in-out infinite}@keyframes progressSlide{0%{transform:translate(-120%)}to{transform:translate(320%)}}.process-progress-meta{margin:.45rem 0 0;font-size:.88rem}.sync-panel{max-width:28rem;margin:0 auto;text-align:center;animation:rise .5s ease both}.sync-list{list-style:none;padding:0;margin:2rem 0;text-align:left;display:grid;gap:.75rem}.sync-list li{display:flex;gap:.6rem;align-items:center;color:var(--ink-muted)}.sync-list li.done{color:var(--ok)}.tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.empty{padding:2rem 0;color:var(--ink-muted)}@media(max-width:640px){.media-grid{grid-template-columns:repeat(3,1fr);gap:.35rem}}
