*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;padding:0;overflow:hidden}:root{--mac-font: "Lucida Grande", "Lucida Sans Unicode", Geneva, Verdana, sans-serif}.app-body{font-family:var(--mac-font);margin:0;padding:0;height:100vh;width:100vw;overflow:hidden;background:url(/usa.jpg) no-repeat center center fixed;background-size:cover;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;position:relative}#mainAppWindow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:1035px;height:750px;max-width:95vw;max-height:95vh;z-index:30}.mac-window{background:#ececec;border:1px solid #9b9b9b;border-radius:5px 5px 0 0;box-shadow:0 30px 90px #000000b3;display:flex;flex-direction:column;overflow:hidden;height:100%}.mac-titlebar{height:24px;background:linear-gradient(to bottom,#e8e8e8,#b8b8b8);border-bottom:1px solid #888;display:flex;align-items:center;justify-content:center;position:relative;cursor:default;flex-shrink:0}.mac-titlebar:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(255,255,255,.3) 3px,rgba(255,255,255,.3) 4px);pointer-events:none}.mac-title{font-size:13px;font-weight:700;color:#333;text-shadow:0 1px 0 rgba(255,255,255,.6);z-index:2}.mac-close-link{position:absolute;left:8px;top:6px;width:12px;height:12px;z-index:10;cursor:pointer;display:block;text-decoration:none}.mac-close-btn{width:100%;height:100%;background:radial-gradient(circle at 30% 30%,#ff8a8a,#ff5f5c);border:1px solid #e04643;border-radius:50%;box-shadow:inset 0 1px 2px #0003;position:relative}.mac-close-btn:active{filter:brightness(.8)}.mac-close-link:hover .mac-close-btn:after{content:"×";position:absolute;top:-2px;left:3px;font-size:10px;color:#841816;opacity:1;font-weight:700}.mac-close-btn:after{opacity:0}.main-body{flex-grow:1;display:flex;flex-direction:row;background:#e8e8e8;overflow:hidden;position:relative}.sidebar{flex:0 0 280px;background:#dce4eb;border-right:1px solid #aebcd1;display:flex;flex-direction:column;padding:15px;z-index:20}.sidebar h4{margin:0 0 10px;color:#444;font-size:12px}.sidebar-group{background:#fff;border:1px solid #aebcd1;padding:5px;margin-bottom:10px;border-radius:3px}.sidebar textarea{width:100%;height:200px;border:none;resize:none;font-family:inherit;font-size:13px;outline:none;box-sizing:border-box}#statusMsg{margin-top:5px;font-size:11px;color:#666}.content-area-wrapper{flex:1;display:flex;flex-direction:column;position:relative;z-index:10;padding:0}.content-area{flex-grow:1;background-color:#fff;margin:20px;border:1px solid #aaa;box-shadow:inset 0 1px 3px #0000001a;overflow-y:auto;position:relative;background-color:#fffffff2;padding:15px}.aqua-btn{border:1px solid #999;border-radius:14px;padding:3px 14px;font-family:var(--mac-font);font-size:13px;color:#000;background:linear-gradient(to bottom,#fff,#ededed 48%,#dadada 50%,#fcfcfc);box-shadow:0 1px 2px #0003;cursor:pointer;text-shadow:0 1px 0 #fff;outline:none}.aqua-btn:active{background:linear-gradient(to bottom,#dadada,#ededed);box-shadow:inset 0 1px 3px #0003}.aqua-btn-blue{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.3);border-color:#3c6e9e;background:linear-gradient(to bottom,#8dbbf2,#599bdc 48%,#367cc3 50%,#6db3f2)}.aqua-btn-blue:active{background:linear-gradient(to bottom,#367cc3,#599bdc)}.glass-pill{border-radius:20px;padding:8px 15px;font-weight:700;font-size:12px;display:block;width:100%;text-align:left;margin-bottom:8px;border:1px solid rgba(0,0,0,.4);cursor:pointer;box-shadow:0 1px 3px #0000004d,inset 0 1px #fff6,inset 0 -1px #0000001a;position:relative;overflow:hidden;text-shadow:0 1px 0 rgba(255,255,255,.4)}.glass-pill:after{content:"";position:absolute;top:0;left:0;right:0;height:50%;background:linear-gradient(to bottom,#ffffffb3,#ffffff1a);border-radius:20px 20px 100% 100%/20px 20px 10px 10px;pointer-events:none}.glass-pill:hover{filter:brightness(1.05)}.glass-pill:active{transform:translateY(1px);box-shadow:inset 0 2px 5px #0003}.glass-teal{background:linear-gradient(to bottom,#a3e4e4,#46b8b8 50%,#3aa2a2 51%,#70dcdc);color:#004d4d;border-color:#2b7a7a}.glass-purple{background:linear-gradient(to bottom,#e3cbf7,#b388eb 50%,#9b6cde 51%,#d1bdf0);color:#3b166e;border-color:#6a3a9e}.glass-orange{background:linear-gradient(to bottom,#ffdfb0,#ffb74d 50%,#ff9800 51%,#ffcc80);color:#6d3c00;border-color:#bf6d00}.replacement-popup{position:fixed;background:#f0f0f0f2;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border:1px solid rgba(255,255,255,.6);border-radius:12px;box-shadow:0 10px 40px #0006,inset 0 1px #fffc;padding:15px;z-index:100000;width:280px;font-family:Lucida Grande,sans-serif;font-size:.9rem}.popup-header{font-weight:700;margin-bottom:12px;font-size:.75rem;color:#555;text-transform:uppercase;letter-spacing:.5px;text-shadow:0 1px 0 #fff}.popup-custom-group{display:flex;gap:5px;margin-top:10px}.popup-input{flex-grow:1;border:1px solid #bbb;border-radius:15px;font-size:.9rem;outline:none;padding:6px 6px 6px 10px;box-shadow:inset 0 1px 2px #0000001a}.popup-input:focus{border-color:#6ea7f2;box-shadow:0 0 3px #6ea7f280}.popup-confirm{padding:0 12px;background:#ddd;color:#333;border:1px solid #ccc;border-radius:15px;cursor:pointer;font-weight:700}.popup-close{position:absolute;top:8px;right:10px;cursor:pointer;color:#aaa;font-weight:700;font-size:1.1rem}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:999999;display:flex;align-items:center;justify-content:center;background:#0006;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-window{width:400px;background:#ececec;border:1px solid #999;border-radius:6px;box-shadow:0 25px 100px #000000b3;padding:0;font-family:Lucida Grande,sans-serif;text-align:center}.modal-body{padding:25px 20px;background:linear-gradient(to bottom,#fff,#f0f0f0);border-radius:5px 5px 0 0;border-bottom:1px solid #ccc}.warning-icon{font-size:64px;margin:0 auto 15px;display:block;color:#f5a623}.modal-title{font-size:1.1rem;font-weight:700;margin-bottom:5px;color:#333}.modal-text{font-size:.9rem;color:#666}.modal-footer{padding:12px;background:#ececec;border-radius:0 0 5px 5px;display:flex;justify-content:center}.modal-btn{padding:6px 20px;font-size:.9rem;background:linear-gradient(to bottom,#6cb3fa,#187bf2);border:1px solid #1461bd;border-radius:4px;color:#fff;font-weight:700;cursor:pointer;box-shadow:inset 0 1px #ffffff4d}.modal-btn:hover{filter:brightness(1.05)}.banned-word{text-decoration:line-through;color:#c00;background:#ffebeb;border-bottom:1px solid #c00;cursor:pointer}.banned-word:hover{background:#c00;color:#fff;text-decoration:none}.replaced-word{color:green;background:#eaffea;padding:0 2px}.ignored-word{color:inherit;background:transparent;text-decoration:none;border:none;cursor:text}.nav-toolbar{display:flex;justify-content:flex-end;align-items:center;background:#e8e8e8;border:1px solid #ccc;border-radius:4px;padding:4px 10px;margin:10px 20px 0 0;align-self:flex-end;box-shadow:0 1px 2px #0000000d}.nav-counter{font-size:.85rem;font-weight:700;color:#d93025;margin-right:10px;white-space:nowrap}.nav-btn{background:#fff;border:1px solid #bbb;border-radius:3px;padding:2px 8px;font-size:.8rem;cursor:pointer;margin-left:2px;color:#333}.nav-btn:hover{background:#f0f0f0}.output-actions{height:30px;background:#e8e8e8;border-top:1px solid #ccc;display:flex;align-items:center;justify-content:flex-end;padding:0 10px;z-index:40}#issueCounterBox{margin-top:20px;background:#f9f9f9;border:1px solid #aaa;padding:10px;border-radius:4px;text-align:center}#issueCounterBox strong{color:#c00;display:block;margin-bottom:5px}#issueCounterBox .aqua-btn{padding:2px 10px;margin:0 2px}.placeholder-state{text-align:center;color:#aaa;padding-top:50px}.placeholder-icon{font-size:3rem;margin-bottom:15px;opacity:.3}#resultText{line-height:1.8;font-size:1.1rem;color:#222}#helpBtn{position:fixed;bottom:20px;right:20px;width:35px;height:35px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#d6bdfc,#9b59b6);border:2px solid #fff;box-shadow:0 3px 8px #0006;color:#fff;font-weight:700;font-size:20px;font-family:serif;font-style:italic;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:500;transition:transform .1s}#helpBtn:active{transform:scale(.95)}
