*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#667eea,#764ba2);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;min-height:100vh}#root{height:100vh;width:100vw}.app{width:100vw}.app,.room-join{display:flex;flex-direction:column;height:100vh}.room-join{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;justify-content:center;padding:2rem}.room-join h1{-webkit-text-fill-color:#0000;background:linear-gradient(45deg,#fff,#e0e7ff);-webkit-background-clip:text;background-clip:text;font-size:clamp(2rem,5vw,3.5rem);font-weight:700;margin-bottom:1rem;text-align:center}.room-join p{font-size:1.1rem;line-height:1.6;margin-bottom:3rem;max-width:500px;opacity:.9;text-align:center}.room-join-form{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:20px;box-shadow:0 8px 32px #0000001a;display:flex;flex-direction:column;gap:1.5rem;padding:3rem}.room-input{background:#ffffffe6;border:2px solid #ffffff4d;border-radius:12px;color:#333;font-size:1.3rem;font-weight:600;letter-spacing:3px;padding:1.2rem 1.5rem;text-align:center;text-transform:uppercase;transition:all .3s ease;width:250px}.room-input:focus{border-color:#4caf50;box-shadow:0 0 0 3px #4caf5033;outline:none;transform:translateY(-2px)}.join-button{background:linear-gradient(45deg,#4caf50,#45a049);border:none;border-radius:12px;box-shadow:0 4px 15px #4caf504d;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1.2rem 2.5rem;transition:all .3s ease}.join-button:hover{box-shadow:0 6px 20px #4caf5066;transform:translateY(-2px)}.join-button:disabled{background:#ccc;box-shadow:none;cursor:not-allowed;transform:none}.whiteboard{background:#f8fafc;display:flex;flex-direction:column;height:100vh}.whiteboard-header{background:linear-gradient(135deg,#1e293b,#334155);border-bottom:1px solid #ffffff1a;box-shadow:0 4px 20px #0000001a;color:#fff;justify-content:space-between;padding:1.5rem 2rem}.room-info,.whiteboard-header{align-items:center;display:flex}.room-info{gap:1.5rem}.room-info h2{color:#e2e8f0;font-size:1.5rem;font-weight:600}.user-count{background:linear-gradient(45deg,#10b981,#059669);box-shadow:0 2px 10px #10b9814d}.connection-status,.user-count{border-radius:25px;font-size:.9rem;font-weight:600;padding:.6rem 1.2rem}.connection-status.connected{background:linear-gradient(45deg,#10b981,#059669);box-shadow:0 2px 10px #10b9814d}.connection-status.disconnected{background:linear-gradient(45deg,#ef4444,#dc2626);box-shadow:0 2px 10px #ef44444d}.whiteboard-content{display:flex;flex:1 1;overflow:hidden;position:relative}.toolbar{background:linear-gradient(180deg,#fff,#f8fafc);border-right:1px solid #e2e8f0;box-shadow:4px 0 20px #0000000d;gap:2rem;padding:2rem 1.5rem;width:280px}.toolbar,.toolbar-section{display:flex;flex-direction:column}.toolbar-section{gap:1rem}.toolbar-section h3{color:#475569;font-size:1rem;font-weight:600;letter-spacing:.5px;margin-bottom:.5rem;text-transform:uppercase}.color-palette{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}.color-option{border:3px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000001a;cursor:pointer;height:45px;transition:all .3s ease;width:45px}.color-option:hover{box-shadow:0 4px 15px #0003;transform:scale(1.1)}.color-option.active{border-color:#3b82f6;border-width:4px;box-shadow:0 0 0 3px #3b82f633;transform:scale(1.05)}.stroke-width-slider{-webkit-appearance:none;background:linear-gradient(90deg,#e2e8f0,#cbd5e1);border-radius:5px;height:8px;margin:1rem 0;outline:none;width:100%}.stroke-width-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:linear-gradient(45deg,#3b82f6,#2563eb);border-radius:50%;box-shadow:0 2px 10px #3b82f64d;cursor:pointer;height:24px;width:24px}.stroke-preview{background:linear-gradient(90deg,#1e293b,#475569);border-radius:15px;box-shadow:0 2px 8px #0000001a;height:30px;margin-top:1rem}.clear-button{background:linear-gradient(45deg,#ef4444,#dc2626);border:none;border-radius:12px;box-shadow:0 4px 15px #ef44444d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 1.5rem;transition:all .3s ease}.clear-button:hover{box-shadow:0 6px 20px #ef444466;transform:translateY(-2px)}.canvas-container{background:#fff;border-radius:0 0 0 20px;box-shadow:inset 0 0 20px #0000000d;flex:1 1;overflow:hidden;position:relative}.drawing-canvas{cursor:crosshair;display:block}.user-cursors{left:0;pointer-events:none;position:absolute;top:0;z-index:10}.user-cursor{border:3px solid #fff;border-radius:50%;box-shadow:0 2px 10px #0003;height:24px;position:absolute;transform:translate(-50%,-50%);transition:all .1s ease;width:24px}.error-message{background:linear-gradient(45deg,#ef4444,#dc2626);border-radius:12px;box-shadow:0 4px 15px #ef44444d;color:#fff;font-weight:600;margin:1rem;padding:1.5rem;text-align:center}@media (max-width:1024px){.toolbar{padding:1.5rem 1rem;width:240px}.color-palette{gap:.8rem;grid-template-columns:repeat(2,1fr)}.color-option{height:40px;width:40px}}@media (max-width:768px){.whiteboard-header{flex-direction:column;gap:1rem;padding:1rem;text-align:center}.room-info{flex-direction:column;gap:.5rem}.room-info h2{font-size:1.2rem}.whiteboard-content{flex-direction:column}.toolbar{border-bottom:1px solid #e2e8f0;border-right:none;flex-direction:row;gap:1.5rem;overflow-x:auto;padding:1rem;width:100%}.toolbar-section{flex-shrink:0;min-width:200px}.color-palette{grid-template-columns:repeat(4,1fr)}.color-option{height:35px;width:35px}.room-join{padding:1rem}.room-join-form{padding:2rem 1.5rem}.room-input{font-size:.25rem;width:200px}}@media (max-width:480px){.room-join h1{font-size:2rem}.room-join p{font-size:1rem}.room-input{padding:1rem;width:180px}.join-button{padding:1rem 2rem}.toolbar{gap:1rem;padding:.8rem}.toolbar-section{min-width:150px}.color-option{height:30px;width:30px}.canvas-container{border-radius:0}}
/*# sourceMappingURL=main.d232a165.css.map*/