.rm-app{--paper: #fafaf2;--paper-2: #f3f1e6;--ink: #111;--ink-soft: #2a2a28;--rule: #1a1a1a;--red: #d72b2b;--red-dark: #a41f1f;--accent: #ffe14d;--shadow: 4px 4px 0 #111;--comic-font: "Comic Sans MS", "Comic Neue", cursive;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--paper);background-image:radial-gradient(rgba(0,0,0,.04) 1px,transparent 1px),radial-gradient(rgba(0,0,0,.025) 1px,transparent 1px);background-size:3px 3px,7px 7px;background-position:0 0,1px 2px;border:4px solid var(--ink);border-radius:4px;box-shadow:0 12px 40px #0006;overflow:hidden;display:grid;grid-template-rows:56px 1fr;height:max(90vh,1200px);font-size:14px;line-height:1.4}.rm-app *,.rm-app *:before,.rm-app *:after{box-sizing:border-box}.rm-app button{font-family:inherit;cursor:pointer;border:3px solid var(--ink);background:#fff;color:var(--ink);font-weight:700;font-size:13px;padding:7px 12px;border-radius:3px;box-shadow:3px 3px 0 var(--ink);transition:transform 60ms ease,box-shadow 60ms ease;line-height:1.2}.rm-app button:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--ink)}.rm-app button:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}.rm-app button:disabled{opacity:.4;cursor:not-allowed;box-shadow:3px 3px #888}.rm-app button.active{background:var(--ink);color:#fff}.rm-app button.danger{background:var(--red);color:#fff}.rm-app button.danger:hover{background:var(--red-dark)}.rm-app button.primary{background:var(--red);color:#fff;font-size:14px;padding:9px 16px}.rm-app button.primary:hover{background:var(--red-dark)}.rm-app input[type=text],.rm-app input[type=search]{font-family:inherit;border:3px solid var(--ink);background:#fff;padding:8px 10px;font-size:13px;border-radius:3px;outline:none;width:100%;color:var(--ink)}.rm-app input:focus{box-shadow:inset 2px 2px 0 var(--accent)}.rm-app .rm-toolbar{display:flex;align-items:center;gap:12px;padding:0 16px;background:var(--paper-2);border-bottom:4px solid var(--ink);z-index:10;min-width:0}.rm-app .rm-logo{font-family:var(--comic-font);font-weight:700;font-size:22px;letter-spacing:-.5px;display:flex;align-items:center;gap:8px;padding:0 8px;color:var(--ink)}.rm-app .rm-logo .badge{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;background:var(--accent);border:3px solid var(--ink);border-radius:50%;font-size:18px;transform:rotate(-6deg);box-shadow:2px 2px 0 var(--ink)}.rm-app .rm-group{display:flex;gap:6px;padding:0 10px;border-left:2px dashed var(--ink);height:36px;align-items:center}.rm-app .rm-group:first-of-type{border-left:none;padding-left:0}.rm-app .rm-spacer{flex:1}.rm-app .rm-stamp{font-family:Caveat,cursive;transform:rotate(-8deg);font-size:14px;background:var(--accent);border:2px solid var(--ink);padding:2px 8px;border-radius:18px;box-shadow:2px 2px 0 var(--ink);color:var(--ink)}.rm-app .rm-workspace{display:grid;grid-template-columns:320px 1fr;min-height:0}.rm-app .rm-sidebar{background:var(--paper-2);border-right:4px solid var(--ink);display:flex;flex-direction:column;min-height:0;min-width:0}.rm-app .rm-sidebar h3{font-family:var(--comic-font);font-size:16px;margin:0;padding:10px 14px 6px;letter-spacing:-.3px;color:var(--ink);font-weight:700}.rm-app .rm-tools-section{border-bottom:3px solid var(--ink);padding-bottom:10px}.rm-app .rm-tool-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:0 12px}.rm-app .rm-tool-btn{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;font-size:11px}.rm-app .rm-tool-btn .ic{font-size:18px;line-height:1}.rm-app .rm-color-row{display:flex;gap:5px;padding:6px 12px;flex-wrap:wrap}.rm-app .rm-swatch{width:28px;height:28px;border:3px solid var(--ink);cursor:pointer;box-shadow:2px 2px 0 var(--ink);border-radius:3px;padding:0;background-clip:padding-box}.rm-app .rm-swatch.active{transform:scale(1.1);box-shadow:2px 2px 0 var(--accent),4px 4px 0 var(--ink)}.rm-app .rm-size-row{display:flex;gap:6px;padding:6px 12px;align-items:center}.rm-app .rm-size-btn{display:flex;align-items:center;justify-content:center;width:40px;height:32px}.rm-app .rm-size-dot{background:#000;border-radius:50%;display:inline-block}.rm-app .rm-layout-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;padding:6px 12px 4px}.rm-app .rm-layout-btn{aspect-ratio:1;padding:4px}.rm-app .rm-layout-btn svg{width:100%;height:100%;display:block;color:var(--ink)}.rm-app .rm-faces{flex:1;display:flex;flex-direction:column;min-height:0}.rm-app .rm-faces-controls{padding:8px 12px;display:flex;flex-direction:column;gap:8px}.rm-app .rm-chips{display:flex;gap:6px;overflow-x:auto;padding:2px 0 4px;scrollbar-width:thin}.rm-app .rm-chips::-webkit-scrollbar{height:6px}.rm-app .rm-chips::-webkit-scrollbar-thumb{background:#888}.rm-app .rm-chip{font-size:11px;padding:5px 10px;flex-shrink:0;border:2px solid var(--ink);background:#fff;border-radius:12px;cursor:pointer;font-weight:700;box-shadow:2px 2px 0 var(--ink);white-space:nowrap;color:var(--ink);line-height:1}.rm-app .rm-chip.active{background:var(--ink);color:#fff}.rm-app .rm-chip.tag{font-size:10px;padding:3px 8px;opacity:.85;box-shadow:none}.rm-app .rm-chip.tag.active{background:var(--accent);color:var(--ink)}.rm-app .rm-faces-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:8px 12px;overflow-y:auto;flex:1;align-content:start}.rm-app .rm-face-card{position:relative;aspect-ratio:1;background:#fff;border:2px solid var(--ink);border-radius:3px;cursor:grab;display:flex;align-items:center;justify-content:center;padding:4px;transition:transform 80ms;user-select:none}.rm-app .rm-face-card:hover{transform:rotate(-2deg) scale(1.05);z-index:2;box-shadow:2px 2px 0 var(--ink)}.rm-app .rm-face-card:active{cursor:grabbing}.rm-app .rm-face-card img{width:100%;height:100%;pointer-events:none;object-fit:contain}.rm-app .rm-face-card .rm-name{position:absolute;bottom:-4px;left:50%;transform:translate(-50%,100%);font-size:10px;background:var(--ink);color:#fff;padding:2px 6px;white-space:nowrap;opacity:0;transition:opacity .1s;font-family:var(--comic-font);pointer-events:none;z-index:5;border-radius:2px}.rm-app .rm-face-card:hover .rm-name{opacity:1}.rm-app .rm-face-card .rm-heart{position:absolute;top:2px;right:2px;width:18px;height:18px;background:#fff;border:1.5px solid var(--ink);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;cursor:pointer;line-height:1;padding:0;box-shadow:none;color:var(--ink)}.rm-app .rm-face-card .rm-heart.faved{background:var(--red);color:#fff;border-color:var(--ink)}.rm-app .rm-section-header{display:flex;align-items:center;gap:8px;padding:8px 14px 4px;font-family:var(--comic-font);font-size:13px;color:var(--ink-soft)}.rm-app .rm-section-header .rm-line{flex:1;height:0;border-top:2px dashed var(--ink);opacity:.4}.rm-app .rm-empty-faces{text-align:center;padding:30px 12px;color:#888;font-family:var(--comic-font);font-size:14px;grid-column:1 / -1}.rm-app .rm-canvas-area{position:relative;overflow:hidden;background:repeating-linear-gradient(45deg,transparent 0 12px,rgba(0,0,0,.02) 12px 13px),var(--paper);display:flex;align-items:center;justify-content:center;padding:24px;min-width:0}.rm-app .rm-stage-wrap{filter:url(#rm-wobble);display:block}.rm-app .rm-stage{position:relative;background:var(--ink);border:5px solid var(--ink);box-shadow:8px 8px 0 var(--ink);display:grid;gap:5px;width:min(72vh,720px);max-width:100%}.rm-app .rm-panel{background:#fff;position:relative;overflow:hidden;min-height:0;min-width:0}.rm-app .rm-panel-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--comic-font);color:silver;font-size:16px;text-align:center;padding:12px;pointer-events:none;user-select:none;line-height:1.2}.rm-app .rm-panel.rm-drop-hover{outline:3px dashed var(--red);outline-offset:-6px}.rm-app .rm-draw-canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none}.rm-app .rm-face-on-canvas{position:absolute;cursor:move;user-select:none;touch-action:none}.rm-app .rm-face-on-canvas img{width:100%;height:100%;pointer-events:none;display:block}.rm-app .rm-face-on-canvas.selected{outline:2px dashed var(--ink);outline-offset:2px}.rm-app .rm-handle{position:absolute;width:14px;height:14px;background:#fff;border:2px solid var(--ink);border-radius:50%;display:none;padding:0;box-shadow:none}.rm-app .rm-face-on-canvas.selected .rm-handle{display:block}.rm-app .rm-handle.br{right:-10px;bottom:-10px;cursor:nwse-resize}.rm-app .rm-handle.rot{left:50%;top:-22px;transform:translate(-50%);cursor:grab;background:var(--accent)}.rm-app .rm-handle.del{right:-10px;top:-10px;cursor:pointer;background:var(--red);color:#fff;display:none;align-items:center;justify-content:center;font-size:12px;font-weight:900;width:18px;height:18px;line-height:1}.rm-app .rm-face-on-canvas.selected .rm-handle.del{display:flex}.rm-app .rm-text-on-canvas{position:absolute;font-family:var(--comic-font);font-size:22px;background:#fff9;padding:2px 6px;cursor:move;user-select:none;border:2px dashed transparent;white-space:pre;line-height:1.15;text-align:center;color:var(--ink);min-width:24px;min-height:24px}.rm-app .rm-text-on-canvas.selected{border-color:var(--ink)}.rm-app .rm-text-on-canvas[contenteditable=true]{background:#fff;cursor:text;outline:none}.rm-app .rm-faces-grid::-webkit-scrollbar{width:8px}.rm-app .rm-faces-grid::-webkit-scrollbar-track{background:transparent}.rm-app .rm-faces-grid::-webkit-scrollbar-thumb{background:var(--ink);border-radius:4px}@media (max-width: 820px){.rm-app{height:min(92vh,880px)}.rm-app .rm-workspace{grid-template-columns:1fr;grid-template-rows:1fr 280px}.rm-app .rm-sidebar{border-right:none;border-top:4px solid var(--ink);order:2}.rm-app .rm-logo .label{display:none}.rm-app .rm-group{padding:0 6px}}
