.linked-editor{position:relative}
.linked-editor textarea{display:block;resize:none;overflow:auto;position:relative;background:transparent;white-space:pre-wrap;overflow-wrap:break-word}
.linked-editor-mirror{position:absolute;left:1px;top:1px;padding:14px;border:0;border-radius:12px;font:inherit;line-height:normal;white-space:pre-wrap;overflow-wrap:break-word;overflow:hidden;color:transparent;pointer-events:none}
.linked-editor-mirror a{color:#175caa;text-decoration:underline;pointer-events:auto}
.qr-description a{color:#175caa;text-decoration:underline;overflow-wrap:anywhere}
.external-link-dialog .primary{display:flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;margin:20px 0 0;width:100%;min-height:52px;border-radius:14px;font:inherit;font-weight:750}
.use-cases{width:100%;max-width:760px;margin:0 auto 24px}
.use-cases a{display:flex;gap:16px;align-items:center;padding:18px;border:0;border-radius:0;color:#514b45;text-decoration:none;background:transparent;font-weight:600}
.use-cases a:hover{text-decoration:underline}.case-arrow{margin-inline-start:auto;font-size:28px}.use-cases img{object-fit:contain}
.case-page{display:block;padding:24px;margin:auto;max-width:1000px;color:#514b45}
.case-page header{display:flex;align-items:center;gap:20px;flex-wrap:wrap;justify-content:space-between}
.case-page nav{display:flex;gap:10px;flex-wrap:wrap}
.case-header-start{display:flex;align-items:center;gap:18px}.case-page .secondary{max-width:320px}
.case-page a{color:#175caa}.case-page article{line-height:1.7;font-size:18px}
.case-page .case-illustration{display:block;width:100%;height:auto;border-radius:16px}
.case-page h1{margin-top:40px;margin-bottom:24px;font-size:clamp(26px,5vw,40px)}.case-page p{max-width:78ch}
:lang(zh) h1,:lang(zh) .eyebrow{letter-spacing:normal;line-height:1.35}
.folder-dialog{max-height:85dvh;overflow:auto}
.folder-dialog button{display:block;width:100%;margin-top:12px}
.folder-dialog input{width:100%;margin-bottom:12px}
.folder-dialog input:focus{outline:none;box-shadow:none;border-color:var(--line,#d6cec5)}
.folder-breadcrumb{display:block;text-align:left;overflow-wrap:anywhere;margin-inline:0}
#qr-gallery-title[role=button]{cursor:pointer}
.folder-card{display:flex;align-items:center;gap:16px;min-height:110px}
.folder-card>span{font-size:40px}
#qr-list .qr-card.folder-card{border-color:transparent;background:transparent;box-shadow:none}
#qr-list .folder-card~.gallery-actions{background:transparent}
#qr-list .folder-card~.gallery-actions{top:18px;bottom:auto}
#qr-list .qr-card.folder-card{padding-inline-end:52px}
.gallery-actions{position:absolute;inset-inline-end:8px;bottom:8px;z-index:2;background:var(--bg,#f4f1ed)}
.qr-card{padding-bottom:52px;user-select:none;-webkit-touch-callout:none}
.folder-dialog .folder-tree-choice{text-align:left;white-space:pre-wrap;overflow-wrap:anywhere}
.folder-result-parent{display:block;width:100%;text-align:start;overflow-wrap:anywhere;margin-bottom:8px}
.folder-breadcrumb,.folder-result-parent{font-size:20px;font-weight:700;line-height:1.3;color:#175caa}
#qr-gallery-title{color:#000}
#qr-gallery-title.folder-root-link{color:#175caa}
.folder-tree-row{display:flex;gap:8px;align-items:stretch}
.folder-tree-row>.folder-tree-choice{flex:1;min-width:0}
.folder-dialog .folder-tree-plus{width:44px;flex:0 0 44px;padding:8px}
.folder-tree-dialog[open]{display:flex;flex-direction:column;overflow:hidden;width:min(440px,90vw)}
.folder-tree-dialog h2{padding-inline-end:36px;flex:none}
.folder-tree-body{overflow:auto;min-height:0;overscroll-behavior:contain;overflow-anchor:none}
.folder-tree-dialog>.folder-tree-close{position:absolute;top:12px;right:12px;width:36px;height:36px;margin:0;padding:0}
.folder-tree-dialog>button{flex:none}
.auth-panel{padding-top:15px}
@media(max-width:850px){.auth-panel{padding-top:12px}}
body .case-page{padding-top:12px}
body.qr-view,body.qr-view .auth-panel{background:#fff}
body.qr-view #qr-public{width:100%;max-width:none;padding-inline:0;border:0;border-radius:0;box-shadow:none;background:transparent}
body.qr-view #public-title,body.qr-view #public-description{width:100%;max-width:none}
body.qr-view #public-photo{width:100%;max-width:none;max-height:none;height:auto}
body.qr-home #auth-card{background:transparent;border:0;box-shadow:none;padding-inline:0}
body.qr-home .auth-header~#auth-card{margin-top:0;padding-top:0}
body.qr-home #home-step>.lede{margin-top:0;padding-top:.825em;padding-top:.5lh}
body.qr-home #qr-list .qr-card:not(.folder-card){background:#fff;border-color:transparent}
body.qr-home #qr-list .qr-card:not(.folder-card)~.gallery-actions{background:#fff}

/* QR controls work on narrow screens too; wide layouts start at tablet width. */
#qr-shape-open{position:absolute;top:0;left:0;width:38px;height:38px}
#qr-color-open{left:46px}
#qr-redirect-url{width:100%;min-width:0;padding:14px;border:1px solid #d5cec6;border-radius:12px;background:#fdfcfb}
#qr-shape-form>label{display:flex;align-items:center;gap:12px;padding:8px 0}
.qr-editor-code,.qr-editor-text,.qr-editor-media{min-width:0}
#qr-step .qr-field{border-top:0;padding-top:0}
#qr-step .qr-field-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:9px}
#qr-step .qr-field-heading>label{margin:0}
#qr-step .qr-field-heading>.remember-row{gap:6px;min-width:0}
#qr-step .qr-field-heading>.remember-row span{overflow-wrap:anywhere}
#qr-step [data-field="location"]>.remember-row,#qr-step [data-field="redirect"]>.remember-row{margin:0 0 9px}
#qr-step #qr-location-pin{margin-top:0}
@media(min-width:768px){
  body:is(.qr-home,.qr-owner,.qr-landing,.qr-settings,.qr-view) .auth-header{width:100%;max-width:none}
  body:is(.qr-home,.qr-owner,.qr-settings) #auth-card{width:100%;max-width:none}
  body.qr-settings #auth-card{padding:24px}
  body.qr-settings :is(#qr-colors-step,#user-sticker-step){padding-top:40px}
  body.qr-settings h1{font-size:clamp(28px,3vw,40px);margin-bottom:20px}
  body.qr-settings #qr-colors-step{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);column-gap:32px;align-items:start}
  body.qr-settings #qr-colors-step>h1{grid-column:1/-1}
  body.qr-settings #qr-colors-step>.field-error{grid-column:1/-1}
  body.qr-settings #qr-colors-preview{width:min(100%,260px);margin:0 auto}
  body.qr-settings #qr-colors-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px}
  body.qr-settings #qr-colors-form>:is(.remember-row,p,button){grid-column:1/-1}
  body.qr-settings #qr-colors-form p{margin:0;line-height:1.4}
  body.qr-settings #user-sticker-form{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 24px;align-items:start}
  body.qr-settings #user-sticker-form>p{grid-column:1/3;margin:0;line-height:1.4;align-self:center}
  body.qr-settings #user-sticker-form>button{grid-column:3;margin:0}
  body.qr-settings :is(#qr-colors-form,#user-sticker-form) label{min-width:0;margin-bottom:0}
  body.qr-settings :is(#qr-colors-form,#user-sticker-form) .remember-row{align-self:center;margin:0}
  body.qr-landing .auth-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr) minmax(280px,1fr);column-gap:24px;align-items:start;align-content:start}
  body.qr-landing .auth-header{grid-column:1/-1;grid-row:1}
  body.qr-landing #global-error{grid-column:1/-1;grid-row:2}
  body.qr-landing #landing-promo{display:contents}
  body.qr-landing #landing-promo>div{grid-column:1;grid-row:3;align-self:center}
  body.qr-landing #sticker-order{grid-column:2;grid-row:3;align-self:center;max-width:320px;justify-self:center}
  body.qr-landing #auth-card{grid-column:3;grid-row:3;width:100%;margin:0;padding:24px}
  body.qr-landing #use-cases{grid-column:1/-1;grid-row:4;display:grid;grid-template-rows:repeat(4,auto);grid-auto-flow:column;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;max-width:none;margin:32px 0 0}
  body.qr-landing footer{grid-column:1/-1;grid-row:5;justify-self:center}
  body.qr-home .home-tools{display:grid;grid-template-columns:minmax(180px,1fr) minmax(0,2fr);gap:32px;align-items:center}
  body.qr-home .qr-create-row{grid-template-columns:1fr;gap:12px}
  body.qr-home .home-sticker-promo{margin:0;grid-template-columns:minmax(0,1fr) 150px}
  body.qr-owner #auth-card{padding:28px}
  body.qr-owner #qr-step{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
  body.qr-owner .qr-field:first-child{margin-top:0;padding-top:0;border-top:0}
  body.qr-owner #qr-description{min-height:260px}
  body.qr-owner .editor-actions{flex-wrap:wrap;gap:8px}
  body.qr-owner .editor-actions>button{flex:1;min-width:100px}
}
