.ra0-clicker-root{--cc-bg:var(--card-bg-color,#fff);--cc-text:var(--content-font-color,#222);--cc-muted:#777;--cc-line:var(--border-color,rgba(0,0,0,.12));--cc-soft:var(--input-bg-color,#f4f4f4);position:relative;z-index:9990;font-family:inherit;color:var(--cc-text)}
.ra0-clicker-stage{position:fixed;inset:0;pointer-events:none;z-index:9990}
.ra0-clicker-object{position:absolute;width:var(--clicker-w);max-width:92vw;pointer-events:auto;user-select:none;-webkit-user-select:none;touch-action:manipulation;will-change:left,top;z-index:var(--clicker-z)}
.ra0-clicker-object.allow-visitor-drag{touch-action:none}
.ra0-clicker-hit{display:block;width:100%;margin:0;padding:0;border:0;background:transparent;line-height:0;cursor:pointer;-webkit-tap-highlight-color:transparent;appearance:none;outline-offset:4px}
.ra0-clicker-image{display:block;width:100%;height:auto;max-width:none;pointer-events:none;-webkit-user-drag:none;user-select:none;transform-origin:50% 80%;transition:transform 70ms ease}
.ra0-clicker-object.is-pressed .ra0-clicker-image{transform:translateY(3px) scale(.985)}
.ra0-clicker-object.is-dragging{cursor:grabbing!important;filter:drop-shadow(0 7px 10px rgba(0,0,0,.16))}
.ra0-clicker-object.is-dragging .ra0-clicker-hit{cursor:grabbing}
.ra0-clicker-edit-label{display:none;position:absolute;left:50%;bottom:-25px;transform:translateX(-50%);max-width:170px;padding:3px 7px;border-radius:999px;background:rgba(0,0,0,.72);color:#fff;font-size:11px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}
.ra0-clicker-root.layout-editing .ra0-clicker-object{outline:1px dashed rgba(0,0,0,.42);outline-offset:4px;cursor:grab;touch-action:none}
.ra0-clicker-root.layout-editing .ra0-clicker-edit-label{display:block}
.ra0-clicker-root.layout-editing .ra0-clicker-object::after{content:'↕';position:absolute;right:-10px;top:-10px;display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#222;color:#fff;font:700 12px/1 sans-serif;box-shadow:0 2px 8px rgba(0,0,0,.2);pointer-events:none}

/* v1.0.0: 관리자 UI는 RA0 통합 위젯 툴바에서 여는 사이드 패널 안에만 둡니다. */
.ra0-clicker-icon-btn,.ra0-clicker-soft-btn,.ra0-clicker-add,.ra0-clicker-primary,.ra0-clicker-danger,.ra0-clicker-tool-action{font:inherit}
.ra0-clicker-side-panel{position:fixed;top:0;right:-410px;width:360px;max-width:calc(100vw - 20px);height:100vh;box-sizing:border-box;z-index:99998;overflow-y:auto;overscroll-behavior:contain;padding:0 16px 18px;border-left:1px solid var(--cc-line);background:var(--cc-bg);color:var(--cc-text);box-shadow:-2px 0 20px rgba(0,0,0,.12);backdrop-filter:blur(12px);transition:right .25s ease;pointer-events:auto}
.ra0-clicker-side-panel.is-open{right:0}
.ra0-clicker-side-head{position:sticky;top:0;z-index:8;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:0 -16px;padding:16px;border-bottom:1px solid var(--cc-line);background:var(--cc-bg);backdrop-filter:blur(12px)}
.ra0-clicker-side-head strong{display:block;font-size:17px;line-height:1.25}
.ra0-clicker-side-head p{margin:4px 0 0;color:var(--cc-muted);font-size:10px;line-height:1.45}
.ra0-clicker-icon-btn{flex:0 0 auto;width:32px;height:32px;border:0;border-radius:50%;background:var(--cc-soft);color:var(--cc-text);font-size:20px;line-height:1;cursor:pointer}
.ra0-clicker-alert{margin:12px 0 0;padding:10px 11px;border-radius:9px;background:#fff2f2;color:#8a2424;font-size:11px;line-height:1.55}
.ra0-clicker-panel-tools{position:sticky;top:65px;z-index:7;display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:0 -4px;padding:11px 4px 9px;background:var(--cc-bg);border-bottom:1px solid var(--cc-line)}
.ra0-clicker-tool-action,.ra0-clicker-add{width:100%;min-height:36px;padding:8px 10px;border:1px solid var(--cc-line);border-radius:8px;cursor:pointer;font-size:11px;font-weight:700}
.ra0-clicker-tool-action{background:var(--cc-soft);color:var(--cc-text)}
.ra0-clicker-tool-action.is-active{background:#222;color:#fff;border-color:#222}
.ra0-clicker-add{background:var(--cc-text);color:var(--cc-bg)}
.ra0-clicker-current-menu{margin:10px 0 7px;padding:7px 9px;border-radius:8px;background:var(--cc-soft);color:var(--cc-muted);font-size:10px;line-height:1.4}

/* 항목 목록은 패널 폭을 많이 먹지 않도록 가로 스크롤 */
.ra0-clicker-item-list{display:flex;gap:7px;overflow-x:auto;overflow-y:hidden;margin:0 -2px 13px;padding:2px 2px 8px;scrollbar-width:thin}
.ra0-clicker-list-item{display:grid;grid-template-columns:38px minmax(0,1fr);gap:7px;align-items:center;flex:0 0 142px;min-width:0;padding:6px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--cc-text);text-align:left;cursor:pointer}
.ra0-clicker-list-item:hover,.ra0-clicker-list-item.is-selected{border-color:var(--cc-line);background:var(--cc-soft)}
.ra0-clicker-list-thumb{width:38px;height:38px;display:grid;place-items:center;overflow:hidden;border-radius:7px;background:var(--cc-soft)}
.ra0-clicker-list-thumb img{max-width:100%;max-height:100%;object-fit:contain}
.ra0-clicker-list-meta{min-width:0}
.ra0-clicker-list-meta b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}
.ra0-clicker-list-meta small{display:block;margin-top:2px;color:var(--cc-muted);font-size:9px}
.ra0-clicker-list-empty{flex:1 0 100%;padding:18px 8px;color:var(--cc-muted);font-size:11px;text-align:center;line-height:1.6;white-space:pre-line}

.ra0-clicker-form{min-width:0;padding:0 0 12px}
.ra0-clicker-form-title-row{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:2px 0 13px;padding-top:2px}
.ra0-clicker-form-title-row strong{font-size:14px}
.ra0-clicker-danger{border:0;background:transparent;color:#bd2b2b;font-size:11px;text-decoration:underline;cursor:pointer}
.ra0-clicker-field{display:grid;gap:5px;margin-bottom:12px;color:var(--cc-text);font-size:11px}
.ra0-clicker-field>span{display:flex;justify-content:space-between;align-items:center;gap:8px;font-weight:700}
.ra0-clicker-field input[type=text],.ra0-clicker-field input[type=number],.ra0-clicker-field input[type=file],.ra0-clicker-field select{width:100%;box-sizing:border-box;border:1px solid var(--cc-line);border-radius:8px;background:var(--cc-bg);color:var(--cc-text);padding:8px 9px;font:inherit}
.ra0-clicker-field small,.ra0-clicker-upload-card small{color:var(--cc-muted);font-size:9px;line-height:1.45}
.ra0-clicker-upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
.ra0-clicker-upload-card{display:grid;gap:6px;min-width:0;padding:8px;border:1px solid var(--cc-line);border-radius:10px;font-size:10px}
.ra0-clicker-upload-card>span:first-child{font-weight:700}
.ra0-clicker-upload-card b{color:#c33}
.ra0-clicker-upload-card input[type=file]{min-width:0;width:100%;font:inherit;font-size:9px}
.ra0-clicker-preview{height:105px;display:grid;place-items:center;overflow:hidden;border-radius:8px;background:linear-gradient(45deg,#eee 25%,transparent 25%),linear-gradient(-45deg,#eee 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#eee 75%),linear-gradient(-45deg,transparent 75%,#eee 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0;background-color:#fafafa}
.ra0-clicker-preview img{display:none;max-width:100%;max-height:100%;object-fit:contain}
.ra0-clicker-preview img[src]{display:block}
.ra0-clicker-inline-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:-2px 0 13px}
.ra0-clicker-soft-btn{padding:7px 9px;border:1px solid var(--cc-line);border-radius:8px;background:var(--cc-soft);color:var(--cc-text);font-size:10px;cursor:pointer}
.ra0-clicker-grid-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ra0-clicker-grid-fields .ra0-clicker-field:last-child{grid-column:1/-1}
.ra0-clicker-number{display:flex;align-items:center;border:1px solid var(--cc-line);border-radius:8px;background:var(--cc-bg);overflow:hidden}
.ra0-clicker-number input{border:0!important;border-radius:0!important;min-width:0}
.ra0-clicker-number em{padding-right:8px;color:var(--cc-muted);font-size:9px;font-style:normal}
.ra0-clicker-field input[type=range]{width:100%}
.ra0-clicker-check-grid{display:flex;flex-wrap:wrap;gap:7px 12px;margin-bottom:13px}
.ra0-clicker-check{display:inline-flex;align-items:center;gap:5px;color:var(--cc-text);font-size:10px;cursor:pointer}
.ra0-clicker-check input{margin:0}
.ra0-clicker-help{margin-bottom:12px;padding:9px 10px;border-radius:9px;background:var(--cc-soft);color:var(--cc-muted);font-size:10px;line-height:1.6}
.ra0-clicker-savebar{position:sticky;bottom:-18px;z-index:6;margin:0 -16px -12px;padding:10px 16px 12px;border-top:1px solid var(--cc-line);background:var(--cc-bg);backdrop-filter:blur(12px)}
.ra0-clicker-primary{width:100%;padding:10px 12px;border:0;border-radius:9px;background:var(--cc-text);color:var(--cc-bg);font-weight:700;cursor:pointer}
.ra0-clicker-primary:disabled{opacity:.45;cursor:not-allowed}

/* 메뉴별 표시 */
.ra0-clicker-stage.visibility-pending .ra0-clicker-object{visibility:hidden}
.ra0-clicker-object.menu-hidden{display:none!important}
.ra0-clicker-menu-section{margin-bottom:13px;padding:10px;border:1px solid var(--cc-line);border-radius:10px;background:rgba(0,0,0,.018)}
.ra0-clicker-menu-section .ra0-clicker-field{margin-bottom:0}
.ra0-clicker-menu-picker{margin-top:10px}
.ra0-clicker-menu-picker[hidden]{display:none!important}
.ra0-clicker-menu-picker-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}
.ra0-clicker-menu-picker-head b{font-size:10px}
.ra0-clicker-menu-list{display:grid;grid-template-columns:1fr;gap:5px;max-height:190px;overflow:auto;padding:2px}
.ra0-clicker-menu-option{display:flex;align-items:center;gap:6px;min-width:0;padding:6px 7px 6px calc(7px + (var(--menu-depth,0) * 10px));border:1px solid var(--cc-line);border-radius:7px;background:var(--cc-bg);font-size:10px;cursor:pointer}
.ra0-clicker-menu-option:hover{background:var(--cc-soft)}
.ra0-clicker-menu-option input{margin:0;flex:0 0 auto}
.ra0-clicker-menu-option span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ra0-clicker-menu-picker>small{display:block;margin-top:7px;color:var(--cc-muted);font-size:9px;line-height:1.45}

/* 저장 알림은 잠깐만 표시되고 상시 UI가 아닙니다. */
.ra0-clicker-toast{position:fixed;top:12px;left:50%;z-index:10030;max-width:min(360px,calc(100vw - 28px));padding:7px 10px;border-radius:999px;background:rgba(0,0,0,.82);color:#fff;font-size:11px;line-height:1.35;opacity:0;transform:translate(-50%,-5px);pointer-events:none;transition:opacity .15s ease,transform .15s ease}
.ra0-clicker-toast.show{opacity:1;transform:translate(-50%,0)}

@media(max-width:720px){
  .ra0-clicker-object{width:var(--clicker-mw)}
  .ra0-clicker-object.hide-mobile{display:none}
  .ra0-clicker-side-panel{width:min(340px,calc(100vw - 12px));right:-360px;padding-left:12px;padding-right:12px}
  .ra0-clicker-side-head{margin-left:-12px;margin-right:-12px;padding:14px 12px}
  .ra0-clicker-panel-tools{top:61px}
  .ra0-clicker-upload-grid{grid-template-columns:1fr}
  .ra0-clicker-preview{height:100px}
  .ra0-clicker-savebar{margin-left:-12px;margin-right:-12px;padding-left:12px;padding-right:12px}
}
@media(prefers-reduced-motion:reduce){.ra0-clicker-image,.ra0-clicker-toast,.ra0-clicker-side-panel{transition:none}}
