        body {
            background: #f4f6f9;
            font-family: 'Source Sans Pro', -apple-system, BlinkMacSystemFont, sans-serif;
        }
        .profile-user-img {
            border: 3px solid #adb5bd;
            margin: 0 auto;
            padding: 3px;
            width: 100px;
            height: 100px;
            object-fit: cover;
        }
        .card {
            box-shadow: 0 0 1px rgba(0,0,0,.125), 0 1px 3px rgba(0,0,0,.2);
            margin-bottom: 1rem;
        }
        .card-primary:not(.card-outline) > .card-header {
            background-color: #007bff;
            color: #fff;
        }
        .card-primary.card-outline {
            border-top: 3px solid #007bff;
        }
        .list-group-unbordered > .list-group-item {
            border-left: 0;
            border-right: 0;
            border-radius: 0;
            padding-left: 0;
            padding-right: 0;
        }
        .tag {
            display: inline-block;
            padding: 0.25rem 0.5rem;
            font-size: 0.875rem;
            font-weight: 600;
            line-height: 1;
            border-radius: 0.25rem;
            margin-right: 0.25rem;
            margin-bottom: 0.25rem;
        }
        .tag-primary { background-color: #007bff; color: white; }
        .tag-success { background-color: #28a745; color: white; }
        .tag-info { background-color: #17a2b8; color: white; }
        .tag-warning { background-color: #ffc107; color: #212529; }
        .tag-danger { background-color: #dc3545; color: white; }
        .tag-secondary { background-color: #6c757d; color: white; }
        
        .timeline {
            position: relative;
            margin: 0 0 30px 0;
            padding: 0;
            list-style: none;
        }
        .timeline:before {
            content: '';
            position: absolute;
            top: 0;
            bottom: 0;
            width: 4px;
            background: #dee2e6;
            left: 31px;
            margin: 0;
            border-radius: 2px;
        }
        .timeline > div {
            position: relative;
            margin-right: 10px;
            margin-bottom: 15px;
        }
        .timeline > div:before,
        .timeline > div:after {
            content: "";
            display: table;
        }
        .timeline > div > .timeline-item {
            box-shadow: 0 1px 3px rgba(0,0,0,.125);
            border-radius: 3px;
            margin-top: 0;
            background: #fff;
            color: #495057;
            margin-left: 60px;
            margin-right: 15px;
            padding: 0;
            position: relative;
        }
        .timeline > div > .fa,
        .timeline > div > .fas,
        .timeline > div > .far,
        .timeline > div > .fab,
        .timeline > div > .fal,
        .timeline > div > .fad,
        .timeline > div > .svg-inline--fa,
        .timeline > div > .ion {
            width: 30px;
            height: 30px;
            font-size: 15px;
            line-height: 30px;
            position: absolute;
            color: #666;
            background: #dee2e6;
            border-radius: 50%;
            text-align: center;
            left: 18px;
            top: 0;
        }
        .timeline > div > .timeline-item > .time {
            color: #999;
            float: right;
            padding: 10px;
            font-size: 12px;
        }
        .timeline > div > .timeline-item > .timeline-header {
            margin: 0;
            color: #495057;
            border-bottom: 1px solid rgba(0,0,0,.125);
            padding: 10px;
            font-size: 16px;
            line-height: 1.1;
        }
        .timeline > div > .timeline-item > .timeline-body,
        .timeline > div > .timeline-item > .timeline-footer {
            padding: 10px;
        }
        .bg-blue { background-color: #007bff !important; color: white; }
        .bg-green { background-color: #28a745 !important; color: white; }
        .bg-orange { background-color: #fd7e14 !important; color: white; }
        .bg-red { background-color: #dc3545 !important; color: white; }
        
        .time-label > span {
            font-weight: 600;
            padding: 5px;
            display: inline-block;
            background-color: #fff;
            border-radius: 4px;
        }
        
        @media print {
            .no-print { display: none; }
            body { background: white; }
            .card { box-shadow: none; border: 1px solid #dee2e6; }
        }