*{box-sizing:border-box}html,body{margin:0;background:#f0eee9;font-family:var(--af-font-body);color:var(--af-grey-deep)}.lk,.lk *{box-sizing:content-box}button{font:inherit}.page{min-height:100vh;display:flex;flex-direction:column}.app-header{display:flex;align-items:center;gap:14px;padding:14px 18px;background:#f0eee9;border-bottom:1px solid rgba(26,29,34,.08);position:sticky;top:0;z-index:20}.app-title{display:flex;flex-direction:column;gap:2px;min-width:0}.app-title-main{font-family:var(--af-font-display);font-weight:600;font-size:16px;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-title-sub{font-family:var(--af-font-mono);text-transform:uppercase;font-size:10px;letter-spacing:.14em;color:var(--af-fg-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-actions{margin-left:auto;display:none;gap:10px}.btn{appearance:none;border:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--af-font-mono);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:500;border-radius:8px;padding:11px 16px;text-decoration:none;transition:background .15s,color .15s,border-color .15s,transform .08s}.btn:active{transform:translateY(1px)}.btn--primary{background:var(--af-orange);color:#fff;box-shadow:0 4px 14px #f73b1f40}.btn--primary:hover{background:var(--af-orange-bright)}.btn--ghost{background:transparent;color:var(--af-grey-deep);border:1px solid rgba(26,29,34,.25)}.btn--ghost:hover{border-color:var(--af-grey-deep)}.btn--danger{color:#b3261e;border-color:#b3261e59;margin-top:18px}.btn--danger:hover{border-color:#b3261e}.btn--back{padding:9px 13px;font-size:16px;line-height:1}.btn--small{padding:8px 13px;font-size:11px}.btn--wide{width:100%;padding:14px 16px;font-size:13px}.btn:disabled{opacity:.45;cursor:default}.gallery{padding:22px 18px 60px;max-width:1100px;margin:0 auto;width:100%}.gallery-lede{font-size:15px;line-height:1.55;color:var(--af-fg2);max-width:54ch;margin:4px 0 22px}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}.tcard{display:flex;flex-direction:column;background:#fff;border:1px solid rgba(26,29,34,.1);border-radius:14px;overflow:hidden;text-decoration:none;color:inherit;transition:transform .12s,box-shadow .12s}.tcard:hover{transform:translateY(-2px);box-shadow:0 10px 30px #1a1d221f}.tcard-thumb{pointer-events:none}.tcard-meta{display:flex;flex-direction:column;gap:3px;padding:14px 16px 16px;border-top:1px solid rgba(26,29,34,.08)}.tcard-code{font-family:var(--af-font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--af-orange)}.tcard-name{font-family:var(--af-font-display);font-weight:600;font-size:17px;letter-spacing:-.01em}.tcard-tagline{font-size:12.5px;color:var(--af-fg-muted)}.gallery-note{margin-top:28px;font-family:var(--af-font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--af-fg-muted)}.pv-outer{width:100%;overflow:hidden;position:relative}.pv-frame{width:1080px;height:1350px;transform-origin:top left;pointer-events:none;-webkit-user-select:none;user-select:none}.ed-layout{display:flex;flex-direction:column;gap:16px;padding:16px 14px 110px;max-width:1220px;margin:0 auto;width:100%}.ed-preview-card{background:#fff;border:1px solid rgba(26,29,34,.1);border-radius:14px;overflow:hidden;box-shadow:0 6px 24px #1a1d2212}.ed-nav{display:flex;align-items:center;gap:12px;margin-top:12px}.ed-nav-btn{width:40px;height:40px;border-radius:50%;border:1px solid rgba(26,29,34,.25);background:#fff;font-size:20px;line-height:1;cursor:pointer;color:var(--af-grey-deep);flex-shrink:0}.ed-nav-btn:disabled{opacity:.3;cursor:default}.ed-nav-center{flex:1;display:flex;flex-direction:column;align-items:center;gap:7px}.ed-dots{display:flex;gap:8px}.ed-dot{width:9px;height:9px;border-radius:50%;border:none;padding:0;background:#1a1d222e;cursor:pointer;transition:background .15s,transform .15s}.ed-dot--on{background:var(--af-orange);transform:scale(1.25)}.ed-slide-name{font-family:var(--af-font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--af-fg-muted)}.ed-panel{background:#fff;border:1px solid rgba(26,29,34,.1);border-radius:14px;padding:18px 16px 22px;display:flex;flex-direction:column;gap:16px}.ed-panel-title{margin:0;font-family:var(--af-font-display);font-weight:600;font-size:15px;letter-spacing:-.01em}.fld{display:flex;flex-direction:column;gap:6px}.fld-head{display:flex;align-items:baseline;justify-content:space-between}.fld-label{font-family:var(--af-font-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--af-fg2)}.fld-reset{border:none;background:none;cursor:pointer;font-family:var(--af-font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--af-orange);padding:0}.fld input,.fld textarea{width:100%;border:1px solid rgba(26,29,34,.22);border-radius:8px;padding:11px 12px;font-family:var(--af-font-body);font-size:15px;line-height:1.45;color:var(--af-grey-deep);background:#fff;resize:vertical}.fld input:focus,.fld textarea:focus{outline:2px solid var(--af-orange);outline-offset:-1px;border-color:transparent}.fld-foot{display:flex;justify-content:space-between;gap:10px}.fld-hint{font-size:11.5px;color:var(--af-fg-muted);line-height:1.4}.fld-count{font-family:var(--af-font-mono);font-size:10.5px;color:var(--af-fg-muted);margin-left:auto;flex-shrink:0}.fld-count--max{color:var(--af-orange);font-weight:600}.imgup{display:flex;align-items:center;gap:14px;border:1px dashed rgba(26,29,34,.25);border-radius:10px;padding:12px}.imgup-thumb{width:64px;height:64px;flex-shrink:0;border-radius:8px;background:repeating-linear-gradient(135deg,#ededed 0 8px,#f6f6f6 8px 16px);display:flex;align-items:center;justify-content:center;overflow:hidden;color:var(--af-fg-muted);font-size:20px}.imgup-thumb--round{border-radius:50%}.imgup-thumb img{width:100%;height:100%;object-fit:cover}.imgup-body{display:flex;flex-direction:column;gap:8px}.imgup-actions{display:flex;gap:8px}.profile{border:1px solid rgba(26,29,34,.14);border-radius:10px;padding:0 12px}.profile summary{cursor:pointer;padding:13px 0;display:flex;align-items:baseline;gap:10px;list-style:none}.profile summary::-webkit-details-marker{display:none}.profile summary:after{content:"＋";margin-left:auto;color:var(--af-fg-muted)}.profile[open] summary:after{content:"－"}.profile-sub{font-size:11.5px;color:var(--af-fg-muted)}.profile-body{display:flex;flex-direction:column;gap:14px;padding:4px 0 16px}.warn-chip{margin-top:10px;background:#f73b1f17;border:1px solid rgba(247,59,31,.35);color:#c2260c;border-radius:10px;padding:10px 14px;font-size:13px;line-height:1.45}.warn-chip--grey{background:#1a1d220d;border-color:#1a1d2233;color:var(--af-fg2);margin-top:0}.dl-bar{position:fixed;left:0;right:0;bottom:0;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:linear-gradient(to top,#f0eee9 75%,#f0eee900);z-index:30}.sheet-backdrop{position:fixed;inset:0;background:#1a1d2273;z-index:40;display:flex;align-items:flex-end;justify-content:center}.sheet{background:#fff;border-radius:18px 18px 0 0;padding:20px 18px calc(22px + env(safe-area-inset-bottom));width:100%;max-width:480px;display:flex;flex-direction:column;gap:12px}.sheet h3{margin:0 0 4px;font-family:var(--af-font-display);font-size:17px;font-weight:600}.sheet-note{margin:-4px 0 6px;font-size:12.5px;color:var(--af-fg-muted);line-height:1.45}.prog-backdrop{position:fixed;inset:0;background:#f0eee9d1;z-index:50;display:flex;align-items:center;justify-content:center}.prog-card{background:#fff;border:1px solid rgba(26,29,34,.1);border-radius:14px;box-shadow:0 20px 60px #1a1d222e;padding:22px 26px;width:min(340px,84vw);display:flex;flex-direction:column;gap:14px}.prog-label{font-family:var(--af-font-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--af-fg2)}.prog-bar{height:8px;border-radius:6px;background:#1a1d221a;overflow:hidden}.prog-bar i{display:block;height:100%;background:var(--af-orange);transition:width .2s}.gallery-filters{display:flex;gap:8px;margin-bottom:22px}.chip{appearance:none;border:1px solid rgba(26,29,34,.22);background:transparent;border-radius:999px;padding:8px 16px;font-family:var(--af-font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--af-fg2);cursor:pointer;transition:background .15s,color .15s,border-color .15s}.chip:hover{border-color:var(--af-grey-deep);color:var(--af-grey-deep)}.chip--on{background:var(--af-grey-deep);border-color:var(--af-grey-deep);color:#fff}.gallery-section{margin-bottom:34px}.gallery-section-head{display:flex;align-items:baseline;gap:14px;margin-bottom:14px;flex-wrap:wrap}.gallery-section-head h2{margin:0;font-family:var(--af-font-display);font-weight:600;font-size:19px;letter-spacing:-.01em}.gallery-section-head span{font-family:var(--af-font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--af-fg-muted)}.tcard-thumb{position:relative}.tcard-count{position:absolute;right:10px;bottom:10px;background:#1a1d22c7;color:#fff;font-family:var(--af-font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;border-radius:999px;padding:5px 10px;pointer-events:none;transition:background .15s}.tcard-count--live{background:var(--af-orange)}.ed-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.ed-panel-tools{display:flex;gap:8px}.btn--danger-soft{color:#b3261e;border-color:#b3261e59}.btn--danger-soft:hover{border-color:#b3261e}.sheet--adjust{align-items:center}.adjust-box{position:relative;overflow:hidden;border-radius:10px;background:repeating-linear-gradient(135deg,#ededed 0 10px,#f6f6f6 10px 20px);cursor:grab;align-self:center;box-shadow:inset 0 0 0 1px #1a1d2226}.adjust-box:active{cursor:grabbing}.adjust-box img{-webkit-user-select:none;user-select:none;pointer-events:none}.adjust-zoom{display:flex;flex-direction:column;gap:8px}.adjust-zoom input[type=range]{width:100%;accent-color:var(--af-orange)}.adjust-actions{display:flex;justify-content:space-between;gap:10px}@media(min-width:980px){.header-actions{display:flex}.dl-bar{display:none}.ed-layout{display:grid;grid-template-columns:minmax(0,1fr) 420px;align-items:start;gap:24px;padding:24px 24px 48px}.ed-preview{position:sticky;top:82px}.sheet-backdrop{align-items:center}.sheet{border-radius:18px}}
