.review-modal{display:none;position:fixed;top:0;left:0;right:0;bottom:0;width:100%;height:100%;background:#202124b3;backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);z-index:9999;padding:24px;overflow-y:auto;animation:modalFadeIn .25s cubic-bezier(.4,0,.2,1)}.review-modal.active{display:flex!important;align-items:center;justify-content:center}.modal-content{background:#fff;border-radius:20px;width:100%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 11px 15px -7px #0003,0 24px 38px 3px #00000024,0 9px 46px 8px #0000001f;animation:modalSlideUp .35s cubic-bezier(.05,.7,.1,1);position:relative;overflow:hidden;border:1px solid rgba(0,0,0,.05)}.modal-header{padding:20px 20px 16px;border-bottom:1px solid #e8eaed;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-shrink:0;background:linear-gradient(to bottom,#fff,#fafbfc);position:relative}.modal-header:after{content:"";position:absolute;bottom:0;left:20px;right:20px;height:1px;background:linear-gradient(to right,transparent,#e8eaed 20%,#e8eaed 80%,transparent)}.modal-title{font-size:20px;font-weight:500;color:#202124;margin:0;line-height:1.3;letter-spacing:-.2px;display:flex;align-items:center;gap:10px}.modal-title:before{content:"";width:3px;height:20px;background:linear-gradient(to bottom,#1a73e8,#1557b0);border-radius:2px;display:inline-block}.modal-subtitle{font-size:13px;color:#5f6368;margin:4px 0 0;line-height:1.4;font-weight:400}.modal-close{width:36px;height:36px;min-width:36px;flex-shrink:0;border:none;background:transparent;color:#5f6368;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.4,0,.2,1);padding:0;position:relative}.modal-close:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:#5f6368;opacity:0;transform:scale(0);transition:all .2s cubic-bezier(.4,0,.2,1)}.modal-close:hover{background:#f1f3f4;color:#202124}.modal-close:hover:before{opacity:.08;transform:scale(1)}.modal-close:active{background:#e8eaed}.modal-close svg{width:20px;height:20px;position:relative;z-index:1}.modal-body{padding:20px;overflow-y:auto;overflow-x:hidden;flex:1 1 auto;min-height:0;max-height:calc(90vh - 200px);scroll-behavior:smooth;-webkit-overflow-scrolling:touch;background:linear-gradient(to bottom,#fff,#fafbfc)}.modal-body::-webkit-scrollbar{width:10px}.modal-body::-webkit-scrollbar-track{background:#f8f9fa;border-radius:10px;margin:8px 0}.modal-body::-webkit-scrollbar-thumb{background:linear-gradient(to bottom,#1a73e8,#1557b0);border-radius:10px;border:2px solid #f8f9fa}.modal-body::-webkit-scrollbar-thumb:hover{background:linear-gradient(to bottom,#1765cc,#1348a0)}.modal-body{scrollbar-width:thin;scrollbar-color:#1a73e8 #f8f9fa}.modal-footer{padding:16px 20px;border-top:1px solid #e8eaed;background:linear-gradient(to top,#fafbfc,#fff);border-radius:0 0 20px 20px;display:flex;gap:10px;justify-content:flex-end;flex-shrink:0;box-shadow:0 -2px 8px #0000000a;position:relative}.modal-footer:before{content:"";position:absolute;top:0;left:20px;right:20px;height:1px;background:linear-gradient(to right,transparent,#e8eaed 20%,#e8eaed 80%,transparent)}.form-group{margin-bottom:20px;position:relative;animation:fadeInUp .4s cubic-bezier(.4,0,.2,1)}.form-group:last-child{margin-bottom:0}.form-label{display:flex;align-items:center;gap:5px;font-weight:500;color:#202124;margin-bottom:8px;font-size:13px;line-height:1.4;letter-spacing:.1px}.form-label:before{content:"";width:3px;height:16px;background:linear-gradient(to bottom,#1a73e8,#1557b0);border-radius:2px;display:inline-block;box-shadow:0 2px 4px #1a73e84d}.form-label.required:after{content:"*";color:#d93025;font-size:16px;font-weight:600;margin-left:2px;animation:pulse 2s ease-in-out infinite}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.form-input,.form-textarea{width:100%;padding:10px 14px;border:2px solid #e8eaed;border-radius:10px;font-size:13px;color:#202124;font-family:Google Sans,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;transition:all .25s cubic-bezier(.4,0,.2,1);background:#fff;line-height:1.5;position:relative}.form-input:hover,.form-textarea:hover{border-color:#dadce0;background:#fafbfc}.form-input:focus,.form-textarea:focus{outline:none;border-color:#1a73e8;background:#fff;box-shadow:0 0 0 4px #1a73e814,0 1px 3px #3c404326;transform:translateY(-1px)}.form-input::-moz-placeholder,.form-textarea::-moz-placeholder{color:#80868b;font-weight:400}.form-input::placeholder,.form-textarea::placeholder{color:#80868b;font-weight:400}.form-textarea{resize:vertical;min-height:100px;line-height:1.6}.form-helper{display:flex;justify-content:space-between;margin-top:6px;font-size:11px;color:#5f6368}.star-rating-input{display:flex;flex-direction:row-reverse;gap:10px;margin-top:12px;justify-content:flex-end;padding:12px;background:linear-gradient(135deg,#fafbfc,#f8f9fa);border-radius:12px;border:2px solid #e8eaed}.star-rating-input input[type=radio]{display:none}.star-rating-input label{cursor:pointer;font-size:40px;color:#e8eaed;transition:all .3s cubic-bezier(.4,0,.2,1);line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));position:relative}.star-rating-input label:before{content:"★";position:absolute;top:0;right:0;bottom:0;left:0;color:#fbbc04;opacity:0;transform:scale(.8);transition:all .3s cubic-bezier(.4,0,.2,1)}.star-rating-input input[type=radio]:checked~label,.star-rating-input label:hover,.star-rating-input label:hover~label{color:#fbbc04;transform:scale(1.15) rotate(-5deg);filter:drop-shadow(0 4px 8px rgba(251,188,4,.3))}.star-rating-input input[type=radio]:checked~label:before,.star-rating-input label:hover:before,.star-rating-input label:hover~label:before{opacity:.3;transform:scale(1.2)}.star-rating-input label:active{transform:scale(1) rotate(0)}.star-rating-value{margin-top:12px;font-size:14px;color:#202124;font-weight:500;display:flex;align-items:center;gap:8px;padding:10px 14px;background:linear-gradient(135deg,#e8f0fe,#d2e3fc);border-radius:10px;border:2px solid #1a73e8}.star-rating-value svg{width:18px;height:18px;color:#fbbc04;filter:drop-shadow(0 2px 4px rgba(251,188,4,.3))}.btn{display:inline-flex;align-items:center;gap:6px;padding:10px 24px;border-radius:20px;font-size:13px;font-weight:500;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);border:none;font-family:Google Sans,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative;overflow:hidden;letter-spacing:.2px}.btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle,rgba(255,255,255,.3) 0%,transparent 70%);opacity:0;transform:scale(0);transition:all .5s cubic-bezier(.4,0,.2,1)}.btn:hover:before{opacity:1;transform:scale(2)}.btn:active{transform:scale(.96)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.btn svg{width:16px;height:16px;position:relative;z-index:1}.btn-primary{background:linear-gradient(135deg,#1a73e8,#1557b0);color:#fff;box-shadow:0 2px 4px #1a73e833}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#1765cc,#1348a0);box-shadow:0 1px 3px #3c40434d,0 4px 12px #1a73e84d;transform:translateY(-2px)}.btn-secondary{background:transparent;color:#1a73e8;border:2px solid #e8eaed}.btn-secondary:hover:not(:disabled){background:#f8f9fa;border-color:#1a73e8;box-shadow:0 1px 3px #3c404326}.select2-container--default .select2-selection--multiple{border:2px solid #e8eaed!important;border-radius:12px!important;padding:10px 14px!important;min-height:56px!important;transition:all .25s cubic-bezier(.4,0,.2,1)!important;background:#fff!important}.select2-container--default .select2-selection--multiple:hover{border-color:#dadce0!important;background:#fafbfc!important}.select2-container--default.select2-container--focus .select2-selection--multiple{border-color:#1a73e8!important;background:#fff!important;box-shadow:0 0 0 4px #1a73e814,0 1px 3px #3c404326!important}.select2-container--default .select2-selection--multiple .select2-selection__choice{background:linear-gradient(135deg,#e8f0fe,#d2e3fc)!important;border:2px solid #1a73e8!important;color:#1967d2!important;padding:6px 14px!important;border-radius:20px!important;font-weight:500!important;font-size:13px!important;margin:4px 6px 4px 0!important;transition:all .2s cubic-bezier(.4,0,.2,1)!important}.select2-container--default .select2-selection--multiple .select2-selection__choice:hover{background:linear-gradient(135deg,#d2e3fc,#aecbfa)!important;transform:translateY(-1px);box-shadow:0 2px 4px #1a73e833!important}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove{color:#1967d2!important;margin-right:8px!important;font-weight:700!important;font-size:16px!important;transition:all .2s cubic-bezier(.4,0,.2,1)!important}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover{color:#d93025!important;transform:scale(1.2)}.select2-dropdown{border:2px solid #1a73e8!important;border-radius:12px!important;box-shadow:0 4px 6px #3c404326,0 8px 16px #1a73e833!important;overflow:hidden!important}.select2-container--default .select2-results__option{padding:10px 16px!important;transition:all .15s cubic-bezier(.4,0,.2,1)!important}.select2-container--default .select2-results__option--highlighted[aria-selected]{background:linear-gradient(135deg,#e8f0fe,#d2e3fc)!important;color:#1967d2!important}.select2-container--default .select2-search--inline .select2-search__field{font-size:14px!important;font-family:Google Sans,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif!important;padding:4px!important}.animate-spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes modalFadeIn{0%{opacity:0;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{opacity:1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(60px) scale(.9);filter:blur(4px)}60%{opacity:1;transform:translateY(-10px) scale(1.02);filter:blur(0px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0px)}}@keyframes ripple{0%{transform:scale(0);opacity:1}to{transform:scale(4);opacity:0}}@media(max-width:768px){.modal-content{max-width:100%;max-height:100vh;border-radius:16px 16px 0 0;margin-top:auto}.modal-header{padding:20px 20px 16px}.modal-title{font-size:20px}.modal-body{padding:20px;max-height:calc(100vh - 180px)}.modal-footer{padding:16px 20px;flex-direction:column-reverse}.btn{width:100%;justify-content:center}.star-rating-input label{font-size:36px}}@media(max-width:480px){.review-modal{padding:0;align-items:flex-end}.modal-content{max-height:95vh;border-radius:16px 16px 0 0}.modal-header{padding:16px}.modal-title{font-size:18px}.modal-subtitle{font-size:13px}.modal-body{padding:16px}.modal-footer{padding:12px 16px}.star-rating-input label{font-size:32px;gap:4px}}
