*{box-sizing:border-box}html,body{margin:0;height:100%;font-family:Arial,sans-serif;background:#151618;color:#f2f2f0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.brand{font-weight:800;letter-spacing:.08em}.brand span{font-weight:400;color:#9da1a7}.auth{display:grid;place-items:center;background:radial-gradient(circle at 50% 20%,#25272b,#111214 65%)}.auth-card{width:min(420px,calc(100% - 32px));background:#1d1f22;padding:34px;border:1px solid #303337}.auth-card h1{font-size:28px;margin:34px 0 8px}.auth-card p{color:#9da1a7;margin:0 0 24px}.auth-card input,.new-board input,.share-panel input,.share-panel select{width:100%;background:#111315;color:#fff;border:1px solid #383b40;padding:12px 14px;outline:none}.auth-card input{margin:0 0 10px}.auth-card button,.new-board button,.share-panel button{width:100%;padding:12px;border:0;background:#f1f1ed;color:#111;font-weight:700;cursor:pointer}.error{background:#402526;color:#ffb0b0;padding:10px;margin:12px 0}.topbar,.boardbar{height:62px;border-bottom:1px solid #34373b;display:flex;align-items:center;justify-content:space-between;padding:0 22px;background:#191b1e}.top-actions{display:flex;gap:18px;color:#9da1a7;font-size:14px}.boards-wrap{padding:36px;max-width:1300px;margin:auto}.boards-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.boards-head h1{font-size:36px;margin:0 0 5px}.boards-head p{margin:0;color:#9da1a7}.new-board{display:flex;width:min(520px,100%)}.new-board button{width:auto;white-space:nowrap}.board-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}.board-card{border:1px solid #34373b;background:#1b1d20;padding:12px}.board-card:hover{border-color:#666}.board-thumb{height:150px;background:#23262a;display:grid;place-items:center;margin-bottom:13px;overflow:hidden;position:relative}.board-thumb:before{content:"";position:absolute;inset:0;background-image:radial-gradient(#3b3e43 1px,transparent 1px);background-size:18px 18px}.board-thumb span{font-size:42px;color:#6c7178;font-weight:700;z-index:1}.board-card h3{margin:5px 2px}.board-card small,.empty{color:#9da1a7}.board-page{overflow:hidden}.boardbar{position:relative;z-index:20}.boardbar .left,.tools{display:flex;align-items:center;gap:14px}.back{font-size:24px;color:#aaa}.tools button,.upload-btn{border:1px solid #3a3d42;background:#24272b;color:#eee;padding:8px 12px;cursor:pointer}.tools button:hover,.upload-btn:hover{background:#30343a}.tools #zoomLabel{color:#9da1a7;width:48px;text-align:right}.hidden{display:none!important}#viewport{position:absolute;top:62px;left:0;right:0;bottom:0;overflow:hidden;background:#141517;cursor:grab}#viewport.panning{cursor:grabbing}#canvas{position:absolute;width:6000px;height:4000px;transform-origin:0 0;left:0;top:0}.grid{position:absolute;inset:0;background-image:radial-gradient(#34373b 1px,transparent 1px);background-size:24px 24px;pointer-events:none}.item{position:absolute;overflow:visible;user-select:none}.item.selected{outline:2px solid #d9d9d2;outline-offset:3px}.item.note{background:#d9ca78;color:#1d1c18;border:0;box-shadow:0 7px 22px rgba(0,0,0,.16)}.item.text{background:transparent;border:0;box-shadow:none}.item.image{background:transparent;border:0;box-shadow:none}.item.image.selected{outline:none}.item.image img{width:100%;height:100%;display:block;object-fit:cover;pointer-events:none}.item .content{width:100%;height:100%;padding:16px;outline:none;white-space:pre-wrap;overflow:auto;user-select:text;line-height:1.28}.item.note .content{font-size:18px}.item.text .content{padding:4px 6px;font-size:28px;overflow:visible;line-height:1.14;color:#f2f2f0}.item .content:empty:before{content:attr(data-placeholder);opacity:.42;pointer-events:none}.resize{position:absolute;width:12px;height:12px;right:-7px;bottom:-7px;background:#f0f0eb;border:2px solid #222;cursor:nwse-resize;border-radius:50%}.delete{position:absolute;right:-10px;top:-10px;border:0;background:#161719;color:#fff;width:26px;height:26px;display:none;cursor:pointer;border-radius:50%;box-shadow:0 2px 8px rgba(0,0,0,.35)}.item.selected .delete{display:block}.item-toolbar{position:fixed;z-index:80;display:flex;align-items:center;gap:6px;background:#202327;border:1px solid #41454b;box-shadow:0 8px 24px rgba(0,0,0,.3);padding:6px;border-radius:8px}.item-toolbar button{min-width:30px;height:30px;border:1px solid #3d4146;background:#2a2d31;color:#eee;cursor:pointer;border-radius:5px;padding:0 8px}.item-toolbar button:hover{background:#35393f}.item-toolbar .swatch{width:24px;min-width:24px;height:24px;border-radius:50%;padding:0;border:2px solid rgba(255,255,255,.35)}.item-toolbar .sep{width:1px;height:22px;background:#3d4146;margin:0 2px}.share-panel{position:fixed;right:18px;top:72px;z-index:50;background:#202327;border:1px solid #3d4146;width:370px;padding:16px;display:grid;gap:10px}.hint{position:fixed;left:18px;bottom:16px;z-index:30;color:#8e9399;background:rgba(21,22,24,.85);padding:8px 11px;font-size:12px;pointer-events:none}@media(max-width:760px){.boards-head{display:block}.new-board{margin-top:20px}.boards-wrap{padding:22px}.boardbar{padding:0 10px}.boardbar strong,.boardbar .brand{display:none}.tools{gap:5px}.tools button,.upload-btn{padding:7px}.hint{display:none}.item-toolbar{max-width:calc(100vw - 16px);overflow:auto}}

/* v4: imagen limpia, sin caja visual */
.item.image{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;line-height:0}
.item.image img{margin:0!important;padding:0!important;border:0!important;outline:0!important;vertical-align:top}
.item.image.selected{outline:none!important;border:0!important;box-shadow:none!important}
.item.image .resize{display:none}
.item.image.selected .resize{display:block}
.tool-link{display:inline-flex;align-items:center;text-decoration:none;color:inherit;background:#252525;border:1px solid #393939;border-radius:7px;padding:8px 11px}

/* v5 · selector de tipo de tablero */
.new-board.typed-board{display:grid;grid-template-columns:minmax(180px,1fr) 210px auto;width:min(760px,100%);gap:0}
.new-board.typed-board select{background:#111315;color:#fff;border:1px solid #383b40;border-left:0;padding:0 12px;outline:none}
.board-thumb .board-type-badge{position:absolute;left:10px;bottom:10px;background:rgba(20,21,23,.86);border:1px solid #45494f;color:#c9cbd0;padding:5px 8px;font-size:11px;font-weight:600;letter-spacing:.02em;z-index:2}
@media(max-width:900px){.new-board.typed-board{grid-template-columns:1fr}.new-board.typed-board select{border-left:1px solid #383b40;border-top:0;min-height:42px}.new-board.typed-board button{width:100%}}
.board-card-wrap{position:relative}.board-card-wrap .board-card{display:block;height:100%}.board-delete-btn{position:absolute;right:10px;bottom:10px;border:1px solid #53373a;background:#21191b;color:#e3a8ad;padding:5px 8px;font-size:11px;border-radius:6px;cursor:pointer;opacity:.65}.board-card-wrap:hover .board-delete-btn{opacity:1}.board-delete-btn:hover{background:#332024}

/* v7 · miniaturas de tableros */
.board-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}.board-thumb img~.board-type-badge{z-index:3}.board-card-actions{position:absolute;right:10px;bottom:10px;display:flex;gap:6px;z-index:5}.board-card-actions button{border:1px solid #41464c;background:#202327;color:#c9cdd2;padding:5px 8px;font-size:11px;border-radius:6px;cursor:pointer}.board-card-actions .board-delete-btn{position:static;opacity:.7;border-color:#53373a;background:#21191b;color:#e3a8ad}.board-card-wrap:hover .board-card-actions .board-delete-btn{opacity:1}.board-card-actions .board-thumb-btn:hover{background:#2d3136}

/* v9 · confirmación segura por contraseña */
.password-modal{position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.66);display:flex;align-items:center;justify-content:center;padding:20px}.password-modal[hidden]{display:none}.password-card{width:min(420px,100%);background:#202327;border:1px solid #3c4147;border-radius:10px;padding:18px}.password-card h3{margin:0 0 8px;font-size:17px}.password-card p{margin:0 0 14px;color:#9ca2a9;font-size:13px;line-height:1.45}.password-card input{width:100%;background:#111315;color:#fff;border:1px solid #3b4046;border-radius:7px;padding:10px 11px;margin-bottom:12px}.password-actions{display:flex;justify-content:flex-end;gap:8px}.password-actions button{border:1px solid #3a3e44;background:#23262a;color:#eee;padding:8px 11px;border-radius:7px}.password-actions .confirm-danger{color:#ffb1b1;border-color:#5a3437}
