.my-equipment-panel{padding:16px;max-width:100%;margin:0 auto}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:12px}.panel-header h3{margin:0;color:var(--text-primary, #fff);font-size:1.5rem}.action-buttons{display:flex;gap:10px}.action-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;background:var(--accent-color, #4a9eff);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease}.action-btn:hover:not(:disabled){background:var(--accent-hover, #3a8eef);transform:translateY(-1px)}.action-btn:disabled{opacity:.5;cursor:not-allowed}.btn-icon{width:18px;height:18px}.empty-state{text-align:center;padding:60px 20px;background:var(--bg-secondary, #1a1a2e);border-radius:12px;color:var(--text-secondary, #888)}.empty-state p{margin:8px 0}.equipment-section{margin-bottom:24px;background:var(--bg-secondary, #1a1a2e);border-radius:8px;padding:16px;border:1px solid var(--border-color, #333)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-title{color:var(--text-primary, #fff);font-size:1.1rem;margin:0}.reload-all-btn{padding:6px 12px;font-size:.85rem;background:var(--bg-tertiary, #252540);border:1px solid var(--border-color, #444);color:var(--text-primary, #fff);border-radius:4px;cursor:pointer;transition:all .2s ease}.reload-all-btn:hover{background:var(--accent-color, #4a9eff);border-color:var(--accent-color, #4a9eff)}.weapons-section{overflow:visible}.weapons-table-wrapper{overflow-x:auto;border-radius:6px;border:1px solid var(--border-color, #333)}.my-equipment-panel .weapons-table{width:100%;min-width:1000px;border-collapse:collapse;font-size:.85rem;table-layout:auto;background:transparent;border:none}.my-equipment-panel .weapons-table th{background:var(--header-bg, #34495e);color:var(--header-color, #ecf0f1);font-weight:600;text-transform:uppercase;font-size:.7rem;letter-spacing:.5px;padding:10px 6px;text-align:center;border:none;border-bottom:2px solid var(--border-accent, #666666);border-right:1px solid var(--border-color, #444);white-space:nowrap;position:sticky;top:0;z-index:1}.my-equipment-panel .weapons-table th:last-child{border-right:none}.my-equipment-panel .weapons-table td{padding:8px 6px;border:none;border-bottom:1px solid var(--border-color, #333);border-right:1px solid var(--border-color, #444);color:var(--text-primary, #fff);text-align:center;vertical-align:middle;background:transparent}.my-equipment-panel .weapons-table td:last-child{border-right:none}.my-equipment-panel .weapons-table .col-equip,.my-equipment-panel .weapons-table .col-bmh{width:45px}.my-equipment-panel .weapons-table .col-name{text-align:left;min-width:140px}.my-equipment-panel .weapons-table .col-skill{min-width:80px}.my-equipment-panel .weapons-table .col-lvl{width:35px}.my-equipment-panel .weapons-table .col-dmg{min-width:130px}.my-equipment-panel .weapons-table .damage-cell-content{display:flex;align-items:center;justify-content:center;gap:6px}.my-equipment-panel .weapons-table .damage-bonuses{display:flex;flex-direction:column;align-items:flex-start;gap:0;white-space:nowrap}.my-equipment-panel .weapons-table .damage-bonus-badge{font-size:.6rem;font-weight:600;line-height:1.1}.my-equipment-panel .weapons-table .damage-bonus-badge.skill{color:#4fc3f7}.my-equipment-panel .weapons-table .damage-bonus-badge.strength{color:#ff9800}.my-equipment-panel .weapons-table .col-range{width:40px}.my-equipment-panel .weapons-table .col-stat{width:35px}.my-equipment-panel .weapons-table .col-segment{width:30px}.my-equipment-panel .weapons-table td.col-segment{background:#ffffff08}.my-equipment-panel .weapons-table td.col-segment{border-right:1px solid rgba(255,255,255,.1)}.my-equipment-panel .weapons-table td.col-segment-last{border-right:1px solid var(--border-color, #444)}.my-equipment-panel .weapons-table .col-ammo{min-width:70px}.my-equipment-panel .weapons-table .col-enc{width:40px}.my-equipment-panel .weapons-table .col-qty{width:50px}.my-equipment-panel .weapons-table tbody tr:nth-child(2n){background:#ffffff05}.my-equipment-panel .weapons-table tbody tr:nth-child(odd){background:transparent}.my-equipment-panel .weapons-table tbody tr:hover{background:#ffffff0d}.my-equipment-panel .weapons-table tbody tr.row-equipped,.my-equipment-panel .weapons-table tbody tr.row-equipped:nth-child(2n),.my-equipment-panel .weapons-table tbody tr.row-equipped:nth-child(odd){background:#3498db1f}.my-equipment-panel .weapons-table tbody tr.row-equipped:hover{background:#3498db2e}.my-equipment-panel .weapons-table tbody tr.row-stowed{opacity:.8}.my-equipment-panel .weapons-table tbody tr.row-stowed:hover{opacity:1}.equipment-table-wrapper{overflow-x:auto;border-radius:6px;border:1px solid var(--border-color, #333)}.my-equipment-panel .equipment-table-wrapper{border:1px solid var(--border-color, #333)}.equipment-table{width:100%;border-collapse:collapse;font-size:.9rem}.equipment-table th{background:var(--header-bg, #34495e);color:var(--header-color, #ecf0f1);font-weight:600;text-transform:uppercase;font-size:.75rem;letter-spacing:.5px;padding:10px 12px;text-align:center;border-bottom:2px solid var(--border-accent, #666666);border-right:1px solid var(--border-color, #444)}.equipment-table th:last-child{border-right:none}.equipment-table td{padding:10px 12px;border-bottom:1px solid var(--border-color, #333);border-right:1px solid var(--border-color, #444);color:var(--text-primary, #fff);vertical-align:middle;text-align:center}.equipment-table td:last-child{border-right:none}.equipment-table .col-equip,.equipment-table th:first-child,.equipment-table td:first-child{width:45px;min-width:45px;max-width:45px}.equipment-table tbody tr:nth-child(2n){background:#ffffff05}.equipment-table tbody tr:hover{background:#ffffff0d}.equipment-table tbody tr.row-equipped,.equipment-table tbody tr.row-equipped:nth-child(2n),.equipment-table tbody tr.row-equipped:nth-child(odd){background:#3498db1f}.equipment-table tbody tr.row-equipped:hover{background:#3498db2e}.item-link{color:var(--accent-color, #4a9eff);cursor:pointer;transition:color .2s ease;font-weight:500}.item-link:hover{color:var(--accent-hover, #6ab0ff);text-decoration:underline}.name-cell{text-align:left;font-size:.95rem}.name-cell .item-link{font-size:.95rem}input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--accent-color, #4a9eff)}.qty-inline{display:flex;align-items:center;gap:4px;justify-content:center}.qty-btn{width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;border:1px solid var(--border-color, #444);background:var(--bg-tertiary, #252540);color:var(--text-primary, #fff);border-radius:4px;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:0;line-height:1}.qty-btn:hover:not(:disabled){background:var(--accent-color, #4a9eff);border-color:var(--accent-color, #4a9eff)}.qty-btn:disabled{opacity:.4;cursor:not-allowed}.qty-input-small{width:38px;height:24px;text-align:center;border:1px solid var(--border-color, #444);background:var(--bg-primary, #0d0d1a);color:var(--text-primary, #fff);border-radius:4px;font-size:.85rem}.shots-compact{display:inline-flex;align-items:center;gap:0;font-size:.85rem}.my-equipment-panel .shots-btn-sm,.shots-btn-sm{width:14px!important;height:16px!important;min-width:14px!important;min-height:16px!important;border:none!important;background:transparent!important;background-color:transparent!important;color:var(--text-secondary, #888)!important;border-radius:2px!important;cursor:pointer!important;font-size:.85rem!important;font-weight:700!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;line-height:1!important;transition:color .15s ease!important;box-shadow:none!important;transform:none!important}.my-equipment-panel .shots-btn-sm:hover:not(:disabled),.shots-btn-sm:hover:not(:disabled){color:var(--accent-color, #4a9eff)!important;background:#4a9eff1a!important;background-color:#4a9eff1a!important;transform:none!important;box-shadow:none!important}.my-equipment-panel .shots-btn-sm:disabled,.shots-btn-sm:disabled{opacity:.3!important;cursor:not-allowed!important}.shots-display{display:flex;align-items:center;color:var(--text-primary, #fff)}.my-equipment-panel .shots-input-sm,.shots-input-sm{width:22px!important;height:18px!important;min-height:18px!important;text-align:right!important;border:none!important;background:transparent!important;background-color:transparent!important;color:var(--text-primary, #fff)!important;font-size:.85rem!important;padding:0 1px 0 0!important;box-shadow:none!important}.my-equipment-panel .shots-input-sm:focus,.shots-input-sm:focus{outline:none!important;color:var(--accent-color, #4a9eff)!important}.shots-sep,.shots-max-sm{color:var(--text-secondary, #666);font-size:.85rem}.ammo-compact{display:inline-flex;align-items:center;gap:0;font-size:.85rem}.ammo-display{display:flex;align-items:center;padding:0 2px}.ammo-current{color:var(--text-primary, #fff);font-weight:500}.ammo-sep,.ammo-max{color:var(--text-secondary, #666)}.qty-compact{display:inline-flex;align-items:center;gap:0;font-size:.85rem}.qty-input-compact{width:35px!important;height:18px!important;min-height:18px!important;text-align:center!important;border:none!important;background:transparent!important;background-color:transparent!important;color:var(--text-primary, #fff)!important;font-size:.85rem!important;padding:0 2px!important;box-shadow:none!important}.qty-input-compact:focus{outline:none!important;color:var(--accent-color, #4a9eff)!important}@media (max-width: 768px){.my-equipment-panel{padding:12px}.panel-header{flex-direction:column;align-items:stretch}.action-buttons{justify-content:stretch}.action-btn{flex:1;justify-content:center}.section-header{flex-direction:column;align-items:flex-start;gap:8px}.my-equipment-panel .weapons-table{font-size:.75rem}.my-equipment-panel .weapons-table th,.my-equipment-panel .weapons-table td{padding:6px 4px}.equipment-table{font-size:.85rem}.equipment-table th,.equipment-table td{padding:8px 6px}.equipment-section{padding:12px}}@media (max-width: 480px){.qty-btn{width:22px;height:22px}.qty-input-small,.shots-input{width:30px;height:22px;font-size:.75rem}}.armor-value-cell{display:inline-flex;align-items:center;gap:0;font-size:.85rem}.armor-value-label{display:none}.armor-value-control{display:inline-flex;align-items:center;gap:0}.value-adjust-btn{width:14px!important;height:16px!important;min-width:14px!important;min-height:16px!important;border:none!important;background:transparent!important;background-color:transparent!important;color:var(--text-secondary, #888)!important;border-radius:2px!important;cursor:pointer!important;font-size:.85rem!important;font-weight:700!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;line-height:1!important;transition:color .15s ease!important;box-shadow:none!important;transform:none!important;outline:none!important}.value-adjust-btn:focus,.value-adjust-btn:focus-visible,.value-adjust-btn:active{outline:none!important;box-shadow:none!important;background:transparent!important;background-color:transparent!important}.value-adjust-btn:hover:not(:disabled){color:var(--accent-color, #4a9eff)!important;background:transparent!important;background-color:transparent!important;transform:none!important;box-shadow:none!important}.value-adjust-btn:disabled{opacity:.3!important;cursor:not-allowed!important}.armor-value-display{display:flex;align-items:center;justify-content:center}.armor-value-current{color:var(--text-primary, #fff);font-weight:500}.armor-value-sep,.armor-value-base{color:var(--text-secondary, #666)}.armor-value-base.editable{cursor:pointer;text-decoration:underline;text-decoration-style:dotted}.armor-value-base.editable:hover{color:var(--accent-color, #4a9eff)}.armor-value-base-input{width:24px;min-width:24px;max-width:24px;padding:0 2px;border:1px solid var(--accent-color, #4a9eff);border-radius:2px;background:var(--input-bg, #2d2d2d);color:var(--text-primary, #fff);font-size:inherit;font-weight:inherit;text-align:center;-moz-appearance:textfield}.armor-value-base-input::-webkit-outer-spin-button,.armor-value-base-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.armor-value-current.value-worn{color:#f1c40f}.armor-value-current.value-damaged{color:#e67e22}.armor-value-current.value-critical{color:#e74c3c}.armor-value-current.value-depleted{color:#c0392b;font-weight:700}.armor-body-diagram-column{display:flex;flex-direction:column;align-items:center;padding:12px;background:var(--card-bg, #1e1e1e);border:1px solid var(--border-color, #333);border-radius:8px;min-width:180px}.diagram-header{text-align:center;margin-bottom:12px;width:100%}.diagram-title{margin:0;font-size:1rem;font-weight:600;color:var(--accent-color, #4a9eff);text-transform:uppercase;letter-spacing:1px}.diagram-armor-name{display:block;font-size:.75rem;color:var(--text-secondary, #888);margin-top:4px;font-style:italic}.body-diagram-grid{display:flex;flex-direction:column;align-items:center;gap:4px}.body-row{display:flex;justify-content:center;align-items:center;gap:8px;position:relative;z-index:1}.head-row{margin-bottom:4px}.torso-row{gap:4px}.abdomen-row{margin:4px 0}.legs-row{margin-top:4px}.leg-spacer{width:40px}.body-part{display:flex;flex-direction:column;align-items:center;padding:6px 8px;background:var(--input-bg, #2d2d2d);border:1px solid var(--border-color, #444);border-radius:4px;min-width:80px;width:80px;transition:border-color .2s ease,box-shadow .2s ease}.body-part:hover{border-color:var(--accent-color, #4a9eff);box-shadow:0 0 8px #4a9eff33}.body-part-label{font-size:.7rem;font-weight:600;color:var(--text-secondary, #aaa);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.body-part-head{min-width:80px;width:80px}.body-part-chest{min-width:90px;width:90px;padding:8px 10px}.body-part-leftArm,.body-part-rightArm{min-width:75px;width:75px}.body-part-abdomen{min-width:90px;width:90px}.body-part-leftLeg,.body-part-rightLeg{min-width:80px;width:80px}@media (max-width: 900px){.armor-body-diagram-column{min-width:160px;padding:10px}.body-part{min-width:65px;width:65px;padding:5px 6px}.body-part-chest,.body-part-abdomen{min-width:75px;width:75px}.body-part-leftArm,.body-part-rightArm{min-width:60px;width:60px}.leg-spacer{width:30px}.diagram-title{font-size:.9rem}}@media (max-width: 600px){.armor-body-diagram-column{min-width:140px;padding:8px}.body-part{min-width:58px;width:58px;padding:4px 5px}.body-part-chest,.body-part-abdomen{min-width:65px;width:65px}.body-part-leftArm,.body-part-rightArm{min-width:55px;width:55px}.body-part-label{font-size:.6rem}.leg-spacer{width:20px}.torso-row{gap:2px}}.armor-diagram-panel{width:100%}.armor-diagrams-container{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}@media (min-width: 901px){.armor-diagrams-container{flex-wrap:nowrap}}@media (max-width: 900px) and (min-width: 601px){.armor-diagrams-container{gap:12px}}@media (max-width: 600px){.armor-diagrams-container{flex-direction:column;align-items:center;gap:16px}}.my-armor-panel{padding:16px;max-width:1200px;margin:0 auto}.armor-panel-header{margin-bottom:20px}.header-title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.header-title-row h2{display:flex;align-items:center;gap:10px;margin:0;font-size:1.5rem;color:var(--text-primary, #fff)}.header-icon{width:24px;height:24px}.header-subtitle{margin:0;color:var(--text-secondary, #888);font-size:.9rem}.add-armor-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;background-color:var(--accent-color, #4a9eff);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;transition:background-color .2s ease}.add-armor-btn:hover{background-color:var(--accent-hover, #2980b9)}.add-armor-btn img{width:16px;height:16px}.armor-main-content{display:flex;flex-direction:column;gap:20px}.armor-diagrams-row{display:flex;gap:16px;align-items:flex-start;justify-content:center}.armor-options-section{padding:16px;background:var(--card-bg, #1e1e1e);border:1px solid var(--border-color, #333);border-radius:8px}.armor-options-section h4{margin:0 0 12px;font-size:1rem;font-weight:600;color:var(--accent-color, #4a9eff)}.armor-details-row{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px;justify-content:center}.armor-detail-card{flex:1 1 300px;max-width:400px;padding:12px 16px;background:var(--card-bg, #1e1e1e);border:1px solid var(--border-color, #333);border-radius:8px}.armor-detail-card h4{margin:0 0 10px;font-size:.9rem;color:var(--accent-color, #4a9eff);display:flex;align-items:center;gap:8px;flex-wrap:wrap}.detail-card-label{font-weight:600;white-space:nowrap}.detail-card-selector{flex:1;min-width:120px;padding:4px 8px;background:var(--input-bg, #2d2d2d);border:1px solid var(--border-color, #444);border-radius:4px;color:var(--text-primary, #fff);font-size:.85rem;cursor:pointer}.detail-card-selector:focus{outline:none;border-color:var(--accent-color, #4a9eff)}.detail-card-selector:disabled{opacity:.6;cursor:not-allowed}.detail-stats-empty{color:var(--text-secondary, #666);font-style:italic;font-size:.85rem;padding:8px 0}.detail-stats-table{border-collapse:collapse}.detail-stats-table th,.detail-stats-table td{padding:2px 12px;text-align:center}.detail-stats-table th{font-size:.6rem;font-weight:500;color:var(--text-secondary, #888);text-transform:uppercase;letter-spacing:.5px}.detail-stats-table td{font-size:.9rem;font-weight:500;color:var(--text-primary, #fff)}.detail-stats-table .threshold-col{padding-right:16px;border-right:1px solid var(--border-color, #444)}.detail-stats-table td.threshold-col{color:#2ecc71;font-size:1.2rem;font-weight:700}.armor-options-empty{padding:20px;text-align:center;color:var(--text-secondary, #888);font-style:italic}.armor-options-table-wrapper{overflow-x:auto}.armor-options-list-table{width:100%;border-collapse:collapse;font-size:.85rem}.armor-options-list-table th,.armor-options-list-table td{padding:8px 10px;text-align:left;border-bottom:1px solid var(--border-color, #333)}.armor-options-list-table th{background:var(--header-bg, #252525);font-weight:600;color:var(--text-secondary, #aaa);text-transform:uppercase;font-size:.75rem;letter-spacing:.5px}.armor-options-list-table tr.even{background:var(--row-even, #1a1a1a)}.armor-options-list-table tr.odd{background:var(--row-odd, #222)}.armor-options-list-table tr:hover{background:var(--row-hover, #2a2a2a)}.col-equip{width:50px;text-align:center!important}.col-equip input[type=checkbox]{cursor:pointer}.col-name{min-width:150px}.armor-link{color:var(--accent-color, #4a9eff);cursor:pointer}.armor-link:hover{text-decoration:underline}.col-location{width:100px}.col-size,.col-enc{width:60px;text-align:center!important}.col-shield{width:100px;text-align:center!important}.col-cost{width:100px;text-align:right!important}.shield-control{display:inline-flex;align-items:center;gap:0}.shield-btn{width:18px!important;height:20px!important;min-width:18px!important;min-height:20px!important;border:none!important;background:transparent!important;color:var(--text-secondary, #888)!important;border-radius:2px!important;cursor:pointer!important;font-size:1rem!important;font-weight:700!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;transition:color .15s ease!important;box-shadow:none!important;transform:none!important}.shield-btn:hover:not(:disabled){color:var(--accent-color, #4a9eff)!important;background:#4a9eff1a!important}.shield-btn:disabled{opacity:.3!important;cursor:not-allowed!important}.shield-display{display:flex;align-items:center;padding:0 4px;min-width:40px;justify-content:center}.shield-current{color:var(--text-primary, #fff);font-weight:600}.shield-sep{color:var(--text-secondary, #666);margin:0 1px}.shield-max{color:var(--text-secondary, #666)}@media (max-width: 900px){.armor-diagrams-row{flex-wrap:wrap;justify-content:center}}@media (max-width: 768px){.my-armor-panel{padding:12px}.header-title-row{flex-direction:column;align-items:flex-start;gap:12px}.add-armor-btn{width:100%;justify-content:center}.armor-details-row{flex-direction:column}.armor-detail-card{min-width:100%}.armor-options-list-table{font-size:.8rem}.col-location,.col-size{display:none}}@media (max-width: 600px){.armor-options-list-table th,.armor-options-list-table td{padding:6px}.col-cost{display:none}}.journal-panel{padding:20px;max-width:1200px;margin:0 auto}.journal-panel h3{color:var(--text-primary);margin-bottom:20px;font-size:1.5rem}.journal-section{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:8px;padding:20px;margin-bottom:20px}.journal-section h4{color:var(--text-primary);margin-top:0;margin-bottom:10px;font-size:1.2rem}.section-description{color:var(--text-secondary);font-size:.9rem;margin-bottom:12px;font-style:italic}.journal-textarea{width:100%;font-size:1rem;padding:12px;border-radius:6px;border:2px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);font-family:inherit;resize:vertical;line-height:1.5}.journal-textarea:focus{outline:none;border-color:var(--accent-color, #4a9eff)}.journal-textarea:disabled{opacity:.6;cursor:not-allowed}.sessions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;gap:10px;flex-wrap:wrap}.sessions-controls{display:flex;gap:10px;align-items:center}.sort-button,.add-session-button{padding:8px 16px;border:2px solid var(--border-color);border-radius:6px;background:var(--bg-primary);color:var(--text-primary);font-size:.9rem;cursor:pointer;transition:all .2s;white-space:nowrap}.sort-button:hover,.add-session-button:hover{background:var(--accent-color, #4a9eff);border-color:var(--accent-color, #4a9eff);color:#fff}.add-session-button{font-weight:700}.no-sessions{text-align:center;padding:40px 20px;color:var(--text-secondary)}.no-sessions p{margin:8px 0}.sessions-list{display:flex;flex-direction:column;gap:12px}.session-item{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:6px;overflow:hidden}.session-header{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;transition:background .2s;user-select:none}.session-header:hover{background:#4a9eff1a}.session-toggle{font-size:.9rem;min-width:20px;text-align:center;color:var(--text-secondary)}.session-date-input{padding:6px 10px;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-secondary);color:var(--text-primary);font-size:.95rem;cursor:pointer;min-width:140px}.session-date-input:focus{outline:none;border-color:var(--accent-color, #4a9eff)}.session-date-input:disabled{opacity:.6;cursor:not-allowed}.session-preview{flex:1;color:var(--text-secondary);font-size:.95rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.delete-session-button{padding:6px 10px;border:1px solid transparent;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:4px;transition:all .2s;font-size:1.1rem}.delete-session-button:hover{background:#ff00001a;color:#f44;border-color:#f44}.session-content{padding:0 16px 16px;border-top:1px solid var(--border-color)}.session-textarea{width:100%;font-size:.95rem;padding:12px;border-radius:6px;border:2px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);font-family:inherit;resize:vertical;line-height:1.5;margin-top:12px}.session-textarea:focus{outline:none;border-color:var(--accent-color, #4a9eff)}.session-textarea:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.journal-panel{padding:12px}.sessions-header{flex-direction:column;align-items:stretch}.sessions-controls{flex-direction:column}.sort-button,.add-session-button{width:100%}.session-header{flex-wrap:wrap}.session-date-input{min-width:120px}.session-preview{flex-basis:100%;margin-top:8px}}.power-points-section{position:relative}.pp-current-total-wrapper{display:inline-flex;align-items:center;gap:0}.pp-display-box{padding:4px 10px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;cursor:pointer;transition:border-color .2s ease;font-size:1rem;font-weight:700;color:var(--text-primary);min-width:60px;text-align:center}.pp-display-box:hover{border-color:var(--accent-color)}.pp-purchase-wrapper{display:inline-flex;align-items:center;gap:4px}.pp-purchased-display{padding:2px 8px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:2px;font-size:.9rem;font-weight:600;color:var(--text-primary);min-width:30px;text-align:center}.pp-breakdown-tooltip{position:absolute;z-index:1000;top:100%;left:0;margin-top:8px;background:var(--bg-primary);border:2px solid var(--accent-color);border-radius:6px;padding:12px;min-width:300px;box-shadow:0 4px 8px #0000004d}.power-points-section .value-adjust-btn{width:14px!important;height:16px!important;min-width:14px!important;min-height:16px!important;border:none!important;background:transparent!important;background-color:transparent!important;color:var(--text-secondary, #888)!important;border-radius:2px!important;cursor:pointer!important;font-size:.85rem!important;font-weight:700!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;line-height:1!important;transition:color .15s ease!important;box-shadow:none!important;transform:none!important;outline:none!important}.power-points-section .value-adjust-btn:focus,.power-points-section .value-adjust-btn:focus-visible,.power-points-section .value-adjust-btn:active{outline:none!important;box-shadow:none!important;background:transparent!important;background-color:transparent!important}.power-points-section .value-adjust-btn:hover:not(:disabled){color:var(--accent-color, #4a9eff)!important;background:transparent!important;background-color:transparent!important;transform:none!important;box-shadow:none!important}.power-points-section .value-adjust-btn:disabled{opacity:.3!important;cursor:not-allowed!important}.combat-effects-panel{padding:20px;background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-family)}.combat-effects-panel h3{color:var(--primary-color);margin-bottom:20px;font-size:1.4rem;border-bottom:2px solid var(--primary-color);padding-bottom:8px}.combat-effects-panel h4{color:var(--secondary-color);margin:20px 0 10px;font-size:1.2rem}.web-generator-rules{background:var(--bg-secondary);padding:20px;border-radius:8px;border:1px solid var(--border-color)}.web-generator-rules p{line-height:1.6;margin-bottom:15px;color:var(--text-secondary)}.viscosity-table{background:var(--bg-primary);padding:15px;border-radius:6px;border:1px solid var(--border-color);margin:15px 0}.viscosity-row{padding:8px 0;border-bottom:1px solid var(--border-color);color:var(--text-primary)}.viscosity-row:last-child{border-bottom:none}.viscosity-row strong{color:var(--accent-color);margin-right:10px}.dice-controls{display:flex;flex-wrap:wrap;gap:10px;margin:15px 0;padding:15px;background:var(--bg-primary);border-radius:6px;border:1px solid var(--border-color)}.dice-button{background:var(--primary-color);color:#fff;border:none;padding:10px 15px;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease;white-space:nowrap}.dice-button:hover{background:var(--primary-color-dark);transform:translateY(-1px);box-shadow:0 2px 8px #0000004d}.dice-button:active{transform:translateY(0);box-shadow:0 1px 4px #0000004d}.clear-button{background:var(--error-color);color:#fff;border:none;padding:10px 15px;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease}.clear-button:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 2px 8px #0000004d}.manual-splatter-controls{margin:20px 0}.location-buttons{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.location-button{background:var(--secondary-color);color:#fff;border:none;padding:8px 12px;border-radius:4px;cursor:pointer;font-size:.85rem;transition:all .2s ease}.location-button:hover{background:var(--secondary-color-dark);transform:translateY(-1px);box-shadow:0 2px 6px #0003}.splatter-results{margin:20px 0;background:var(--bg-tertiary);border-radius:8px;border:1px solid var(--border-color);padding:15px;max-height:400px;overflow-y:auto}.splatter-result{background:var(--bg-secondary);padding:12px;margin:8px 0;border-radius:6px;border-left:4px solid var(--accent-color);color:var(--text-primary);line-height:1.5}.splatter-result strong{color:var(--primary-color);display:block;margin-bottom:5px}.important-notes{background:var(--warning-bg);border:1px solid var(--warning-border);border-radius:6px;padding:15px;margin:20px 0}.important-notes h4{color:var(--warning-text);margin-top:0}.important-notes ul{color:var(--warning-text);margin:10px 0;padding-left:20px}.important-notes li{margin:8px 0;line-height:1.5}@media (max-width: 768px){.combat-effects-panel{padding:15px}.dice-controls{flex-direction:column;align-items:stretch}.dice-button,.clear-button{width:100%;text-align:center}.location-buttons{justify-content:center}.location-button{flex:1;min-width:120px}}@media (max-width: 480px){.combat-effects-panel h3{font-size:1.2rem}.combat-effects-panel h4{font-size:1.1rem}.viscosity-row{font-size:.9rem}.location-button{min-width:100px;font-size:.8rem}}.manual-dice-controls{margin:20px 0;background:var(--bg-secondary);padding:20px;border-radius:8px;border:1px solid var(--border-color)}.combat-table-section{background:var(--bg-secondary);padding:20px;border-radius:8px;border:1px solid var(--border-color);margin:20px 0}.combat-table-section h4{color:var(--primary-color);margin:0 0 15px;font-size:1.2rem;border-bottom:2px solid var(--primary-color);padding-bottom:5px}.hit-location-controls,.critical-hits-controls{display:flex;flex-direction:column;gap:15px}.combat-input-group{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.combat-input-group label{color:var(--text-primary);font-weight:500;min-width:180px}.combat-input{background:var(--bg-tertiary);border:2px solid var(--border-color);border-radius:4px;padding:8px 12px;color:var(--text-primary);font-size:1rem;width:100px;text-align:center}.combat-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #52a8ec4d}.location-result{color:var(--accent-color);font-weight:500;font-style:italic;margin-left:10px}.hit-location-table{background:var(--bg-primary);border-radius:6px;border:1px solid var(--border-color);overflow:hidden}.table-header{background:var(--primary-color);color:#fff;padding:10px 15px;font-weight:700;text-align:center}.table-row{padding:8px 15px;border-bottom:1px solid var(--border-color);color:var(--text-primary);display:flex;justify-content:space-between;align-items:center}.table-row:last-child{border-bottom:none}.table-row:nth-child(2n){background:var(--bg-tertiary)}.roll-range{color:var(--accent-color);font-weight:700;font-family:monospace;min-width:50px}.critical-hit-result{background:var(--bg-primary);padding:15px;border-radius:6px;border:1px solid var(--border-color);color:var(--text-primary);line-height:1.5}.critical-hit-result strong{color:var(--primary-color);display:block;margin-bottom:8px}.location-based-splatter{background:var(--bg-primary);padding:15px;border-radius:6px;border:1px solid var(--border-color);margin:15px 0}.location-based-splatter h5{color:var(--secondary-color);margin:0 0 15px;font-size:1.1rem}.location-splatter-controls{display:flex;flex-direction:column;gap:15px}.location-splatter-btn{background:var(--success-color);max-width:300px}.location-splatter-btn:hover{background:var(--success-color-dark)}.splatter-table-info{background:var(--bg-tertiary);padding:10px 15px;border-radius:6px;border:1px solid var(--border-color);margin:10px 0}.table-info{color:var(--text-primary);font-size:.9rem}.manual-splatter-section{background:var(--bg-tertiary);padding:15px;border-radius:6px;border:1px solid var(--border-color);margin:15px 0}.manual-splatter-section h6{color:var(--secondary-color);margin:0 0 15px;font-size:1rem}.d100-inputs-section h6{color:var(--secondary-color);margin:0 0 15px;font-size:.95rem}.manual-input-section{background:var(--bg-primary);padding:15px;border-radius:6px;border:1px solid var(--border-color)}.d4-input-group{display:flex;align-items:center;gap:10px;margin-bottom:15px}.d4-input-group label{color:var(--text-primary);font-weight:500;min-width:120px}.dice-input{background:var(--bg-tertiary);border:2px solid var(--border-color);border-radius:4px;padding:8px 12px;color:var(--text-primary);font-size:1rem;width:80px;text-align:center}.dice-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #52a8ec4d}.d100-inputs-section{margin-top:20px;padding:15px;background:var(--bg-tertiary);border-radius:6px;border:1px solid var(--border-color)}.d100-inputs-section h5{color:var(--secondary-color);margin:0 0 15px;font-size:1.1rem}.d100-inputs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:15px;margin-bottom:20px}.d100-input-group{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.d100-input-group label{color:var(--text-primary);font-weight:500;min-width:140px}.location-preview{color:var(--accent-color);font-weight:500;font-style:italic;min-width:80px}.calculate-button{background:var(--success-color);color:#fff;border:none;padding:12px 20px;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .2s ease;width:100%}.calculate-button:hover:not(:disabled){background:var(--success-color-dark);transform:translateY(-1px);box-shadow:0 2px 8px #0000004d}.calculate-button:disabled{background:var(--text-secondary);cursor:not-allowed;opacity:.6}.manual-splatter-results{margin:20px 0;background:var(--bg-tertiary);border-radius:8px;border:1px solid var(--border-color);padding:15px;max-height:400px;overflow-y:auto}.splatter-result.manual{border-left-color:var(--success-color)}@media (max-width: 768px){.d100-inputs-grid{grid-template-columns:1fr}.d4-input-group,.d100-input-group{flex-direction:column;align-items:flex-start}.d4-input-group label,.d100-input-group label{min-width:auto}.dice-input{width:100%;max-width:150px}.combat-input-group{flex-direction:column;align-items:flex-start}.combat-input-group label{min-width:auto}.combat-input{width:100%;max-width:150px}.table-row{flex-direction:column;align-items:flex-start;gap:5px}.roll-range{min-width:auto}.location-result{margin-left:0;margin-top:5px}.location-splatter-btn{max-width:100%}}.combat-modifiers-table{background:var(--bg-secondary);padding:20px;border-radius:8px;border:1px solid var(--border-color);margin:15px 0}.modifiers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.modifiers-column{display:flex;flex-direction:column;gap:15px}.modifier-category{background:var(--bg-primary);padding:15px;border-radius:6px;border:1px solid var(--border-color)}.modifier-category h5{color:var(--primary-color);margin:0 0 12px;font-size:1rem;font-weight:600;border-bottom:1px solid var(--primary-color);padding-bottom:5px}.modifier-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid var(--border-color);color:var(--text-primary)}.modifier-row:last-child{border-bottom:none}.modifier-name{flex:1;font-size:.9rem;color:var(--text-secondary)}.modifier-value{font-weight:700;font-size:.9rem;min-width:40px;text-align:right;color:var(--text-primary)}.modifier-value:contains("+"){color:#4caf50}.modifier-value:contains("-"){color:#f44336}@media (max-width: 768px){.modifiers-grid{grid-template-columns:1fr;gap:15px}.modifier-category{padding:12px}.modifier-name{font-size:.85rem}.modifier-value{font-size:.85rem;min-width:35px}}.malfunction-section{background:var(--bg-secondary);padding:20px;border-radius:8px;border:1px solid var(--border-color);margin:15px 0}.malfunction-info{background:var(--bg-primary);padding:15px;border-radius:6px;border:1px solid var(--border-color);margin-bottom:20px}.malfunction-info p{margin:0 0 10px;line-height:1.6;color:var(--text-secondary)}.malfunction-info p:last-child{margin-bottom:0}.weapon-selection{background:var(--bg-primary);padding:15px;border-radius:6px;border:1px solid var(--border-color);margin-bottom:20px}.weapon-type-select{width:100%;padding:8px 12px;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-primary);color:var(--text-primary);font-size:.9rem;margin-top:5px}.weapon-type-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #3498db33}.malfunction-table-info{margin-top:15px;padding:10px;background:var(--bg-secondary);border-radius:4px;border-left:4px solid var(--primary-color)}.weapon-mapping-table{background:var(--bg-primary);padding:15px;border-radius:6px;border:1px solid var(--border-color)}.weapon-mapping-table h5{color:var(--primary-color);margin:0 0 15px;font-size:1rem;font-weight:600;border-bottom:1px solid var(--primary-color);padding-bottom:5px}.weapon-mapping-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.mapping-column{display:grid;grid-template-columns:2fr 2fr;gap:5px;align-items:start}.mapping-header{font-weight:700;color:var(--primary-color);border-bottom:2px solid var(--primary-color);padding:8px 5px;font-size:.9rem}.mapping-row{padding:6px 5px;border-bottom:1px solid var(--border-color);font-size:.85rem;color:var(--text-secondary)}.weapon-name{font-weight:500;color:var(--text-primary)}.table-name{color:var(--secondary-color);font-style:italic}@media (max-width: 768px){.weapon-mapping-grid{grid-template-columns:1fr;gap:15px}.mapping-column{grid-template-columns:1fr 1fr}.mapping-header,.mapping-row{font-size:.8rem;padding:5px 3px}.malfunction-section,.malfunction-info,.weapon-selection,.weapon-mapping-table{padding:12px}}.malfunction-roll-section{background:var(--bg-primary);padding:15px;border-radius:6px;border:1px solid var(--border-color);margin-top:15px}.malfunction-result-display{background:var(--bg-secondary);border:1px solid var(--primary-color);border-radius:6px;padding:15px;margin-top:15px}.malfunction-result-header{color:var(--primary-color);font-size:1rem;margin-bottom:12px;border-bottom:1px solid var(--primary-color);padding-bottom:5px}.malfunction-result-details{display:flex;flex-direction:column;gap:10px}.result-range,.result-rc{display:flex;align-items:center;gap:8px;font-size:.9rem}.result-range strong,.result-rc strong{color:var(--secondary-color);min-width:90px}.result-effect{margin-top:5px}.result-effect strong{color:var(--secondary-color);display:block;margin-bottom:5px}.result-effect{font-size:.9rem;line-height:1.5;color:var(--text-primary)}@media (max-width: 768px){.malfunction-roll-section,.malfunction-result-display{padding:12px}.result-range,.result-rc,.result-effect{font-size:.85rem}.result-range strong,.result-rc strong{min-width:80px}}.selected-malfunction-table{background:var(--bg-primary);padding:20px;border-radius:6px;border:1px solid var(--border-color);margin-top:20px}.selected-malfunction-table h5{color:var(--primary-color);margin:0 0 15px;font-size:1.1rem;font-weight:600;border-bottom:2px solid var(--primary-color);padding-bottom:8px}.malfunction-table-display{background:var(--bg-secondary);border-radius:6px;border:1px solid var(--border-color);overflow:hidden}.malfunction-table-headers{display:grid;grid-template-columns:80px 120px 1fr;background:var(--primary-color);color:#fff}.malfunction-header{padding:12px 8px;font-weight:700;font-size:.9rem;text-align:center;border-right:1px solid rgba(255,255,255,.2)}.malfunction-header:last-child{border-right:none}.result-header{text-align:left!important}.malfunction-table-rows{max-height:400px;overflow-y:auto}.malfunction-table-row{display:grid;grid-template-columns:80px 120px 1fr;border-bottom:1px solid var(--border-color)}.malfunction-table-row:last-child{border-bottom:none}.malfunction-table-row:nth-child(2n){background:var(--bg-primary)}.malfunction-cell{padding:10px 8px;font-size:.85rem;border-right:1px solid var(--border-color);color:var(--text-secondary)}.malfunction-cell:last-child{border-right:none}.roll-cell{text-align:center;font-weight:600;color:var(--text-primary)}.rc-cell{text-align:center;font-weight:500;color:var(--secondary-color)}.result-cell{line-height:1.4;color:var(--text-primary)}@media (max-width: 768px){.malfunction-table-headers,.malfunction-table-row{grid-template-columns:60px 80px 1fr}.malfunction-header,.malfunction-cell{padding:8px 4px;font-size:.8rem}.selected-malfunction-table{padding:15px}.malfunction-table-rows{max-height:300px}}.disclaimer{background-color:#0000001a;border:1px solid rgba(255,255,255,.2);border-radius:4px;padding:12px;text-align:center;max-width:800px;margin:20px auto 10px}.disclaimer p{margin:0;font-size:12px;color:#ffffffb3;line-height:1.4}.login-container .disclaimer{margin-top:20px;margin-bottom:10px}.app .disclaimer{margin:10px auto 80px;position:relative;bottom:0}.character-tab-footer{position:fixed;bottom:0;left:0;right:0;z-index:1000;background:linear-gradient(to top,#1a1a1a,#242424);border-top:1px solid #3a3a3a;box-shadow:0 -4px 20px #0006}.character-tab-footer-nav{display:flex;justify-content:center;align-items:stretch;gap:8px;padding:10px 16px;max-width:1400px;margin:0 auto}.footer-tab{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 18px;background:#2d2d2d;border:1px solid #444;border-radius:8px;color:#b0b0b0;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap;min-height:44px}.footer-tab:hover{background:#383838;border-color:#555;color:#e0e0e0}.footer-tab:active{transform:scale(.97)}.footer-tab.active{background:linear-gradient(135deg,#2980b9,#3498db);border-color:#3498db;color:#fff;box-shadow:0 2px 8px #3498db4d}.footer-tab.active:hover{background:linear-gradient(135deg,#3498db,#5dade2)}.tab-icon{width:18px;height:18px;flex-shrink:0}.tab-label{line-height:1}@media (min-width: 768px) and (max-width: 1199px){.character-tab-footer-nav{gap:6px;padding:8px 12px}.footer-tab{padding:10px 14px;font-size:.85rem;gap:5px}.tab-icon{width:16px;height:16px}}@media (min-width: 1200px){.character-tab-footer-nav{gap:12px;padding:12px 24px}.footer-tab{padding:12px 24px;font-size:.95rem;gap:8px}.tab-icon{width:20px;height:20px}}@media (max-width: 767px){.character-tab-footer-nav{gap:4px;padding:8px;flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;-webkit-overflow-scrolling:touch}.footer-tab{padding:8px 12px;font-size:.8rem;gap:4px;flex-shrink:0}.tab-icon{width:14px;height:14px}.character-tab-footer-nav::-webkit-scrollbar{display:none}.character-tab-footer-nav{-ms-overflow-style:none;scrollbar-width:none}}@supports (padding-bottom: env(safe-area-inset-bottom)){.character-tab-footer{padding-bottom:env(safe-area-inset-bottom)}}.footer-tab:focus{outline:2px solid #3498db;outline-offset:2px}.footer-tab:focus:not(:focus-visible){outline:none}.footer-tab:focus-visible{outline:2px solid #3498db;outline-offset:2px}.dice-roller-panel{position:fixed;bottom:70px;right:20px;width:340px;max-height:calc(100vh - 150px);background:var(--bg-secondary, #1a1a2e);border:1px solid var(--border-color, #3a3a5a);border-radius:12px;box-shadow:0 8px 32px #0006;z-index:1000;display:flex;flex-direction:column;overflow:hidden;font-family:inherit}.drp-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--bg-tertiary, #252540);border-bottom:1px solid var(--border-color, #3a3a5a)}.drp-header h3{margin:0;font-size:1.1rem;color:var(--text-primary, #fff)}.drp-header-actions{display:flex;gap:8px}.drp-settings-btn,.drp-close-btn{background:transparent;border:none;color:var(--text-secondary, #aaa);cursor:pointer;font-size:1rem;padding:4px 8px;border-radius:4px;transition:all .2s}.drp-settings-btn:hover,.drp-close-btn:hover{background:var(--bg-hover, #3a3a5a);color:var(--text-primary, #fff)}.drp-settings{padding:12px 16px;background:var(--bg-tertiary, #252540);border-bottom:1px solid var(--border-color, #3a3a5a);display:flex;flex-direction:column;gap:12px}.drp-settings-row{display:flex;flex-direction:column;gap:6px}.drp-settings-label{font-size:.85rem;color:var(--text-secondary, #aaa)}.drp-color-options{display:flex;gap:8px;flex-wrap:wrap}.drp-clear-mode-select{background:var(--bg-secondary, #1a1a2e);color:var(--text-primary, #fff);border:1px solid var(--border-color, #3a3a5a);border-radius:6px;padding:8px 12px;font-size:.9rem;cursor:pointer;width:100%}.drp-clear-mode-select:focus{outline:none;border-color:var(--accent-color, #4a9eff)}.drp-clear-dice-btn{background:var(--bg-secondary, #1a1a2e);color:var(--text-primary, #fff);border:1px solid var(--border-color, #3a3a5a);border-radius:6px;padding:8px 12px;font-size:.9rem;cursor:pointer;transition:all .2s}.drp-clear-dice-btn:hover{background:var(--bg-hover, #3a3a5a);border-color:var(--accent-color, #4a9eff)}.drp-color-btn{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:all .2s;padding:0;background-image:none;box-shadow:inset 0 1px 2px #0003}.drp-color-btn.colorful{background:conic-gradient(#dc3545,#e67e22,gold,#2e8555,#00bcd4,#4169e1,#9b59b6 360deg)}.drp-color-btn:hover{transform:scale(1.1)}.drp-color-btn.selected{border-color:var(--text-primary, #fff);box-shadow:0 0 8px #ffffff4d,inset 0 1px 2px #0003}.drp-dice-grid{display:flex;gap:6px;padding:12px 16px;flex-wrap:wrap;justify-content:center;border-bottom:1px solid var(--border-color, #3a3a5a)}.drp-dice-btn{position:relative;padding:8px 12px;background:var(--bg-tertiary, #252540);border:1px solid var(--border-color, #3a3a5a);border-radius:6px;color:var(--text-primary, #fff);cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s;min-width:42px}.drp-dice-btn:hover{background:var(--bg-hover, #3a3a5a);border-color:var(--accent-color, #4a9eff)}.drp-dice-btn.selected{background:var(--accent-color, #4a9eff);border-color:var(--accent-color, #4a9eff)}.drp-dice-count{position:absolute;top:-6px;right:-6px;background:var(--accent-color, #4a9eff);color:#fff;font-size:.7rem;font-weight:700;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center}.drp-roll-section{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border-color, #3a3a5a);flex-wrap:wrap}.drp-roll-notation{font-size:1.1rem;font-weight:700;color:var(--accent-color, #4a9eff);flex:1;min-width:0}.drp-clear-selection-btn{background:transparent;border:1px solid var(--border-color, #3a3a5a);color:var(--text-secondary, #aaa);cursor:pointer;font-size:.8rem;padding:4px 8px;border-radius:4px;transition:all .2s;line-height:1}.drp-clear-selection-btn:hover{background:var(--bg-hover, #3a3a5a);color:var(--text-primary, #fff)}.drp-private-toggle{display:flex;align-items:center;gap:4px;font-size:.8rem;color:var(--text-secondary, #aaa);cursor:pointer}.drp-private-toggle input{cursor:pointer}.drp-roll-btn{margin-left:auto;padding:8px 16px;background:var(--accent-color, #4a9eff);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;transition:all .2s}.drp-roll-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}.drp-last-roll{padding:16px;background:linear-gradient(135deg,var(--bg-tertiary, #252540) 0%,var(--bg-secondary, #1a1a2e) 100%);border-bottom:1px solid var(--border-color, #3a3a5a)}.drp-last-roll-header{display:flex;flex-wrap:wrap;gap:6px;align-items:baseline;margin-bottom:8px}.drp-roll-character{color:var(--accent-color, #4a9eff);font-weight:600}.drp-roll-context{color:var(--text-secondary, #aaa);font-size:.9rem}.drp-roll-notation-display{color:var(--text-primary, #fff);font-weight:500;margin-left:auto}.drp-last-roll-result{display:flex;align-items:baseline;gap:8px;font-size:1.2rem}.drp-rolls,.drp-modifier{color:var(--text-secondary, #aaa);font-size:1rem}.drp-total{color:#4ade80;font-weight:700;font-size:1.4rem}.drp-history{flex:1;overflow:hidden;display:flex;flex-direction:column}.drp-history-header{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background:var(--bg-tertiary, #252540)}.drp-history-toggle{background:transparent;border:none;color:var(--text-primary, #fff);cursor:pointer;font-size:.9rem;padding:0}.drp-history-toggle:hover{color:var(--accent-color, #4a9eff)}.drp-clear-btn{background:transparent;border:1px solid var(--border-color, #3a3a5a);color:var(--text-secondary, #aaa);cursor:pointer;font-size:.8rem;padding:4px 10px;border-radius:4px;transition:all .2s}.drp-clear-btn:hover{background:var(--bg-hover, #3a3a5a);color:var(--text-primary, #fff)}.drp-history-list{flex:1;overflow-y:auto;padding:8px 0;max-height:200px}.drp-history-item{padding:8px 16px;border-bottom:1px solid var(--border-color, #3a3a5a)}.drp-history-item:last-child{border-bottom:none}.drp-history-item-header{display:flex;gap:6px;margin-bottom:4px}.drp-history-character{color:var(--accent-color, #4a9eff);font-weight:500;font-size:.85rem}.drp-history-context{color:var(--text-secondary, #aaa);font-size:.85rem}.drp-history-item-details{display:flex;gap:6px;align-items:baseline;font-size:.85rem}.drp-history-notation{color:var(--text-primary, #fff)}.drp-history-rolls,.drp-history-modifier{color:var(--text-secondary, #aaa)}.drp-history-total{color:#4ade80;font-weight:600}.drp-history-time{margin-left:auto;color:var(--text-muted, #666);font-size:.75rem}.drp-history-empty{padding:20px 16px;text-align:center;color:var(--text-secondary, #aaa);font-size:.9rem}@media (max-width: 768px){.dice-roller-panel{bottom:80px;right:10px;left:10px;width:auto;max-height:calc(100vh - 160px)}.drp-dice-grid{gap:4px}.drp-dice-btn{padding:6px 10px;font-size:.85rem;min-width:38px}}.dice-canvas-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999}.dice-canvas-container.clickable{pointer-events:auto;cursor:pointer}.dice-canvas-container canvas{width:100%;height:100%}.fab{position:fixed!important;width:56px!important;height:56px!important;border-radius:50%!important;background:#2d2d2d!important;background-color:#2d2d2d!important;color:#fff!important;border:1px solid #3498db!important;box-shadow:0 4px 12px #0000004d!important;cursor:pointer!important;z-index:1000!important;display:flex!important;align-items:center!important;justify-content:center!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important;-webkit-tap-highlight-color:transparent!important;padding:0!important}.fab:hover{background:#3d3d3d!important;background-color:#3d3d3d!important;border-color:#2980b9!important;transform:scale(1.1)!important;box-shadow:0 6px 16px #3498db4d!important}.fab:active{transform:scale(.95)!important}.fab.bottom-right{bottom:24px;right:24px}.fab.bottom-left{bottom:24px;left:24px}.fab.bottom-center{bottom:24px;left:50%;transform:translate(-50%)}.fab.bottom-center:hover{transform:translate(-50%) scale(1.1)}.fab.bottom-center:active{transform:translate(-50%) scale(.95)}.fab-icon{font-size:24px;line-height:1;display:flex;align-items:center;justify-content:center}.fab-badge{position:absolute;top:-4px;right:-4px;background:#e74c3c;color:#fff;font-size:.7rem;font-weight:700;padding:2px 6px;border-radius:10px;min-width:20px;text-align:center;box-shadow:0 2px 4px #0003}@media (min-width: 769px){.fab{display:none}}@media (max-width: 768px){.fab{width:56px;height:56px}.fab.bottom-right,.fab.bottom-left,.fab.bottom-center{bottom:90px}}@media (max-width: 375px){.fab{width:48px;height:48px}.fab-icon{font-size:20px}.fab.bottom-right{right:16px;bottom:80px}.fab.bottom-left{left:16px;bottom:80px}}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a1a,#2d2d2d);padding:20px}.login-box{background:var(--bg-secondary);border-radius:12px;box-shadow:0 8px 32px #0006;border:2px solid var(--border-color);padding:40px;width:100%;max-width:450px;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.login-header{text-align:center;margin-bottom:30px}.login-header h1{color:var(--text-primary);font-size:2rem;margin-bottom:10px;font-weight:600}.login-header p{color:var(--text-secondary);font-size:.95rem;line-height:1.4}.backend-notice{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border:2px solid #ffc107;border-radius:8px;padding:20px;margin-bottom:25px;text-align:center}.backend-notice h3{color:#856404;margin:0 0 10px;font-size:1.1rem;font-weight:600}.backend-notice p{color:#856404;margin:8px 0;font-size:.9rem;line-height:1.4}.login-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:var(--text-primary);font-weight:500;font-size:.9rem}.form-group input{background:var(--input-bg);border:2px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:1rem;padding:12px 16px;transition:border-color .2s,box-shadow .2s}.form-group input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px #3498db1a}.form-group input:disabled{opacity:.6;cursor:not-allowed}.form-group input::placeholder{color:var(--text-muted)}.error-message{background:#e74c3c26;border:2px solid var(--danger-color);border-radius:8px;color:var(--danger-color);padding:15px;font-size:.95rem;font-weight:500;text-align:center;margin:15px 0;animation:slideInError .3s ease-out}@keyframes slideInError{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.login-button{background:var(--accent-color);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:14px 20px;transition:background-color .2s,transform .1s;margin-top:10px}.login-button:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{background:var(--bg-accent);cursor:not-allowed;transform:none}.login-footer{margin-top:30px;text-align:center;padding-top:20px;border-top:1px solid var(--border-color)}.toggle-button{background:transparent;border:2px solid var(--accent-blue);color:var(--accent-blue);padding:12px 24px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:15px;width:100%}.toggle-button:hover:not(:disabled){background:var(--accent-blue);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #3498db4d}.toggle-button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.forgot-password-link{text-align:center;margin:15px 0}.forgot-password-button{background:transparent;border:none;color:var(--accent-blue);font-size:.9rem;cursor:pointer;text-decoration:underline;transition:color .3s ease;padding:8px 0}.forgot-password-button:hover:not(:disabled){color:#2980b9}.forgot-password-button:disabled{opacity:.6;cursor:not-allowed}.login-footer p{color:var(--text-muted);font-size:.85rem}@media (max-width: 480px){.login-container{padding:15px}.login-box{padding:30px 20px}.login-header h1{font-size:1.6rem}}.login-divider{display:flex;align-items:center;margin:24px 0;color:var(--text-secondary);font-size:.875rem}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--border-color)}.login-divider span{padding:0 16px;background:var(--bg-secondary)}.google-login-container{display:flex;justify-content:center;align-items:center;margin:16px 0}.google-login-button{transition:opacity .2s ease}.google-login-button.disabled{pointer-events:none;opacity:.6}.google-button-loading{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;color:#666;font-size:14px}.loading-spinner{width:16px;height:16px;border:2px solid #e3e3e3;border-top:2px solid #4285f4;border-radius:50%;animation:spin 1s linear infinite}.google-button-error{display:flex;align-items:center;justify-content:center;padding:12px 16px;color:#d93025;font-size:14px;border:1px solid #d93025;border-radius:4px;background-color:#fce8e6}.custom-google-button{display:flex;align-items:center;justify-content:center;width:100%;max-width:280px;height:48px;background-color:#fff;border:1px solid #dadce0;border-radius:8px;color:#3c4043;cursor:pointer;font-family:Roboto,sans-serif;font-size:14px;font-weight:500;letter-spacing:.25px;margin:8px 0;padding:0 16px;transition:all .2s ease-in-out;text-decoration:none;outline:none}.custom-google-button:hover:not(.disabled){background-color:#f8f9fa;border-color:#c8c9ca;box-shadow:0 1px 3px #0000001a}.custom-google-button:active:not(.disabled){background-color:#f1f3f4;box-shadow:0 1px 2px #0000001a}.custom-google-button:focus:not(.disabled){border-color:#4285f4;box-shadow:0 0 0 2px #4285f433}.custom-google-button.disabled{opacity:.6;cursor:not-allowed}.google-button-content{display:flex;align-items:center;gap:12px}.google-icon{display:flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0}.google-button-text{color:#3c4043;font-size:14px;font-weight:500;letter-spacing:.25px}@media (max-width: 768px){.custom-google-button{width:100%;max-width:none;height:44px;font-size:16px}.google-login-container{margin:12px 0}}@media (prefers-color-scheme: dark){.custom-google-button{background-color:#2d2e30;border-color:#5f6368;color:#e8eaed}.custom-google-button:hover:not(.disabled){background-color:#35363a;border-color:#6c6f73}.custom-google-button:active:not(.disabled){background-color:#3c4043}.google-button-text{color:#e8eaed}.google-button-loading{color:#9aa0a6}.loading-spinner{border-color:#5f6368;border-top-color:#8ab4f8}}@media (prefers-contrast: high){.custom-google-button{border-width:2px;border-color:#000}.custom-google-button:focus:not(.disabled){border-color:#06c;box-shadow:0 0 0 3px #0066cc4d}}@media (prefers-reduced-motion: reduce){.custom-google-button,.loading-spinner{transition:none;animation:none}}.loading-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a1a,#2d2d2d)}.loading-spinner{text-align:center;color:var(--text-primary)}.spinner{width:60px;height:60px;border:4px solid var(--bg-accent);border-top:4px solid var(--accent-color);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-spinner p{font-size:1.1rem;color:var(--text-secondary)}.google-account-linking{margin-top:20px;padding:20px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary)}.google-account-linking h3{margin:0 0 10px;color:var(--text-primary);font-size:1.2rem}.google-account-linking h4{margin:15px 0 8px;color:var(--text-primary);font-size:1rem}.section-description{color:var(--text-secondary);margin-bottom:20px;line-height:1.4}.linking-error{background-color:#f443361a;border:1px solid #f44336;color:#f44336;padding:12px;border-radius:6px;margin-bottom:15px;font-size:.9rem}.linking-success{background-color:#4caf501a;border:1px solid #4caf50;color:#4caf50;padding:12px;border-radius:6px;margin-bottom:15px;font-size:.9rem}.linking-loading{text-align:center;padding:20px;color:var(--text-secondary);font-style:italic}.linked-accounts-list{margin:15px 0}.linked-account-item{display:flex;justify-content:space-between;align-items:center;padding:15px;border:1px solid var(--border-color);border-radius:6px;margin-bottom:10px;background:var(--bg-primary);transition:all .2s ease}.linked-account-item:hover{border-color:var(--accent-color);transform:translateY(-1px)}.account-info{display:flex;align-items:center;flex:1}.account-icon{font-size:1.5rem;margin-right:12px;min-width:24px}.account-details{flex:1}.account-type{font-weight:600;color:var(--text-primary);margin-bottom:4px;display:flex;align-items:center;gap:8px}.primary-badge{background:var(--accent-color);color:#fff;padding:2px 6px;border-radius:4px;font-size:.7rem;font-weight:700}.account-identifier{color:var(--text-secondary);font-size:.9rem;margin-bottom:2px}.linked-date{color:var(--text-tertiary);font-size:.8rem}.unlink-btn{background:#f44336;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background-color .2s ease}.unlink-btn:hover:not(:disabled){background:#d32f2f}.unlink-btn:disabled{opacity:.6;cursor:not-allowed}.no-linked-accounts{text-align:center;padding:30px;color:var(--text-secondary);font-style:italic;border:2px dashed var(--border-color);border-radius:8px;margin:15px 0}.link-account-section{margin-top:25px;padding:20px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary)}.link-account-section p{color:var(--text-secondary);margin-bottom:15px;line-height:1.4}.already-linked{display:flex;align-items:center;gap:10px;padding:15px;background:#4caf501a;border:1px solid #4caf50;border-radius:6px;color:#4caf50;font-weight:500}.check-icon{font-size:1.2rem;font-weight:700}.link-google-section{display:flex;justify-content:flex-start;margin-top:15px}.security-notice{margin-top:25px;padding:15px;background:#ffc1071a;border:1px solid #ffc107;border-radius:6px}.security-notice h4{margin:0 0 8px;color:#ff8f00;font-size:.95rem}.security-notice p{margin:0;color:var(--text-secondary);font-size:.9rem;line-height:1.4}@media (max-width: 768px){.google-account-linking{padding:15px}.linked-account-item{flex-direction:column;align-items:flex-start;gap:10px}.account-info{width:100%}.unlink-btn{align-self:flex-end}.link-google-section{justify-content:center}}.account-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:10000}.account-modal{background:linear-gradient(135deg,#1e2a4a,#2d3a5f);border:2px solid #4a90e2;border-radius:12px;box-shadow:0 8px 32px #00000080;max-width:600px;width:90%;max-height:80vh;overflow-y:auto;color:#fff}.account-header{background:linear-gradient(135deg,#4a90e2,#357abd);padding:20px;border-radius:10px 10px 0 0;display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #357abd}.account-header h2{margin:0;font-size:1.5rem;font-weight:600;color:#fff}.close-btn{background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.close-btn:hover{background-color:#ffffff1a;transform:scale(1.1)}.account-content{padding:24px}.account-section{margin-bottom:32px}.account-section:last-child{margin-bottom:0}.account-section h3{color:#4a90e2;font-size:1.25rem;font-weight:600;margin:0 0 16px;padding-bottom:8px;border-bottom:2px solid #357abd}.account-info-grid{display:flex;flex-direction:column;gap:12px}.info-row{display:flex;align-items:center;padding:12px 16px;background:#ffffff0d;border-radius:8px;border:1px solid rgba(74,144,226,.3)}.info-row label{font-weight:600;color:#4a90e2;min-width:120px;margin-right:16px}.info-row span{color:#fff;flex:1}.change-password-btn{background:linear-gradient(135deg,#4a90e2,#357abd);color:#fff;border:none;padding:12px 20px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px}.change-password-btn:hover{background:linear-gradient(135deg,#357abd,#2a5f8f);transform:translateY(-2px);box-shadow:0 4px 12px #4a90e24d}.password-form{background:#ffffff0d;padding:20px;border-radius:10px;border:1px solid rgba(74,144,226,.3)}.form-row{margin-bottom:16px}.form-row label{display:block;color:#4a90e2;font-weight:600;margin-bottom:6px}.form-row input{width:100%;padding:12px 16px;background:#ffffff1a;border:2px solid rgba(74,144,226,.3);border-radius:8px;color:#fff;font-size:1rem;transition:all .2s ease;box-sizing:border-box}.form-row input:focus{outline:none;border-color:#4a90e2;background:#ffffff26;box-shadow:0 0 0 3px #4a90e233}.form-row input::placeholder{color:#ffffff80}.error-message{color:#ff6b6b;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);padding:12px 16px;border-radius:8px;margin:16px 0;font-weight:500}.success-message{color:#51cf66;background:#51cf661a;border:1px solid rgba(81,207,102,.3);padding:12px 16px;border-radius:8px;margin:16px 0;font-weight:500}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.cancel-btn{background:#ffffff1a;color:#fff;border:2px solid rgba(255,255,255,.3);padding:12px 20px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.cancel-btn:hover{background:#fff3;border-color:#ffffff80}.save-btn{background:linear-gradient(135deg,#51cf66,#40c057);color:#fff;border:none;padding:12px 20px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.save-btn:hover:not(:disabled){background:linear-gradient(135deg,#40c057,#37b24d);transform:translateY(-2px);box-shadow:0 4px 12px #51cf664d}.save-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.loading{text-align:center;padding:40px;color:#4a90e2;font-size:1.1rem}@media (max-width: 768px){.account-modal{width:95%;max-height:90vh}.account-header{padding:16px}.account-header h2{font-size:1.25rem}.account-content{padding:16px}.info-row{flex-direction:column;align-items:flex-start;gap:6px}.info-row label{min-width:auto;margin-right:0}.form-actions{flex-direction:column}.cancel-btn,.save-btn{width:100%}}.settings-menu-container{display:flex;align-items:center;gap:15px;margin-left:auto;padding:0 20px;position:relative}.user-info{color:var(--text-secondary);font-size:.9rem;white-space:nowrap}.settings-dropdown{position:relative}.settings-button{background:var(--primary-color);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:500;padding:8px 16px;transition:background-color .2s,transform .1s;display:flex;align-items:center;gap:6px}.settings-button:hover{background:var(--primary-hover);transform:translateY(-1px)}.settings-dropdown-menu{position:absolute;top:100%;right:0;background:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:180px;z-index:10001;margin-top:4px;overflow:hidden;transform:none!important;will-change:auto!important}.menu-item{display:flex;align-items:center;gap:8px;background:none;border:none;color:var(--text-primary);cursor:pointer;font-size:.9rem;padding:12px 16px;text-align:left;transition:background-color .2s;width:100%}.menu-item:hover{background:var(--hover-color)}.menu-separator{height:1px;background:var(--border-color);margin:4px 0}.logout-item{color:var(--danger-color)}.logout-item:hover{background:var(--danger-color);color:#fff}.character-manager-overlay{position:fixed!important;inset:0!important;background:#00000080!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:10002!important;padding:20px!important;transform:none!important;will-change:auto!important}.character-manager-modal{background:var(--surface-color)!important;border-radius:12px!important;box-shadow:0 8px 32px #0000004d!important;max-width:800px!important;width:100%!important;max-height:80vh!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;transform:none!important}.character-manager-modal .modal-header{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:20px 24px!important;border-bottom:1px solid var(--border-color)!important;background:var(--background-color)!important}.character-manager-modal .modal-header h2{color:var(--text-primary)!important;margin:0!important;font-size:1.5rem!important}.character-manager-modal .close-button{background:none!important;border:none!important;color:var(--text-secondary)!important;cursor:pointer!important;font-size:1.5rem!important;padding:4px!important;border-radius:4px!important;transition:background-color .2s!important}.character-manager-modal .close-button:hover{background:var(--hover-color)!important;color:var(--text-primary)!important}.character-manager-modal .modal-content{padding:24px!important;overflow-y:auto!important;flex:1!important}.character-manager-modal .save-section{margin-bottom:32px!important}.character-manager-modal .save-section h3{color:var(--text-primary)!important;margin:0 0 16px!important;font-size:1.2rem!important}.character-manager-modal .save-form{display:flex!important;gap:12px!important;align-items:flex-start!important}.character-manager-modal .save-input-wrapper{flex:1!important}.character-manager-modal .save-form input{width:100%!important;background:var(--input-background)!important;border:1px solid var(--border-color)!important;border-radius:6px!important;color:var(--text-primary)!important;font-size:.9rem!important;padding:10px 12px!important}.character-manager-modal .save-form input:focus{border-color:var(--primary-color)!important;outline:none!important;box-shadow:0 0 0 2px rgba(var(--primary-rgb),.2)!important}.character-manager-modal .existing-character-notice{background:var(--warning-background, #fff3cd)!important;border:1px solid var(--warning-border, #ffeaa7)!important;border-radius:4px!important;color:var(--warning-text, #856404)!important;font-size:.8rem!important;margin-top:6px!important;padding:6px 10px!important}.character-manager-modal .save-btn{background:var(--success-color)!important;border:none!important;border-radius:6px!important;color:#fff!important;cursor:pointer!important;font-size:.9rem!important;font-weight:500!important;padding:10px 16px!important;transition:background-color .2s!important;white-space:nowrap!important}.character-manager-modal .save-btn:hover{background:var(--success-hover)!important}.character-manager-modal .characters-section .characters-header{display:flex!important;justify-content:space-between!important;align-items:center!important;margin-bottom:16px!important}.character-manager-modal .characters-section h3{color:var(--text-primary)!important;margin:0!important;font-size:1.2rem!important}.character-manager-modal .new-character-btn{background:var(--primary-color)!important;color:#fff!important;border:none!important;padding:8px 16px!important;border-radius:6px!important;cursor:pointer!important;font-size:.9rem!important;font-weight:500!important;transition:background .2s ease!important}.character-manager-modal .new-character-btn:hover{background:var(--primary-hover)!important}.character-manager-modal .no-characters{color:var(--text-secondary)!important;font-style:italic!important;text-align:center!important;padding:40px 20px!important}.character-manager-modal .characters-list{display:flex!important;flex-direction:column!important;gap:12px!important}.character-manager-modal .codename{color:var(--text-secondary)!important;font-size:.8rem!important;font-style:italic!important}.character-manager-modal .character-date{color:var(--text-secondary)!important;font-size:.75rem!important}.character-manager-modal .character-actions{display:flex!important;gap:8px!important}.character-manager-modal .load-btn{background:var(--primary-color)!important;border:none!important;border-radius:4px!important;color:#fff!important;cursor:pointer!important;font-size:.8rem!important;padding:6px 12px!important;transition:background-color .2s!important}.character-manager-modal .load-btn:hover{background:var(--primary-hover)!important}.character-manager-modal .update-btn{background:var(--warning-color, #f39c12)!important;border:none!important;border-radius:4px!important;color:#fff!important;cursor:pointer!important;font-size:.8rem!important;padding:6px 12px!important;transition:background-color .2s!important}.character-manager-modal .update-btn:hover{background:var(--warning-hover, #e67e22)!important}.character-manager-modal .delete-btn{background:var(--danger-color)!important;border:none!important;border-radius:4px!important;color:#fff!important;cursor:pointer!important;font-size:.8rem!important;padding:6px 12px!important;transition:background-color .2s!important}.character-manager-modal .delete-btn:hover{background:var(--danger-hover)!important}@media (max-width: 768px){.character-manager-modal{max-width:95vw!important;max-height:90vh!important}.character-manager-modal .character-item{flex-direction:column!important;align-items:stretch!important}.character-manager-modal .character-actions{justify-content:flex-end!important}.settings-menu-container{padding:0 10px!important}}.menu-submenu{padding:4px 0}.menu-submenu-label{display:block;padding:8px 16px;font-size:.8rem;font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--border-color);margin-bottom:4px}.menu-subitem{display:block;width:100%;padding:6px 24px;background:none;border:none;color:var(--text-primary);cursor:pointer;font-size:.8rem;text-align:left;transition:background-color .2s}.menu-subitem:hover{background:var(--hover-color);color:var(--primary-color)}.export-import-section{margin-bottom:24px}.export-import-section h3{color:var(--text-primary);margin:0 0 16px;font-size:1.2rem}.export-import-buttons{display:flex;flex-direction:column;gap:16px}.export-group,.import-group{display:flex;flex-direction:column;gap:8px}.group-label{font-size:.9rem;font-weight:600;color:var(--text-secondary);margin-bottom:4px}.export-btn,.import-btn{background:var(--primary-color);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;padding:8px 12px;transition:background-color .2s;margin-right:8px}.export-btn:hover,.import-btn:hover{background:var(--primary-hover)}.import-btn{background:var(--success-color)}.import-btn:hover{background:var(--success-hover)}.import-warnings{background:var(--warning-background);border:1px solid var(--warning-color);border-radius:6px;padding:12px;margin-top:16px}.import-warnings h4{color:var(--warning-color);margin:0 0 8px;font-size:.9rem}.import-warnings ul{margin:0;padding-left:20px}.import-warnings li{color:var(--text-primary);font-size:.8rem;margin-bottom:4px}.section-separator{height:1px;background:var(--border-color);margin:24px 0}.cloud-section{margin:20px 0;padding:15px;border:1px solid var(--border-color);border-radius:8px;background:var(--surface-color)}.cloud-section h3{margin:0 0 15px;color:var(--text-primary);font-size:1.1rem;display:flex;align-items:center;gap:8px}.backup-controls,.share-controls{display:flex;gap:10px;margin-bottom:15px;flex-wrap:wrap}.backup-list,.shares-list{max-height:300px;overflow-y:auto;border:1px solid var(--border-color);border-radius:6px;background:var(--background-color)}.backup-item,.share-item{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;border-bottom:1px solid var(--border-light);background:var(--surface-color);transition:background-color .2s}.backup-item:hover,.share-item:hover{background:var(--hover-color)}.backup-item:last-child,.share-item:last-child{border-bottom:none}.backup-info,.share-info{flex:1;min-width:0}.backup-name{font-weight:500;color:var(--text-primary);margin-bottom:4px;display:flex;align-items:center;gap:8px}.backup-meta,.share-meta{display:flex;flex-direction:column;gap:2px;font-size:.85rem;color:var(--text-secondary)}.auto-tag{background:var(--success-color);color:#fff;padding:2px 6px;border-radius:12px;font-size:.7rem;font-weight:500}.backup-actions,.share-actions{display:flex;gap:8px;flex-shrink:0}.restore-btn,.revoke-btn{background:var(--warning-color);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;padding:6px 12px;transition:background-color .2s}.restore-btn:hover,.revoke-btn:hover{background:var(--warning-hover)}.backup-btn{background:var(--primary-color);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;padding:8px 12px;transition:background-color .2s}.backup-btn:hover{background:var(--primary-hover)}.share-dialog{background:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;padding:20px;margin:15px 0;box-shadow:0 2px 8px #0000001a}.share-dialog h4{margin:0 0 15px;color:var(--text-primary)}.share-options{display:flex;flex-direction:column;gap:15px;margin-bottom:15px}.share-option{display:flex;flex-direction:column;gap:6px}.share-option small{color:var(--text-secondary);font-size:.8rem}.public-share-btn,.private-share-btn,.user-share-btn{padding:10px 15px;border:none;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s}.public-share-btn{background:var(--info-color);color:#fff}.public-share-btn:hover{background:var(--info-hover)}.private-share-btn{background:var(--warning-color);color:#fff}.private-share-btn:hover{background:var(--warning-hover)}.user-share-btn{background:var(--success-color);color:#fff}.user-share-btn:hover{background:var(--success-hover)}.share-btn{background:var(--primary-color);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;padding:8px 12px;transition:background-color .2s}.share-btn:hover{background:var(--primary-hover)}.share-user-input{display:flex;gap:10px;align-items:center}.email-input{flex:1;padding:8px 12px;border:1px solid var(--border-color);border-radius:4px;font-size:.9rem}.close-btn{background:var(--border-color);border:none;border-radius:4px;color:var(--text-primary);cursor:pointer;padding:8px 16px;transition:background-color .2s}.close-btn:hover{background:var(--hover-color)}.share-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.share-type{font-weight:500;color:var(--text-primary)}.share-permissions{background:var(--primary-color);color:#fff;padding:2px 8px;border-radius:12px;font-size:.75rem}.shared-with{color:var(--text-secondary);font-size:.9rem;margin:4px 0}.share-url{margin-top:8px}.copy-btn{background:var(--primary-color);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;padding:4px 10px;transition:background-color .2s}.copy-btn:hover{background:var(--primary-hover)}.no-backups,.no-shares{color:var(--text-secondary);font-style:italic;text-align:center;padding:20px}.toggle-btn{background:var(--secondary-color);border:none;border-radius:4px;color:var(--text-primary);cursor:pointer;padding:8px 12px;transition:all .2s}.toggle-btn:hover{background:var(--hover-color)}.settings-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.settings-modal{background:var(--surface-color);border-radius:12px;box-shadow:0 8px 32px #0000004d;max-width:900px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;position:relative}.settings-modal.large-modal{max-width:1200px;width:95%}.settings-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border-color);background:var(--background-color)}.settings-header h2{color:var(--text-primary);margin:0;font-size:1.5rem}.close-btn{background:none;border:none;color:var(--text-secondary);font-size:24px;cursor:pointer;padding:5px;line-height:1;border-radius:4px;transition:all .2s}.close-btn:hover{background:var(--hover-color);color:var(--text-primary)}.settings-content{flex:1;overflow-y:auto;padding:0}.settings-content .admin-page{padding:20px;min-height:auto;background:transparent}.help-menu{position:relative;display:inline-block}.help-button{width:40px;height:40px;border-radius:50%;background:var(--accent-color);color:#fff;border:none;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;margin-left:10px}.help-button:hover{background:var(--accent-hover);transform:scale(1.05)}.help-dropdown{position:absolute;top:100%;right:0;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px #0000004d;z-index:1000;min-width:200px;margin-top:5px}.help-dropdown-content{padding:8px}.help-option{width:100%;padding:12px 16px;background:transparent;color:var(--text-primary);border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;text-align:left;font-size:.95rem}.help-option:hover{background:var(--bg-hover);color:var(--accent-color)}.help-popup-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.help-popup{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;box-shadow:0 8px 24px #0006;max-width:600px;width:100%;max-height:80vh;overflow-y:auto}.help-popup-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 0;border-bottom:1px solid var(--border-accent);margin-bottom:20px}.help-popup-header h3{color:var(--text-primary);margin:0;font-size:1.4rem}.help-popup-close{background:none;border:none;color:var(--text-secondary);font-size:1.8rem;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.help-popup-close:hover{background:var(--bg-hover);color:var(--text-primary)}.help-popup-content{padding:0 24px 24px}.help-instructions{color:var(--text-primary);line-height:1.6;padding-left:20px}.help-instructions li{margin-bottom:12px;font-size:1rem}.hamburger-icon{display:inline-block;background:var(--accent-color);color:#fff;padding:2px 6px;border-radius:4px;font-weight:700;font-size:.9rem;margin:0 2px}@media (max-width: 768px){.help-popup{margin:10px;max-height:90vh}.help-popup-header{padding:16px 20px 0}.help-popup-content{padding:0 20px 20px}.help-instructions{padding-left:16px}.help-instructions li{font-size:.95rem}}:root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark!important;color:#fff;background-color:#1a1a1a;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}.character-sheet{max-width:1200px;margin:0 auto;padding:20px;background:#2d2d2d;border-radius:8px;box-shadow:0 4px 6px #0000004d}.character-header{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:10px}.character-basics{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:15px;margin-bottom:30px}.stat-block{text-align:center;padding:15px;background:#fff;border-radius:8px;border:2px solid #ddd}.stat-value{font-size:24px;font-weight:700;color:var(--success-color)}.stat-modifier{font-size:14px;color:var(--text-muted)}.skills-section,.equipment-section{margin-bottom:30px}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.skill-item{display:flex;justify-content:space-between;padding:8px;background:#fff;border-radius:4px;border:1px solid #ddd}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;font-weight:500;color:#333}.form-group input,.form-group select,.form-group textarea{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px;font-size:14px}@media (prefers-color-scheme: dark){.character-sheet{background:#2a2a2a;color:#fff}.stat-block,.skill-item,.form-group input,.form-group select,.form-group textarea{background:#1a1a1a;border-color:#444;color:#fff}.form-group label{color:#fff}}
