/* ============================================================
   /data/css/ui/buttons.css
   Shared button + action controls
   ============================================================ */

.inline {
    display: inline;
}

.row-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
}

/* ============================================================
   Size helpers
   ============================================================ */

.btn-sm {
    padding: 8px 10px;
    border-radius: 10px;
}

/* ============================================================
   Icon button base
   ============================================================ */

.btn-icon {
    width: 40px;
    height: 40px;
    padding: 0;
    border-radius: 12px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 0;
    line-height: 1;
}

.btn-icon{
    border: 1px solid rgba(0,0,0,0.14);
    background: rgba(255,255,255,0.06);
}

.btn-icon:focus,
.btn-icon:focus-visible,
.btn-icon:active{
    outline: none;
    box-shadow: none;
}

.btn-icon i {
    font-size: 14px;
}

/* Icon buttons should never underline */
.btn-icon,
.btn-icon:hover,
.btn-icon:focus {
    text-decoration: none;
}

/* ============================================================
   Semantic tints
   ============================================================ */

.btn-edit {
    border-color: rgba(120, 180, 255, .30);
    background: rgba(120, 180, 255, .12);
}

.btn-edit:hover {
    border-color: rgba(120, 180, 255, .50);
    background: rgba(120, 180, 255, .18);
}

.btn-delete {
    border-color: rgba(255, 80, 80, .35);
    background: rgba(255, 80, 80, .12);
}

.btn-delete:hover {
    border-color: rgba(255, 80, 80, .55);
    background: rgba(255, 80, 80, .18);
}

.btn-view {
    border-color: rgba(190, 144, 93, .35);
    background: rgba(190, 144, 93, .12);
}

.btn-view:hover {
    border-color: rgba(190, 144, 93, .55);
    background: rgba(190, 144, 93, .18);
}

.btn-print {
    border-color: rgba(190, 144, 93, .35);
    background: rgba(190, 144, 93, .12);
}

.btn-print:hover {
    border-color: rgba(190, 144, 93, .55);
    background: rgba(190, 144, 93, .18);
}

/* ============================================================
   Responsive adjustments
   ============================================================ */

@media (max-width: 700px) {

    .btn-icon {
        width: 38px;
        height: 38px;
        border-radius: 12px;
    }
}

/* Make all .btn anchors behave like buttons visually */
.btn,
.btn:hover,
.btn:focus{
    text-decoration:none;
}

/* Normalize font rendering between <a> and <button> */
.btn{
    font:inherit;
    line-height:1.2;
}

/* ============================================================
   Extra semantic tints
   ============================================================ */

.btn-ok{
    border-color: rgba(80, 220, 140, .35);
    background: rgba(80, 220, 140, .12);
}

.btn-ok:hover{
    border-color: rgba(80, 220, 140, .55);
    background: rgba(80, 220, 140, .18);
}

.btn-disabled,
.btn-icon:disabled{
    border-color: rgba(255, 255, 255, .14);
    background: rgba(255, 255, 255, .06);
    opacity: .45;
    cursor: not-allowed;
}

.btn-icon:disabled:hover{
    border-color: rgba(255, 255, 255, .14);
    background: rgba(255, 255, 255, .06);
}

/* Disabled icon buttons (anchors) */
.btn-icon[data-disabled="1"],
.btn-icon[data-disabled="1"]:hover{
    border-color: rgba(255,255,255,.14);
    background: rgba(255,255,255,.06);
    opacity:.45;
    cursor:not-allowed;
    pointer-events:none;
}