.appointment-booking-widget-generator{max-width:var(--tool-container-max-width, 1600px);margin:0 auto;padding:20px}.appointment-booking-widget-generator .tool-header{text-align:center;margin-bottom:30px}.appointment-booking-widget-generator .tool-header h1{font-size:2rem;color:#1a1a2e;margin-bottom:10px}.appointment-booking-widget-generator .tool-header p{color:#666;font-size:1.1rem}.appointment-booking-widget-generator .generator-layout{display:grid;grid-template-columns:var(--tool-controls-width, 420px) 1fr;gap:30px}.control-panel{background-color:#1f2937f2!important;border:2px solid var(--gray-400)!important;border-radius:6px}[data-theme=dark] .control-section{background-color:#1f2937e6!important;border-color:var(--gray-400)!important;border-width:2px}[data-theme=dark] .control-group input,[data-theme=dark] .control-group select,[data-theme=dark] .control-group textarea{background-color:#0f172acc!important;border:2px solid var(--gray-500)!important;color:var(--text-primary)}[data-theme=dark] .control-group label{display:block;color:var(--gray-900);font-size:1rem;margin-bottom:.5rem;font-weight:600;line-height:1.5;letter-spacing:.3px}@media (max-width: 900px){.appointment-booking-widget-generator .generator-layout{grid-template-columns:1fr}}.appointment-booking-widget-generator .controls-panel{background:#f8f9fa;border-radius:12px;padding:20px;height:fit-content;max-height:none;overflow-y:auto}.appointment-booking-widget-generator .control-section{margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #e0e0e0}.appointment-booking-widget-generator .control-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.appointment-booking-widget-generator .control-section h3{font-size:1.15rem;font-weight:700;color:var(--gray-900);margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:2px solid var(--primary);letter-spacing:.03em}.appointment-booking-widget-generator select,.appointment-booking-widget-generator input[type=text],.appointment-booking-widget-generator input[type=time],.appointment-booking-widget-generator textarea{width:100%;padding:10px 12px;border:2px solid #e0e0e0;border-radius:6px;font-size:.875rem;background:var(--white);box-sizing:border-box}.appointment-booking-widget-generator select:focus,.appointment-booking-widget-generator input:focus,.appointment-booking-widget-generator textarea:focus{outline:none;border-color:var(--info-color)}.appointment-booking-widget-generator .days-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.appointment-booking-widget-generator .day-btn{padding:8px 4px;border:2px solid #e0e0e0;border-radius:6px;background:var(--white);cursor:pointer;font-size:.75rem;transition:all .2s ease}.appointment-booking-widget-generator .day-btn:hover{border-color:var(--info-color)}.appointment-booking-widget-generator .day-btn.active{border-color:var(--info-color);background:var(--info-color);color:var(--white)}.appointment-booking-widget-generator .time-inputs{display:grid;grid-template-columns:1fr 1fr;gap:10px}.appointment-booking-widget-generator .time-input-group{display:flex;flex-direction:column;gap:4px}.appointment-booking-widget-generator .time-input-group label{font-size:.8rem;color:#666}.appointment-booking-widget-generator .control-row{display:flex;align-items:center;gap:10px;margin-bottom:10px}.appointment-booking-widget-generator .control-row label{flex:0 0 100px;font-size:.85rem;color:#555}.appointment-booking-widget-generator .control-row select{flex:1}.appointment-booking-widget-generator .color-inputs{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.appointment-booking-widget-generator .color-input-group{display:flex;align-items:center;gap:8px}.appointment-booking-widget-generator .color-input-group label{font-size:1rem;color:var(--gray-900);flex:1;font-weight:600;margin-bottom:.5rem;line-height:1.5;letter-spacing:.3px}.appointment-booking-widget-generator .color-input-group input[type=color]{width:40px;height:32px;padding:2px;border:2px solid #e0e0e0;border-radius:6px;cursor:pointer}.appointment-booking-widget-generator .toggle-label{display:flex;align-items:center;gap:10px;cursor:pointer;margin-bottom:.5rem}.appointment-booking-widget-generator .toggle-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.appointment-booking-widget-generator .actions{display:flex;gap:10px}.appointment-booking-widget-generator .action-btn{flex:1;padding:10px;border:none;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .2s ease}.appointment-booking-widget-generator .action-btn.save{background:var(--success);color:var(--white)}.appointment-booking-widget-generator .action-btn.save:hover{background:#059669}.appointment-booking-widget-generator .action-btn.load{background:var(--primary);color:var(--white)}.appointment-booking-widget-generator .action-btn.load:hover{background:var(--primary)}.appointment-booking-widget-generator .preview-panel{display:flex;flex-direction:column;gap:20px}.appointment-booking-widget-generator .preview-section h3{font-size:1rem;color:#333;margin-bottom:15px;font-weight:600}.appointment-booking-widget-generator .widget-preview{margin:0 auto}.appointment-booking-widget-generator .booking-container-preview{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.appointment-booking-widget-generator .date-grid-preview{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.appointment-booking-widget-generator .date-btn-preview{padding:12px 8px;border:2px solid #d1d5db;border-radius:8px;background:#f9fafb;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px;transition:all .2s ease;box-shadow:0 1px 3px #0000001a}.appointment-booking-widget-generator .date-btn-preview:hover{border-color:var(--info-color)}.appointment-booking-widget-generator .date-btn-preview.selected{color:var(--white)}.appointment-booking-widget-generator .date-btn-preview .day-name{font-size:.75rem;opacity:.8}.appointment-booking-widget-generator .date-btn-preview .day-num{font-size:1.25rem;font-weight:600}.appointment-booking-widget-generator .time-grid-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.appointment-booking-widget-generator .time-btn-preview{padding:10px;border:2px solid #d1d5db;border-radius:8px;background:#f9fafb;cursor:pointer;font-size:.875rem;transition:all .2s ease;box-shadow:0 1px 3px #0000001a}.appointment-booking-widget-generator .time-btn-preview:hover{border-color:var(--info-color)}.appointment-booking-widget-generator .time-btn-preview.selected{color:var(--white)}.appointment-booking-widget-generator .form-input-preview{width:100%;padding:12px;background:#f9fafb;border:2px solid #d1d5db;border-radius:8px;font-size:1rem;margin-bottom:12px;box-sizing:border-box;box-shadow:0 1px 3px #0000001a}.appointment-booking-widget-generator .submit-btn-preview{width:100%;padding:14px;background:#f9fafb;color:var(--white);border:2px solid #d1d5db;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;box-shadow:0 1px 3px #0000001a}.appointment-booking-widget-generator .output-section{background:var(--gray-800);border-radius:12px;overflow:hidden}.appointment-booking-widget-generator .output-tabs{display:flex;background:var(--gray-900);border-bottom:1px solid var(--gray-700)}.appointment-booking-widget-generator .output-tabs button{flex:1;padding:12px;background:transparent;border:none;color:var(--gray-400);cursor:pointer;font-size:.85rem;transition:all .2s ease}.appointment-booking-widget-generator .output-tabs button:hover{background:var(--gray-800);color:var(--white)}.appointment-booking-widget-generator .output-tabs button.active{background:var(--gray-800);color:var(--info-color);border-bottom:2px solid var(--info-color)}.appointment-booking-widget-generator .output-content{padding:20px;max-height:400px;overflow-y:auto}.appointment-booking-widget-generator .code-output{background:var(--gray-900);border-radius:8px;overflow:hidden}.appointment-booking-widget-generator .code-header{display:flex;justify-content:space-between;align-items:center;padding:10px 15px;background:var(--gray-800);border-bottom:1px solid var(--gray-700)}.appointment-booking-widget-generator .code-header span{color:var(--gray-400);font-size:.85rem}.appointment-booking-widget-generator .copy-btn{padding:6px 12px;background:var(--info-color);color:var(--white);border:none;border-radius:4px;cursor:pointer;font-size:.8rem;transition:all .2s ease}.appointment-booking-widget-generator .copy-btn:hover{background:#2563eb}.appointment-booking-widget-generator pre{margin:0;padding:15px;overflow-x:auto}.appointment-booking-widget-generator pre code{color:var(--gray-200);font-family:Fira Code,Monaco,monospace;font-size:.8rem;line-height:1.6}
