.party-section{background-color:var(--panel-bg);padding:25px;border-radius:12px;box-shadow:0 4px 15px #0000000f;margin-bottom:30px}.two-column{display:flex;flex-wrap:wrap;gap:25px;margin-top:30px;align-items:flex-start}.column{flex:1;min-width:320px;display:flex;flex-direction:column}.result-container{background-color:var(--panel-bg);border:1px solid rgba(68,12,26,.12);padding:25px;border-radius:12px;box-shadow:0 4px 15px #0000000f;margin-bottom:30px}.result-header{color:var(--primary-color);margin-top:0;margin-bottom:20px;font-size:1.6rem;font-weight:600;text-align:center;padding-bottom:.8rem;border-bottom:2px solid rgba(68,12,26,.12);position:relative}.result-header:after{content:"";position:absolute;bottom:-2px;left:50%;transform:translate(-50%);width:80px;height:2px;background:var(--dark-red)}.progress-container{height:30px;background-color:#53976033;border-radius:15px;margin:25px 0;overflow:hidden;position:relative;box-shadow:inset 0 1px 3px #0000001a}.progress-bar{height:100%;background:var(--dark-red);transition:width .4s ease,background .4s ease;border-radius:15px}.progress-bar.majority{background:var(--dark-green)}.progress-labels{position:absolute;display:flex;justify-content:space-between;width:calc(100% - 40px);left:20px;top:50%;transform:translateY(-50%);color:#fff;font-weight:700;font-size:.9rem;text-shadow:0 1px 2px rgba(0,0,0,.4);pointer-events:none}.result-details{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:25px}.result-box{flex:1;min-width:180px;padding:15px;border-radius:10px;text-align:center;box-shadow:0 3px 8px #0000000a;transition:transform .3s ease,box-shadow .3s ease;border:1px solid #eee}.result-box:hover{transform:translateY(-4px);box-shadow:0 6px 12px #00000014}.result-value{font-size:2.2rem;font-weight:700;margin:8px 0}.result-label{font-size:.9rem;color:#555}.result-status{padding:15px 20px;border-radius:8px;text-align:center;font-weight:700;font-size:1.2rem;margin-top:20px;box-shadow:0 3px 8px #00000014}.required-votes{background-color:#53976014;color:var(--primary-color);border:1px solid rgba(83,151,96,.25)}.votes-for{background-color:#5397601f;color:var(--primary-color);border:1px solid rgba(83,151,96,.3)}.votes-against{background-color:#eb40401f;color:var(--secondary-color);border:1px solid rgba(235,64,64,.3)}.has-majority{background:var(--dark-green);color:#fff}.no-majority{background:var(--dark-red);color:#fff}.selected-parties{margin-top:25px;background-color:var(--panel-bg);padding:15px;border-radius:10px}.selected-parties-title{font-size:1.1rem;color:var(--primary-color);margin-bottom:10px;text-align:center;font-weight:600}#selectedPartyTags{text-align:center;min-height:30px}.share-link-actions{margin-top:12px;display:flex;align-items:center;gap:.75rem}.copy-link-trigger{display:inline-flex;align-items:center;gap:.4rem;padding:0;border:none;border-radius:0;background:transparent;box-shadow:none;color:var(--primary-color);font-size:.95rem;font-weight:600;text-decoration:underline;text-underline-offset:3px}.copy-link-trigger:hover{color:var(--accent-color)}.copy-link-trigger:focus-visible{outline:2px solid var(--accent-color);outline-offset:3px}.share-link-status{font-size:.9rem;color:var(--neutral-color);min-height:1.2rem}.preset-controls{margin-top:14px;padding:12px;border:1px solid var(--border-color);border-radius:10px;background:var(--color-bg-main)}.preset-controls-title{margin-bottom:8px;font-size:1rem;color:var(--primary-color)}.preset-save-row,.preset-manage-row{display:flex;gap:8px;align-items:center;margin-bottom:8px}.preset-save-row input,.preset-manage-row select{flex:1;min-width:0;border:1px solid var(--border-color);border-radius:8px;padding:8px 10px;background:#fff;color:var(--color-text)}.preset-save-row button,.preset-manage-row button{padding:8px 12px;border-radius:8px;background:var(--color-green);color:#fff;box-shadow:none}.preset-status{margin:0;min-height:1.2rem;font-size:.9rem;color:var(--neutral-color)}@media(max-width:1024px){.two-column{flex-direction:column;align-items:center}.column{width:100%;max-width:560px;margin:0 auto}.result-header{font-size:1.4rem}.result-value{font-size:1.8rem}.result-label{font-size:.85rem}.result-status{font-size:1.1rem}}
